Skip to content

[release/11.0.1xx-preview7] Update dependencies from dotnet/dotnet - #12249

Open
dotnet-maestro[bot] wants to merge 5 commits into
release/11.0.1xx-preview7from
darc-release/11.0.1xx-preview7-cef39228-4967-464c-895e-3f4b7109bf63
Open

[release/11.0.1xx-preview7] Update dependencies from dotnet/dotnet#12249
dotnet-maestro[bot] wants to merge 5 commits into
release/11.0.1xx-preview7from
darc-release/11.0.1xx-preview7-cef39228-4967-464c-895e-3f4b7109bf63

Conversation

@dotnet-maestro

@dotnet-maestro dotnet-maestro Bot commented Jul 28, 2026

Copy link
Copy Markdown
Contributor

This pull request updates the following dependencies

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

…726.6

On relative base path root
Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed From Version 11.0.0-beta.26365.101 -> To Version 11.0.0-beta.26376.106
Microsoft.DotNet.Cecil From Version 0.11.5-preview.26365.101 -> To Version 0.11.5-preview.26376.106
Microsoft.NET.ILLink , Microsoft.NETCore.App.Ref From Version 11.0.0-preview.7.26365.101 -> To Version 11.0.0-preview.7.26376.106
Microsoft.NET.Sdk , Microsoft.TemplateEngine.Authoring.Tasks From Version 11.0.100-preview.7.26365.101 -> To Version 11.0.100-preview.7.26376.106
Context: dotnet/sdk#53715

Starting with `11.0.100-preview.7.26376.106`, the .NET SDK emits a
`<App>.runtimeconfig.dev.json` file for `Debug` builds containing the
Hot Reload feature switches:

    {
      "runtimeOptions": {
        "configProperties": {
          "System.Reflection.Metadata.MetadataUpdater.IsSupported": true,
          "System.StartupHookProvider.IsSupported": true
        }
      }
    }

`hostfxr` layers this file on top of `*.runtimeconfig.json` at startup,
but .NET for Android does not use `hostfxr`: it bakes the runtime
properties into the application at build time. So the file was simply
ignored, and the switches never reached the app.

Do the same layering at build time for CoreCLR: read the dev file after
`*.runtimeconfig.json` in `RuntimePropertiesParser`, so its
`configProperties` win. This matches what Blazor WebAssembly does in
dotnet/runtime#130825.

This does not conflict with the switches we set ourselves.
`$(StartupHookSupport)` is only set to `false` when
`'$(Optimize)' == 'true'`, and the SDK only generates the dev file for
`Debug` builds, so the two are disjoint in practice. We never set
`$(MetadataUpdaterSupport)`.

Mono is unchanged: it reads runtime properties from the `rc.bin` blob
produced by `RuntimeConfigParserTask`, which only accepts a single input
file. Teaching that task about multiple files requires a change in
dotnet/runtime.

While here, add both `runtimeconfig` files to
`_GetGeneratePackageManagerJavaInputs`. Neither was an input before, so
editing them would not trigger a rebuild.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: b158ad70-1e5e-44cd-a1f2-60353f3bb560
`String.IsNullOrEmpty()` is not NRT annotated in `netstandard2.0`, so the
compiler could not tell that `projectRuntimeConfigDevFilePath` is not
`null` inside the `if`. Use our own `IsNullOrEmpty()` extension method,
which is annotated with `[NotNullWhen (false)]`.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: b158ad70-1e5e-44cd-a1f2-60353f3bb560
jonathanpeppers and others added 2 commits July 28, 2026 13:37
Context: #12254

Starting with .NET SDK `11.0.100-preview.7.26376.106`, `dotnet test` is
device-aware: it selects a device with `ComputeAvailableDevices`, then
deploys with `DeployToDevice` and computes the launch command with
`ComputeRunArguments`. Those are separate `ProjectInstance.Build ()`
calls against the same `ProjectInstance`, so `ProcessFrameworkReferences`
runs twice. MSBuild task outputs append, so `@(ResolvedRuntimePack)` ends
up with two `Microsoft.NETCore.App` entries and `ResolveFrameworkReferences`
throws:

    error MSB4018: The "ResolveFrameworkReferences" task failed unexpectedly.
    System.ArgumentException: An item with the same key has already been added. Key: Microsoft.NETCore.App

This reproduces with a stock SDK and the released
`Microsoft.Android.Sdk.Windows` `37.0.0-preview.6.59`, so it is not
caused by anything in this repo. Pinning a single
`$(RuntimeIdentifier)` does not help, and `dotnet run` works on the same
project, so there is nothing we can do from our targets. Ignore the
`dotnet test` cases until the fix flows back from dotnet/sdk.

The `dotnet run` case is unaffected and stays enabled.

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
Copilot-Session: b158ad70-1e5e-44cd-a1f2-60353f3bb560
…728.6

On relative base path root
Microsoft.DotNet.Arcade.Sdk , Microsoft.DotNet.Build.Tasks.Feed From Version 11.0.0-beta.26365.101 -> To Version 11.0.0-beta.26378.106
Microsoft.DotNet.Cecil From Version 0.11.5-preview.26365.101 -> To Version 0.11.5-preview.26378.106
Microsoft.NET.ILLink , Microsoft.NETCore.App.Ref From Version 11.0.0-preview.7.26365.101 -> To Version 11.0.0-preview.7.26378.106
Microsoft.NET.Sdk , Microsoft.TemplateEngine.Authoring.Tasks From Version 11.0.100-preview.7.26365.101 -> To Version 11.0.100-preview.7.26378.106
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.

1 participant