Skip to content

Commit 9198f63

Browse files
Bump to dotnet/dotnet@a66d14e1fc 11.0.100-preview.3.26151.104 (#10873)
Changes: dotnet/dotnet@36ea4de...a66d14e * Update dependencies from https://github.com/dotnet/dotnet build 20260301.4 On relative base path root Microsoft.NET.Workload.Mono.ToolChain.Current.Manifest-11.0.100-preview.3 From Version 11.0.100-preview.3.26124.102 -> To Version 11.0.0-preview.3.26151.104 Microsoft.DotNet.Build.Tasks.Feed From Version 11.0.0-beta.26124.102 -> To Version 11.0.0-beta.26151.104 Microsoft.DotNet.Cecil From Version 0.11.5-preview.26124.102 -> To Version 0.11.5-preview.26151.104 Microsoft.NET.ILLink , Microsoft.NETCore.App.Ref From Version 11.0.0-preview.3.26124.102 -> To Version 11.0.0-preview.3.26151.104 Microsoft.NET.Sdk , Microsoft.NET.Workload.Emscripten.Current.Manifest-11.0.100-preview.3 , Microsoft.TemplateEngine.Authoring.Tasks From Version 11.0.100-preview.3.26124.102 -> To Version 11.0.100-preview.3.26151.104 ## NativeAOT changes in this PR Fixes a crash (XAAMP7004: Duplicate assembly key) in NativeAOT builds caused by upstream changes in .NET 11 (dotnet/runtime#111514). The SDK's ILLink target now populates ResolvedFileToPublish with linked assemblies, creating duplicates that weren't there before. ### Fix 1: RemoveDuplicates in _ComputeFilesToPublishForRuntimeIdentifiers (AssemblyResolution.targets) The **outer build** collects ResolvedFileToPublish from each RID's inner build. Multiple targets (ILLink, NativeAOT runtime, Android) independently add the same assemblies. Added <RemoveDuplicates> before returning to the outer build, which doesn't use Distinct() since items from different RIDs must be kept. ### Fix 2: Stamp RuntimeIdentifier on linked assemblies (NativeAOT.targets) In the **inner build**, ILLink populates ResolvedFileToPublish via _LinkedResolvedFileToPublish WITHOUT RuntimeIdentifier metadata. _AndroidComputeIlcCompileInputs adds the same items WITH RuntimeIdentifier, but ->Distinct() keeps the first occurrence (missing metadata). Added an Update to stamp RuntimeIdentifier on any items that lack it, since we're in the inner build with a single RID. Co-authored-by: Jonathan Peppers <jonathan.peppers@microsoft.com>
1 parent 3087ddd commit 9198f63

File tree

4 files changed

+43
-24
lines changed

4 files changed

+43
-24
lines changed

eng/Version.Details.xml

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,28 @@
11
<Dependencies>
22
<ProductDependencies>
3-
<Dependency Name="Microsoft.NET.Sdk" Version="11.0.100-preview.3.26124.102">
3+
<Dependency Name="Microsoft.NET.Sdk" Version="11.0.100-preview.3.26151.104">
44
<Uri>https://github.com/dotnet/dotnet</Uri>
5-
<Sha>36ea4de4a4409ace6bdf48c2dae2b6713f47c1b9</Sha>
5+
<Sha>a66d14e1fcfc6474837f9c951759d049c380bc59</Sha>
66
</Dependency>
7-
<Dependency Name="Microsoft.NET.ILLink" Version="11.0.0-preview.3.26124.102">
7+
<Dependency Name="Microsoft.NET.ILLink" Version="11.0.0-preview.3.26151.104">
88
<Uri>https://github.com/dotnet/dotnet</Uri>
9-
<Sha>36ea4de4a4409ace6bdf48c2dae2b6713f47c1b9</Sha>
9+
<Sha>a66d14e1fcfc6474837f9c951759d049c380bc59</Sha>
1010
</Dependency>
11-
<Dependency Name="Microsoft.NETCore.App.Ref" Version="11.0.0-preview.3.26124.102">
11+
<Dependency Name="Microsoft.NETCore.App.Ref" Version="11.0.0-preview.3.26151.104">
1212
<Uri>https://github.com/dotnet/dotnet</Uri>
13-
<Sha>36ea4de4a4409ace6bdf48c2dae2b6713f47c1b9</Sha>
13+
<Sha>a66d14e1fcfc6474837f9c951759d049c380bc59</Sha>
1414
</Dependency>
15-
<Dependency Name="Microsoft.DotNet.Cecil" Version="0.11.5-preview.26124.102">
15+
<Dependency Name="Microsoft.DotNet.Cecil" Version="0.11.5-preview.26151.104">
1616
<Uri>https://github.com/dotnet/dotnet</Uri>
17-
<Sha>36ea4de4a4409ace6bdf48c2dae2b6713f47c1b9</Sha>
17+
<Sha>a66d14e1fcfc6474837f9c951759d049c380bc59</Sha>
1818
</Dependency>
19-
<Dependency Name="Microsoft.NET.Workload.Mono.Toolchain.Current.Manifest-11.0.100-preview.3" Version="11.0.100-preview.3.26124.102">
19+
<Dependency Name="Microsoft.NET.Workload.Mono.ToolChain.Current.Manifest-11.0.100-preview.3" Version="11.0.0-preview.3.26151.104">
2020
<Uri>https://github.com/dotnet/dotnet</Uri>
21-
<Sha>36ea4de4a4409ace6bdf48c2dae2b6713f47c1b9</Sha>
21+
<Sha>a66d14e1fcfc6474837f9c951759d049c380bc59</Sha>
2222
</Dependency>
23-
<Dependency Name="Microsoft.NET.Workload.Emscripten.Current.Manifest-11.0.100-preview.3" Version="11.0.100-preview.3.26124.102">
23+
<Dependency Name="Microsoft.NET.Workload.Emscripten.Current.Manifest-11.0.100-preview.3" Version="11.0.100-preview.3.26151.104">
2424
<Uri>https://github.com/dotnet/dotnet</Uri>
25-
<Sha>36ea4de4a4409ace6bdf48c2dae2b6713f47c1b9</Sha>
25+
<Sha>a66d14e1fcfc6474837f9c951759d049c380bc59</Sha>
2626
</Dependency>
2727
<!-- Previous .NET version -->
2828
<Dependency Name="Microsoft.NET.Workload.Mono.ToolChain.Current.Manifest-9.0.100" Version="9.0.12">
@@ -36,13 +36,13 @@
3636
</Dependency>
3737
</ProductDependencies>
3838
<ToolsetDependencies>
39-
<Dependency Name="Microsoft.DotNet.Build.Tasks.Feed" Version="11.0.0-beta.26124.102">
39+
<Dependency Name="Microsoft.DotNet.Build.Tasks.Feed" Version="11.0.0-beta.26151.104">
4040
<Uri>https://github.com/dotnet/dotnet</Uri>
41-
<Sha>36ea4de4a4409ace6bdf48c2dae2b6713f47c1b9</Sha>
41+
<Sha>a66d14e1fcfc6474837f9c951759d049c380bc59</Sha>
4242
</Dependency>
43-
<Dependency Name="Microsoft.TemplateEngine.Authoring.Tasks" Version="11.0.100-preview.3.26124.102">
43+
<Dependency Name="Microsoft.TemplateEngine.Authoring.Tasks" Version="11.0.100-preview.3.26151.104">
4444
<Uri>https://github.com/dotnet/dotnet</Uri>
45-
<Sha>36ea4de4a4409ace6bdf48c2dae2b6713f47c1b9</Sha>
45+
<Sha>a66d14e1fcfc6474837f9c951759d049c380bc59</Sha>
4646
</Dependency>
4747
</ToolsetDependencies>
4848
</Dependencies>

eng/Versions.props

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
11
<Project>
22
<!--Package versions-->
33
<PropertyGroup>
4-
<MicrosoftNETSdkPackageVersion>11.0.100-preview.3.26124.102</MicrosoftNETSdkPackageVersion>
4+
<MicrosoftNETSdkPackageVersion>11.0.100-preview.3.26151.104</MicrosoftNETSdkPackageVersion>
55
<MicrosoftDotnetSdkInternalPackageVersion>$(MicrosoftNETSdkPackageVersion)</MicrosoftDotnetSdkInternalPackageVersion>
6-
<MicrosoftNETILLinkPackageVersion>11.0.0-preview.3.26124.102</MicrosoftNETILLinkPackageVersion>
7-
<MicrosoftNETCoreAppRefPackageVersion>11.0.0-preview.3.26124.102</MicrosoftNETCoreAppRefPackageVersion>
6+
<MicrosoftNETILLinkPackageVersion>11.0.0-preview.3.26151.104</MicrosoftNETILLinkPackageVersion>
7+
<MicrosoftNETCoreAppRefPackageVersion>11.0.0-preview.3.26151.104</MicrosoftNETCoreAppRefPackageVersion>
88
<MicrosoftDotNetApiCompatPackageVersion>7.0.0-beta.22103.1</MicrosoftDotNetApiCompatPackageVersion>
99
<!-- Last version built for net10.0, needed for CI steps that only have the .NET 10 SDK installed (e.g., BAR manifest publishing) -->
1010
<MicrosoftDotNetBuildTasksFeedPackageVersionNet10>11.0.0-beta.26060.102</MicrosoftDotNetBuildTasksFeedPackageVersionNet10>
11-
<MicrosoftDotNetBuildTasksFeedPackageVersion>11.0.0-beta.26124.102</MicrosoftDotNetBuildTasksFeedPackageVersion>
12-
<MicrosoftNETWorkloadMonoToolchainCurrentManifest110100preview3PackageVersion>11.0.100-preview.3.26124.102</MicrosoftNETWorkloadMonoToolchainCurrentManifest110100preview3PackageVersion>
13-
<MicrosoftNETWorkloadEmscriptenCurrentManifest110100preview3PackageVersion>11.0.100-preview.3.26124.102</MicrosoftNETWorkloadEmscriptenCurrentManifest110100preview3PackageVersion>
11+
<MicrosoftDotNetBuildTasksFeedPackageVersion>11.0.0-beta.26151.104</MicrosoftDotNetBuildTasksFeedPackageVersion>
12+
<MicrosoftNETWorkloadMonoToolChainCurrentManifest110100preview3PackageVersion>11.0.0-preview.3.26151.104</MicrosoftNETWorkloadMonoToolChainCurrentManifest110100preview3PackageVersion>
13+
<MicrosoftNETWorkloadEmscriptenCurrentManifest110100preview3PackageVersion>11.0.100-preview.3.26151.104</MicrosoftNETWorkloadEmscriptenCurrentManifest110100preview3PackageVersion>
1414
<MicrosoftNETWorkloadMonoToolChainPackageVersion>$(MicrosoftNETWorkloadMonoToolChainCurrentManifest110100preview3PackageVersion)</MicrosoftNETWorkloadMonoToolChainPackageVersion>
1515
<MicrosoftNETWorkloadEmscriptenPackageVersion>$(MicrosoftNETWorkloadEmscriptenCurrentManifest110100preview3PackageVersion)</MicrosoftNETWorkloadEmscriptenPackageVersion>
16-
<MicrosoftTemplateEngineAuthoringTasksPackageVersion>11.0.100-preview.3.26124.102</MicrosoftTemplateEngineAuthoringTasksPackageVersion>
17-
<MicrosoftDotNetCecilPackageVersion>0.11.5-preview.26124.102</MicrosoftDotNetCecilPackageVersion>
16+
<MicrosoftTemplateEngineAuthoringTasksPackageVersion>11.0.100-preview.3.26151.104</MicrosoftTemplateEngineAuthoringTasksPackageVersion>
17+
<MicrosoftDotNetCecilPackageVersion>0.11.5-preview.26151.104</MicrosoftDotNetCecilPackageVersion>
1818
<SystemIOHashingPackageVersion>9.0.4</SystemIOHashingPackageVersion>
1919
<SystemReflectionMetadataPackageVersion>11.0.0-preview.1.26104.118</SystemReflectionMetadataPackageVersion>
2020
<!-- Previous .NET Android version -->

src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.AssemblyResolution.targets

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,16 @@ _ResolveAssemblies MSBuild target.
4747
RuntimeIdentifier="$(RuntimeIdentifier)"
4848
/>
4949
</ItemGroup>
50+
<!-- In .NET 11+, multiple targets (ILLink, NativeAOT runtime, Android) may independently
51+
add the same assembly to ResolvedFileToPublish. Deduplicate before returning to the
52+
outer build, which does not use Distinct() since items from different RIDs must be kept. -->
53+
<RemoveDuplicates Condition=" '$(_AndroidRuntime)' == 'NativeAOT' " Inputs="@(ResolvedFileToPublish)">
54+
<Output TaskParameter="Filtered" ItemName="_DeduplicatedResolvedFileToPublish" />
55+
</RemoveDuplicates>
56+
<ItemGroup Condition=" '$(_AndroidRuntime)' == 'NativeAOT' ">
57+
<ResolvedFileToPublish Remove="@(ResolvedFileToPublish)" />
58+
<ResolvedFileToPublish Include="@(_DeduplicatedResolvedFileToPublish)" />
59+
</ItemGroup>
5060
<AndroidWarning
5161
Code="XA1024"
5262
ResourceName="XA1024"

src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.NativeAOT.targets

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,15 @@ This file contains the NativeAOT-specific MSBuild logic for .NET for Android.
203203
</_PrivateEnvironmentNativeObjectFile>
204204

205205
<_PrivateAndroidNaotResolvedAssemblyFiles Include="@(ResolvedFileToPublish->Distinct())" Condition=" '%(ResolvedFileToPublish.Extension)' == '.dll' " />
206+
<!-- In .NET 11+, the SDK's ILLink target populates ResolvedFileToPublish with linked assemblies
207+
(via _LinkedResolvedFileToPublish) WITHOUT RuntimeIdentifier metadata. _AndroidComputeIlcCompileInputs
208+
adds the same items WITH RuntimeIdentifier, but ->Distinct() keeps the first occurrence (without metadata).
209+
Stamp RuntimeIdentifier on any items that lack it, since we're in the inner build with a single RID. -->
210+
<_PrivateAndroidNaotResolvedAssemblyFiles
211+
Update="@(_PrivateAndroidNaotResolvedAssemblyFiles)"
212+
Condition=" '%(_PrivateAndroidNaotResolvedAssemblyFiles.RuntimeIdentifier)' == '' "
213+
RuntimeIdentifier="$(RuntimeIdentifier)"
214+
/>
206215
</ItemGroup>
207216
</Target>
208217

0 commit comments

Comments
 (0)