|
| 1 | +# Release Notes: Kapusch.StoreKit2.iOS v1.0.0 |
| 2 | + |
| 3 | +**Release Date**: March 8, 2026 |
| 4 | +**Status**: Release Candidate (RC) — v1.0.0-rc.1 |
| 5 | +**Previous Version**: 0.1.0 |
| 6 | +**NuGet Package**: [Kapusch.StoreKit2.iOS](https://www.nuget.org/packages/Kapusch.StoreKit2.iOS/) |
| 7 | + |
| 8 | +--- |
| 9 | + |
| 10 | +## Overview |
| 11 | + |
| 12 | +v1.0.0 marks the first **stable production release** of the StoreKit 2 iOS interop wrapper. This release promotes the library from pre-release status (0.1.0) to a production-ready API with comprehensive StoreKit 2 purchase, restoration, and subscription management capabilities. |
| 13 | + |
| 14 | +### Key Milestones |
| 15 | + |
| 16 | +- **Full StoreKit 2 API coverage**: Purchase, restore, entitlements, and transaction listeners |
| 17 | +- **Stable managed API**: Public interfaces locked for v1.0.0 compatibility |
| 18 | +- **Production-ready native wrapper**: Swift interop compiled for iOS device and simulator architectures |
| 19 | +- **NuGet.org availability**: Published to official NuGet.org registry |
| 20 | + |
| 21 | +--- |
| 22 | + |
| 23 | +## What's New in v1.0.0 |
| 24 | + |
| 25 | +### Core Features (Completed in 0.x → 1.0) |
| 26 | + |
| 27 | +#### 1. **Purchase Flow** |
| 28 | +- `IStoreKit2BillingClient.PurchaseAsync()` — perform a standard purchase |
| 29 | +- Direct integration with StoreKit 2 request/listener pattern |
| 30 | +- Full `CancellationToken` support for async cancellation |
| 31 | + |
| 32 | +#### 2. **Promotional Offers** |
| 33 | +- `IStoreKit2BillingClient.PurchaseWithPromotionalOfferAsync()` — purchase with promo code |
| 34 | +- `StoreKitPromotionalOfferSignature` — managed representation of offer metadata |
| 35 | +- Seamless interop with StoreKit 2 promotional flow |
| 36 | + |
| 37 | +#### 3. **Restoration & Entitlements** |
| 38 | +- `IStoreKit2BillingClient.RestoreAsync()` — restore previously purchased products |
| 39 | +- `IStoreKit2BillingClient.GetCurrentEntitlementsAsync()` — query active entitlements |
| 40 | +- Both methods support product ID filtering |
| 41 | + |
| 42 | +#### 4. **Offer Metadata** |
| 43 | +- `IStoreKit2BillingClient.GetOfferMetadataAsync()` — retrieve intro offer details |
| 44 | +- `StoreKitOfferMetadata` — structured offer pricing and period information |
| 45 | +- Support for intro offers and subscription pricing tiers |
| 46 | + |
| 47 | +#### 5. **Transaction Updates (Passive & Active)** |
| 48 | +- `IStoreKit2BillingClient.EnsureTransactionUpdatesListenerStarted()` — singleton long-lived listener to StoreKit 2 `Transaction.updates` |
| 49 | +- `IStoreKit2BillingClient.SubscribeToTransactionUpdates()` — subscribe to verified transaction callbacks |
| 50 | +- Supports both passive (background) and active (in-app) scenarios |
| 51 | + |
| 52 | +#### 6. **Entitlements Support** |
| 53 | +- Passive entitlements API for background validation |
| 54 | +- Promotional purchase APIs for flexible offer flows |
0 commit comments