Skip to content

StoreKit 2: don't finish transactions in observer mode#2053

Merged
NachoSoto merged 3 commits into
mainfrom
sk2-finish-transactions
Nov 17, 2022
Merged

StoreKit 2: don't finish transactions in observer mode#2053
NachoSoto merged 3 commits into
mainfrom
sk2-finish-transactions

Conversation

@NachoSoto

Copy link
Copy Markdown
Contributor

Changes:

  • Greatly increased test coverage for StoreKit2TransactionListener
  • Extracted AsyncSequence.extractValues
  • Created MockStoreTransaction to be able to mock and verify finish() calls
  • Simplified StoreKit2TransactionListener, moved finish call to PurchasesOrchestrator
  • Follow up to Purchasing: fixed consumable purchases by fixing transaction-finishing #1965, also finish SK2 transactions from StoreKit.Transaction.updates

### Changes:
- Greatly increased test coverage for `StoreKit2TransactionListener`
- Extracted `AsyncSequence.extractValues`
- Created `MockStoreTransaction` to be able to mock and verify `finish()` calls
- Simplified `StoreKit2TransactionListener`, moved `finish` call to `PurchasesOrchestrator`
- Follow up to #1965, also finish SK2 transactions from `StoreKit.Transaction.updates`
@NachoSoto NachoSoto added the pr:fix A bug fix label Nov 14, 2022
@NachoSoto NachoSoto requested review from a team and aboedo November 14, 2022 20:36

@tonidero tonidero left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@NachoSoto NachoSoto merged commit 5f77821 into main Nov 17, 2022
@NachoSoto NachoSoto deleted the sk2-finish-transactions branch November 17, 2022 14:50
NachoSoto pushed a commit that referenced this pull request Nov 18, 2022
**This is an automatic release.**

### Bugfixes
* `StoreKit 2`: don't finish transactions in observer mode (#2053) via
NachoSoto (@NachoSoto)
### Other Changes
* `CircleCI`: added ability to create a release manually (#2067) via
NachoSoto (@NachoSoto)
* Changelog: Fix links to V4 API Migration guide (#2051) via Kevin
Quisquater (@KevinQuisquater)
* `HTTPClient`: added log for failed requests (#2048) via NachoSoto
(@NachoSoto)
* `ErrorResponse.asBackendError`: serialize attribute errors as
`NSDictionary` (#2034) via NachoSoto (@NachoSoto)
* `ErrorCode.unknownBackendError`: include original error code (#2032)
via NachoSoto (@NachoSoto)
* `CI`: fixed `push-pods` job (#2045) via NachoSoto (@NachoSoto)
* `PostReceiptDataOperation`: log Apple error when purchase equals
expiration date (#2038) via NachoSoto (@NachoSoto)
* Update Fastlane plugin (#2041) via Cesar de la Vega (@vegaro)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr:fix A bug fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants