Skip to content

feat: sync with openiap v1.3.17#615

Merged
hyochan merged 2 commits intomainfrom
feat/openiap-sync-1.3.17
Feb 11, 2026
Merged

feat: sync with openiap v1.3.17#615
hyochan merged 2 commits intomainfrom
feat/openiap-sync-1.3.17

Conversation

@hyochan
Copy link
Copy Markdown
Owner

@hyochan hyochan commented Feb 10, 2026

Summary

  • Sync with OpenIAP v1.3.17
  • Add InstallmentPlanDetailsAndroid class (Billing Library 7.0+)
  • Add PendingPurchaseUpdateAndroid class (Billing Library 5.0+)
  • Add purchaseOptionIdAndroid field to DiscountOffer (Billing Library 7.0+)
  • Update llms.txt with new type documentation
  • Add release blog post

Related

OpenIAP Versions

Package Version
openiap-gql 1.3.17
openiap-google 1.3.28
openiap-apple 1.3.14

🤖 Generated with Claude Code

- Update openiap-versions.json (gql: 1.3.17, apple: 1.3.14, google: 1.3.28)
- Add InstallmentPlanDetailsAndroid class (Billing Library 7.0+)
- Add PendingPurchaseUpdateAndroid class (Billing Library 5.0+)
- Add purchaseOptionIdAndroid field to DiscountOffer (Billing Library 7.0+)
- Update llms.txt with new type documentation
- Add release blog post

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@gemini-code-assist
Copy link
Copy Markdown
Contributor

Summary of Changes

Hello @hyochan, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request integrates the latest OpenIAP library version, enhancing Android in-app purchase capabilities by introducing new data structures for subscription installment plans and pending purchase updates. It also provides more granular detail for discount offers, ensuring compatibility with recent Google Play Billing Library versions and improving the overall robustness of the in-app purchase system.

Highlights

  • OpenIAP Sync: Synchronized the project with OpenIAP v1.3.17, bringing the latest features and updates from the in-app purchase library.
  • New Android Billing Library Types: Introduced InstallmentPlanDetailsAndroid for Billing Library 7.0+ and PendingPurchaseUpdateAndroid for Billing Library 5.0+ to support advanced Android subscription features.
  • Enhanced Discount Offer Details: Added the purchaseOptionIdAndroid field to DiscountOffer and ProductAndroidOneTimePurchaseOfferDetail to identify selected purchase options in Billing Library 7.0+.
  • Documentation Updates: Updated llms.txt with documentation for the newly added Android types and fields, ensuring clarity for developers.
  • Release Blog Post: A new blog post was added to announce the 8.2.6 release, detailing the OpenIAP sync and new Android billing features.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • docs/blog/2026-02-11-8.2.6-openiap-1.3.17.md
    • Added a new blog post for the 8.2.6 release, detailing the OpenIAP 1.3.17 sync and new Android billing features.
  • docs/static/llms.txt
    • Added documentation for InstallmentPlanDetailsAndroid (Billing Library 7.0+).
    • Added documentation for PendingPurchaseUpdateAndroid (Billing Library 5.0+).
    • Added documentation for purchaseOptionIdAndroid field (Billing Library 7.0+).
  • lib/types.dart
    • Added purchaseOptionIdAndroid field to DiscountOffer class.
    • Introduced InstallmentPlanDetailsAndroid class to represent Android subscription installment plan details.
    • Introduced PendingPurchaseUpdateAndroid class to represent Android pending subscription upgrades/downgrades.
    • Added purchaseOptionId field to ProductAndroidOneTimePurchaseOfferDetail class.
    • Added installmentPlanDetails field to ProductSubscriptionAndroidOfferDetails class.
    • Added pendingPurchaseUpdateAndroid field to PurchaseAndroid class.
    • Added installmentPlanDetailsAndroid field to SubscriptionOffer class.
  • openiap-versions.json
    • Updated google package version from 1.3.27 to 1.3.28.
    • Updated gql package version from 1.3.16 to 1.3.17.
Activity
  • No human activity (comments, reviews) has been recorded on this pull request yet.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Feb 10, 2026

📝 Walkthrough

Walkthrough

New Android billing library types and fields are introduced (Billing Library 5.0+ and 7.0+), including installment plan details, pending purchase updates, and purchase option identification. Type definitions in lib/types.dart are updated with corresponding JSON serialization, documentation is added describing the changes, and OpenIAP dependency versions are bumped.

Changes

Cohort / File(s) Summary
Documentation Updates
docs/blog/2026-02-11-8.2.6-openiap-1.3.17.md, docs/static/llms.txt
Release notes and API reference documenting three new Android-specific types and one new field, along with version tables and installation guidance.
Type Definitions & Serialization
lib/types.dart
Added three new public classes (InstallmentPlanDetailsAndroid, PendingPurchaseUpdateAndroid) and new fields (purchaseOptionIdAndroid, purchaseOptionId, installmentPlanDetails, pendingPurchaseUpdateAndroid) with complete JSON read/write handling across DiscountOffer, ProductAndroidOneTimePurchaseOfferDetail, ProductSubscriptionAndroidOfferDetails, SubscriptionOffer, and PurchaseAndroid.
Version Bumps
openiap-versions.json
Updated OpenIAP dependency versions: gql from 1.3.16 to 1.3.17, google from 1.3.27 to 1.3.28.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested labels

🎯 feature, $ openiap, 🤖 android, :package: update packages

Poem

🐰 Hop, hop—new Android fields take flight!
Installment plans and pending purchases align just right,
With JSON keys and types so clean,
The billing library's best we've seen!
OpenIAP v1.3.17 brings the springtime delight! 🌱

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title 'feat: sync with openiap v1.3.17' directly and accurately reflects the main objective of the pull request, which is to synchronize the codebase with OpenIAP v1.3.17.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/openiap-sync-1.3.17

No actionable comments were generated in the recent review. 🎉


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link
Copy Markdown

codecov bot commented Feb 10, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 67.68%. Comparing base (c0aa063) to head (9ebc4aa).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #615   +/-   ##
=======================================
  Coverage   67.68%   67.68%           
=======================================
  Files           7        7           
  Lines        1479     1479           
=======================================
  Hits         1001     1001           
  Misses        478      478           

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

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request syncs the project with OpenIAP v1.3.17, introducing new types for recent Google Play Billing Library features. The changes are well-structured and consistently applied across the type definitions and documentation. I have one suggestion to improve the clarity of the new release notes blog post to avoid potential confusion for developers.

Expand code snippet to show purchaseOptionId usage on both
DiscountOffer and ProductAndroidOneTimePurchaseOfferDetail classes.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@hyochan hyochan merged commit 70e8604 into main Feb 11, 2026
5 checks passed
@hyochan hyochan deleted the feat/openiap-sync-1.3.17 branch February 11, 2026 02:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant