Skip to content

bump Microsoft.CodeAnalysis to latest - #13699

Merged
ViktorHofer merged 5 commits into
dotnet:mainfrom
oleksandr-didyk:bump-code-analysis-to-latest
May 30, 2023
Merged

ViktorHofer merged 5 commits into
dotnet:mainfrom
oleksandr-didyk:bump-code-analysis-to-latest

Conversation

@oleksandr-didyk

@oleksandr-didyk oleksandr-didyk commented May 25, 2023 •

Copy link
Copy Markdown
Contributor

Resolves #13681

As per dotnet/runtime#86494 (comment), during runtime build the GenFacades msbuild task requires the Microsoft.CodeAnalysis to get loaded in. The package currently comes from the SBRP, so it fails the build as a ref pack cannot be utilized for this scenario.

As such, this PR bumps the version to latest + resolves some issues related to the bump

Comment thread eng/Versions.props Outdated
@ViktorHofer

Copy link
Copy Markdown
Member

As per dotnet/runtime#86494 (comment), during runtime build the CodeDom package requires the Microsoft.CodeAnalysis to get loaded in.

@oleksandr-didyk small nit, it's not the CodeDom library / package that needs CodeAnalysis but GenFacades which is an msbuild task that is invoked per project build.

Comment thread eng/Version.Details.xml Outdated
ViktorHofer
ViktorHofer previously approved these changes May 28, 2023
@ViktorHofer

Copy link
Copy Markdown
Member

@ all, I went ahead and downgraded the CodeAnalysis version to 4.6.0 not to break the VS / SDK scenario and to make progress on unblocking the runtime dependency flow which needs to get going again to not destabilize the product.

@ViktorHofer
ViktorHofer enabled auto-merge (squash) May 28, 2023 08:50
@ViktorHofer

Copy link
Copy Markdown
Member

Apparently that doesn't work:

.packages/microsoft.dotnet.arcade.sdk/8.0.0-beta.23276.2/tools/Tools.proj(0,0): error NU1102: (NETCORE_ENGINEERING_TELEMETRY=Restore) Unable to find package Microsoft.SourceBuild.Intermediate.roslyn with version (= 4.6.0)

We want to depend on the last stable version which is 4.6.0 but there is no source build intermediate package coming from roslyn available. How do we make source build picks the latest available intermediate package but the non source built product use the 4.6.0 version?

@oleksandr-didyk

Copy link
Copy Markdown
Contributor Author

How do we make source build picks the latest available intermediate package but the non source built product use the 4.6.0 version?

We could baseline 4.6.0 and add it to Version.Details.xml. In would use this version in repo context and in the product it would use N-1 thanks to the entry in Version.Details.xml. It could cause behaviour differences between the two builds though, but I'm not sure there is a different option (conditioning the version on DotNetBuildFromSource seems worse imo)

ViktorHofer
ViktorHofer previously approved these changes May 29, 2023
@ViktorHofer

Copy link
Copy Markdown
Member

but I'm not sure there is a different option (conditioning the version on DotNetBuildFromSource seems worse imo)

Unless roslyn starts versioning the same as the rest of the .NET repositories, I don't think there's a better option than what you pointed out. Thanks.

@ViktorHofer
ViktorHofer disabled auto-merge May 29, 2023 20:24
@ViktorHofer
ViktorHofer enabled auto-merge (squash) May 29, 2023 20:24
@ViktorHofer
ViktorHofer requested a review from mmitche May 29, 2023 20:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Runtime's Arcade dependency update is currently failing because of GenFacades trying to load an SBRP assembly in the source build leg

4 participants