Skip to content

ref(examples): Merge SwiftPM apps using XcodeGen - #466

Merged
philprime merged 2 commits into
mainfrom
philprime/ref/merge-swiftpm-examples
Oct 11, 2026
Merged

philprime merged 2 commits into
mainfrom
philprime/ref/merge-swiftpm-examples

Conversation

@philprime

@philprime philprime commented Oct 11, 2026 •

Copy link
Copy Markdown
Member

Replace the separate iOS and macOS SwiftPM examples with one Example-SPM app covering every platform supported by TPPDF. Share the example factories, resources, local package dependency, and SwiftUI interface. Display PDFs through PDFKit on iOS, macOS, Mac Catalyst, tvOS, and visionOS; watchOS reports generation success or errors without a viewer.

Maintain the app through an XcodeGen specification, with the generated project ignored. Add XcodeGen to the Brewfile and Makefile targets for generation and all six platform builds. Update the example instructions accordingly.

Compatibility
The example targets iOS/Mac Catalyst 16+, macOS 12+, tvOS 16+, visionOS 1+, and watchOS 9+. Library deployment targets and Carthage files are unchanged. tvOS and watchOS use stack navigation, with scrollable generation controls on watchOS.

Verification
All six make build-example-spm-<platform> targets passed. Launched and inspected the app on macOS and iPhone, iPad, tvOS, visionOS, and watchOS simulators. Confirmed macOS PDF output and inspected the default PDF preview on iPad and visionOS.

Focused macOS generation tests and make test-macos passed with 243 unit tests and 21 integration tests. make test-watchos WATCHOS_SIMULATOR_OS=27.0 WATCHOS_DEVICE_NAME='Apple Watch Series 12 (46mm)' passed with 236 tests, including PDF data/file generation. Lint, whitespace checks, and commit hooks passed. The package testing flag is restored to disabled.

Existing PDFError Sendable warnings, Xcode/App Intents diagnostics, and invalid-PDF CoreGraphics diagnostics remain. Physical devices and exhaustive navigation/PDF interactions were not tested.

This branch started independently from freshly fetched origin/main and does not include the CocoaPods, package-testing, or Carthage cleanup changes.

@philprime
philprime marked this pull request as ready for review October 11, 2026 16:42
@philprime
philprime enabled auto-merge (squash) October 11, 2026 16:42
@philprime
philprime merged commit 9a1e2e6 into main Oct 11, 2026
10 checks passed
@philprime
philprime deleted the philprime/ref/merge-swiftpm-examples branch October 11, 2026 16:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant