Bump Xamarin.Android.Tools.AndroidSdk to 1.0.189-preview.58 - #305
Conversation
There was a problem hiding this comment.
Pull request overview
Updates the repo’s pinned Android SDK tooling dependency (Xamarin.Android.Tools.AndroidSdk) to a newer darc/maestro-provided build, keeping MAUI CLI/Android tooling aligned with upstream dotnet/android.
Changes:
- Bump
Xamarin.Android.Tools.AndroidSdkfrom1.0.155-preview.137to1.0.179-ci.main.323. - Update the tracked upstream
dotnet/androidSHA in dependency metadata. - Remove an incidental trailing blank line in
NuGet.config.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| NuGet.config | Removes a trailing blank line (no functional feed changes). |
| eng/Versions.props | Updates the XamarinAndroidToolsAndroidSdkVersion property to the new version. |
| eng/Version.Details.xml | Updates dependency version and SHA for dependency flow tracking. |
Expert Code Review — PR #305Methodology: 3 independent reviewers with adversarial consensus Findings1 finding posted as inline comment (1 critical)
Discarded FindingsThe following were flagged by only 1 reviewer and did not achieve consensus:
CI Status
Test CoverageNo tests are affected — this PR changes only infrastructure version pins with no source code modifications. The existing test suite will validate API compatibility once the package is resolvable.
|
There was a problem hiding this comment.
Expert Code Review: 1 critical finding posted inline. See the lean summary comment for full details.
Generated by Expert Code Review (auto) for issue #305 · ● 6.6M
….179-ci.main.323 Channel: .NET 11.0.1xx SDK Repo: dotnet/android e8fb4bc8...9e7ba6ea (android-tools submodule: 2fd1240...3c95718) Notable upstream changes: new AvdManagerRunner.ListDeviceProfilesAsync() API, API 37 (CinnamonBun) added to KnownVersions, and several emulator launch robustness fixes. No CLI code changes required — the pinned API surface is backward-compatible with our current usage of AdbRunner, AvdManagerRunner, EmulatorRunner, SdkManager and JdkInfo. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The Xamarin.Android.Tools.AndroidSdk package is classified as non-shipping by dotnet/android (see dotnet/android#11281, which fixed the NonShipping metadata casing in May 2026). Non-shipping packages publish to the dotnet11-transport Azure DevOps feed rather than dotnet11, so the existing public feed list cannot resolve the 1.0.179-ci.main.323 pin added in this branch. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
9525fa0 to
bd325a2
Compare
Packages on the dotnet11-transport feed are signed but not long-term timestamped, which Arcade's strict signature validation promotes to error NU3027 on Windows CI runners. Suppress the warning so restore succeeds. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Move from 1.0.179-ci.main.323 (CI build, signed with test cert, not timestamped) to 1.0.189-preview.58, which is production-signed by Microsoft Corporation with a DigiCert timestamp countersignature and passes 'dotnet nuget verify' cleanly. Source: dotnet/android release/11.0.1xx-preview6 @ 2114bc81 Channel: .NET 11.0.1xx SDK Preview 6 Also drop the NU3027 NoWarn added in 624bc76: now that we're on a properly timestamped package, the warning no longer fires and we avoid disabling long-term signature validation across the repo. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
PR #305 added the dotnet11-transport feed to NuGet.config but the AI configuration files were not updated to reflect this change. Co-authored-by: GitHub Copilot <copilot@github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Summary
Bump
Xamarin.Android.Tools.AndroidSdkfrom1.0.155-preview.137to1.0.189-preview.58.Source:
dotnet/androidrelease/11.0.1xx-preview6@2114bc81.Channel:
.NET 11.0.1xx SDK Preview 6.Compare with previous pin: dotnet/android@e8fb4bc...2114bc8
Notable upstream changes
Actionable diff lives in the
external/xamarin-android-toolssubmodule. Highlights:AvdManagerRunner.ListDeviceProfilesAsync()API (dotnet/android-tools#325) — returns all AVD device profiles fromavdmanager list device.HasExited/ExitCodeon the launcher fork pattern.CLI follow-up
No CLI code changes in this PR.
AdbRunner,AvdManagerRunner,EmulatorRunner,SdkManager,SdkPackage,AvdInfo,JdkInfo,SdkBootstrap*) still present with the same public surface. Confirmed viaPublicAPI.{Shipped,Unshipped}.txtat the new SHA and a clean local Release build.EmulatorRunner's process handling; our ownAvdManager.cs(L275-318) wraps our ownProcess.Start, so those fixes don't simplify our code.ListDeviceProfilesAsync()looks tempting for the emulator device picker, but its output (record AvdDeviceProfile(string Id)with no friendly name) would regress the current curated 7-profile UX. Filed as CLI: consider adopting AvdManagerRunner.ListDeviceProfilesAsync() for emulator device picker #306 for follow-up (hybrid picker with an "All device profiles…" opt-in).Feed / signing notes
The package is classified non-shipping by
dotnet/android(fixed in dotnet/android#11281, May 2026), so it now publishes todotnet11-transportrather thandotnet11. This PR addsdotnet11-transporttoNuGet.configso public restore can resolve the pin.Earlier iterations of the branch (see commit history) pinned to
1.0.179-ci.main.323, a CI build that is signed only with theMicrosoft Testing Root CA 2010test cert and lacks an RFC 3161 timestamp countersignature. That triggeredNU3027on Windows CI. Moving to1.0.189-preview.58— which is production-signed byCN=Microsoft Corporationvia DigiCert with a timestamp — removes the need for that workaround and restores strict signature validation.Validation
dotnet restore src/Cli/Cli.slnf— ✅ resolves1.0.189-preview.58fromdotnet11-transportdotnet build src/Cli/Cli.slnf -c Release— ✅ 0 warnings, 0 errorsdotnet nuget verifyon the package — ✅ passes with noNU3027