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

[main] Update dependencies from dotnet/arcade #110477

Open
wants to merge 37 commits into
base: main
Choose a base branch
from

Conversation

dotnet-maestro[bot]
Copy link
Contributor

@dotnet-maestro dotnet-maestro bot commented Dec 6, 2024

This pull request updates the following dependencies

From https://github.com/dotnet/arcade

  • Subscription: c32383ee-d79c-4435-5b63-08d8d8feb47e
  • Build: 20241213.2
  • Date Produced: December 13, 2024 7:51:52 PM UTC
  • Commit: 255d5e0c89958af276883a988108c2d616438805
  • Branch: refs/heads/main

…205.6

Microsoft.SourceBuild.Intermediate.arcade , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24605.1 -> To Version 10.0.0-beta.24605.6
@dotnet-issue-labeler dotnet-issue-labeler bot added the area-codeflow for labeling automated codeflow label Dec 6, 2024
@akoeplinger
Copy link
Member

@dotnet/illink three linker tests are failing with this bump:

  • DataFlow.NullableAnnotations
  • BCLFeatures.ETW.CustomEventSource
  • UnreachableBlock.ComplexConditions

@akoeplinger
Copy link
Member

@dotnet/ilc-contrib ILC fails to compile crossgen2 on windows x86:

  crossgen2_publish -> D:\a\_work\1\s\artifacts\bin\crossgen2_publish\x86\Checked\crossgen2.dll
  Generating native code
EXEC : error : One or more errors occurred. (Code generation failed for method '[S.P.CoreLib]System.Numerics.BitOperations.TrailingZeroCount(uint64)') [D:\a\_work\1\s\src\coreclr\tools\aot\crossgen2\crossgen2_publish.csproj]
##[error]EXEC(0,0): error : (NETCORE_ENGINEERING_TELEMETRY=Build) One or more errors occurred. (Code generation failed for method '[S.P.CoreLib]System.Numerics.BitOperations.TrailingZeroCount(uint64)')
  System.AggregateException: One or more errors occurred. (Code generation failed for method '[S.P.CoreLib]System.Numerics.BitOperations.TrailingZeroCount(uint64)')
   ---> ILCompiler.CodeGenerationFailedException: Code generation failed for method '[S.P.CoreLib]System.Numerics.BitOperations.TrailingZeroCount(uint64)'
   ---> System.Collections.Generic.KeyNotFoundException: The given key 'Bmi1_X64' was not present in the dictionary.
     at ILCompiler.HardwareIntrinsicILProvider.GetMethodIL(MethodDesc) + 0x1ec
     at ILCompiler.SubstitutedILProvider.TryGetMethodConstantValue(MethodDesc, Int32&, Int32) + 0xc2
     at ILCompiler.SubstitutedILProvider.TryGetConstantArgument(MethodIL, Byte[], SubstitutedILProvider.OpcodeFlags[], Int32, Int32, Int32&) + 0x608
     at ILCompiler.SubstitutedILProvider.GetMethodILWithInlinedSubstitutions(MethodIL) + 0x1cf9
     at ILCompiler.SubstitutedILProvider.GetMethodIL(MethodDesc) + 0x60
     at ILCompiler.Compilation.CombinedILProvider.GetMethodIL(MethodDesc) + 0x21
     at ILCompiler.Compilation.ILCache.CreateValueFromKey(MethodDesc) + 0x3c
     at Internal.TypeSystem.LockFreeReaderHashtable`2.CreateValueAndEnsureValueIsInTable(TKey) + 0x18
     at ILCompiler.Compilation.GetMethodIL(MethodDesc) + 0xb6
     at Internal.IL.ILImporter..ctor(ILScanner, MethodDesc, MethodIL) + 0x55
     at ILCompiler.ILScanner.CompileSingleMethod(ScannedMethodNode) + 0x53
     --- End of inner exception stack trace ---
     at ILCompiler.ILScanner.CompileSingleMethod(ScannedMethodNode) + 0x128
     at System.Threading.Tasks.Parallel.<>c__DisplayClass19_0`2.<ForWorker>b__1(RangeWorker&, Int64, Boolean&) + 0x10d
  --- End of stack trace from previous location ---
     at System.Threading.Tasks.Parallel.<>c__DisplayClass19_0`2.<ForWorker>b__1(RangeWorker&, Int64, Boolean&) + 0x4e4
     at System.Threading.Tasks.TaskReplicator.Replica.Execute() + 0xb1
     --- End of inner exception stack trace ---
     at System.Threading.Tasks.TaskReplicator.Run[TState](TaskReplicator.ReplicatableUserAction`1, ParallelOptions, Boolean) + 0x2b2
     at System.Threading.Tasks.Parallel.ForWorker[TLocal,TInt](TInt, TInt, ParallelOptions, Action`1, Action`2, Func`4, Func`1, Action`1) + 0x21f
  --- End of stack trace from previous location ---
     at System.Threading.Tasks.Parallel.ThrowSingleCancellationExceptionOrOtherException(ICollection, CancellationToken, Exception) + 0x30
     at System.Threading.Tasks.Parallel.ForWorker[TLocal,TInt](TInt, TInt, ParallelOptions, Action`1, Action`2, Func`4, Func`1, Action`1) + 0x449
     at ILCompiler.ILScanner.CompileMultiThreaded(List`1) + 0x264
     at ILCompiler.ILScanner.ComputeDependencyNodeDependencies(List`1) + 0x153
     at ILCompiler.DependencyAnalysisFramework.DependencyAnalyzer`2.ComputeMarkedNodes() + 0xa3
     at ILCompiler.ILScanner.ILCompiler.IILScanner.Scan() + 0x1b
     at ILCompiler.Program.<Run>g__RunScanner|4_0(Program.<>c__DisplayClass4_0&) + 0x1fa
     at ILCompiler.Program.Run() + 0x292b
     at ILCompiler.ILCompilerRootCommand.<>c__DisplayClass246_0.<.ctor>b__0(ParseResult) + 0x321
D:\a\_work\1\s\.packages\microsoft.dotnet.ilcompiler\10.0.0-alpha.1.24570.9\build\Microsoft.NETCore.Native.targets(315,5): error MSB3073: The command ""D:\a\_work\1\s\.packages\runtime.win-x64.microsoft.dotnet.ilcompiler\10.0.0-alpha.1.24570.9\tools\\ilc" @"D:\a\_work\1\s\artifacts\obj\coreclr\crossgen2_publish\windows.x86.Checked\native\crossgen2.ilc.rsp"" exited with code 1. [D:\a\_work\1\s\src\coreclr\tools\aot\crossgen2\crossgen2_publish.csproj]

#110001 updated annotations on
EventSource. This adjusts the expected preserved members to match.
@sbomer sbomer requested a review from marek-safar as a code owner December 6, 2024 19:13
@sbomer sbomer requested a review from a team December 6, 2024 19:13
With https://github.com/dotnet/runtime/pull/106497/files,
object.GetType is no longer an internalcall. This means we no longer
mark the ctor of the return type, System.Type, so the type check
removal optimization is kicking in where it didn't before.
@jkotas
Copy link
Member

jkotas commented Dec 7, 2024

@dotnet/ilc-contrib ILC fails to compile crossgen2 on windows x86:

It should be fixed by #110238

…206.6

Microsoft.SourceBuild.Intermediate.arcade , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24605.1 -> To Version 10.0.0-beta.24606.6
@am11
Copy link
Member

am11 commented Dec 8, 2024

@dotnet/ilc-contrib ILC fails to compile crossgen2 on windows x86:

It should be fixed by #110238

It is blocked on dotnet/sdk#45042, which in turn is blocked on other things. We can disable nativeaot publishing on win-x86 after this line

<UseNativeAotForComponents Condition="'$(NativeAotSupported)' == 'true' and '$(TargetOS)' == '$(HostOS)' and '$(TargetsLinuxBionic)' != 'true'">true</UseNativeAotForComponents>
to unblock this PR:

<!-- TODO: remove once SDK is updated to 10.0 preview 1 (needs https://github.com/dotnet/runtime/pull/110238) -->
<UseNativeAotForComponents Condition="'$(TargetOS)' == 'windows' and '$(TargetArchitecture)' == 'x86'">false</UseNativeAotForComponents>

@MichalStrehovsky
Copy link
Member

So, mystery solved. The illink unit tests don't actually look at ILLink.Descriptors.xml embedded in CoreLib. So I put back Sven's fix (although I'm still scratching my head why we need to root System.Type constructor in a test that uses typeof everywhere), reverted by change to ILLink descriptors, and filed an issue for the other problem with RuntimeType getting optimized out, linking to the workaround.

This method parses the corelib header

Thanks, I know about that. I'm asking about the FOR_ILLINK ifdef. Entries under that in corelib.h are not looked at by the VM, they are only used to generate XML. Since VM doesn't look at it, why not just write XML? What's the key to decide between writing XML and adding an entry under FOR_ILLINK?

…210.2

Microsoft.SourceBuild.Intermediate.arcade , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24605.1 -> To Version 10.0.0-beta.24610.2
@jkotas
Copy link
Member

jkotas commented Dec 11, 2024

What's the key to decide between writing XML and adding an entry under FOR_ILLINK?

Historically, FOR_ILLINK has been preferred for dependencies originating in VM and XML for dependencies originating in CoreLib.

I do not see a problem with replacing FOR_ILLINK with XML. Some of the FOR_ILLINK uses can be cleaned up by moving the manually managed code from VM to CoreLib that would be even better and allowed trimming a bit more in a typical app.

@jkoritzinsky
Copy link
Member

I've tried to fix the WBT tests based on #93693 from last year.

cc: @lewing

@akoeplinger
Copy link
Member

I'm looking at the wasm failures.

@am11
Copy link
Member

am11 commented Dec 12, 2024

We can sync with main (#109069 is just merged).

dotnet-maestro bot and others added 10 commits December 12, 2024 13:08
…211.4

Microsoft.SourceBuild.Intermediate.arcade , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24605.1 -> To Version 10.0.0-beta.24611.4
…45a5-433c-8ef5-b5807629e7e2

# Conflicts:
#	src/mono/wasm/Wasm.Build.Tests/NonWasmTemplateBuildTests.cs
#	src/mono/wasm/Wasm.Build.Tests/Templates/WasmTemplateTests.cs
#	src/mono/wasm/Wasm.Build.Tests/Templates/WasmTemplateTestsBase.cs
#	src/mono/wasm/Wasm.Build.Tests/TestMainJsTestBase.cs
…212.4

Microsoft.SourceBuild.Intermediate.arcade , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24605.1 -> To Version 10.0.0-beta.24612.4
…213.2

Microsoft.SourceBuild.Intermediate.arcade , Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Archives , Microsoft.DotNet.Build.Tasks.Feed , Microsoft.DotNet.Build.Tasks.Installers , Microsoft.DotNet.Build.Tasks.Packaging , Microsoft.DotNet.Build.Tasks.TargetFramework , Microsoft.DotNet.Build.Tasks.Templating , Microsoft.DotNet.Build.Tasks.Workloads , Microsoft.DotNet.CodeAnalysis , Microsoft.DotNet.GenAPI , Microsoft.DotNet.GenFacades , Microsoft.DotNet.Helix.Sdk , Microsoft.DotNet.PackageTesting , Microsoft.DotNet.RemoteExecutor , Microsoft.DotNet.SharedFramework.Sdk , Microsoft.DotNet.VersionTools.Tasks , Microsoft.DotNet.XliffTasks , Microsoft.DotNet.XUnitAssert , Microsoft.DotNet.XUnitConsoleRunner , Microsoft.DotNet.XUnitExtensions
 From Version 10.0.0-beta.24605.1 -> To Version 10.0.0-beta.24613.2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-codeflow for labeling automated codeflow
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants