All Versions
Latest Version
Avg Release Cycle
Latest Release

Changelog History
Page 1

  • v4.10.1 Changes

    πŸ›  Bugfixes

    • Directly send delegate customer info when delegate is set (always sends cached CustomerInfo value) (#1828) via Josh Holtz (@joshdholtz)
  • v4.10.0 Changes

    πŸ†• New Features

    • πŸ†• New AdServices Integration (#1727) via Josh Holtz (@joshdholtz) ### πŸ›  Bugfixes
    • OfferingsManager: expose underlying error when ProductsManager returns an error (#1792) via NachoSoto (@NachoSoto)
    • βž• Add missing logs to ProductsFetcherSK2 (#1780) via beylmk (@beylmk) ### Other Changes
    • βœ… AdServices: Fix failing tests on main in iOS 12 and 13 - IOSAttributionPosterTests (#1797) via Josh Holtz (@joshdholtz)
    • 🍎 Invalidates gem caches and separates danger and macOS caches (#1798) via Cesar de la Vega (@vegaro)
    • Pass CircleCI branch to prepare_next_version job (#1796) via Toni Rico (@tonidero)
    • πŸ”§ Configure Danger, enforce labels (#1761) via Cesar de la Vega (@vegaro)
    • πŸ‘Œ Support for new fastlane internal plugin for automation (#1779) via Toni Rico (@tonidero)
  • v4.9.1 Changes

    πŸ›  Fixes:

    • CustomerInfoResponseHandler: return CustomerInfo instead of error if the response was successful (#1778) via NachoSoto (@NachoSoto)
    • πŸ–¨ Error logging: logErrorIfNeeded no longer prints message if it's the same as the error description (#1776) via NachoSoto (@NachoSoto)
    • πŸ›  fix another broken link in docC docs (#1777) via aboedo (@aboedo)
    • πŸ›  fix links to restorePurchase (#1775) via aboedo (@aboedo)
    • πŸ›  fix getProducts docs broken link (#1772) via aboedo (@aboedo)

    πŸ‘Œ Improvements:

    • Logger: wrap message in @autoclosure to avoid creating when LogLevel is disabled (#1781) via NachoSoto (@NachoSoto)

    Other changes:

    • πŸ‘• Lint: fixed SubscriberAttributesManager (#1774) via NachoSoto (@NachoSoto)
  • v4.9.0 Changes

    • ⚑️ Update Configuration.swift to include platformInfo. Used by PurchasesHybridCommon (#1760) via Joshua Liebowitz (@taquitos)
  • v4.8.0 Changes

    πŸ†• New API

    • EntitlementInfo: added isActiveInCurrentEnvironment and isActiveInAnyEnvironment (#1755) via NachoSoto (@NachoSoto)

    Other Changes

    • πŸ”§ Plumb platformInfo in Configuration for PHC use (#1757) via Joshua Liebowitz (@taquitos)
    • βž• added a log when autoSyncPurchases is disabled (#1749) via aboedo (@aboedo)
    • Re-fetch cached offerings and products after Storefront changes (3/4) (#1743) via Juanpe CatalΓ‘n (@Juanpe)
    • πŸ‘ clarify SK2 support (#1752) via NachoSoto (@NachoSoto)
    • 🌲 logErrorIfNeeded: also log message if present (#1754) via NachoSoto (@NachoSoto)
  • v4.7.0 Changes

    πŸ”„ Changes:

    • Replaced CustomerInfo.nonSubscriptionTransactions with a new non-StoreTransaction type (#1733) via NachoSoto (@NachoSoto)
    • πŸ— Purchases.configure: added overload taking a Configuration.Builder (#1720) via NachoSoto (@NachoSoto)
    • Extract Attribution logic out of Purchases (#1693) via Joshua Liebowitz (@taquitos)
    • βœ‚ Remove create alias (#1695) via Joshua Liebowitz (@taquitos)

    All attribution APIs can now be accessed from Purchases.shared.attribution.

    πŸ‘Œ Improvements:

    • πŸ‘Œ Improved purchasing logs, added promotional offer information (#1725) via NachoSoto (@NachoSoto)
    • 🌲 PurchasesOrchestrator: don't log attribute errors if there are none (#1742) via NachoSoto (@NachoSoto)
    • πŸš€ FatalErrorUtil: don't override fatalError on release builds (#1736) via NachoSoto (@NachoSoto)
    • ⚠ SKPaymentTransaction: added more context to warnings about missing properties (#1731) via NachoSoto (@NachoSoto)
    • πŸ†• New SwiftUI Purchase Tester example (#1722) via Josh Holtz (@joshdholtz)
    • ⚑️ update docs for showManageSubscriptions (#1729) via aboedo (@aboedo)
    • PurchasesOrchestrator: unify finish transactions between SK1 and SK2 (#1704) via NachoSoto (@NachoSoto)
    • SubscriberAttribute: converted into struct (#1648) via NachoSoto (@NachoSoto)
    • ⚠ CacheFetchPolicy.notStaleCachedOrFetched: added warning to docstring (#1708) via NachoSoto (@NachoSoto)
    • Clear cached offerings and products after Storefront changes (2/4) (#1583) via Juanpe CatalΓ‘n (@Juanpe)
    • ⚑️ ROT13: optimized initialization and removed magic numbers (#1702) via NachoSoto (@NachoSoto)

    πŸ›  Fixes:

    • πŸ”€ logIn/logOut: sync attributes before aliasing (#1716) via NachoSoto (@NachoSoto)
    • Purchases.customerInfo(fetchPolicy:): actually use fetchPolicy parameter (#1721) via NachoSoto (@NachoSoto)
    • PurchasesOrchestrator: fix behavior dealing with nil SKPaymentTransaction.productIdentifier during purchase (#1680) via NachoSoto (@NachoSoto)
    • PurchasesOrchestrator.handlePurchasedTransaction: always refresh receipt data (#1703) via NachoSoto (@NachoSoto)
  • v4.6.1 Changes

    πŸ› Bug fixes

    • EntitlementInfo.isActive returns true if requestDate == expirationDate (#1684) via beylmk (@beylmk)
    • πŸ›  Fixed usages of seealso (#1689) via NachoSoto (@NachoSoto)
    • πŸ›  Fixed ROT13.string thread-safety (#1686) via NachoSoto (@NachoSoto)
    • πŸ”€ PurchasesOrchestrator: replaced calls to syncPurchases with posting receipt for an individual product during SK2 purchases (#1666) via NachoSoto (@NachoSoto)
  • v4.6.0 Changes

    πŸš€ This release is compatible with Xcode 14 beta 1

    πŸ†• New Features

    • EntitlementInfos: added activeInAnyEnvironment and activeInCurrentEnvironment (#1647) via NachoSoto (@NachoSoto)

    In addition to, two new methods are added to allow detecting entitlements from sandbox and production environments:


    πŸ› Bug fixes

    • 0️⃣ MacDevice: changed usage of kIOMasterPortDefault to fix Catalyst compilation on Xcode 14 (#1676) via NachoSoto (@NachoSoto)
    • Result.init(value:error:): avoid creating error if value is provided (#1672) via NachoSoto (@NachoSoto)
  • v4.5.2 Changes

    πŸ‘ This version supports Xcode 14 beta 1

    • PurchasesOrchestrator.handleDeferredTransaction: check NSError.domain too (#1665) via NachoSoto (@NachoSoto)
    • πŸ”’ PurchasesOrchestrator: replaced manual Lock with Atomic (#1664) via NachoSoto (@NachoSoto)
    • CodableStrings.decoding_error: added underlying error information (#1668) via NachoSoto (@NachoSoto)
    • πŸ›  Fixed Xcode 14 compilation: avoid @available properties (#1661) via NachoSoto (@NachoSoto)
  • v4.5.1 Changes

    πŸ›  Fixes