Gradle Release Notes

We are excited to announce Gradle 9.4.0-20251211204445+0000 (released 2025-12-11).

This release features 1, 2, ... n, and more.

We would like to thank the following community members for their contributions to this release of Gradle: Ujwal Suresh Vanjare.

Be sure to check out the public roadmap for insight into what's planned for future releases.

Table Of Contents

Upgrade instructions

Switch your build to use Gradle 9.4.0-20251211204445+0000 by updating the wrapper in your project:

./gradlew wrapper --gradle-version=9.4.0-20251211204445+0000 && ./gradlew wrapper

See the Gradle 9.x upgrade guide to learn about deprecations, breaking changes, and other considerations when upgrading to Gradle 9.4.0-20251211204445+0000.

For Java, Groovy, Kotlin, and Android compatibility, see the full compatibility notes.

New features and usability improvements

Problems HTML report refinements

The incubating Problems HTML report has been refined to provide a more useful user experience.

The summary clearly display the number of problems without location or skipped for performance reasons. Each tab starts with collapsed trees to show a clear view of the root nodes on load. Locations and solutions nodes are expanded by default, reducing the number of clicks necessary to see useful information. Everything is sorted alphabetically and by location. Problem details are displayed with a monospaced font to preserve the alignment of multi-line messages. Duplicate information is reduced across the board for a better readability. The size of the report file is reduced.

Daemon logging improvements

Daemon logs older than 14 days are now automatically cleaned up when the daemon shuts down, eliminating the need for manual cleanup.

Plugin development

Stricter validation for published plugins

For plugin builds that apply any of the com.gradle.plugin-publish, ivy-publish, or maven-publish plugins, Gradle now automatically enables stricter validation of plugin code.

In order not to break your builds, this does not apply to local plugins (in buildSrc or included builds containing build logic). However, we encourage you to always enable stricter validation:

tasks.validatePlugins {
    enableStricterValidation = true
}

Tooling integration improvements

This release adds a few enhancements to the built-in Tooling API models:

For example:

import org.gradle.tooling.GradleConnector;
import org.gradle.tooling.ProjectConnection;
import org.gradle.tooling.model.build.BuildEnvironment;
import org.gradle.tooling.model.build.Help;

import java.io.File;

void main() {
    var projectDir = new File("/path/to/project");
    try (var conn = GradleConnector.newConnector().forProjectDirectory(projectDir).connect()) { 
        System.out.println("--version:\n + " + conn.getModel(BuildEnvironment.class).getVersionInfo());
        System.out.println("--help:\n" + conn.getModel(Help.class).getRenderedText());
    }
}

New property for Tooling API parallelism control

A new Gradle property org.gradle.tooling.parallel allows explicitly controlling whether Tooling API clients can run actions against the build in parallel. This is particularly relevant for the IDE Sync scenarios, where IDEs can take advantage of the parallelism to improve performance.

# gradle.properties
org.gradle.tooling.parallel=true

Historically, this was only controlled by the org.gradle.parallel property, which is often used to get parallel task execution. However, previously it was not possible to enable or disable one without affecting the other.

Promoted features are features that were incubating in previous versions of Gradle but are now supported and subject to backward compatibility. See the User Manual section on the "Feature Lifecycle" for more information.

The following are the features that have been promoted in this Gradle release.

Fixed issues

Known issues

Known issues are problems that were discovered post-release that are directly related to changes made in this release.

External contributions

We love getting contributions from the Gradle community. For information on contributing, please see gradle.org/contribute.

Reporting problems

If you find a problem with this release, please file a bug on GitHub Issues adhering to our issue guidelines. If you're not sure if you're encountering a bug, please use the forum.

We hope you will build happiness with Gradle, and we look forward to your feedback via Twitter or on GitHub.