Development Roadmap
This is the Gradle development roadmap. It outlines the high level features/goals that development is planned around in no particular order and is not an exhaustive list, but rather a public statement of what the team is working on and what features are in the pipeline. For a more fine grained view you can take a look at the issue tracker.
This document is a snapshot in time and planned features may be cancelled due to priority changes or other factors.
You can click on any item to read a corresponding forum post giving more context and rationale.
Customizable Dependency Conflict Resolution
Completed
- Summary
- Provide a set of common version conflict strategies beyond the current NEWEST policy (e.g. FAIL). Also allow for custom policies.
- Status
- FAIL policy can now be selected in the latest Gradle.
Improve Dependency Resolution Time
In Progress
- Summary
- Improving dependency resolution time via different means (parallelization and faster caching)
- Status
- Improvements will be added to milestone-5, beta-1 and RC-1.
Improved Gradle Dependency Cache
In Progress
- Summary
- A new dependency cache that solves a couple of fundamental problems with current repository based enterprise builds based on Maven, Ant + Ivy or Gradle.
- Status
- Fixing the last remaining issues. Available in milestone 5.
Enable the Daemon by Default
In Progress
- Summary
- Polishing the Gradle build daemon and having it enabled by default.
- Status
- Ironing out the remaining issues. Some of the fixes will be available in M5. Enabled by default will be turned on for beta-1.
Testing Toolkit for Custom Build Logic
Planned
- Summary
- Providing a comprehensive suite of utilities for testing custom build logic and plugins.
- Status
- Foundational work being done, and planning.
Plugin Portal & Improving Plugin Development
Planned
- Summary
- Making it easier to retrieve, publish, host, test and document plugins and providing an online service for hosting Gradle open source plugins.
- Status
- Discussions are happening and work will start not long after the release of 1.0
Deep Import of Maven Projects
Planned
- Summary
- A deep import of Maven projects at runtime similar to what Gradle provides for Ant.
- Status
- It is a post-1.0 feature but has a high priority for us.
Unparalleled Command-Line Usability
Planned
- Summary
- Smart Bash Completion, Command Line Task Parameters (completable) instead of magic properties, Command Line Plugins, Even better reporting
- Status
- Discussions are happening and we will iteratively add features in this area after 1.0.
Application Execution and Deployment
Planned
- Summary
- Make application execution and deployment a first class citizen and concept in Gradle (smoke testing, enviroments, roll back, ...)
- Status
- Discussions are happening and we will iteratively add features after 1.0.
Release Management
Planned
- Summary
- Describe your release process in a concise way with proper abstractions with hooks to integrate with other tools.
- Status
- Post-1.0
Provide richer alternatives to multiple task actions
Planned
- Summary
- Introduce finalizer and initializer tasks as an alternative to doFirst amd doLast actions.
- Status
- Post 1.0
Architecture Rules
Planned
- Summary
- Rich API for all different kind of metrics that provides hooks to drive the build (fail if more than 5 cyclic dependencies).
- Status
- Post 1.0.
Improving Console Output
Planned
- Summary
- Make the output more minimal, dynamic and colorful. Use build history for better and dynamic progress reporting.
- Status
- Discussions are happening and we will iteratively add features in this area after 1.0.
Modeling the Java Application Development Domain
Planned
- Summary
- More project types like GUI application, GWT application. Deeper integration of types with for example packaging.
- Status
- Discussions are happening and we will iteratively add features in this area after 1.0.
Smart Testing
Planned
- Summary
- Incremental Testing, Scheduling based on quickest possible feedback. Preemptive testing via the daemon.
- Status
- Discussions are happening and we will iteratively add features in this area after 1.0.
Distributed Testing
Planned
- Summary
- Splitting test execution across multiple processes on different machines.
- Status
- Post 1.0
Parallel and Distributed Execution
Planned
- Summary
- A parallel build that does not require the build master or plugin author to concern themselves with writing thread-safe code.
- Status
- Discussions are happening and we will iteratively add features for this after 1.0.
Status Legend
- Completed
- available now or in the trunk waiting for the next release
- In Progress
- actively being worked on
- Paused
- started, but but not being worked on right now
- Planned
- planned out, but implementation hasn't yet begun
- Cancelled
- intended at one point, but no longer is