Skip to content

0.16 Double Eight

Compare
Choose a tag to compare
@TWiStErRob TWiStErRob released this 25 Jul 09:17
· 248 commits to main since this release
78b68e8

Release

Date: 2023-07-25
Version: 0.16

  • New: AGP 8.0.2, AGP 8.1-rc, AGP 8.2-beta
  • New: Gradle 8.0.2, Gradle 8.1.1, Gradle 8.2.1, Gradle 8.3-rc-1
  • New: Revived Graph visualization plugin
  • Breaking: Removed support for AGP 3.x, AGP 4.x
  • Breaking: Removed support for Gradle 5.x, Gradle 6.x

Changes

For the full list of changes see release milestone and diff.

Breaking

  • Remove support: AGP 3.x, AGP 4.x, Gradle 5.x, Gradle 6.x.
    Supported now: AGP 7.0-8.2, Gradle 7.0-8.3 (Epic #369)
    • Remove Gradle 5.x and 6.x support (implies AGP 3.x and 4.x support removed) (#434, #322)
    • Remove most of AGP pre-7.x code (#435)
    • Clean up outdated language dependencies (Java 8, Kotlin 1.3) (#439)
    • Remove all mentions of instant app in AGP (#375/#449)
    • Migrate AndroidManifest.xml to namespace (#233/#450)
    • Modernize testing frameworks and test fixtures (#452)
    • settings.gradle.kts consistently in all tests (#460)
    • Bump build-tools versions (#469/#471)
  • Cutting edge support: AGP alpha/beta/rc CI, Gradle RCs
    • Add CI job for latest stable and preview combinations (#494/#496)

New

  • Nagging settings plugin: since Gradle 8.3 it's necessary to add a separate plugin (apart from bringing in the classpath with ...plugin.settings):
    plugins {
        id("net.twisterrob.gradle.plugin.nagging") version "..."
    }
    • Increase exception stack trace limit for Gradle deprecation nagging (#560)
    • Support Gradle 8.3-rc-1 (#550)
    • Experimental Gradle.buildFinishedCompat { } (#555)
  • Graph, see https://www.twisterrob.net/project/gradle-graph/
    • Revive Graph plugin (#519, #520)
    • Migrate Groovy and Java code to Kotlin (#522)
    • Random cleanup, refactors, improvements (#525)
    • Upgrade d3 3.5.5 to 7.8.4 + slight modernization (#526)
    • Improve developer experience and code (#530)
    • Split JS out of HTML and infer types (#532)
  • dependencies: Android Gradle Plugin 8.0, 8.1, 8.2 (#470, #502)
  • dependencies: Gradle

Fixes

  • Accessing value buildConfigFields has no effect as the feature buildConfig is disabled. (#553/#470/#550)
  • Do not ignore needed Kotlin internals. (#493/#552)
  • Gradle caching, configuration cache, best practices
    • Mark cacheability of all tasks (#291/#457)
    • Improve configuration cache compatibility (#155/#514)
    • Review .provider { } usages (#454)
  • dependencies:
    • org.eclipse.jgit from 6.5.0.202303070854-r to 6.6.0.202305301015-r (#529)
    • se.bjurr.violations:violations-lib from 1.156.2 to 1.156.5 (#429, #479, #507)

Internal

  • Release 0.16 (#428, #557)

  • build: Improvements

    • Move root build.gradle.kts to Gradle convention plugins (#169/#466)
    • Gradle Enterprise 3.12.4 to 3.14 (#430, #436, #468, #486, #488, #492, #534, #548)
    • org.gradle.toolchains:foojay-resolver from 0.5.0 to 0.6.0 (#545)
    • com.gradle.plugin-publish 1.1.0 to 1.2.0 (#453)
    • Kotlin from 1.8.10 to 1.9.0 (#459, #480, #521, #540)
    • Dokka from 1.8.10 to 1.8.20 (#512)
    • Detekt from 1.22.0 to 1.23.0 (#490)
  • dependencies: Testing

  • Cleanup

    • Fix all Detekt issues (#445)
    • Run detekt on gradle/plugins and graph included builds (#556)
    • Reduce detekt CI tasks and add missing reports (#451/#461)
    • Renovate: Fix Gradle upgrades leaking into AGP upgrades (#478/#547)

Full Changelog: v0.15.1...v0.16