Gradle Release Notes

Version 1.0-milestone-4

Gradle 1.0-milestone-4 includes some nasty performance regressions. You should use either 1.0-milestone-3 or 1.0-milestone-5 instead.

  1. New and Noteworthy
  2. Migrating from 1.0-milestone-3
  3. Fixed Jira Issues

New and Noteworthy

Application plugin enhancements

The application plugin now provides direct support for including both static files and extra files generated by your build (e.g. documentation) in the distribution.

New plugin: "ear"

Thanks to the contribution from David Gileadi Gradle now offers a new plugin that deals with creating ear archives in a similar fashion as the war plugin handles the war archives. For more information please refer to the ear plugin chapter in the user guide.

New plugin: "signing"

A new plugin has been added for creating digital signature for files/artifacts as part of the build. With this initial release, the plugin provides support for generating PGP format signatures (which is the signature format required for publication to the Maven Central repository) but will expand to support other signature formats over time.

See the new userguide chapter on the Signing plugin for more information.

Easier Ivy repositories

Method repositories.ivy.artifactPattern() now accepts a relative or absolute file name at the start of the pattern. Some examples:


repositories {
    ivy {
        artifactPattern "${rootDir}/repo/[some-ivy-pattern]"
        artifactPattern "../repo/[some-ivy-pattern]"
    }
}

New artifact cache implementation

Gradle now uses Wharf under the covers as part of its Ivy integration. Wharf includes Ivy cache and repository implementations, which are much improved over the default Ivy implementations, and which fix many long standing bugs and performance problems. Thanks to Wharf, the infamous 'unknown resolver' error message is now a thing of the past. The Wharf cache has a number of nice features, including storing artifacts by their hash, which allows it do deal well with duplicate artifacts, and caching meta-data on a per-resolver basis, which greatly improves the correctness of the results.

Many thanks to our friends at JFrog for providing Wharf and helping us with the integration work.

One implication of changing the artifact cache implementation is that the artifact cache format has changed. This means that Gradle will download your artifacts into their new locations when you run a build using the new version.

Eclipse and Idea plugin

Changes to the eclipse/idea plugin were necessary to accommodate the implementation of the Tooling API. Tooling API is necessary for very promising tools like the Eclipse STS gradle plugin. Many properties and methods of idea/eclipse tasks are now deprecated and moved to the relevant idea/eclipse model objects. See examples in dsl guide for IdeaProject, EclipseProject or user guide on idea or eclipse plugin.

Migrating from 1.0-milestone-3

Gradle 1.0-milestone-4 Breaking Changes

Fixed Jira Issues

Jirra Issues
Type Key Summary Assignee Reporter Priority Status Resolved Created Uploaded Due
GRADLE-1695 buildNeeded and buildDependents tasks are not recursive Adam Murdoch Adam Murdoch Resolved Fixed 27/Jul/11 04/Jan/13
GRADLE-1686 properties defined in root project's gradle.properties override those defined in subproject's gradle.properties Unassigned Adam Murdoch Resolved Fixed 24/Jul/11 04/Jan/13
GRADLE-1685 'properties' property in script does not include properties defined in gradle.properties Adam Murdoch Adam Murdoch Resolved Fixed 24/Jul/11 04/Jan/13
GRADLE-1684 make it possible to configure IDEA sdk with arbitrary name Szczepan Faber Szczepan Faber Resolved Fixed 22/Jul/11 04/Jan/13
GRADLE-1675 slow dependency resolution for certain snapshot dependencies Unassigned Szczepan Faber Resolved Fixed 15/Jul/11 04/Jan/13
GRADLE-1662 DomainObjectCollection should implement Set or Collection Luke Daley Luke Daley Resolved Fixed 05/Jul/11 04/Jan/13
GRADLE-1661 Configuration should expose its dependencies and artifacts as DomainObjectCollections Luke Daley Luke Daley Resolved Fixed 05/Jul/11 04/Jan/13
GRADLE-1655 idea plugin does not honor minusConfigurations for file dependencies Szczepan Faber Szczepan Faber Resolved Fixed 02/Jul/11 04/Jan/13
GRADLE-1647 allow configuring wrapper with relative file path to distro Szczepan Faber Szczepan Faber Resolved Fixed 28/Jun/11 04/Jan/13
GRADLE-1642 Maven plugin assumes the base plugin has been applied Luke Daley Luke Daley Resolved Fixed 24/Jun/11 04/Jan/13
GRADLE-1640 StackOverflow in ear plugin Unassigned Dave Cracauer Resolved Fixed 24/Jun/11 04/Jan/13
GRADLE-1634 AbstractTask#execute() should be final. Luke Daley Luke Daley Resolved Fixed 23/Jun/11 04/Jan/13
GRADLE-1616 change the location of the project's .gradle cache Szczepan Faber Szczepan Faber Resolved Fixed 15/Jun/11 04/Jan/13
GRADLE-1613 Classpath entries generated by the Eclipse plugin are always exported="true" Szczepan Faber David Gileadi Resolved Fixed 14/Jun/11 04/Jan/13
GRADLE-1602 cleanIdea should not trigger cleaning the workspace file Szczepan Faber Szczepan Faber Resolved Fixed 09/Jun/11 04/Jan/13
GRADLE-1587 DependencyHandler does not have localGroovy() method, but default impl does Unassigned Luke Daley Resolved Fixed 04/Jun/11 04/Jan/13
GRADLE-1580 Generating eclipse files for Gradle itself creates cyclic project dependencies between core and coreImpl Szczepan Faber Carsten Mjartan Resolved Fixed 01/Jun/11 04/Jan/13
GRADLE-1579 DSL guide samples should have syntax highlighting Szczepan Faber Szczepan Faber Resolved Fixed 31/May/11 04/Jan/13
GRADLE-1565 DSL documentation for eclipse plugin typos Szczepan Faber Baron Roberts Resolved Fixed 22/May/11 04/Jan/13
GRADLE-1558 improve application plugin to support to copy more files to distribution Luke Daley Sky Ao Resolved Fixed 17/May/11 04/Jan/13
GRADLE-1557 target directory error when copy file in task distZip of application plugin Unassigned Sky Ao Resolved Fixed 17/May/11 04/Jan/13
GRADLE-1532 Gradle throwing error when trying to execute parallel functional test with Selenium Grid and testNG Unassigned Asmita Vaidya Resolved Fixed 12/May/11 04/Jan/13
GRADLE-1530 Tooling api eclipse model should include the linked resources for the project Szczepan Faber Adam Murdoch Resolved Fixed 11/May/11 04/Jan/13
GRADLE-1529 Eclipse model built by the tooling api for a project which does not use the eclipse plugin lists tasks which cannot be executed Szczepan Faber Adam Murdoch Resolved Fixed 11/May/11 04/Jan/13
GRADLE-1528 it should be possible to register the task that generates the resource Szczepan Faber Szczepan Faber Resolved Fixed 11/May/11 18/Oct/13
GRADLE-1527 Tooling api throws exception when project contains a wrapper properties file generated by a version of Gradle < 0.9 Szczepan Faber Adam Murdoch Resolved Fixed 11/May/11 04/Jan/13
GRADLE-1522 repositories.ivy() does not support publishing to the local filesystem Adam Murdoch Adam Murdoch Resolved Fixed 10/May/11 04/Jan/13
GRADLE-1519 SourceSets should understand the concept of generated resource Szczepan Faber Szczepan Faber Resolved Fixed 09/May/11 04/Jan/13
GRADLE-1505 org.gradle.api.internal.plugins.DefaultProjectsPluginContainer#hasPlugin should returns false if plugin class not present in classpath Adam Murdoch Frederic Simon Resolved Fixed 02/May/11 04/Jan/13
GRADLE-1504 IDEA plugin should add generated resources to the classpath used to execute tests Szczepan Faber Adam Murdoch Resolved Fixed 01/May/11 04/Jan/13
GRADLE-1502 eclipse plugin creates incorrect .classpath when any source dir is external Szczepan Faber Szczepan Faber Resolved Fixed 30/Apr/11 04/Jan/13
GRADLE-1499 projectProperty setter of Sonar task adds to globalProperties Peter Niederwieser Gary Hale Resolved Fixed 28/Apr/11 04/Jan/13
GRADLE-1494 Tooling api skeletal project tries to download dependencies Szczepan Faber Adam Murdoch Resolved Fixed 26/Apr/11 04/Jan/13
GRADLE-1491 Idea plugin does not honor the inheritOutputDirs property Szczepan Faber Szczepan Faber Resolved Fixed 23/Apr/11 04/Jan/13
GRADLE-1487 eclipse plugin does not honor minusConfigurations for file dependencies Szczepan Faber Szczepan Faber Resolved Fixed 20/Apr/11 04/Jan/13
GRADLE-1479 OS-X OpenJDK7 Issue with libjnidispatch.dylib Adam Murdoch Robert Fischer Resolved Fixed 16/Apr/11 04/Jan/13
GRADLE-1475 gradle release build should validate early and tag late Szczepan Faber Szczepan Faber Resolved Fixed 14/Apr/11 04/Jan/13
GRADLE-1470 Scala Eclipse metadata put out via Eclipse+Scala plugins is outdated Peter Niederwieser Colin Sampaleanu Resolved Fixed 12/Apr/11 04/Jan/13
GRADLE-1415 'eclipse' plugin with 'war' plugin fails with class cast exception Peter Niederwieser Stephane Gallès Resolved Fixed 03/Mar/11 04/Jan/13
GRADLE-1402 Eclipse plugin should add generated resources to the classpath used to execute tests Szczepan Faber Adam Murdoch Resolved Fixed 26/Feb/11 04/Jan/13
GRADLE-1398 Dependency but no repository fails "silently" Adam Murdoch Russel Winder Resolved Fixed 25/Feb/11 04/Jan/13
GRADLE-1361 Fat jar cookbook example leads to error Szczepan Faber Ben McCann Resolved Fixed 01/Feb/11 04/Jan/13
GRADLE-1260 Adding a switch to gradle execution for changing default ivy cache manager to the Wharf cache manager Adam Murdoch Tomer Cohen Resolved Fixed 19/Dec/10 04/Jan/13
GRADLE-1236 Configuration silently ignores dependencies when no repositories are defined for the project Adam Murdoch Adam Murdoch Resolved Fixed 27/Nov/10 04/Jan/13
GRADLE-1229 Configuration resolves to empty set when project has no repositories and the dependencies already in cache Adam Murdoch Adam Murdoch Resolved Fixed 22/Nov/10 04/Jan/13
GRADLE-1176 IdeaPlugin does not seem to honor set project.name as the User Guide suggests Szczepan Faber Steve Ebersole Resolved Fixed 15/Oct/10 04/Jan/13
GRADLE-1172 Add PGP signature support to the maven plugin Luke Daley Joern Huxhorn Resolved Fixed 13/Oct/10 04/Jan/13
GRADLE-1151 groovy plugin should have default version and library Luke Daley Philip Crotwell Resolved Fixed 15/Sep/10 04/Jan/13
GRADLE-1087 Document the usage of the Gradle IDE plugins. Szczepan Faber Hans Dockter Resolved Fixed 03/Aug/10 04/Jan/13
GRADLE-1011 Idea module javaVersion and "language level" Szczepan Faber Steve Ebersole Resolved Fixed 29/Jun/10 04/Jan/13
GRADLE-1005 Dependency resolving fails for certain maven artifacts Luke Daley Zsolt Kúti Resolved Fixed 23/Jun/10 04/Jan/13
GRADLE-981 Have separately cached dependencies if they come from different repositories. Adam Murdoch Hans Dockter Resolved Fixed 15/Jun/10 04/Jan/13
GRADLE-485 web page has link to latest nightly build Szczepan Faber Szczepan Faber Resolved Fixed 15/May/09 04/Jan/13
GRADLE-37 Add support for EAR archives Szczepan Faber Hans Dockter Resolved Fixed 18/Apr/08 04/Jan/13
GRADLE-34 Offer a mechanism that let the user specify dependencies for the buildSrc without providing a complete gradlefile Adam Murdoch Hans Dockter Resolved Fixed 17/Apr/08 04/Jan/13