Skip to content

Support for Billing Client 6#1209

Merged
MarkVillacampa merged 19 commits into
mainfrom
bc6-support-new
Sep 27, 2023
Merged

Support for Billing Client 6#1209
MarkVillacampa merged 19 commits into
mainfrom
bc6-support-new

Conversation

@MarkVillacampa

@MarkVillacampa MarkVillacampa commented Aug 24, 2023

Copy link
Copy Markdown
Member

Bumping Billing client to 6.0.0

  • Deprecates...
    • ProrationMode -> ReplacementMode
    • GoogleProrationMode -> GoogleReplacementMode
  • Temporarily disables DEFERRED product change until backend support is ready.

@MarkVillacampa MarkVillacampa added pr:breaking Changes that are breaking pr:dependencies Changes on external dependencies labels Aug 24, 2023
@codecov

codecov Bot commented Aug 24, 2023

Copy link
Copy Markdown

Codecov Report

Attention: 16 lines in your changes are missing coverage. Please review.

Comparison is base (395ca5f) 85.83% compared to head (2d37316) 85.51%.
Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1209      +/-   ##
==========================================
- Coverage   85.83%   85.51%   -0.33%     
==========================================
  Files         186      187       +1     
  Lines        6319     6358      +39     
  Branches      918      923       +5     
==========================================
+ Hits         5424     5437      +13     
- Misses        546      567      +21     
- Partials      349      354       +5     
Files Coverage Δ
...tlin/com/revenuecat/purchases/PostReceiptHelper.kt 94.31% <100.00%> (ø)
.../com/revenuecat/purchases/PurchasesOrchestrator.kt 81.70% <100.00%> (-1.78%) ⬇️
...n/com/revenuecat/purchases/amazon/AmazonBackend.kt 86.66% <ø> (ø)
...lin/com/revenuecat/purchases/amazon/AmazonCache.kt 85.71% <ø> (ø)
...rchases/amazon/DefaultPurchasingServiceProvider.kt 14.28% <ø> (ø)
...azon/attribution/AmazonDeviceIdentifiersFetcher.kt 100.00% <100.00%> (ø)
...cat/purchases/amazon/handler/ProductDataHandler.kt 89.65% <100.00%> (ø)
...nuecat/purchases/amazon/handler/PurchaseHandler.kt 88.88% <100.00%> (ø)
...purchases/amazon/handler/PurchaseUpdatesHandler.kt 91.66% <100.00%> (ø)
...ses/amazon/listener/ProductDataResponseListener.kt 0.00% <ø> (ø)
... and 23 more

... and 1 file with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Comment thread migrations/v7-MIGRATION.md Outdated
Comment thread migrations/v7-MIGRATION.md Outdated
Comment thread migrations/v7-MIGRATION.md Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/PurchaseParams.kt Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/common/Backend.kt Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/models/GoogleProrationMode.kt Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/models/StoreTransaction.kt Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/models/StoreTransaction.kt Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/PurchasesOrchestrator.kt Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/google/BillingWrapper.kt Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/models/GoogleProrationMode.kt Outdated
Comment thread purchases/src/test/java/com/revenuecat/purchases/PurchasesCommonTest.kt Outdated
Comment thread purchases/src/testDefaults/kotlin/com/revenuecat/purchases/PurchasesTest.kt Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/common/HTTPClient.kt Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/google/errors.kt
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/models/StoreTransaction.kt Outdated
Comment thread purchases/src/main/kotlin/com/revenuecat/purchases/models/StoreTransaction.kt Outdated
Comment thread migrations/v7-MIGRATION.md Outdated
Comment thread purchases/src/test/java/com/revenuecat/purchases/PurchasesCommonTest.kt Outdated

@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.

Looks good. Maybe we should remove the commented out code temporarily as Andy suggested.

Comment thread migrations/v7-MIGRATION.md Outdated
@MarkVillacampa

Copy link
Copy Markdown
Member Author

Commit f4b99bd was cherry-picked from PR #1289

Comment thread migrations/v7-MIGRATION.md Outdated
Comment on lines +9 to +12
However, there is a behavior change in the "DEFERRED" replacement mode. Previously, a purchase would only occur after the
product change. In BC6, the new purchase occurs place immediately, while the product change becomes effective when the old
item expires. Until we can properly support this new behaviour, we have disabled the "DEFERRED" replacement mode and it
will be added back in a future release of the SDK.

@aboedo aboedo Sep 27, 2023

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Let's make it the implications for a developer super explicit here: I might not know whether this affects me at all, and it most likely doesn't.

Maybe something like

If your app supports product changes using DEFERRED replacement mode (link to docs), then you can either stick with the previous major version until support for DEFERRED is re-introduced in this major version, or you can remove DEFERRED replacement options from your app.

If your app doesn't currently use DEFERRED replacement modes, then you should be safe to upgrade to this version without changes in behavior.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

or maybe flipping the order of those since DEFERRED isn't very widely used

@aboedo

aboedo commented Sep 27, 2023

Copy link
Copy Markdown
Member

looks good! Left one minor note, good to go otherwise

@MarkVillacampa MarkVillacampa merged commit 468a850 into main Sep 27, 2023
@MarkVillacampa MarkVillacampa deleted the bc6-support-new branch September 27, 2023 14:29
@MarkVillacampa MarkVillacampa mentioned this pull request Sep 27, 2023
MarkVillacampa added a commit that referenced this pull request Sep 28, 2023
### Breaking Changes
* Support for Billing Client 6 (#1209) via Mark Villacampa
(@MarkVillacampa)
* Bump minimum sdk version to Android 4.4 (API level 19) (#1265) via
Mark Villacampa (@MarkVillacampa)
* in app messages support (#1290) via Andy Boedo (@aboedo)
### Bugfixes
* Add `awaitRestore` to customEntitlementComputation library (#1275) via
Toni Rico (@tonidero)
### Other Changes
* Future-proof in-app message APIs in case new types are added (#1293)
via Toni Rico (@tonidero)
* `Code style`: enabled `ALLOW_TRAILING_COMMA` (#1280) via NachoSoto
(@NachoSoto)
MarkVillacampa added a commit to RevenueCat/purchases-hybrid-common that referenced this pull request Oct 3, 2023
tonidero pushed a commit to RevenueCat/cordova-plugin-purchases that referenced this pull request Oct 4, 2023
MarkVillacampa added a commit to RevenueCat/purchases-flutter that referenced this pull request Oct 5, 2023
Jethro87 pushed a commit to Jethro87/purchases-flutter that referenced this pull request Jan 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

pr:breaking Changes that are breaking pr:dependencies Changes on external dependencies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants