libgit2 / libgit2/libgit2sharp.nativebinaries

Parent double-dot path step in application manifest asmv1:assembly/file/@name throwing error

未关闭
#138 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

主要语言
PowerShell
星标
35
派生
74
PR 合并指标
30 天内没有已合并 PR

描述

In building from NuGet, the application manifest includes a number of asmv1:assembly/file/@name values that have a double dot, e.g.,
<file name="lib\fedora-x64\native\..\libgit2-106a5f2.so" size="1198160">

This throws an error, e.g. (via SxsTrace):
ERROR: Line 449: The value lib\alpine.3.9-x64\native\..\libgit2-106a5f2.so of attribute name in element urn:schemas-microsoft-com:asm.v1^file is invalid.

It seems that the root of this issue is https://github.com/libgit2/libgit2sharp.nativebinaries/blob/9469eab266bacdbb46aed4610b3b0e6bbfc56395/nuget.package/build/net46/LibGit2Sharp.NativeBinaries.props#L11

There the double-dot parent path is hard coded to be imprinted and negate native.

I propose the removal of ..\ in attribute TargetPath or something similar. Keeping the native subdirectory shouldn't harm anything. At any rate, ISTM the syntactical constraints of asmv1:assembly/file/@name should be respected.

贡献指南

这个仓库没有索引到贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

从 issue 中链接的 LibGit2Sharp.NativeBinaries.props 条目开始,重点查看第 11 行及其 TargetPath 值。从 NuGet 重新构建,并验证生成的应用程序清单不再包含父路径步骤,且能被 SxsTrace 接受。

由索引模型根据 Issue 内容生成。

评估

领域
build-system
Issue 类型
缺陷
难度
2/5
预计耗时
1-3 小时
活跃度
停滞
描述清晰度
描述清楚
新手友好度
35/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。