Skip to content

chore: update to use gradle 9.2.1 and AGP 9.0.1#210

Merged
Manabu-GT merged 1 commit into
mainfrom
chore-agp9
Mar 27, 2026
Merged

chore: update to use gradle 9.2.1 and AGP 9.0.1#210
Manabu-GT merged 1 commit into
mainfrom
chore-agp9

Conversation

@Manabu-GT
Copy link
Copy Markdown
Owner

@Manabu-GT Manabu-GT commented Mar 27, 2026

Summary by CodeRabbit

  • Chores
    • Updated Gradle from 8.14.4 to 9.2.1
    • Upgraded Android Gradle Plugin from 8.13.2 to 9.0.1
    • Enhanced build system configuration with JDK auto-provisioning support
    • Updated Android build settings for improved build compatibility

@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Mar 27, 2026

📝 Walkthrough

Walkthrough

The PR upgrades the Gradle build system infrastructure by updating Android Gradle Plugin to 9.0.1, Gradle wrapper to 9.2.1, adding Java 21 toolchain configuration with Foojay resolver support, and updating Gradle properties flags. Additionally, it adds Claude worktree files to gitignore and enables typesafe project accessors.

Changes

Cohort / File(s) Summary
Build Tool and AGP Versions
gradle/libs.versions.toml, gradle/wrapper/gradle-wrapper.properties
AGP upgraded from 8.13.2 to 9.0.1; Gradle wrapper updated from 8.14.4 to 9.2.1.
Gradle Configuration and Feature Flags
gradle.properties, settings.gradle.kts
Removed resource shrinking optimization flag; added android.builtInKotlin=false and android.newDsl=false properties. Applied Foojay resolver plugin for JDK auto-provisioning and enabled TYPESAFE_PROJECT_ACCESSORS feature preview.
Gradle Daemon and Environment Setup
gradle/gradle-daemon-jvm.properties, .gitignore
Added new daemon JVM configuration specifying Java 21 toolchain with platform-specific URLs; excluded .claude/worktrees/ directory from version control.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

🚥 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 accurately and specifically describes the main changes: upgrading Gradle to 9.2.1 and AGP to 9.0.1, which are the primary modifications reflected across multiple configuration files.
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 docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore-agp9

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.

@claude
Copy link
Copy Markdown

claude Bot commented Mar 27, 2026

Claude finished @Manabu-GT's task in 1m 9s —— View job


PR Review: Gradle 9.2.1 & AGP 9.0.1 Upgrade

  • Gather context
  • Read changed files
  • Analyze changes for correctness and issues
  • Post review feedback

Overall this is a clean, well-structured Gradle 9 + AGP 9 upgrade. The opt-outs are deliberate and well-commented. A few observations below.

gradle.properties

android.r8.optimizedResourceShrinking=true removed
Correct removal — this flag becomes the default in AGP 9.0+.

android.builtInKotlin=false added
Intentionally opting out of AGP's built-in Kotlin management for published library consumer compatibility. The inline comment clearly explains the intent and the migration plan ("before AGP 10"). Good practice.

android.newDsl=false added
Opts out of the new Gradle DSL. The companion comment in settings.gradle.kts explains why enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS") is still needed with the old DSL. Both comments are well-placed.

settings.gradle.kts

foojay-resolver-convention plugin added
Required by Gradle 9+ for JDK auto-provisioning. Version 1.0.0 is appropriate.

gradle/gradle-daemon-jvm.properties (new file)

Auto-generated by ./gradlew updateDaemonJvm. Pins the Gradle daemon to JDK 21 via foojay resolver, consistent with the project's toolchain. No issues.

Potential concern: KSP version

ksp = "2.3.6" paired with kotlin = "2.2.21" — worth verifying that this KSP version is compatible with Kotlin 2.2.21. The KSP versioning scheme has evolved, but historically the major version prefix maps to the Kotlin version. If the KSP 2.x line now uses independent versioning, this is fine — otherwise confirm compatibility.

Summary

The upgrade is well-executed with appropriate conservative opt-outs for a published library. All changes are justified and commented. No blocking issues.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
gradle/wrapper/gradle-wrapper.properties (1)

3-3: LGTM, but consider Gradle 9.4.1 as well. Gradle 9.2.1 meets the minimum requirement (9.1.0) for AGP 9.0.1, and using the binary distribution (-bin.zip) is appropriate for build performance. However, Gradle 9.4.1 is available as a newer stable option that also aligns with the AGP 9.0.1 upgrade.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@gradle/wrapper/gradle-wrapper.properties` at line 3, Update the Gradle
wrapper distributionUrl to use Gradle 9.4.1 instead of 9.2.1 to adopt the newer
stable release; locate the distributionUrl entry in gradle-wrapper.properties
(the line starting with distributionUrl=) and change the version segment from
9.2.1 to 9.4.1 while keeping the -bin.zip binary distribution format unchanged.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@gradle/wrapper/gradle-wrapper.properties`:
- Line 3: Update the Gradle wrapper distributionUrl to use Gradle 9.4.1 instead
of 9.2.1 to adopt the newer stable release; locate the distributionUrl entry in
gradle-wrapper.properties (the line starting with distributionUrl=) and change
the version segment from 9.2.1 to 9.4.1 while keeping the -bin.zip binary
distribution format unchanged.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: de4261cb-7714-4db0-863a-ac4155f498fa

📥 Commits

Reviewing files that changed from the base of the PR and between a936abb and 19ccf44.

📒 Files selected for processing (6)
  • .gitignore
  • gradle.properties
  • gradle/gradle-daemon-jvm.properties
  • gradle/libs.versions.toml
  • gradle/wrapper/gradle-wrapper.properties
  • settings.gradle.kts

@github-actions
Copy link
Copy Markdown

Qodana for JVM

It seems all right 👌

No new problems were found according to the checks applied

💡 Qodana analysis was run in the pull request mode: only the changed files were checked
☁️ View the detailed Qodana report

Contact Qodana team

Contact us at qodana-support@jetbrains.com

@Manabu-GT Manabu-GT merged commit 01c3cb7 into main Mar 27, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant