Releases: Splitties/refreshVersions
0.60.6
Version 0.60.6 (2025-08-15)
Bug fix
Replaced usage of internal Gradle API that was removed/hidden in Gradle 9.0.0 and caused the builds of "consumer" projects to fail on Gradle upgrade.
Thanks to AlexanderBartash for their contribution, and to the people that pinged me in issue #735!
0.60.5
0.60.4
Version 0.60.4 (2024-01-31)
Potentially breaking change
We now support only Gradle 8+. Use Gradle 8+ or stick to version 0.60.3 if you can't yet.
Bug fix
Update the priority of artifact version key rules so that the longest match takes precedence, rather than the final key length.
That should fix the keys of androidx.wear.compose
libraries.
0.60.3
0.60.2
Version 0.60.2 (2023-08-29)
Bug fix
Some version keys were wrongly marked as unused following version 0.60.0. That's now fixed.
Thanks to the reporters and people that helped in reproducing the issue!
Removed dependency notations
Several Accompanist libraries were deprecated following this announcement.
As a result, we updated removed them from refreshVersions.
As usual, it won't break projects because we update the dependency notations with the equivalent string literal.
Also, relevant inline comments with links will be added to assist migration.
New dependency notations
Click to expand (18)
AndroidX.core.performance.playServices
AndroidX.core.performance.testing
CashApp.sqlDelight.drivers.android
CashApp.sqlDelight.extensions.androidPaging3
CashApp.sqlDelight.extensions.coroutines
CashApp.sqlDelight.gradlePlugin
CashApp.sqlDelight.dialects.hSql
CashApp.sqlDelight.drivers.jdbc
CashApp.sqlDelight.dialects.mySql
CashApp.sqlDelight.drivers.native
CashApp.sqlDelight.dialects.postgreSql
CashApp.sqlDelight.extensions.rxJava2
CashApp.sqlDelight.extensions.rxJava3
CashApp.sqlDelight.drivers.jdbcSqlite
CashApp.sqlDelight.drivers.sqlJs
CashApp.sqlDelight.drivers.webWorker
Google.accompanist.adaptive
Google.accompanist.testHarness
0.60.1
Version 0.60.1 (2023-08-24)
Bug fix
- Fix crash on projects that had no version catalog.
New dependency notations:
Click to expand (25)
Google.android.play.appUpdateKtx
Google.android.play.appUpdate
Google.android.play.assetDeliveryKtx
Google.android.play.assetDelivery
Google.android.play.featureDeliveryKtx
Google.android.play.featureDelivery
Google.android.play.reviewKtx
Google.android.play.review
Google.horologist.annotations
Google.horologist.auth.composables
Google.horologist.auth.data.phone
Google.horologist.auth.data.watchOAuth
Google.horologist.auth.data
Google.horologist.auth.ui
Google.horologist.compose.material
Google.horologist.dataLayer.grpc
Google.horologist.dataLayer.phone
Google.horologist.dataLayer.watch
Google.horologist.healthComposables
Google.horologist.media3.audioOffload
Google.horologist.media3.logging
Google.horologist.media3.outputSwitcher
Google.horologist.networkAwareness.db
Google.horologist.networkAwareness.okHttp
Google.horologist.networkAwareness.ui
0.60.0
Version 0.60.0 (2023-08-17)
Full configuration cache support for the refreshVersions
task
Now, running the refreshVersions
task repeatedly will be much faster, because it now supports
configuration cache fully! That also means that it's ready for Gradle 9 when it'll be released.
Bug fixes
- Fix "The root project is not yet available for build." error that would show up when using configuration cache in a project having
refreshVersions
configured for thebuildSrc
too. - For projects using refreshVersions in their
buildSrc
too, a log would claim that new files were created after running therefreshVersions
task, when they were only modified, or not touched at all. We fixed it. - When no files were modified after running the
refreshVersions
task, there would still be a log saying thatversions.properties
andlibs.versions.toml
(if any) were updated or created. Now, it's only shown if there are actual changes. - When running the
refreshVersions
task, it would always claim that some versions were hardcoded as it counted project dependencies. We are now filtering those out, and we updated the wording to reflect that they might not be actually hardcoded, as is the case when versions come from a Gradle plugin. - Fix alignment of available update for versions catalogs for keys that are 3 characters long.
New dependency notations:
Click to expand (57)
AndroidX.appSearch.debugView
AndroidX.appSearch.ktx
AndroidX.benchmark.baselineProfileGradlePlugin
AndroidX.camera.viewFinder
AndroidX.core.i18n
AndroidX.core.locationAltitude
AndroidX.core.telecom
AndroidX.core.testing
AndroidX.credentials.playServicesAuth
AndroidX.credentials
AndroidX.emoji2.picker
AndroidX.glance.material3
AndroidX.glance.material
AndroidX.graphics.path
AndroidX.graphics.shapes
AndroidX.media3.container
AndroidX.media3.effect
AndroidX.media3.muxer
AndroidX.mediaRouter.testing
AndroidX.privacySandbox.plugins.library
AndroidX.privacySandbox.sdkRuntime.client
AndroidX.privacySandbox.sdkRuntime.core
AndroidX.privacySandbox.tools.apiCompiler
AndroidX.privacySandbox.tools.apiGenerator
AndroidX.privacySandbox.tools.apiPackager
AndroidX.privacySandbox.tools.core
AndroidX.privacySandbox.tools
AndroidX.privacySandbox.ui.client
AndroidX.privacySandbox.ui.core
AndroidX.privacySandbox.ui.provider
AndroidX.room.gradlePlugin
AndroidX.tracing.perfetto.handshake
AndroidX.wear.compose.material3
AndroidX.wear.compose.uiTooling
AndroidX.wear.protoLayout.expression
AndroidX.wear.protoLayout.material
AndroidX.wear.protoLayout.renderer
AndroidX.wear.protoLayout
AndroidX.window.extensions.core
Google.android.playServices.deviceToDeviceInteractions
Google.android.playServices.gamesV2.nativeC
Google.android.playServices.gamesV2
Google.android.playServices.matter
Google.android.playServices.mlKit.naturalLanguage.smartReply
Google.android.playServices.mlKit.vision.barcodeScanning.codeScanner
Google.android.playServices.mlKit.vision.textRecognition.chinese
Google.android.playServices.mlKit.vision.textRecognition.devanagari
Google.android.playServices.mlKit.vision.textRecognition.japanese
Google.android.playServices.mlKit.vision.textRecognition.korean
Google.android.playServices.tfLite.accelerationService
Google.android.playServices.tfLite.gpu
Google.android.playServices.tfLite.java
Google.android.playServices.tfLite.support
Google.android.playServices.threadNetwork
Google.mlKit.vision.entityExtraction
Google.mlKit.vision.faceMeshDetection
Kotlin.gradlePlugin
0.51.0
Version 0.51.0 (2022-10-25)
Support Jetpack Compose BoM
Yesterday, Google released a BoM for Jetpack Compose.
Today we're introducing first-class support for it.
To take advantage of it, you just need to add the dependency on platform(AndroidX.compose.bom)
.
Just like Firebase.bom
, make sure you add it before any dependent dependency:
dependencies {
implementation(platform(AndroidX.compose.bom)) // Add this FIRST
implementation(AndroidX.compose.material3) // Related dependencies AFTER
implementation(AndroidX.compose.material3.windowSizeClass) // Same as above
}
In case you need to use a pre-release version (alpha, beta, rc…), use the withVersionPlaceholder()
function as such:
dependencies {
implementation(platform(AndroidX.compose.bom)) // Enables the BoM and depends on it
implementation(AndroidX.compose.icons.extended) // Uses version defined in the BoM
implementation(AndroidX.compose.material3.withVersionPlaceholder()) // Separate version in versions.properties
}
Fix StabilityLevel calculation for number-less pre-versions
Since last changes in the Version class, versions like 1.7.20-RC and 1.7.20-Beta would be marked as stable instead of respectively ReleaseCandidate and Beta because the logic expected a number in all cases.
The number is now optional for all pre-versions, except milestones.
To prevent future recurrence of such regression, this commit
also adds tests that assert the expected stability level of
many known versions from various libraries.
New dependency notations:
Click to expand (11)
AndroidX.asyncLayoutInflater.appcompat
AndroidX.compose.bom
AndroidX.dataStore.core.okio
AndroidX.graphics.core
AndroidX.input.motionPrediction
AndroidX.paging.testing
AndroidX.test.espresso.device
AndroidX.tv.foundation
AndroidX.tv.material
Firebase.dynamicModuleSupport
Google.firebase.dynamicModuleSupport
0.50.2
Version 0.50.2 (2022-09-24)
Minor change
Disable the old refreshVersionsDependenciesMapping
and migrateToRefreshVersionsDependenciesConstants
Gradle tasks.
Fixes
versionFor
could not work as it should have if it was used in multiple modules with different values: therefreshVersions
task would only display the updates of some of them, and mark the other ones as unused. This has been fixed.- Running the
refreshVersionsCleanup
task would log that thegradle/libs.versions.toml
file was modified even if it wasn't, and didn't exist in the first place. This is now fixed. - Version ordering now recognizes random qualifiers instead of marking with an unknown stability level.
New dependency notations:
Click to expand (15)
AndroidX.media3.dataSource
ApolloGraphQL.adapters
ApolloGraphQL.api
ApolloGraphQL.ast
ApolloGraphQL.httpCache
ApolloGraphQL.idlingResource
ApolloGraphQL.mockserver
ApolloGraphQL.normalizedCacheSqlite
ApolloGraphQL.normalizedCache
ApolloGraphQL.runtime
ApolloGraphQL.testingSupport
Google.horologist.dataLayer
KotlinX.serialization.bom
KotlinX.serialization.json.okio
Spring.boot.web
Credits
Thanks to all the folks that contributed in this release!
- Jacob Kwitkoski (@thederputy)
- Florian Levis (@Gounlaf)
- Seokjae Lee (@doljae)
- solonovamax (@solonovamax)
- Louis CAD (@LouisCAD)
- Jean-Michel Fayard (@jmfayard)