Migrate deprecated kotlinOptions to compilerOptions#3219
Merged
tonidero merged 1 commit intoMar 12, 2026
Conversation
tonidero
approved these changes
Mar 12, 2026
tonidero
left a comment
Contributor
There was a problem hiding this comment.
Looking good, thanks again for the contribution! 🫶
c14bbdb
into
RevenueCat:external/AlexanderTalledo/migrate-kotlin-options-to-compiler-options
1 check passed
2 tasks
github-merge-queue Bot
pushed a commit
that referenced
this pull request
Mar 12, 2026
… contributed by @AlexanderTalledo (#3223) <!-- Thank you for contributing to Purchases! Before pressing the "Create Pull Request" button, please provide the following: --> ### Checklist - [x] If applicable, unit tests - [x] If applicable, create follow-up issues for `purchases-ios` and hybrids ### Motivation The old `kotlinOptions` used standard internal types that were evaluated immediately while the new `compilerOptions` DSL uses Gradle Properties. - **Performance**: This allows for Lazy Evaluation, meaning the compiler settings are only calculated when actually needed, speeding up the configuration phase of your build. - **Interoperability**: It works seamlessly with other Gradle features like Configuration Caching, which significantly reduces subsequent build times. <!-- Why is this change required? What problem does it solve? --> <!-- Please link to issues following this format: Resolves #999999 --> ### Description Migrate deprecated kotlinOptions to compilerOptions #### Changes - Replaced deprecated `kotlinOptions` by `compilerOptions` #### Testing - Verified that all modules successfully build after migration. contributed by @AlexanderTalledo in #3219 <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk build configuration change that only affects how the Kotlin JVM target is configured; potential impact is limited to Gradle/Kotlin plugin compatibility. > > **Overview** > Switches `build-logic/convention/build.gradle.kts` from deprecated `kotlinOptions` to the newer `compilerOptions` DSL for `KotlinCompile`, setting `jvmTarget` via `JvmTarget.JVM_17` (property-based configuration) while preserving Java/Kotlin targeting at 17. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit c14bbdb. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> Co-authored-by: Alexta <8045196+AlexanderTalledo@users.noreply.github.com>
github-merge-queue Bot
pushed a commit
that referenced
this pull request
Mar 12, 2026
**This is an automatic release.** ## RevenueCat SDK ### ✨ New Features * Expose trackCustomPaywallImpression as experimental public API (#3199) via Rick (@rickvdl) ### 🔄 Other Changes * [EXTERNAL] Migrate deprecated kotlinOptions to compilerOptions (#3219) contributed by @AlexanderTalledo (#3223) via Toni Rico (@tonidero) <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Low Risk** > Low risk release bookkeeping: bumps version strings and updates docs/changelogs and CI docs deploy paths, without changing runtime logic beyond version reporting. > > **Overview** > Publishes the `9.25.0` release by removing `-SNAPSHOT` across the repo (Gradle `VERSION_NAME`, internal `Config.frameworkVersion`, and sample/test app dependency version catalogs). > > Updates release documentation metadata: adds `9.25.0` to `CHANGELOG.md`, refreshes `CHANGELOG.latest.md`, points `docs/index.html` to `9.25.0`, and changes CircleCI `docs-deploy` to sync docs to the `9.25.0` S3 path. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit e8615d4. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Checklist
purchases-iosand hybridsMotivation
The old
kotlinOptionsused standard internal types that were evaluated immediately while the newcompilerOptionsDSL uses Gradle Properties.Description
Migrate deprecated kotlinOptions to compilerOptions
Changes
kotlinOptionsbycompilerOptionsTesting
Note
Low Risk
Low risk build-logic DSL update that keeps the same JVM target (17) but switches to the newer lazy
compilerOptionsAPI; impact is limited to build configuration.Overview
Updates
build-logic/convention/build.gradle.ktsto replace deprecatedkotlinOptionswith the newcompilerOptionsDSL forKotlinCompile, settingjvmTargetviaJvmTarget.JVM_17(instead of an eager string value). This modernizes the build logic to better support Gradle property-based configuration (e.g., configuration cache) without changing the target JVM version.Written by Cursor Bugbot for commit c16ed2d. This will update automatically on new commits. Configure here.