Skip to content
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

Consider incrementing the assembly version for source generator with each build #58274

Closed
sharwell opened this issue Aug 27, 2021 · 4 comments · Fixed by #58836
Closed

Consider incrementing the assembly version for source generator with each build #58274

sharwell opened this issue Aug 27, 2021 · 4 comments · Fixed by #58836

Comments

@sharwell
Copy link
Member

It appears that the version number of this assembly is locked at 6.0.0.0. This can be problematic for VBCSCompiler during reference package updates, leading to dramatic reduction in compiler throughput (for Roslyn.sln, builds are about 3x slower). The fix for this solution is ensuring the assembly version number increases with each build for analyzer and source generator packages.

Originally posted by @sharwell in #58175 (comment)

@dotnet-issue-labeler
Copy link

I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label.

@dotnet-issue-labeler dotnet-issue-labeler bot added the untriaged New issue has not been triaged by the area owner label Aug 27, 2021
@sharwell
Copy link
Member Author

See also microsoft/vs-threading#279

@ghost
Copy link

ghost commented Aug 27, 2021

Tagging subscribers to this area: @Anipik, @safern, @ViktorHofer
See info in area-owners.md if you want to be subscribed.

Issue Details

It appears that the version number of this assembly is locked at 6.0.0.0. This can be problematic for VBCSCompiler during reference package updates, leading to dramatic reduction in compiler throughput (for Roslyn.sln, builds are about 3x slower). The fix for this solution is ensuring the assembly version number increases with each build for analyzer and source generator packages.

Originally posted by @sharwell in #58175 (comment)

Author: sharwell
Assignees: -
Labels:

area-Infrastructure-libraries, untriaged

Milestone: -

@ericstj
Copy link
Member

ericstj commented Aug 27, 2021

@sharwell we should already have unique assembly versions for publicly shipping GA releases, including servicing. I've made ensuring this part of our servicing readiness plan: #58042.

It seems like you're suggesting that even for nightly builds we increment though. Let's consider that.

I can see an issue during previews when mixing / matching preview assets. This shouldn't be possible with ref-packs, but could be with the nuget package. For example: if someone has the Preview7 SDK installed, but then has one project where they reference the RC1 (or daily build) NuGet package: those would have the same assembly version but different content.

What does https://github.com/dotnet/roslyn-analyzers do? They should have a similar issue (inbox + nuget package). Maybe we can just follow their lead.

cc @eerhardt

@Anipik Anipik added this to the 6.0.0 milestone Sep 2, 2021
@jeffschwMSFT jeffschwMSFT removed the untriaged New issue has not been triaged by the area owner label Sep 2, 2021
@ghost ghost added the in-pr There is an active PR which will close this issue when it is merged label Sep 8, 2021
@ghost ghost removed the in-pr There is an active PR which will close this issue when it is merged label Sep 10, 2021
@Anipik Anipik reopened this Sep 10, 2021
@Anipik Anipik closed this as completed Sep 15, 2021
@ghost ghost locked as resolved and limited conversation to collaborators Nov 3, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants