-
Notifications
You must be signed in to change notification settings - Fork 249
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adding spec of "consuming pdbs from packages in PackageReference" #11251
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks pretty good :)
cc @dsplaisted @wli3 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍👍👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great @heng-liu
Nicely done.
Hi @wli3, @rainersigwald, may I get more reviews from .NET SDK side? Thanks! |
Hi @NuGet/nuget-client , may I get another review from our team? Thanks! |
Hi @heng-liu ! I think I may have been tagged accidentally here. Letting you know so you can tag whomever you meant to, take care! 🙂 |
Oops sorry! You're right. I meant to tag @rainersigwald Thanks for letting me know :) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me but @dsplaisted's review counts double mine on this anyway.
|
||
## Problem Background | ||
|
||
In the PackageReference world, the packages are consumed from the global-packages folder, .pdb, .xml files from lib and runtime folder are not copied into the build output folder. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PDB and XML documentation files are the most common related files, but RAR can find arbitrary related files. The list of possible extensions is user-configurable and the default is here: https://github.com/dotnet/msbuild/blob/2f1e9cad51097aec5d7268a4afdf7ad9bc6864b9/src/Tasks/Microsoft.Common.CurrentVersion.targets#L617-L627
It looks like the proposal covers this; the only thing is we'll have to be careful about "differs only by extension" to cover cases like .dll.config
.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for reminding me for that!
So how about adding the following as additive description in the doc? (Haven't added yet)
The assembly extension .winmd
, .dll
and .exe
will not be listed in "related" property. Any other extensions, like .dll.config
, will be listed in "related" property.
|
||
Cons: | ||
* .pdb and .xml files are not on the same level as compile or runtime items. | ||
The usage of .pdb and .xml files are SDK driven rather than package author driven. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does this mean? It seems like either way if the package author decides to include the files they'll be consumed by the SDK and present in the output the same way, right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks!
If rephrasing it as the following, is it better? Or worse? :D
From the view of a package author, compile or runtime items are the essential elements. While .pdb and .xml files are not on the same level in the understanding. So the way of having related files as a property of compile and runtime items might be in line with the understanding.
Hi @nkolev92 , may I know if you have any other opinions about rephrasing this cons? Thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think my confusion comes from this: if these files are present in the NuGet package, the package author had to choose to put them there (right?). So they clearly care about it and expect package consumers to use the files somehow.
Hi @clairernovotny , we plan to have this in .NET 7. May I know if you have any concerns? Thanks! |
Hi @zivkan, could you help take a look at it? Thanks! |
Please feel free to merge when you're comfortable with the reviews! Adding reviewers to help. |
I think this needs to be in the 6.0.200+ SDK, it cannot wait until .NET 7 as 6.x is LTS and more people will be using that for longer. |
Sorry for taking long to merge the PR. |
Adding spec of "consuming pdbs from packages in PackageReference"
The issue is #11350
(epic is #5926)