Skip to content

[build] Remove binary runtime config parser - #12911

Merged
simonrozsival merged 2 commits into
mainfrom
jonathanpeppers-remove-runtime-config-parser
Sep 26, 2026
Merged

simonrozsival merged 2 commits into
mainfrom
jonathanpeppers-remove-runtime-config-parser

Conversation

@jonathanpeppers

Copy link
Copy Markdown
Member

Summary

  • remove the unconsumed RuntimeConfigParserTask invocation and binary runtime-config output
  • remove dead native blob constants and timing metadata while preserving the retired timing ID
  • remove the corresponding obsolete MonoVM test-field handling

Stacked on #12903.

Validation

  • parsed Microsoft.Android.Sdk.RuntimeConfig.targets as XML
  • built Xamarin.Android.Build.Tests.csproj
  • built the arm64 CoreCLR native runtime
  • confirmed no remaining RuntimeConfigParserTask, _BinaryRuntimeConfigPath, native runtime-config blob symbol, timing event, or test field references

Copilot AI lite review requested due to automatic review settings September 24, 2026 14:23
@jonathanpeppers
jonathanpeppers added this pull request to stack #12912 September 24, 2026 14:23

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

One or more issues must be addressed before approval.

Get a fresh assessment by requesting another Copilot review.

Review effort: Lite
Findings: 2 Low severity

Open (2)
What changed in this PR

Removes obsolete binary runtime-config generation and related native/test metadata while preserving timing ID 9 as reserved.

Changes:

  • Removes the runtime-config parser target and binary output path.
  • Removes obsolete native blob constants and MonoVM test-field parsing.
  • Retires the timing event description while documenting ID 9 as reserved.
File Description
src/​Xamarin.Android.Build.Tasks/​Tests/​Xamarin.Android.Build.Tests/​Utilities/​EnvironmentHelper.cs Updated as part of this pull request.
src/​Xamarin.Android.Build.Tasks/​Microsoft.Android.Sdk/​targets/​Microsoft.Android.Sdk.RuntimeConfig.targets Updated as part of this pull request.
src/​native/​common/​include/​runtime-base/​timing-internal.hh Updated as part of this pull request.
src/​native/​clr/​include/​constants.hh Updated as part of this pull request.
Documentation/​workflow/​SystemProperties.md Updated as part of this pull request.

Comment thread src/native/clr/include/constants.hh
@jonathanpeppers
jonathanpeppers force-pushed the jonathanpeppers-remove-runtime-config-parser branch from 3bd8f55 to 179d02c Compare September 24, 2026 18:44
@jonathanpeppers
jonathanpeppers force-pushed the jonathanpeppers-remove-runtime-config-parser branch from 9e9a739 to 26b467f Compare September 24, 2026 20:47
@jonathanpeppers
jonathanpeppers force-pushed the jonathanpeppers-remove-runtime-config-parser branch from 26b467f to ad3e216 Compare September 25, 2026 13:20
Base automatically changed from jonathanpeppers-workload-manifest-cleanup to main September 25, 2026 16:58
jonathanpeppers added a commit that referenced this pull request Sep 25, 2026
## Summary

- replace the Android workload manifest's Mono runtime and Mono AOT dependencies with the shared net10/current Mono tooling workloads still needed by `RuntimeConfigParserTask`
- retain the temporary `android-deps` installer so those shared tooling packs are provisioned in local and CI SDK layouts
- remove obsolete Mono/Emscripten manifest downloads and copying
- retain only the CoreCLR Android runtime packs required by the native build
- remove native Mono runtime paths, the empty `java-interop-mono.cc` input, and obsolete NativeAOT runtime include/link paths
- remove unused current-workload version and Darc dependencies while retaining the .NET 9 Mono manifest dependency used for NuGet source discovery
- temporarily skip the Release `net10.0-android36.1` CoreCLR minor-API compatibility case tracked by #12923; it should return when main moves to .NET 12 and the test advances to `net11.0-android37.1`

`RuntimeConfigParserTask` and its shared tooling dependency are removed separately in the stacked follow-up #12911.

Co-authored-by: Copilot App <[email protected]>
jonathanpeppers and others added 2 commits September 25, 2026 14:00
Remove the unconsumed RuntimeConfigParserTask output and the directly related native and test remnants left after MonoVM removal.

Co-authored-by: Copilot App <[email protected]>
Remove unreachable MonoVM environment parsing helpers and the native constant left unused by the runtime-config cleanup.

Co-authored-by: Copilot App <[email protected]>
@jonathanpeppers
jonathanpeppers force-pushed the jonathanpeppers-remove-runtime-config-parser branch from ad3e216 to 47aa4f0 Compare September 25, 2026 19:03
@simonrozsival
simonrozsival merged commit 7a170b1 into main Sep 26, 2026
44 checks passed
@simonrozsival
simonrozsival deleted the jonathanpeppers-remove-runtime-config-parser branch September 26, 2026 15:46
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.

3 participants