[CoreGraphics] Update bindings up to Xcode 27.0 Beta 5 - #26436
Conversation
Bind the new tagged-PDF authoring APIs, including CGPDFStructureElement and CGPDFMarkedContentItem lifetime management, CGContextPDF structure and marked-content operations, and CGPdfTagType.Artifact with exact platform availability. Add iOS 27 runtime coverage for structure trees, structural and non-structural marked content, object references, string setters, null handling, and tag names. Remove the resolved iOS, macOS, and Mac Catalyst xtro todo files. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: fede1eb3-9fd9-489a-975a-39b46534fa26
There was a problem hiding this comment.
Pull request overview
This pull request updates the CoreGraphics bindings to match Xcode 27.0 Beta 5 by adding managed wrappers and P/Invoke surface for tagged-PDF authoring (structure tree, marked content, and object references), along with runtime tests and xtro todo cleanup.
Changes:
- Introduce
CGPDFStructureElementandCGPDFMarkedContentItemmanaged wrappers and wire them intoCGContextPDFtagged-PDF authoring operations. - Add
CGPdfTagType.Artifactwith platform availability and a corresponding monotouch runtime test. - Add new monotouch runtime coverage for tagged-PDF authoring and remove resolved CoreGraphics xtro todo files.
Reviewed changes
Copilot reviewed 10 out of 10 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tests/xtro-sharpie/api-annotations-dotnet/macOS-CoreGraphics.todo | Removed resolved xtro todo entries for CoreGraphics (file deleted). |
| tests/xtro-sharpie/api-annotations-dotnet/MacCatalyst-CoreGraphics.todo | Removed resolved xtro todo entries for CoreGraphics (file deleted). |
| tests/xtro-sharpie/api-annotations-dotnet/iOS-CoreGraphics.todo | Removed resolved xtro todo entries for CoreGraphics (file deleted). |
| tests/monotouch-test/CoreGraphics/PdfTagTypeTest.cs | Adds runtime verification for CGPdfTagType.Artifact on supported platforms. |
| tests/monotouch-test/CoreGraphics/PDFStructureElementTest.cs | Adds runtime coverage for tagged-PDF authoring workflows and argument validation. |
| src/frameworks.sources | Includes new CoreGraphics source files in the build. |
| src/CoreGraphics/CGPDFStructureElement.cs | Adds managed wrapper for PDF structure tree elements (create, retain/release, setters, and child/marked-content attachment). |
| src/CoreGraphics/CGPDFMarkedContentItem.cs | Adds managed wrapper for marked-content items returned by PDF context operations. |
| src/CoreGraphics/CGEnums.cs | Adds CGPdfTagType.Artifact = 900 with platform availability metadata. |
| src/CoreGraphics/CGContextPDF.cs | Adds tagged-PDF authoring APIs: structure-tree root child attachment, marked-content begin/end, and object-reference begin/end. |
💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.
✅ 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 |
This comment has been minimized.
This comment has been minimized.
🚀 [CI Build #a60c5f5] Test results 🚀Test results✅ All tests passed on VSTS: test results. 🎉 All 196 tests passed 🎉 Tests counts✅ assembly-processing: All 1 tests passed. Html Report (VSDrops) Download macOS tests✅ Tests on macOS Sonoma (14): All 5 tests passed. [attempt 2] Html Report (VSDrops) Download Linux Build VerificationPipeline on Agent |
Summary
CGPDFStructureElementandCGPDFMarkedContentItemwrappers.CGContextPDFstructure-tree, marked-content, and object-reference operations.CGPdfTagType.Artifactwith exact iOS, macOS, Mac Catalyst, and tvOS availability.Validation
make worldiOSApiCtorInitTest/CLLocationButton; all fixtures before it and every remaining fixture run individually passed.AppSizeTest: 0 failures; all 16 cases were intentionally skipped by the existing beta-Xcode policy.