Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified gradle/wrapper/gradle-wrapper.jar
Binary file not shown.
4 changes: 2 additions & 2 deletions gradle/wrapper/gradle-wrapper.properties
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#Wed May 28 19:13:17 SGT 2025
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-9.1.0-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-9.3.1-bin.zip
networkTimeout=10000
Comment on lines +3 to +4
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

🧩 Analysis chain

🌐 Web query:

Gradle 9.3.1 release notes breaking changes between 8.x and 9.x

💡 Result:

Gradle 9.3.1 release notes (2026-01-29)

Gradle 9.3.1 is a patch release (bug fixes + improvements) and is recommended over 9.3.0; it also includes fixes for repository-hardening behavior and other regressions, plus security advisories. It does not introduce new “8.x → 9.x”-style breaking changes by itself. [1]

Breaking changes when upgrading from Gradle 8.x → 9.x (primarily 9.0.0)

Key breaking / behavior-changing items called out by Gradle’s 9.0 upgrade guide and 9.0 highlights:

  • Gradle runtime now requires Java 17+ to run the Gradle Daemon (Tooling API/TestKit remain compatible with older JVMs). [2]
  • Kotlin DSL / embedded Kotlin upgrade: Gradle 9.0 embeds Kotlin 2.2.0 and the Kotlin DSL uses Kotlin language level 2.2, which can break Kotlin-based build logic/plugins; script instance labels like this@Build_gradle no longer work. [2]
  • Reproducible archives by default (JAR/ZIP/etc): can break builds relying on file order, timestamps, or permissions unless reconfigured. [3]
  • Custom Test tasks no longer inherit defaults from the test source set (deprecated since 8.1): extra Test tasks that relied on convention may silently run zero tests unless you set testClassesDirs/classpath (or use test suites). [2]
  • No more implicit “archives configuration” artifact wiring: artifacts from other configurations aren’t automatically included in archives; you must add them explicitly. [2]
  • Publishing/metadata stricter: modifying Gradle Module Metadata after an eagerly created publication from the same component now fails (was previously a warning). [2]
  • Configuration Cache stricter: unsupported task-completion listener providers are now treated as configuration-cache problems (build can fail), and cache entries are discarded for incompatible tasks even in warning mode. [2]
  • Removed APIs/features (common upgrade failures):
    • jcenter() repository shortcut removed. [2]
    • CLI options for custom build layout removed: -c/--settings-file, -b/--build-file. [2]
    • Various removed legacy APIs/properties (e.g., cache cleanup properties; org.gradle.util helpers; unix-mode integer permission APIs; some Groovy modules removed from the distribution). [2]

9.x line “breaking changes” after 9.0 (if you’re coming from early 9.x to 9.3.1)

Not 8→9, but relevant if you’re jumping across 9.x versions:

  • Embedded Kotlin upgraded (e.g., 9.1→ later upgrades), and ObjectFactory#dependencyCollector() removed; plus bundled-plugin consumable configurations become lazily initialized (can change when configurations.named(...).configure {} runs). [4]

Sources: Gradle 9.3.1 release notes [1], Gradle 9.0 upgrade guide [2], Gradle 9.0 highlights [3], Gradle 9.x upgrade guide [4].


Major version upgrade from Gradle 8.x to 9.x—verify build compatibility with breaking changes.

The distribution URL and network timeout settings are standard for Gradle wrapper configuration. However, Gradle 9.x introduces several breaking changes that require attention:

  • Java 17+ required to run the Gradle Daemon
  • Kotlin DSL upgraded to Kotlin 2.2.0—custom Kotlin build logic may break (e.g., script instance labels like this@Build_gradle no longer work)
  • Custom Test tasks may silently run zero tests unless testClassesDirs and classpath are explicitly set
  • Removed APIs: jcenter() repository, CLI options -c/--settings-file and -b/--build-file
  • Reproducible archives by default—may affect builds relying on file order or timestamps
  • Configuration Cache stricter—unsupported task listeners now fail the build

Review your build scripts, plugins, and test configuration before merging.

🤖 Prompt for AI Agents
In `@gradle/wrapper/gradle-wrapper.properties` around lines 3 - 4, The Gradle
wrapper was bumped to Gradle 9.3.1 via the distributionUrl (and networkTimeout)
which introduces breaking changes; update repo build configuration to be
compatible by ensuring the project uses Java 17+ for the Gradle daemon
(configure toolchains/JDK), upgrade any Kotlin DSL build scripts to Kotlin 2.2.0
and adjust custom build-script constructs (e.g., remove usages like
this@Build_gradle), audit and update custom Test tasks to explicitly set
testClassesDirs and classpath so tests actually run, remove or replace removed
APIs such as jcenter() and CLI options, and verify plugins and custom task
listeners are compatible with stricter configuration cache and reproducible
archives defaults before merging.

zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
310 changes: 197 additions & 113 deletions gradlew
100755 → 100644

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading