Gradle Newsletter, September 2022 ======== Welcome to the September 2022 Gradle Build Tool newsletter. This edition covers news from the community with an emphasis on plugins. Some new plugins, old favorites, and [Gradle’s GitHub Action][1]. Plus, we've introduced a new training, “JVM Builds with Gradle Build Tool,” which will soon be listed on [www.gradle.com/training][2] for registrations. ## From the Community ### Blog posts * [How to Manage Dependencies Between Gradle Modules?][3] — Manage dependency details in one central location with a Version Catalog. * [Using Version Catalogs on Android Projects][4] — Good starting article with more resources and information about composite builds for users interested in Version Catalogs. * [How to Convert a Maven Project to Gradle in Real Life][5] — The real world is often messier than `init`. This post explains some common issues you might encounter when migrating a Maven project to Gradle -- and how to overcome them. * [Everything About Jacoco and Sonarqube in Android][6] — Everything you need to know to get started with code coverage in an Android Project. * [What’s Inside That Gradle Zip?][7] — Take a look inside a Gradle release to learn about reproducible builds (something we intend to address soon). * [Deploying your Gradle Build Cache Node Using GCP][8] — Detailed walkthrough to create and run a Gradle build cache node using a Google Cloud Platform VM instance. ### Videos * [Understanding Gradle video: #21 Test and Code Coverage Reporting][9] — Set up code coverage reports with JaCoCo. Along the way, you'll learn how to aggregate reports for an entire code base. * [Understanding Gradle #22 – The JavaCompile Task][10] — An in-depth look at Java compilation with the JavaCompile Task for beginners. * [Understanding Gradle #23 – Caching][11] — A deep dive into all the types of caching used with Gradle, when to use them and what the all mean. * [Learn the Gradle Build Script Basics in 12 Minutes][12] — Join along in this line-by-line explanation of writing a build script for a simple Java application. * [Publish a Java Library to MavenLocal with Gradle | Android Studio][13] — Starting from an empty activity, learn how to publish a Java Library in about ten minutes. ### Plugins * [Android Gradle Plugin 7.3.0][14] — To help users with low storage effectively manage their app space, all Android App Bundles now enable [Store Archival][15] by default. * [Build Parameters Gradle Plugin][16] — Access parameters supplied to a Gradle build with compile-time safety. * [RefreshVersions ♥️ Gradle Version Catalog][17] — Useful tool for switching to Version Catalogs or keeping dependencies updated. * [Gradle-download-task][18] — Shows progress on downloads and facilitates the parallel download of multiple files. * [Gradle-snowflake][19] — Simplify publishing Java functions to Snowflake. ## From Gradle Team ### A Better Way to Use Gradle With GitHub Actions [A Better Way to Use Gradle With GitHub Actions][1] — We have a deep integration between Gradle and GitHub Actions. Setup is now more straightforward when building and testing your Gradle project with GitHub Actions. ### New Free Training about JVM Builds with Gradle Build Tool We have a new free training course starting next month: "JVM Builds with Gradle Build Tool." This course deep-dives into best practices when working with JVM applications. Attend to walk away with a deeper understanding of building JVM projects and learn how to use modern best practices to boost productivity. See the [training page][20] for all available courses. ### Developer Productivity Engineering Summit Register today to attend the Developer Productivity Engineering Summit, November 2-3, 2022, in San Francisco, featuring talks such as [Airbnb Developer Productivity Wins][21] and [Flaky Tests & Binary Repositories, a Year in the Life of a Google DPE Engineer][22], to name a few. [Early bird pricing is now available.][23] Use promo code “gbt-100” to get $100 off. ## Careers If you share our passion for developer productivity and tooling, consider joining our globally distributed team and check out our job openings at [gradle.com/careers][24]. We are looking for new teammates, including software engineers, solutions engineers, application security engineers, developer productivity engineers, and other roles. ## Upcoming Events * **October 4,** 9:00 am - 10:00 am (US EDT): Virtual Workshop — [Gradle Enterprise Developers Training][25] (EMEA) * **October 5,** 5:00 pm - 6:00 pm (US EDT): Virtual Workshop — [Gradle Enterprise Developers Training][26] (US) * **October 11,** 12:00 pm - 3:00 pm (US EDT): Virtual Workshop — [Maven Build Cache Deep Dive][27] * **October 13,** 11:30 am - 3:30 pm (US EDT): Virtual Workshop — [Introduction to Gradle Build Tool][28] * **October 18,** 12:00 pm - 3:30 pm (US EDT): Virtual Training — [Introduction to Developer Productivity Engineering][29] * **October 25,** 12:00 pm - 3:00 pm (US EDT): Virtual Workshop — [Gradle Build Cache Deep Dive][30] * **November 1,** 9:00 am - 10:00 am (US EDT): Virtual Training — [Gradle Enterprise for Productivity Engineers Training][31] * **November 2 - 3**: Conference — [DPE Summit 2022: Next Practices for Transforming the Developer Experience][32] See the [Gradle Training webpage][33] for an up-to-date list of all upcoming educational and training events. --- _If you have some news you’d like us to share in the next issue, use #gradle on Twitter or send us an email with the details to newsletter@gradle.com._ Until next time! * _The Gradle Build Tool Team_ -- Gradle Inc. 325 9th Street San Francisco, CA 94103 https://gradle.org (Unsubscribe from future Gradle emails) [1]: https://blog.gradle.org/gh-actions [2]: https://gradle.com/training [3]: https://dev.to/aldok/how-to-manage-dependencies-between-gradle-modules-4jih [4]: https://proandroiddev.com/using-version-catalog-on-android-projects-82d88d2f79e5 [5]: https://lmy.medium.com/how-to-convert-a-maven-project-to-gradle-in-real-life-2e3d5ee08650 [6]: https://jaypatelbond.medium.com/everything-about-jococo-and-sonarqube-in-android-f0b366a732da [7]: https://www.liutikas.net/2022/09/06/Whats-Inside-That-Gradle-Zip.html [8]: https://circleci.com/blog/deploying-gradle-build-cache-node-to-gcp/ [9]: https://www.youtube.com/watch?v=uZvzWlP9BYE&list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE [10]: https://www.youtube.com/watch?v=wFewehz6rW8 [11]: https://www.youtube.com/watch?v=nHb0kIcTrFE [12]: https://www.youtube.com/watch?v=-PgdjodNf7I [13]: https://www.youtube.com/watch?v=-hYlA2AWPR4 [14]: https://developer.android.com/studio/releases/gradle-plugin [15]: https://android-developers.googleblog.com/2022/03/freeing-up-60-of-storage-for-apps.html [16]: https://github.com/gradlex-org/build-parameters [17]: https://github.com/jmfayard/refreshVersions/wiki/RefreshVersions-%E2%99%A5%EF%B8%8F-Gradle-Version-Catalog [18]: https://github.com/michel-kraemer/gradle-download-task [19]: https://github.com/stewartbryson/gradle-snowflake [20]: https://gradle.com/training/ [21]: https://dpesummit.com/speakers/janusz-kudelka/ [22]: https://dpesummit.com/speakers/simona-bateman/ [23]: https://dpesummit.com/register/ [24]: https://gradle.com/careers/ [25]: https://gradle.com/training/gradle-enterprise-developers-training-october [26]: https://gradle.com/training/gradle-enterprise-developers-training-october_5/ [27]: https://gradle.com/training/maven-build-cache-deep-dive-october/?time=1665446400 [28]: https://gradle.com/training/introduction-to-gradle-build-tool-3/?time=1665619200 [29]: https://gradle.com/training/introduction-to-developer-productivity-engineering-october-2/?time=1666051200 [30]: https://gradle.com/training/gradle-build-cache-deep-dive-october/?time=1666656000 [31]: https://gradle.com/training/gradle-enterprise-for-productivity-engineers/?time=1667260800 [32]: https://gradle.com/training/dpe-summit-2022-next-practices-for-transforming-the-developer-experience/?time=1667347200 [33]: https://gradle.com/training/?utm_source=newsletter&utm_medium=email&utm_campaign=january_2022