| Version | Change log |
| Android SDK 9.3.0 Jan 17, 2026 |
New features and usability improvements: Test reporting improvements: Gradle provides a rich set of features and abstractions for testing JVM code, along with test reports to display results. Test results reporting: The HTML test report generated by the test task, TestReport, and other AbstractTestTask usages now presents test results in a clearer structure that reflects how tests are defined This results from Gradle adopting the incubating Test Event Reporting API internally. In the following sections, "Suite" refers specifically to the suite features of JUnit 4, JUnit Jupiter, and TestNG while "Container" refers to a general grouping of tests, such as a class. Nested test changes: For JUnit 4 and JUnit Jupiter, nested test classes are now shown nested under their enclosing class in the HTML Test Report. For example, if you had an OuterClass with an InnerClass nested inside it, it would previously be shown as: + OuterClass$InnerClass |-- someTestMethodInInnerClass It will now be reported in the HTML Test Report as: + OuterClass |-+ InnerClass (or OuterClass$InnerClass for JUnit 4) |-- someTestMethodInInnerClass With multiple inner classes: + OuterClass |-+ InnerClass1 (or OuterClass$InnerClass1 for JUnit 4) |-- someTestMethodInInnerClass1 + InnerClass2 (or OuterClass$InnerClass2 for JUnit 4) |-- someTestMethodInInnerClass2 The XML report remains the same, nested classes are still written as TEST-OuterClass$InnerClass.xml. Parameterized test changes: Parameterized tests now create a suite that contains all the parameterized test cases for a given method. Suite changes: Suites now contain the classes they run, rather than those classes being shown as siblings. Package suite changes: Packages are no longer represented as containers in the HTML report. There are two main reasons for this change: With support for non-class-based testing, Gradle cannot reliably determine if a container corresponds to a class, so synthesizing a package container can be |
| Android SDK 9.2.1 Nov 17, 2025 |
Windows ARM support Improved publishing APIs Better guidance for dependency verification failures |
| Android SDK 9.2.0 Oct 29, 2025 |
Windows ARM support Improved publishing APIs Better guidance for dependency verification failures |
| Android SDK 9.1.0 Oct 4, 2025 |
Windows ARM64 support Improved publishing APIs Better guidance for dependency verification failures |
| Android SDK 8.14.3 Jul 13, 2025 |
Configuration Cache is the recommended execution mode Gradle requires JVM 17 or higher to run Build scripts use Kotlin 2.2 and Groovy 4.0 Improved Kotlin DSL script compilation avoidance |
| Android SDK 8.14.2 Jun 18, 2025 |
Configuration Cache is the recommended execution mode Gradle now requires JVM 17 or higher to run Build scripts use Kotlin 2.1 and Groovy 4.0 Improved Kotlin DSL build script compilation avoidance |
| Android SDK 8.13 Apr 10, 2025 |
New features and usability improvements: Support for Java 24: With this release, Gradle supports Java 24. This means you can now use Java 24 for the daemon in addition to toolchains. GraalVM Native Image selection for toolchains: Gradle's toolchain support allows provisioning and selection of specific JDK versions for building projects—compiling code, running tests, and even running Gradle itself. Skipped tests now report assumption violations: When a test is skipped due to an assumption violation, Gradle now includes the reason in both the HTML and JUnit XML reports. This applies to JUnit 4, JUnit Platform, and TestNG. Build authoring improvements: Gradle provides rich APIs for plugin authors and build engineers to develop custom build logic. Configuration cache improvements: The configuration cache improves build time by caching the result of the configuration phase and reusing it for subsequent builds. This feature can significantly improve build performance. Fixed issues: update jacoco default to 0.8.13 Prevent Java 24 native access warnings in launcher Java compilation errors and warnings have generic display names in Problems summary html Missing locations for some issues in problems report Fix doc example for problems api Update configuration cache report for new tabs Problems API additional data needs more documentation `MapProperty.keySet()` provider should track tasks dependencies Remove obsolete usages of ProblemsProgressEventEmitterHolder Remove unused InternalProblemSpec.additionalDataInteral() API Fix project dependencies created by `snapshot-worker` project Daemon JVM provisioning fails on existing JDK archive with same name distZip top level directory has wrong name when version has substring ".zip" Extract packaging related projects from subprojects Jvm Toolchain: Add support for requesting native-image feature CompilerOptions.getAllCompilerArgs may return unexpected types Issue upgrading to Gradle 8.12: Problems API > “NullPointerE |
| Android SDK 8.12.1 Jan 24, 2025 |
It fixes the following issues: #31245 FileLockCommunicator is not compatible with macOS 15.1 firewall and Crowdstrike/SentinelOne #31942 Default working directory for ExecSpec changed between 8.11 and 8.12 #31946 Build failed on Linux after upgrading 8.11.1 -> 8.12 #32016 Incorrect output format for Java compiler problems |
| Android SDK 8.12 Dec 20, 2024 |
New features and usability improvements: Error and warning reporting improvement: Gradle provides a rich set of error and warning messages to help you understand and resolve problems in your build. Summarization in the HTML report for problems: The Problems API provides structured feedback on build issues, helping developers and tools like IDEs identify and resolve warnings, errors, or deprecations during configuration or runtime. This release introduces a new problem summarization mechanism that reduces redundancy in the generated HTML Problems Report. The feature limits the number of identical problems reported and provides a summarized count of additional occurrences in the summary report. Ambiguous Artifact Transformation chains are detected and reported: Previously, when two or more equal-length chains of artifact transforms produced compatible variants to satisfy a resolution request, Gradle would arbitrarily and silently select one. Gradle now emits a warning for this case. This deprecation warning is the same failure message that now appears when multiple equal-length chains are available, producing incompatible variants that could each satisfy a resolution request. In this case, resolution fails with an ambiguity failure, and Gradle emits a message. The formatting of this message has been improved to comprehensively display information about each complete chain of transformations that produces the candidates that would satisfy the request. This allows authors to better analyze and understand their builds, allowing them to remove ambiguity. Platform enhancements: Gradle provides many features for specific platforms and languages. File-system watching and continuous mode support on Alpine Linux File-system watching is now supported on Alpine Linux, a popular choice for container-based images and the default distribution for Docker. The feature is enabled by default, as is the case with all other supported platforms. Additionally, it is now possible to run bui |
| Android SDK 8.11.1 Nov 20, 2024 |
BuildEventsListenerRegistry corrupted with Isolated Projects and parallel configuration Running executables sporadically fails with ETXTBSY (Text file busy) ArrayIndexOutOfBoundsException after upgrading to gradle 8.11 when generating problems report Unable to run Gradle task in 8.10 due to bytecode interception |