Releases: tikhop/TPInAppReceipt
Releases · tikhop/TPInAppReceipt
Release 4.0.2
What's Changed
Full Changelog: 4.0.1...4.0.2
Release 4.0.1
What's Changed
- fix: Catalyst platform by @metadynesoftware and @tikhop in #138
Shoutout to @metadynesoftware for quickly checking the newest version and finding a compilation bug on the Catalyst platform.
Full Changelog: 4.0.0...4.0.1
Release 4.0.0
Breaking Changes
InAppReceiptclass replaced byAppReceipttypealias overContentInfo<SignedData<InAppReceiptPayload>>- Sync validation (
try receipt.verify()) replaced by async (await receipt.validate()) - Error types renamed:
IARError→AppReceiptError,ReceiptValidatorError originalAppVersionis nowString?(wasString)ageRatingis nowString?(wasString)- Minimum platforms raised: iOS 13+, macOS 10.15+, tvOS 13+
- Swift tools version: 6.0
- Removed Objective-C support
- Removed CocoaPods support
New
- Full PKCS#7 structure:
ContentInfo,SignedData,EncapsulatedContentInfo,SignerInfo,AlgorithmIdentifier, etc. - Composable validation via
@VerifierBuilderandReceiptValidator - X.509 certificate chain verification using swift-certificates
- Signature verification using swift-crypto
- New receipt fields:
environment,appStoreID,transactionDate,fulfillmentToolVersion,developerID,downloadID,installerVersionID InAppReceiptPayload.Environmentenum (.production,.sandbox,.xcode,.productionSandbox)InAppPurchase.Typeenum (.consumable,.nonConsumable,.autoRenewableSubscription,.nonRenewingSubscription)- Blocking API via
@_spi(Blocking):local_blocking,validate_blocking() - Pluggable decoder via
AppReceiptDecoder.Engineprotocol - DocC documentation
- Privacy manifest (
PrivacyInfo.xcprivacy) - visionOS support
Dependencies
- Removed: ASN1Swift
- Added: swift-asn1 1.5.0+, swift-certificates 1.15.1+, swift-crypto 4.2.0+
New Contributors
- @mikeakers made their first contribution in #127
This version wouldn't have been possible without @keepassium support! Thanks again!
Full Changelog: 3.4.1...4.0.0
Release 3.4.1
3.4.0
3.3.4
3.3.0
- Try different network interfaces (en0, en1) when getting the GUID on macOS for hash computation (Thanks to @mshibanami)
- Improve docs (Thanks to @nneubauer)