-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Deps] Migrate to Version Catalogs #21262
Conversation
Generated by 🚫 Danger |
Build environment changesThe following changes in the build classpath were detected: list
tree++--- androidx.navigation.safeargs.kotlin:androidx.navigation.safeargs.kotlin.gradle.plugin:2.7.7
+| \--- androidx.navigation:navigation-safe-args-gradle-plugin:2.7.7
+| \--- org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.0 -> 1.9.24
+| \--- org.jetbrains.kotlin:kotlin-gradle-plugins-bom:1.9.24
+| +--- org.jetbrains.kotlin:kotlin-allopen:1.9.24 (c)
+| \--- org.jetbrains.kotlin:kotlin-serialization:1.9.24 (c)
++--- com.android.application:com.android.application.gradle.plugin:8.5.1
+| \--- com.android.tools.build:gradle:8.5.1 (*)
++--- org.jetbrains.kotlin.plugin.allopen:org.jetbrains.kotlin.plugin.allopen.gradle.plugin:1.9.24
+| \--- org.jetbrains.kotlin:kotlin-allopen:1.9.24
+| +--- org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.9.24 (*)
+| +--- org.jetbrains.kotlin:kotlin-gradle-plugins-bom:1.9.24 (*)
+| \--- org.jetbrains.kotlin:kotlin-gradle-plugin-model:1.9.24 (*)
++--- org.jetbrains.kotlin.android:org.jetbrains.kotlin.android.gradle.plugin:1.9.24
+| \--- org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.24 (*)
++--- org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.9.24
+| \--- org.jetbrains.kotlin:kotlin-gradle-plugin:1.9.24 (*)
+\--- org.jetbrains.kotlin.plugin.serialization:org.jetbrains.kotlin.plugin.serialization.gradle.plugin:1.9.24
+ \--- org.jetbrains.kotlin:kotlin-serialization:1.9.24
+ +--- org.jetbrains.kotlin:kotlin-gradle-plugin-api:1.9.24 (*)
+ \--- org.jetbrains.kotlin:kotlin-gradle-plugins-bom:1.9.24 (*) |
📲 You can test the changes from this Pull Request in Jetpack by scanning the QR code below to install the corresponding build.
|
📲 You can test the changes from this Pull Request in WordPress by scanning the QR code below to install the corresponding build.
|
This configuration was added as part of this b2bf8b1 initial module setup commit, but never had any effect. As such, it is removed from the list of dependencies to make cleanup the dependency block from unnecessary configuration, which also needs not be migrated to version catalogs.
The AGP update is done manually.
a1fa658
to
d7fa850
Compare
@@ -43,8 +43,6 @@ repositories { | |||
} | |||
|
|||
dependencies { | |||
implementation fileTree(dir: 'libs', include: ['*.jar']) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍
@@ -24,10 +24,6 @@ ext { | |||
ext { | |||
// main | |||
androidxComposeNavigationVersion = '2.7.7' | |||
androidxGridlayoutVersion = '1.0.0' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👋 @nbradbury !
These variables you see there are just versions that could be potentially used (were used in the past) on a dependency/library. When there is no dependency associated with those, there is nothing buildHealth
or can do identify those "unused" version related variables to report them as such.
Does that make sense? 🙏
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. I'm especially glad that the runtime dependencies are not change by this PR, which proves a thoughtful migration. 👏
About build classpath changes - they're expected, as we now declare (but not apply) more plugins in the root project. I'm okay with this and I think this is even better as some plugins authors expect us to do this, e.g. AGP (docs).
Awesome, thank you both @nbradbury and @wzieba for the review, to version catalogs and beyond! 🎉 ❤️ 🚀 |
FYI: I just noticed yesterday a missing |
Quality Gate passedIssues Measures |
This is a leftover from the 'Version Catalogs' migration work. FYI: During a WCAndroid release, the 'complete_code_freeze' workflow failed due to the fact that the old, non-version-catalogs related versions couldn't be referenced any more. The same will apply to JP/WPAndroid when a new release will commence. This change addresses that. JP/WPAndroid PR: [Deps] Migrate to Version Catalogs #21262 - #21262 WCAndroid PR: Release/20.8 update import keys #12799 - woocommerce/woocommerce-android#12799
Project Thread: paaHJt-7cv-p2
This PR migrates all dependencies and plugins in this project to Version Catalogs and under the newly created gradle/libs.versions.toml file.
Description
FYI: I recommend reviewing this PR commit-by-commit just to make sure that every dependency and plugin has been migrated appropriately, just to make sure that there isn't any left-overs that need addressing.
PS: The gradle/libs.versions.toml file, on both, its
versions
andlibraries
sections:dash-case
) .org
name is added in its prefix to group dependencies together and make them easily identifiable.main
is added in its suffix to make sure that a dependency cannot be a parent of another dependency and a dependency itself. This helps in various corner cases.To Test:
Jetpack
andWordPress
apps, and verify everything is working as expected../gradlew buildHealth
task locally and verify that everything is working as expected (CI).Regression Notes
Potential unintended areas of impact
What I did to test those areas of impact (or what existing automated tests I relied on)
To test
section above.What automated tests I added (or what prevented me from doing so)
PR Submission Checklist:
RELEASE-NOTES.txt
if necessary.Testing Checklist (strike-out the not-applying and unnecessary ones):
N/A