[HealthKit] Update bindings up to Xcode 27.0 Beta 3#26164
Conversation
Bind the new menopausal state enum and reproductive health category type identifiers introduced in Xcode 27.0 Beta 3. Add HKLiveWorkoutZoneUpdate with version-correct iOS, Mac Catalyst, and macOS availability, and expose its nullable last processed sample date. Add the typed HKHealthStore earliest-authorized-sample-date query, including nullable callback results and an async wrapper. Remove the resolved iOS, macOS, and Mac Catalyst xtro todo files. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 98f85a00-e18f-4ca6-aca8-8db99371c729
There was a problem hiding this comment.
Pull request overview
Updates the HealthKit binding surface to match Xcode 27.0 Beta 3, adding newly introduced enums/identifiers and new APIs (including async wrappers), and cleaning up xtro-sharpie todo tracking now that the APIs are bound.
Changes:
- Added
HKCategoryValueMenopausalStateand newHKCategoryTypeIdentifierfields for reproductive health categories. - Added
HKLiveWorkoutZoneUpdateandHKHealthStore.getEarliestAuthorizedSampleDateForTypes:completion:with async support. - Removed resolved HealthKit xtro-sharpie
.todofiles for iOS/macOS/Mac Catalyst.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tests/xtro-sharpie/api-annotations-dotnet/macOS-HealthKit.todo | Removed resolved xtro todo entries now covered by bindings. |
| tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-HealthKit.todo | Removed resolved xtro todo entries now covered by bindings. |
| tests/xtro-sharpie/api-annotations-dotnet/iOS-HealthKit.todo | Removed resolved xtro todo entries now covered by bindings. |
| src/HealthKit/Enums.cs | Added HKCategoryValueMenopausalState enum with Xcode 27 availability. |
| src/healthkit.cs | Added new HealthKit API bindings: delegate + HKHealthStore method (async-enabled), identifiers, and HKLiveWorkoutZoneUpdate. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Skip the new Xcode 27 reproductive-health category identifiers when monotouch tests run on an older OS. The managed enum values are present when building with Xcode 27, but their native field symbols are unavailable before OS 27. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 98f85a00-e18f-4ca6-aca8-8db99371c729
✅ 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 #ea39afd] Test results 🔥Test results❌ Tests failed on VSTS: test results 3 tests crashed, 1 tests failed, 174 tests passed. Failures❌ interdependent-binding-projects tests🔥 Failed catastrophically on VSTS: test results - interdependent-binding-projects (no summary found). Html Report (VSDrops) Download ❌ linker tests (iOS)🔥 Failed catastrophically on VSTS: test results - linker_ios (no summary found). Html Report (VSDrops) Download ❌ xtro tests🔥 Failed catastrophically on VSTS: test results - xtro (no summary found). Html Report (VSDrops) Download ❌ Tests on macOS Tahoe (26) tests1 tests failed, 4 tests passed.Failed tests
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
HKLiveWorkoutZoneUpdateand the typedHKHealthStoreearliest-authorized-sample-date API, including async supportValidation
make worldmake -C tests/xtro-sharpie gen-all+dotnet-classify(sanity passed)make -C tests/cecil-tests run-tests(112 passed, 4 skipped)AppSizeTestrun (0 failed; 16 skipped because Xcode is beta)