A new year brings new opportunities, and in my case a new job
The Gradle build tool has been an integral part of my developer career (both closed and open source) as you may have guessed by the content found in this blog. I’ve been an avid user of Gradle since the early days (my first build was made with Gradle 0.4) which means I’ve seen the tool grow to its current state as an outsider, I’m delighted and excited to helping steer its growth from the inside. I look forward to continue engaging the broad Gradle community and beyond.
The Gradle team just posted two announcements, the first being the immediate availability of Gradle 5.1
Gradle 5.1 is out!
🔐 Repository-to-dependency matching
⚙️ Kotlin DSL 1.1
⚡️ APIs for faster build configurationRelease Notes: https://t.co/41XgF5zGWg
— Gradle (@gradle) January 2, 2019
This release gives you the option to tie dependency resolution to a particular repository. Yes, that's right, now you can instruct Gradle to resolve a dependency from a very specific repository, when more than one potential match may be available. This is a big deal IMHO as builds can now decide to resolve dependencies based on location to reduce latency, i.e, select repositories based on their proximity to the node running the build; also better tracing by making sure a dependency comes from a specific place, and thus adding to security, auditing, and reproducible builds as well.
I'm also excited about another feature albeit some may consider it a small one, the ability to filter tasks to be displayed when the task
goal is invoked by defining a target group. Here's for example the output of invoking this goal at the root of the Kordamp Gradle Plugins project while specifying the Insight group as parameter
$ ./gradlew tasks --group=Insight > Task :tasks ------------------------------------------------------------ Tasks runnable from root project ------------------------------------------------------------ Insight tasks ------------- effectiveSettings - Displays resolved settings for project 'kordamp-gradle-plugins' extensions - Displays all extensions applied to project 'kordamp-gradle-plugins' plugins - Displays all plugins applied to project 'kordamp-gradle-plugins' projectProperties - Displays all properties found in project 'kordamp-gradle-plugins' repositories - Displays all repositories for project 'kordamp-gradle-plugins'
The second announcement being
🎉 Hello 2019!
Gradle Enterprise is bringing build caching and build scans to Apache Maven™ builds.
Really. Take a look: https://t.co/jW5NfImMAu pic.twitter.com/ty6vbPttDA
— Gradle (@gradle) January 3, 2019
Gradle Enterprise is a commercial offering for increased developer productivity that, until yesterday, is focused on the Gradle build tool. With the upcoming release developers that rely on Apache MavenTM as build tool can also join in the benefits.
The year is off to a good start.