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

Upgrade System.Reflection.Metadata version #85738

Merged
merged 2 commits into from
May 9, 2023
Merged

Conversation

cshung
Copy link
Member

@cshung cshung commented May 3, 2023

As a response to #85038, I am upgrading SystemReflectionMetadataVersion from 6.0.0 to 7.0.0.

As a side effect of this change, I also need to upgrade SystemCollectionsImmutableVersion from 6.0.0. to 7.0.0.

These MSBuild properties are repo-wide. Fortunately, there are only a handful number of references for them. Broadly there are two classes, general-purpose library or tools, and MSBuild Tasks.

These are general-purpose libraries or tools. They could be used in some other contexts (e.g. ILCompiler.Reflection.ReadyToRun is currently used by ILSpy) and we should check if the upgrade would break those scenarios (We checked that ILSpy can work with the upgrade)

  • ILCompiler.Reflection.ReadyToRun.csproj, ILCompiler.Reflection.ReadyToRun.Experimental.pkgproj [@eduardo-vp]
  • ILVerification.csproj, Microsoft.ILVerification.pkgproj [@jkotas]
  • Microsoft.NET.WebAssembly.Webcil.csproj [@lambdageek]

These are all MSBuild tasks, so they probably should have the same constraint and be consistent across. Note that both dotnet/msbuild and dotnet/sdk has already moved on with their upgrade to 7.0.0, and therefore upgrading here is probably the right thing to do to match. @ViktorHofer, do you know who/how to verify if the upgrade is safe for these projects?

  • MonoAOTCompiler.csproj
  • ILCompiler.Build.Tasks.csproj
  • installer.tasks.csproj
  • MonoTargetsTasks.csproj
  • WasmAppBuilder.csproj
  • ILLink.Tasks.csproj

CI validation indicates that this change is safe within this repo, the only failure found in the run are known test failures.

@dotnet/crossgen-contrib for awareness.

@cshung cshung added the area-R2RDump-coreclr Ready-to-run image dump tool label May 3, 2023
@cshung cshung self-assigned this May 3, 2023
@ViktorHofer
Copy link
Member

I dount that we need additional validation given that the number of breaking changes in those libs are low to maybe even none.

@lambdageek
Copy link
Member

Microsoft.NET.WebAssembly.Webcil.csproj is a component of the MSBuild tasks for WasmAppBuilder.csproj and Microsoft.NET.Sdk.WebAssembly.Pack.Tasks.csproj and is not otherwise shipping as a general purpose library.

For the tasks, AFAIK it is important that the MSBuild that is used by the visual studio that supports the given runtime (.net 8 in this case) has the SRM bump. it's not enough that the MSBuild in the dotnet SDK depends on a new version.

@jkotas
Copy link
Member

jkotas commented May 9, 2023

For the tasks, AFAIK it is important that the MSBuild that is used by the visual studio that supports the given runtime (.net 8 in this case) has the SRM bump. it's not enough that the MSBuild in the dotnet SDK depends on a new version.

msbuild is latest VS 2022 previews has System.Reflection.Metadata 7.0.0.

@jkotas jkotas merged commit c967345 into dotnet:main May 9, 2023
@cshung cshung deleted the public/upgrade branch May 9, 2023 19:46
@ghost ghost locked as resolved and limited conversation to collaborators Jun 9, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-R2RDump-coreclr Ready-to-run image dump tool
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants