Repository navigation
9.0.1
Repackages upstream Google ML Kit 9.0.0. No ML Kit version change — every
fix here is in this wrapper.
This is the first release where text recognition, pose detection and selfie
segmentation work at all, where a single product can be adopted without
undefined symbols, where the Simulator works on Apple Silicon, and where App
Store Connect accepts the upload.
Fixed
| Issue | What was wrong |
|---|---|
| #106, #109 | Text recognition never worked. LatinOCRResources.bundle and nine other model bundles were never published — every OCR model, both pose detection models and both selfie segmentation models. TextRecognizer threw MLKTextRecognizerInternalErrorCreationFailure, "Invalid model path.". 18 bundles now ship, up from one. |
| #110 | A single product could not be adopted. Seven .library products omitted a transitive framework, so adopting one on its own gave undefined symbols (_OBJC_CLASS_$_MLKXenoDetectorBase and friends). |
| #112 | No arm64 iOS Simulator slice. Xcode 26 dropped Rosetta simulators, so the package was unusable in the Simulator on Apple Silicon. The slice is now synthesised from the device slice; remove any EXCLUDED_ARCHS[sdk=iphonesimulator*] = arm64 you added. |
| #102 | ITMS-91065: Missing signature on upload. GoogleToolboxForMac and SSZipArchive now ship as library-type XCFrameworks, which are linked and never embedded, so Apple's scanner has nothing to ask about. |
| #99 | Missing dSYMs — expected, and now documented in the README. |
Also fixed, unreported: MLKitNaturalLanguage shipped an Info.plist with no
MinimumOSVersion, CFBundleSupportedPlatforms or
UIRequiredDeviceCapabilities, so nobody using the language APIs could
upload a build (App Store Connect errors 90530 and 90208). Framework binaries
that were bare Mach-O objects are now ar archives, so Xcode links them
statically instead of relinking them into dead-stripped dylibs.
Upgrading
.package(url: "https://github.com/d-date/google-mlkit-swiftpm", from: "9.0.1")9.0.0-1 was a SemVer pre-release, which from: "9.0.0" never selects. 9.0.1
reaches existing consumers.
Two steps are still required and still manual:
-ObjCand-all_loadin Other Linker Flags.- The resource bundles for your modules. Swift Package Manager cannot carry
them inside a binary target../scripts/download_bundles.sh 9.0.1fetches
them all; the README lists which module needs which.
Verified
- ML Kit runs on the arm64 Simulator: text recognition reads rendered text,
barcode scanning round-trips a Code 128, language identification returnsde - The Example app launches on the Simulator and archives for device with every
model bundle present and nothing linked dynamically - All 30 XCFrameworks carry
ios-arm64_x86_64-simulator - An App Store Connect upload passed Apple's validation with no errors and
reachedVALID
🤖 Generated with Claude Code