[CarPlay] Update bindings up to Xcode 27.0 Beta 3#26112
Conversation
Bind the CarPlay APIs introduced in Xcode 27.0 Beta 3, including charging-station connections, map panels, multi-stop configuration, route details, overlay templates, and the new navigation updates. Add the safe managed CPNavigationWaypoint factory for name and address variants, re-expose inherited panel initializers required by the managed constructor model, and cover the waypoint factory with a focused runtime test. Keep CarPlay excluded from Mac Catalyst by moving the new Catalyst xtro findings into the existing ignore baseline. Remove the resolved iOS and Mac Catalyst todo files and update the Cecil documentation baseline for the newly exposed public API. Validated with full make world builds, clean xtro and Cecil runs, iOS 27 binding introspection, cross-platform introspection, and the focused CarPlay monotouch tests. App-size tests remain intentionally skipped by the beta-Xcode guard. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 10615ba8-fb55-45f5-b5ab-506b86b4cf03
There was a problem hiding this comment.
Pull request overview
Updates the CarPlay bindings and baselines to match APIs available through Xcode 27.0 Beta 3, while explicitly keeping CarPlay excluded from Mac Catalyst.
Changes:
- Added new CarPlay bindings (charging station connections, map panels, multi-stop routing, overlay/panel/navigation updates) and updated deprecations/availability.
- Added a safer
CPNavigationWaypoint.CreateWithVariantsmanaged wrapper plus focused runtime test coverage. - Cleaned up xtro-sharpie baselines by removing resolved
.todofiles and updating the existing Mac Catalyst ignore list and cecil documentation known-failures.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CarPlay.todo | Removed resolved todo baseline (moved/absorbed into ignore). |
| tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CarPlay.ignore | Updated header comment + added new ignored Mac Catalyst findings for CarPlay. |
| tests/xtro-sharpie/api-annotations-dotnet/iOS-CarPlay.todo | Removed resolved iOS todo baseline after binding the findings. |
| tests/monotouch-test/CarPlay/CPNavigationWaypointTest.cs | Added runtime test coverage for CreateWithVariants. |
| tests/cecil-tests/Documentation.KnownFailures.txt | Updated documentation baseline for newly bound CarPlay API surface. |
| src/CarPlay/CPNavigationWaypoint.cs | Added CreateWithVariants wrapper and deprecated the older Create signature for iOS 27+. |
| src/CarPlay/CPEnums.cs | Added CPChargingStationConnectionConnector enum. |
| src/carplay.cs | Added new CarPlay bindings (types/members/delegates) for Xcode 27 APIs. |
| [Export ("voltage", ArgumentSemantic.Strong)] | ||
| NSMeasurement<NSUnitElectricPotentialDifference> Voltage { get; } | ||
|
|
||
| [Export ("power", ArgumentSemantic.Strong)] | ||
| NSMeasurement<NSUnitPower> Power { get; } |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
✅ API diff for current PR / commitNET (empty diffs)✅ API diff vs stableNET (empty diffs)ℹ️ Generator diffGenerator Diff: vsdrops (html) vsdrops (raw diff) gist (raw diff) - Please review changes) Pipeline on Agent |
🔥 [CI Build #39efbc4] Test results 🔥Test results❌ Tests failed on VSTS: test results 3 tests crashed, 3 tests failed, 170 tests passed. Failures❌ dotnettests tests (MacCatalyst)🔥 Failed catastrophically on VSTS: test results - dotnettests_maccatalyst (no summary found). Html Report (VSDrops) Download ❌ introspection tests1 tests failed, 5 tests passed.Failed tests
Html Report (VSDrops) Download ❌ monotouch tests (iOS)2 tests failed, 17 tests passed.Failed tests
Html Report (VSDrops) Download ❌ monotouch tests (macOS)🔥 Failed catastrophically on VSTS: test results - monotouch_macos (no summary found). Html Report (VSDrops) Download ❌ msbuild tests🔥 Failed catastrophically on VSTS: test results - msbuild (no summary found). Html Report (VSDrops) Download Successes✅ assembly-processing: All 1 tests passed. Html Report (VSDrops) Download macOS tests✅ Tests on macOS Sonoma (14): All 5 tests passed. Html Report (VSDrops) Download Linux Build VerificationPipeline on Agent |
Summary
CPNavigationWaypoint.CreateWithVariantswrapper and focused runtime coverageValidation
make worldCPNavigationWaypointTest: 6/6 passed