June 2018
Table of Contents
Introduction
Welcome to the June Newsletter!
In this issue, we’ll cover a brand-new Gradle release, which annotation processors have gone incremental, and Gradle C++ project support in CLion. In other news, Gradle is hiring — see details below.
From the Community #
Here are some interesting pieces and projects from the past month.
- The story of a Java to Kotlin migration — Lessons learned from JB Nizet migrating sources and Gradle build scripts to Kotlin.
- Generating stubs with Swagger Codegen and Using a custom template for Swagger Codegen — 2 informative articles using Swagger Codegen and Gradle by Arnold Galovics.
- Implementing an intuitive versioning and release strategy — Ben Muschko walks through versioning and release automation with Gradle and Travis CI.
- Treat your build files as you treat your code — In this blog post, Jarosław Michalik advocates for applying good engineering to your build scripts, specifically calling out a strategy for extracting variables and staying DRY.
- Executing Gradle builds on TeamCity — A JetBrains-contributed Gradle guide walking through TeamCity setup for a typical project.
- google/osdetector-gradle-plugin — Detects the OS name and architecture, providing a uniform classifier to be used in the names of native artifacts.
- commercehub-oss/gradle-avro-plugin — Perform Java code generation using Apache Avro via Gradle.
- tbroyer/gradle-incap-helper — Helper library and annotation processor for building incremental annotation processors.
Have a blog post or plugin you’d like to see featured here? Just send us an email with the details to newsletter@gradle.com.
Gradle 4.8 #
A shiny new Gradle build tool release 4.8 comes jam-packed with features:
- Dependency locking, making builds reproducible even when using dynamic dependencies
- New type-safe DSLs to customize POMs or Ivy module descriptors for publishing
- Signing plugin support for signing all artifacts of a publication
- More robust incremental annotation processing
- Kotlin DSL v0.17, featuring faster configuration time and convenient configuration of nested extensions
- Improved Gradle native support allowing better control over system include path and more
Read the full release notes for more details and examples.
Adopting Incremental Annotation Processing #
Since Gradle 4.7, several annotation processors have begun declaring support for incremental annotation processing, with Lombok and Android-State leading the way.
Users of these libraries should upgrade to their latest versions to get faster builds as they opt-in to incremental compilation. You can follow progress of your favorite annotation processors in this GitHub issue-turned feature dashboard.
CLion + Gradle for C++ Projects #
We are excited to share that JetBrains CLion 2018.2 EAP includes support for projects that use the new Gradle C++ plugins.
You can try this out with one of these sample projects or your own and provide feedback via Twitter or YouTrack for CLion.
We think this is a big step forward for enabling better automation of native projects.
Upcoming online training #
- Jun 7: Build Cache Deep Dive
- Jun 26-29: Advanced Gradle Fundamentals for Java/JVM
- Aug 7-8: Introduction to Gradle
- Anytime: Maximizing Developer Productivity with Gradle Enterprise
Gradle is hiring! #
You can improve workflow for millions of developers with a remote-first, flexible, and ambitious team. Interested? Here’s a few of the roles we’re looking for right now.
- Gradle Enterprise Android, back-end, and front-end engineering
- Gradle Build Tool distributed builds and dependency management engineering
- A sales development representative to work with marketing and sales teams
You can learn more at gradle.com/careers.
Until next time!
—The Gradle Build Tool Team