Releases: lynnswap/StoreTransactionKit
Release list
v0.1.0-beta.4
StoreTransactionKit v0.1.0-beta.4
StoreTransactionKit centralizes verified StoreKit transaction handling, entitlement reconciliation, and Transaction.finish() authority in one process-owned, observable store.
This is a prerelease. Public API may change before the stable v0.1.0 release.
Requirements: Swift 6.3+; iOS 18.4+, macOS 15.4+, Mac Catalyst 18.4+, tvOS 18.4+, watchOS 11.4+, or visionOS 2.4+.
New Features
- Define an App Store Connect auto-renewable subscription group with typed product identifiers, mapping multiple durations or service levels to app-defined entitlements.
- Bridge the validated catalog to StoreKit product and subscription metadata through its subscription group ID, declaration-ordered Product IDs, and exact Product ID-to-entitlement lookup.
- Use
TransactionStoreto process app-supplied purchase results, monitor verified deliveries and subscription-status changes, reconcile unfinished transactions and current entitlements, query history, restore purchases, and perform a drained shutdown. - Gate features with
isEntitled(to:)while retaining explicit loading, failed, ready, and overridden entitlement states. - Automatically finish declared and upgraded same-group subscriptions, or provide an optional
TransactionStoreDelegatefor durable app-owned effects, out-of-group products, and background-failure notifications. - Handle valid same-group subscriptions unknown to the installed binary with an optional
UnrecognizedSubscriptionDelegate, choosing whether to leave them unfinished, finish them, or map them to a known entitlement. - Override entitlements for previews, debug builds, UI tests, or app-defined distribution environments without starting StoreKit.
- Test the production entitlement flow without a
.storekitconfiguration usingStoreTransactionKitTesting, including typed purchases, deterministic access loss, unrecognized subscriptions, arbitrary transaction deliveries, andTransactionStoreTestClock. - Diagnose transaction-store operations through typed errors with localized descriptions and recovery guidance.
Documentation
- Includes app-owned
Product.purchase(options:)andPurchaseIntentflows, automatic transaction monitoring, subscription-status reconciliation, unrecognized-product policies, entitlement overrides, and deterministic testing guidance.
v0.1.0-beta.3
StoreTransactionKit v0.1.0-beta.3
StoreTransactionKit centralizes verified StoreKit transaction handling, entitlement reconciliation, and Transaction.finish() authority in one process-owned, observable store.
This is a prerelease. Public API may change before the stable v0.1.0 release.
Requirements: Swift 6.3+; iOS 18.4+, macOS 15.4+, Mac Catalyst 18.4+, tvOS 18.4+, watchOS 11.4+, or visionOS 2.4+.
New Features
- Define an App Store Connect auto-renewable subscription group with typed product identifiers, mapping multiple durations or service levels to app-defined entitlements.
- Bridge the validated catalog to StoreKit product and subscription metadata through its subscription group ID, declaration-ordered Product IDs, and exact Product ID-to-entitlement lookup.
- Use
TransactionStoreto monitor verified deliveries, reconcile unfinished transactions and current entitlements, process purchases, query history, restore purchases, and perform a drained shutdown. - Gate features with
isEntitled(to:)while retaining explicit loading, failed, ready, and overridden entitlement states. - Automatically finish declared and upgraded same-group subscriptions, or provide an optional
TransactionStoreDelegatefor durable app-owned effects, out-of-group products, and background-failure notifications. - Handle valid same-group subscriptions unknown to the installed binary with an optional
UnrecognizedSubscriptionDelegate, choosing whether to leave them unfinished, finish them, or map them to a known entitlement. - Override entitlements for previews, debug builds, UI tests, or app-defined distribution environments without starting StoreKit.
- Test the production entitlement flow without a
.storekitconfiguration usingStoreTransactionKitTesting, including typed purchases, deterministic access loss, unrecognized subscriptions, arbitrary transaction deliveries, andTransactionStoreTestClock. - Diagnose transaction-store operations through typed errors with localized descriptions and recovery guidance.
Documentation
- Includes a SwiftUI quick start, App Store Connect catalog mapping, StoreKit product metadata integration, subscription-level and app-feature modeling guidance, unrecognized-product policies, transaction lifecycle semantics, entitlement overrides, and deterministic testing guidance.
v0.1.0-beta.2
StoreTransactionKit v0.1.0-beta.2
StoreTransactionKit centralizes verified StoreKit transaction handling, entitlement reconciliation, and Transaction.finish() authority in one process-owned, observable store.
This is a prerelease. Public API may change before the stable v0.1.0 release.
Requirements: Swift 6.3+; iOS 18.4+, macOS 15.4+, Mac Catalyst 18.4+, tvOS 18.4+, watchOS 11.4+, or visionOS 2.4+.
New Features
- Define an App Store Connect auto-renewable subscription group with typed product identifiers, mapping multiple durations or service levels to app-defined entitlements.
- Use
TransactionStoreto monitor verified deliveries, reconcile unfinished transactions and current entitlements, process purchases, query history, restore purchases, and perform a drained shutdown. - Gate features with
isEntitled(to:)while retaining explicit loading, failed, ready, and overridden entitlement states. - Automatically finish catalog-managed subscriptions, or provide an optional
TransactionStoreDelegatefor durable app-owned effects, unmanaged products, and background-failure notifications. - Override entitlements for previews, debug builds, UI tests, or app-defined distribution environments without starting StoreKit.
- Test the production entitlement flow without a
.storekitconfiguration usingStoreTransactionKitTesting, typed synthetic purchases, andTransactionStoreTestClock.
Documentation
- Includes a SwiftUI quick start, App Store Connect catalog mapping, transaction lifecycle semantics, entitlement overrides, and deterministic testing guidance.
v0.1.0-beta.1
StoreTransactionKit v0.1.0-beta.1
New Features
- Introduces
TransactionStore, a process-owned, observable StoreKit 2 transaction pipeline that verifies transactions, applies app-owned durable handling, and finishes transactions only after handling succeeds. - Provides typed current-entitlement state with distinct resolving and resolved-empty states, plus refresh, history, explicit restore, direct purchase-result processing, background failure reporting, and controlled shutdown.
- Exposes immutable verified transaction snapshots containing purchase, subscription, offer, storefront, pricing, revocation, and signed-revision metadata.
- Supports iOS, Mac Catalyst, macOS, tvOS, watchOS, and visionOS, with platform-appropriate purchase entry points.
Documentation
- Documents lifecycle ownership, at-least-once delivery, restore and cancellation behavior, multi-platform purchase integration, and deterministic app-hosted StoreKit testing.