Hi,

we are pleased to announce the release of Gradle 0.3. The focus of this release has turned out to be completely different to what we planned it to be. Mainly due to performance reasons we have refactored large parts of the core from Groovy to Java, which was a major effort. We have update our roadmap: See http://gradle.org/ roadmap.html

Here a summary of the most interesting new features and improvements.

- Gradle provides now a separate JDK 1.4. compatible distributions.
- We have improved the handling and naming conventions for archive tasks. See UG 9.7.3. - The War plugin is now much more flexible regarding library handling. Gradle provides now a provided configuration to add libraries that should be used for compile and testing, but should not be bundled with the war. See UG 11. - After going through a lot of pain with the windows start scripts we have decided to get rid of them and replace them with exe commands generated by launch4j. Thanks to Adam Pohorecki for contributing the foundations for this. - To improve the responsiveness of Gradle the compiled build and settings files are now cached. For how to control the cache, see UG 4.6. - Every task action has now access to the graph of the tasks to be executed. See UG 2.10. - The wrapper task is now much more configurable regarding where the involved files are stored. See UG 16. - We have started to implement a listener framework around the Gradle lifecycle. You can now register for example an afterEvaluateListener with a project which gets called after a project's build script is evaluated. For an example see UG 14.2.3.
- The Test task generates now JUnit HTML reports.
- Gradle enables now to execute tasks via their absolute path. See UG 14.4.
- You can now define default tasks. See UG 2.9.
- You can define now global exclude for dependencies. See UG 12.2.6.
- Due to Groovydoc problems, we were not able to provided reasonable API doc in the past. This has changed now. For a big part of our public API we provide now Javadoc. With the release of 0.4 we will be able to provide this for all our API.

We are very excited that Adam Murdoch has become a Gradle committer.

Thanks to Marko Bauhardt, Peter Kriens, Jerod Lass and Jaco for there feedback.

Thanks to Phil Messenger and Peter Kriens for there contributions regarding eclipse file generation. Hopefully we will be able to bake this into 0.4.

Cheers,

- Hans

--
Hans Dockter
Gradle Project lead
http://www.gradle.org




Release Notes - Gradle - Version 0.3

** Sub-task
    * [GRADLE-166] - Add junit reporting

** Bug
* [GRADLE-64] - Windows Start script returns 0 also in the case of an error
    * [GRADLE-124] - gradle.bat reports "No modern compiler."
* [GRADLE-130] - setting dependsOn in the configure closure of a bundle archive method is overwritten by the bundle. * [GRADLE-131] - Destination directory should be created by the archive task if it does not exists. * [GRADLE-132] - Gradle wrapper does not remove old zip when upgrading to new version * [GRADLE-134] - Can't add depedencies to be used by Gradle's default dependencies * [GRADLE-136] - Declaring a classpath project dependencies does not trigger an evaluate of the depends-on project * [GRADLE-137] - Child dependsOn settings of bunldes are not properly established. * [GRADLE-139] - web.xml from webapp folder is not added to the war.
    * [GRADLE-152] - Zip dependencies are not resolved
* [GRADLE-164] - Artifact dependency unresolved when custom destinationDir is used.
    * [GRADLE-167] - npe if tests failed

** Improvement
* [GRADLE-38] - Refactor for ConventionTasks the mechanisms how convention values are used.
    * [GRADLE-117] - Cache the compiled build scripts.
* [GRADLE-122] - Make the install target of the Gradle build work on windows. * [GRADLE-125] - dir property of fileset method should be optionally of type String
    * [GRADLE-127] - Add Project. hasProperty coverage to userguide.
    * [GRADLE-129] - Provide actions access to dag
* [GRADLE-135] - Migrate from commons-cli to JOpt simple for command line processing. * [GRADLE-138] - Add method to add to a webInf/classes/ additionalLib FileSet of a War task. * [GRADLE-140] - Offer a possibility to not to bundle certain compile and runtime dependencies in a war.
    * [GRADLE-142] - Change the default naming schema for archives.
* [GRADLE-143] - Introduce a flag that allows a task to declare that it does not modify the project tree. * [GRADLE-147] - Make the wrapper task configurable to where the gradle-wrapper jar and the distribution should be located.
    * [GRADLE-151] - Offer rootDir accessor in settings.gradle
* [GRADLE-153] - Enable easy setting of jvm opts in the start and wrapper scripts.
    * [GRADLE-156] - Add afterEvaluateListener
    * [GRADLE-157] - Make the name of settings.gradle customizable
* [GRADLE-165] - Allow a fully qualified task path to be specified on the command-line
    * [GRADLE-168] - Improve javadoc generation for groovy projects
* [GRADLE-169] - Remove build resolver dir after the build is finished.
    * [GRADLE-170] - Allow n:n mapping between tasks and configurations
* [GRADLE-172] - Create a distinct JDK 1.4 compatible Gradle distribution
    * [GRADLE-173] - Add excludeConfigurations to War task
* [GRADLE-176] - A Bundle should offer a propery for its archive tasks instead of the archive tasks names * [GRADLE-177] - Change the location of the build-resolver dir from the top level root-project to the tmp dir of the root-project.

** New Feature
    * [GRADLE-146] - Allow the definition of default tasks
    * [GRADLE-155] - global exclude of transitive deps
* [GRADLE-161] - Allow to assign multiple lib configurations for a war task.




---------------------------------------------------------------------
To unsubscribe from this list, please visit:

   http://xircles.codehaus.org/manage_email


Reply via email to