Hello everyone,

I would like to merge https://github.com/apache/solr/pull/2925 next week,
after doing some small cleanups.

The PR improves the way our dependencies are resolved by introducing a
platform module that automatically adds all our dependencies from our
version catalog (gradle/libs.version.toml) as constraints.

After the merge, we should be able to use solrbot again (some post-testing
is required), as dependabot has proven quite difficult to introduce (see
discussions in #2880).

With the PR changes merged it should now be easier to add, remove or update
a dependency. We no longer have to manually add or maintain a list of
dependency constraints. Resolving conflicts should also be as simple as
adding the library to our catalog with the specific version that solves the
conflict.

What changes from the flow is that we now lock versions with the gradle
task "gradlew resolveAndLockAll --write-locks" and no longer use the task
"writeLocks" that was provided by a third-party plugin.

The impact of a dependency change is made clearer when reviewing a PR, as
the lockfiles are more human-readable. Each module stores its own lockfile,
which should make it more obvious when a dependency change affects other
sub-modules as well.

New modules should consider adding the platform module as a dependency via
`implementation platform(project(":platform"))` to ensure that the version
constraints are applied correctly.

If you plan to review the PR and don't have the time this week, let me know
so that I can postpone the merge of the PR.

Best,
Christos

Reply via email to