lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mark Miller (JIRA)" <>
Subject [jira] [Commented] (SOLR-13452) Update the lucene-solr build from Ivy+Ant+Maven (shadow build) to Gradle.
Date Sat, 01 Jun 2019 17:03:00 GMT


Mark Miller commented on SOLR-13452:

{quote}as long as something unexpected will fail precommit, probably due to a missing checksum.
There are a variety of checks and enforcers that would fire and alert of you all the changes
going on - you would then have to accept and commit those changes.

For example, let's say you update a single version of a library and it adds a couple of dependencies
and changes the versions of a couple others.

* The license check would fail for new dependencies.
* The jar checksum check would fail for new dependencies and for version changes.
* The versions plugin would fail the check target until you do gradlew --write-locks and review/accept
an updated versions.locks file that lists every dependency and it's current version.

IMO, the best idea is to let gradle handle transitive deps and version resolution - it will
do the best job. A human then reviews and either accepts or makes constraints / exceptions.
The whole system is designed to work this way really, and when done right, it's really the
best we have IMHO.

bq. Does the precommit check notice when there's a checksum but no matching jar?

This is a little more complicated than that to do well or thoroughly. There is a cool plugin
that helps with this, but it doesn't work with implementation and api yet. When it does, we
can use it to find deps that are not actually used by anything anymore.

> Update the lucene-solr build from Ivy+Ant+Maven (shadow build) to Gradle.
> -------------------------------------------------------------------------
>                 Key: SOLR-13452
>                 URL:
>             Project: Solr
>          Issue Type: Improvement
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: Build
>            Reporter: Mark Miller
>            Assignee: Mark Miller
>            Priority: Major
>             Fix For: master (9.0)
> I took some things from the great work that Dat did in []
and took the ball a little further.
> When working with gradle in sub modules directly, I recommend []
> This gradle branch uses the following plugin for version locking, version configuration
and version consistency across modules: []

This message was sent by Atlassian JIRA

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message