Open tmeschter opened 7 years ago
There are many issues with ALink. I believe fix no. 2 is the right way to go: the msbuild targets should be updated.
As a first step in dealing with this and #23191 I'm going to make it possible for us to always opt-in to the Microsoft.Net.SDK approach.
Change to MSBuild to enable opt-in: https://github.com/Microsoft/msbuild/pull/2726
The
AssemblyInformationalVersionAttribute
takes a free form string as its value, and when compiling code using csc or vbc this value becomes the "Product version" reported in the "Details" tab of the Properties of the resulting file.Roslyn includes the "NuGet" version plus the commit hash, like so:
However, this doesn't work when generating satellite assemblies using al.exe; it erroneously expects the string to be in 'major.minor.build.revision' format. This prevents us from generating satellite assemblies as part of the Roslyn build.
See this Connect item for a customer report of the issue.
See commit cc465bfb for our current workaround, which is to drop the
AssemblyInformationalVersionAttribute
entirely.I see several potential fixes and workarounds that would be acceptable.
Fixes
Workarounds
AssemblyInformationalVersionAttribute
for just the satellite assemblies (instead of all assemblies). It probably isn't as interesting for satellite assemblies as it is for regular assemblies.