[AutomaticAssessmentConfiguration] Update bindings up to Xcode 27 Beta 3#25985
Conversation
Xcode 27 deprecates AEAssessmentConfiguration.allowsAccessibilitySpeech in
favor of allowsAccessibilitySpokenContent
(API_DEPRECATED_WITH_REPLACEMENT ("allowsAccessibilitySpokenContent",
ios(14.0, 27.0)) API_UNAVAILABLE(macos, macCatalyst)). Add the corresponding
[Deprecated] attribute so the managed binding matches the native header and
resolve the two entries in iOS-AutomaticAssessmentConfiguration.todo.
The property is bound on both iOS and Mac Catalyst ([MacCatalyst (14, 0)]),
so the deprecation is applied to both platforms with an identical message.
The paired Mac Catalyst [Deprecated] is required (not just iOS): the
cross-assembly cecil test FindMissingObsoleteAttributes flags any API that is
obsoleted on some platforms but still supported on another, so an iOS-only
deprecation would leave AllowsAccessibilitySpeech supported-but-not-obsoleted
on Mac Catalyst and fail that test.
Remove the now-empty iOS-AutomaticAssessmentConfiguration.todo file.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
Updates the AutomaticAssessmentConfiguration bindings to match Xcode 27 Beta 3’s deprecation of AEAssessmentConfiguration.allowsAccessibilitySpeech in favor of allowsAccessibilitySpokenContent, ensuring managed API availability/obsolete metadata stays consistent with Apple headers and cross-assembly cecil checks.
Changes:
- Add paired
[Deprecated]attributes (iOS + Mac Catalyst) toAEAssessmentConfiguration.AllowsAccessibilitySpeechwith a replacement message pointing toAllowsAccessibilitySpokenContent. - Remove the resolved xtro-sharpie todo entries by deleting the
iOS-AutomaticAssessmentConfiguration.todofile.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
src/automaticassessmentconfiguration.cs |
Adds iOS/MacCatalyst deprecation annotations for AllowsAccessibilitySpeech with a replacement hint. |
tests/xtro-sharpie/api-annotations-dotnet/iOS-AutomaticAssessmentConfiguration.todo |
Removes the resolved xtro todo file now that the missing [Deprecated] annotations are in place. |
This comment has been minimized.
This comment has been minimized.
✅ [PR Build #5265d31] Build passed (Detect API changes) ✅Pipeline on Agent |
✅ [PR Build #5265d31] Build passed (Build packages) ✅Pipeline on Agent |
✅ 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 |
✅ [PR Build #5265d31] Build passed (Build macOS tests) ✅Pipeline on Agent |
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.
🔥 [CI Build #5265d31] Test results 🔥Test results❌ Tests failed on VSTS: test results 1 tests crashed, 0 tests failed, 191 tests passed. Failures❌ Tests on macOS Golden Gate (27) tests [attempt 3]🔥 Failed catastrophically on VSTS: test results - mac_golden_gate (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 |
Xcode 27 deprecates AEAssessmentConfiguration.allowsAccessibilitySpeech in favor of allowsAccessibilitySpokenContent
(API_DEPRECATED_WITH_REPLACEMENT ("allowsAccessibilitySpokenContent", ios(14.0, 27.0)) API_UNAVAILABLE(macos, macCatalyst)). Add the corresponding [Deprecated] attribute so the managed binding matches the native header and resolve the two entries in iOS-AutomaticAssessmentConfiguration.todo.
The property is bound on both iOS and Mac Catalyst ([MacCatalyst (14, 0)]), so the deprecation is applied to both platforms with an identical message. The paired Mac Catalyst [Deprecated] is required (not just iOS): the cross-assembly cecil test FindMissingObsoleteAttributes flags any API that is obsoleted on some platforms but still supported on another, so an iOS-only deprecation would leave AllowsAccessibilitySpeech supported-but-not-obsoleted on Mac Catalyst and fail that test.
Remove the now-empty iOS-AutomaticAssessmentConfiguration.todo file.