Run metalava on galaxy module in test-galaxy job#3235
Conversation
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
| - run: | ||
| name: Validate Galaxy API Signature with Metalava | ||
| command: | | ||
| ./gradlew :feature:galaxy:metalavaGenerateSignatureBc8Release --no-daemon |
There was a problem hiding this comment.
Metalava task name missing Defaults flavor segment
High Severity
The Gradle task name metalavaGenerateSignatureBc8Release is missing the Defaults flavor segment. The galaxy module inherits the apis flavor dimension (with defaults flavor) from the PublicLibraryConventionPlugin via configureApisFlavors(), in addition to its own billingclient dimension. All existing metalava tasks in scripts/api-dump.sh use names like metalavaGenerateSignatureDefaultsBc8Release. The correct task name here is :feature:galaxy:metalavaGenerateSignatureDefaultsBc8Release.
There was a problem hiding this comment.
Right, I think this is fine since we use missingDimensionStrategy for this module for that dimension.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #3235 +/- ##
=======================================
Coverage 79.41% 79.41%
=======================================
Files 356 356
Lines 14342 14342
Branches 1958 1958
=======================================
Hits 11389 11389
Misses 2149 2149
Partials 804 804 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
| - run: | ||
| name: Validate Galaxy API Signature with Metalava | ||
| command: | | ||
| ./gradlew :feature:galaxy:metalavaGenerateSignatureBc8Release --no-daemon |
There was a problem hiding this comment.
Right, I think this is fine since we use missingDimensionStrategy for this module for that dimension.
**This is an automatic release.** ## RevenueCat SDK ### 🐞 Bugfixes * Fix & Standardize Galaxy Date Parsing Edge Cases (#3216) via Will Taylor (@fire-at-will) * Fix addSuccessfullyPostedToken for new purchases in PostPendingTransactionsHelper (#3239) via Facundo Menzella (@facumenzella) * [Galaxy]: Fix race condition when fetching Galaxy products (#3213) via Will Taylor (@fire-at-will) * Fixes double padding in PaywallActivity on Android 15+ when `edgeToEdge` parameter is false (#3227) via Cesar de la Vega (@vegaro) ## RevenueCatUI SDK ### 🐞 Bugfixes * Fix bold text not rendering in Markdown lists (#3228) via Cesar de la Vega (@vegaro) * Fix: Clear in-memory offerings cache on locale override to prevent stale paywall data (#3225) via Antonio Pallares (@ajpallares) ### Paywallv2 #### ✨ New Features * Feature: Update default paywall (#3133) via Jacob Rakidzich (@JZDesign) #### 🐞 Bugfixes * Fix V2 paywall safe area in landscape mode (#3221) via Cesar de la Vega (@vegaro) ### 🔄 Other Changes * Run integration tests on all branches (#3242) via Toni Rico (@tonidero) * Migrate Firebase Test Lab jobs to CircleCI emulators (#3238) via Toni Rico (@tonidero) * Run metalava on galaxy module in test-galaxy job (#3235) via Will Taylor (@fire-at-will) * Add offering_id to custom paywall impression event (#3230) via Rick (@rickvdl) * Cache isAutoRenewing to detect subscription changes without syncPurchases (#3198) via Facundo Menzella (@facumenzella) * Bump fastlane-plugin-revenuecat_internal from `e146447` to `3e8c384` (#3233) via dependabot[bot] (@dependabot[bot]) <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk release housekeeping: version string bumps and documentation/deployment path updates with no functional runtime logic changes beyond the exposed version constant. > > **Overview** > Publishes the `9.26.0` release by removing `-SNAPSHOT` across build/version metadata (root `VERSION_NAME`, `.version`, `Config.frameworkVersion`, and sample/test app dependency pins). > > Updates release documentation artifacts by adding the `9.26.0` notes to `CHANGELOG.md`/`CHANGELOG.latest.md`, switching docs deployment in CircleCI to sync `docs/9.26.0` to S3, and updating `docs/index.html` to redirect to the new version. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 0a30a45. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->


Description
I recently found that the Galaxy api.txt file in main is out of date, and after looking into it, found that the
feature/galaxy/api.txtfile is not being checked in CI.This PR:
feature/galaxy/api.txtfile with metalava in thetest-galaxyjob. I didn't add it to the existingmetalavajob since the Samsung IAP SDK AAR is required to build the Galaxy module, and I didn't want to add the download step to themetalavajob.feature/galaxy/api.txtfile.GalaxyPurchasingData.Productisn't marked as experimental, but was in theapi.txtfile. Instead, it's covered by the@ExperimentalPreviewRevenueCatPurchasesAPIannotation onGalaxyPurchasingData.Note
Low Risk
Low risk: mainly adds CI validation for
feature/galaxyAPI surface and updates the checked-inapi.txt; potential impact is limited to CI failures if signatures drift.Overview
Adds CI enforcement for the Galaxy module API signature. The
test-galaxyCircleCI job now runsmetalavaGenerateSignatureBc8Releaseand fails if it would modifyfeature/galaxy/api.txt.Updates Galaxy metalava configuration and the checked-in signature file. The Galaxy module sets metalava output to
api.txt, andfeature/galaxy/api.txtis refreshed (notably removing the experimental annotation fromGalaxyPurchasingData.Productto match the source annotations).Written by Cursor Bugbot for commit a40780b. This will update automatically on new commits. Configure here.