Bugfixes
PurchasesOrchestrator
: updateCustomerInfoManager
cache after processing transactions (#2676) via NachoSoto (@NachoSoto)ErrorResponse
: drastically improved error messages, no more "unknown error"s (#2660) via NachoSoto (@NachoSoto)PaywallExtensions
: post purchases withOffering
identifier (#2645) via NachoSoto (@NachoSoto)- Support
product_plan_identifier
for purchased subscriptions fromGoogle Play
(#2654) via Josh Holtz (@joshdholtz)
Performance Improvements
copy(with: VerificationResult)
: optimization to avoid copies (#2639) via NachoSoto (@NachoSoto)
Other Changes
ETagManager
: refactored e-tag creation and tests (#2671) via NachoSoto (@NachoSoto)getPromotionalOffer
: returnErrorCode.ineligibleError
if receipt is not found (#2678) via NachoSoto (@NachoSoto)TimingUtil
: removed slow purchase logs (#2677) via NachoSoto (@NachoSoto)CI
: changedCodecov
toinformational
(#2670) via NachoSoto (@NachoSoto)LoadShedderIntegrationTests
: verify requests are actually handled by load shedder (#2663) via NachoSoto (@NachoSoto)ETagManager.httpResultFromCacheOrBackend
: return response headers (#2666) via NachoSoto (@NachoSoto)Integration Tests
: added tests to verify 304 behavior (#2659) via NachoSoto (@NachoSoto)HTTPClient
: disableURLSession
cache (#2668) via NachoSoto (@NachoSoto)- Documented
HTTPStatusCode.isSuccessfullySynced
(#2661) via NachoSoto (@NachoSoto) NetworkError.signatureVerificationFailed
: added status code to erroruserInfo
(#2657) via NachoSoto (@NachoSoto)HTTPClient
: improved log for failed requests (#2669) via NachoSoto (@NachoSoto)ETagManager
: added new verbose logs (#2656) via NachoSoto (@NachoSoto)Signature Verification
: added test-only log for debugging invalid signatures (#2658) via NachoSoto (@NachoSoto)- Fixed
HTTPResponse.description
(#2664) via NachoSoto (@NachoSoto) - Changed
Logger
to useos_log
(#2608) via NachoSoto (@NachoSoto) MainThreadMonitor
: increased threshold (#2662) via NachoSoto (@NachoSoto)debugRevenueCatOverlay
: displayreceiptURL
(#2652) via NachoSoto (@NachoSoto)PurchaseTester
: added ability to displaydebugRevenueCatOverlay
(#2653) via NachoSoto (@NachoSoto)debugRevenueCatOverlay
: ability to close onmacOS
/Catalyst
(#2649) via NachoSoto (@NachoSoto)debugRevenueCatOverlay
: added support formacOS
(#2648) via NachoSoto (@NachoSoto)LoadShedderIntegrationTests
: enable signature verification (#2655) via NachoSoto (@NachoSoto)ImageSnapshot
: fixed Xcode 15 compilation (#2651) via NachoSoto (@NachoSoto)OfferingsManager
: don't clear offerings cache timestamp when request fails (#2359) via NachoSoto (@NachoSoto)StoreKitObserverModeIntegrationTests
: added test for posting renewals (#2590) via NachoSoto (@NachoSoto)- Always initialize
StoreKit2TransactionListener
even on SK1 mode (#2612) via NachoSoto (@NachoSoto) ErrorUtils.missingReceiptFileError
: added receipt URLuserInfo
context (#2650) via NachoSoto (@NachoSoto)- Added
.xcprivacy
for Xcode 15 (#2619) via NachoSoto (@NachoSoto) Trusted Entitlements
: added debug log withResponseVerificationMode
(#2647) via NachoSoto (@NachoSoto)debugRevenueCatOverlay
: simplified title (#2641) via NachoSoto (@NachoSoto)- Simplified
Purchases.updateAllCachesIfNeeded
(#2626) via NachoSoto (@NachoSoto) HTTPResponseTests
: fixed disabled test (#2643) via NachoSoto (@NachoSoto)- Add
InternalDangerousSettings.forceSignatureFailures
(#2635) via NachoSoto (@NachoSoto) IntegrationTests
: explicitStoreKit 1
mode (#2636) via NachoSoto (@NachoSoto)Signing
: removed API for loading key from a file (#2638) via NachoSoto (@NachoSoto)
To view new release, visit https://github.com/RevenueCat/purchases-ios/releases/tag/4.22.1