Following the earlier launch, I obtained phrase that Apple had added a brand new type of gross sales receipt which is used for IAP testing. This launch provides help for these.
- NEW: Added help for indefinite size encoding for containers
- NEW: Added help for decoding date strings with a UTC offset as a substitute of Z.
For first change was completed in DTFoundation which comprises DTASN1, our ASN.1 decoder. When writing an ASN.1 file you’ll usually know all lengths of all containers and primitive values and so you possibly can specify the size following every tag. Apple was doing so in all gross sales receipts up to now and we didn’t have any difficulty with it.
In Xcode 12, Apple added a brand new method of testing In-App purchases (see Introducing StoreKit Testing in Xcode WWDC 2020 discuss for more information). This broke parsing.
They began utilizing indefinite size encoding for numerous container components, together with however not restricted to the PKCS7 container. As soon as I had carried out that, I discovered that in addition they had a sure date with
+0300 as timezone, as a substitute of
Z (for UTC) as we had beforehand encountered. So I wanted so as to add this variant as properly.
The replace was tagged on GitHub (which additionally serves as new launch for Swift Bundle Supervisor) and can also be out there by way of Cocoapods.
Additionally printed on Medium.