Unclaimed project
Are you a maintainer of TPInAppReceipt? Claim this project to take control of your public changelog and roadmap.
Claim this projectChangelog
TPInAppReceipt
Reading and Validating In App Purchase Receipt Locally.
Back to changelogNew
Release 4.0.0
Breaking Changes
InAppReceipt class replaced by AppReceipt typealias over ContentInfo<SignedData<InAppReceiptPayload>>
- Sync validation (
try receipt.verify()) replaced by async (await receipt.validate())
- Error types renamed:
IARError → AppReceiptError, ReceiptValidatorError
originalAppVersion is now String? (was String)
ageRating is now String? (was String)
- 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 and
@VerifierBuilder
ReceiptValidator
X.509 certificate chain verification using swift-certificatesSignature verification using swift-cryptoNew receipt fields: environment, appStoreID, transactionDate, fulfillmentToolVersion, developerID, downloadID, installerVersionIDInAppReceiptPayload.Environment enum (.production, .sandbox, .xcode, .productionSandbox)InAppPurchase.Type enum (.consumable, .nonConsumable, .autoRenewableSubscription, .nonRenewingSubscription)Blocking API via @_spi(Blocking): local_blocking, validate_blocking()Pluggable decoder via AppReceiptDecoder.Engine protocolDocC documentationPrivacy manifest (PrivacyInfo.xcprivacy)visionOS supportDependencies
New Contributors
- @mikeakers made their first contribution in https://github.com/tikhop/TPInAppReceipt/pull/127
This version wouldn't have been possible without @KeePassium support! Thanks again!
Full Changelog: https://github.com/tikhop/TPInAppReceipt/compare/3.4.1...4.0.0