Skip to main content
Before releasing new versions or tagging releases for the Swift Package Index (SPI), verify that all packaging requirements pass.

Validation Checklist

1

No Unsafe Linker Flags

Ensure Package.swift contains no unsafeFlags or local hardcoded path linkers. Multi-arch binaries must use binaryTarget(name: "TursoSDK", url: ..., checksum: ...).
2

Verify `.spi.yml` Targets

Check that .spi.yml builds both macOS and iOS targets:
.spi.yml
3

Verify Multi-Arch XCFramework Slices

Run lipo inspection to ensure universal binaries are included:
  • macos-arm64 + macos-x86_64
  • ios-arm64
  • ios-arm64-simulator + ios-x86_64-simulator
4

Clean Environment Xcode Build Test

Verify that clean machine clones resolve and build successfully:
5

Public Repository & SPI Claim

The repo must be public before SPI can index it. Add it at https://swiftpackageindex.com/add-a-package with the GitHub URL.
6

GitHub Actions Billing

Confirm GitHub Actions billing is unlocked (.github/workflows/swift.yml). If builds fail immediately with a billing/lock message, resolve it in repository settings before release.