Hi,
Dawid and I changed the gradle build to change the module names to be according to above. With the new gradle task the automatically assigned module names from the gradle projects are now:
> Task :showModuleNames
lucene-benchmark-10.0.0-SNAPSHOT.jar -> org.apache.lucene.benchmark
lucene-backward-codecs-10.0.0-SNAPSHOT.jar -> org.apache.lucene.backward_codecs
lucene-classification-10.0.0-SNAPSHOT.jar -> org.apache.lucene.classification
lucene-codecs-10.0.0-SNAPSHOT.jar -> org.apache.lucene.codecs
lucene-core-10.0.0-SNAPSHOT.jar -> org.apache.lucene.core
lucene-demo-10.0.0-SNAPSHOT.jar -> org.apache.lucene.demo
lucene-expressions-10.0.0-SNAPSHOT.jar -> org.apache.lucene.expressions
lucene-facet-10.0.0-SNAPSHOT.jar -> org.apache.lucene.facet
lucene-grouping-10.0.0-SNAPSHOT.jar -> org.apache.lucene.grouping
lucene-highlighter-10.0.0-SNAPSHOT.jar -> org.apache.lucene.highlighter
lucene-join-10.0.0-SNAPSHOT.jar -> org.apache.lucene.join
lucene-luke-10.0.0-SNAPSHOT.jar -> org.apache.lucene.luke
lucene-memory-10.0.0-SNAPSHOT.jar -> org.apache.lucene.memory
lucene-misc-10.0.0-SNAPSHOT.jar -> org.apache.lucene.misc
lucene-monitor-10.0.0-SNAPSHOT.jar -> org.apache.lucene.monitor
lucene-queries-10.0.0-SNAPSHOT.jar -> org.apache.lucene.queries
lucene-queryparser-10.0.0-SNAPSHOT.jar -> org.apache.lucene.queryparser
lucene-replicator-10.0.0-SNAPSHOT.jar -> org.apache.lucene.replicator
lucene-sandbox-10.0.0-SNAPSHOT.jar -> org.apache.lucene.sandbox
lucene-spatial-extras-10.0.0-SNAPSHOT.jar -> org.apache.lucene.spatial_extras
lucene-spatial3d-10.0.0-SNAPSHOT.jar -> org.apache.lucene.spatial3d
lucene-suggest-10.0.0-SNAPSHOT.jar -> org.apache.lucene.suggest
lucene-test-framework-10.0.0-SNAPSHOT.jar -> org.apache.lucene.test_framework
lucene-analysis-common-10.0.0-SNAPSHOT.jar -> org.apache.lucene.analysis.common
lucene-analysis-icu-10.0.0-SNAPSHOT.jar -> org.apache.lucene.analysis.icu
lucene-analysis-kuromoji-10.0.0-SNAPSHOT.jar -> org.apache.lucene.analysis.kuromoji
lucene-analysis-morfologik-10.0.0-SNAPSHOT.jar -> org.apache.lucene.analysis.morfologik
lucene-analysis-nori-10.0.0-SNAPSHOT.jar -> org.apache.lucene.analysis.nori
lucene-analysis-opennlp-10.0.0-SNAPSHOT.jar -> org.apache.lucene.analysis.opennlp
lucene-analysis-phonetic-10.0.0-SNAPSHOT.jar -> org.apache.lucene.analysis.phonetic
lucene-analysis-smartcn-10.0.0-SNAPSHOT.jar -> org.apache.lucene.analysis.smartcn
lucene-analysis-stempel-10.0.0-SNAPSHOT.jar -> org.apache.lucene.analysis.stempel
The module names on the right can now be used in Java source code to refer in Java 11 to the module. Those are now "automatic module names" (because the lucene behind is not completely modularized). In later Lucene 9.x versions we will add full module support and only expose APIs for external consumption and hide all internal lucene packages.
The 9.0 relese should make sure that the module names are at least "defined", so we can use them later in module-info.java,
Should I send a vote thread about this to the mailing list separately?
Uwe
-----
Uwe Schindler
Achterdiek 19, D-28357 Bremen
https://www.thetaphi.de eMail: uwe@thetaphi.de
> -----Original Message-----
> From: Dawid Weiss <dawid.weiss@gmail.com>
> Sent: Monday, November 29, 2021 7:36 PM
> To: Lucene Dev <dev@lucene.apache.org>
> Subject: Re: [VOTE] Release Lucene 9.0.0 RC3
>
> Here is the change adding the 'org.apache.*' prefix, Uwe:
> https://github.com/apache/lucene/pull/487
>
> I verified that Luke starts in the rebuilt distribution and that
> module names show org.apache.* prefixes. Dashes are not allowed in
> modules so Lucene artifacts using them (spatial-extras,
> test-framework, backward-codecs) use an underscore in place of the
> dash.
>
> Dawid
>
> On Mon, Nov 29, 2021 at 7:23 PM Dawid Weiss <dawid.weiss@gmail.com>
> wrote:
> >
> > Dear Uwe,
> >
> > > I did not notice this because it was somehow hidden.
> >
> > It was not hidden, Uwe. It was right there in the issue that
> > introduced it, along with a comment that it was a deliberate decision
> > (mine).
> >
> > > In every build.gradle file define the module name explicit using an ext
> property for the "Automatic Module Name" JAR manifest, don't use regex
> replace on the filesystem path of the gradle build.
> >
> > I disagree with you - convention over configuration. If you derive the
> > module name from the project path, it's simpler and easier to use. And
> > nothing will break -- if you change the layout of folders, you'd break
> > compilation and you'd have to alter the naming convention in that
> > (one!) place as well. The simpler it is, the better. I would even
> > insist on renaming module folders to what the package structure
> > already uses (underscore instead of the dash) so that it's consistent
> > everywhere.
> >
> > > If you remove the "lucene/" directory from the gradle build, the module
> name changes. This is not acceptable!
> >
> > If you do that, everything will break and you'd have to change a lot
> > more than just module names...
> >
> > I'll provide a patch adding org.apache. prefix but I don't agree on
> > scattering module names in each and every module - this is irrelevant
> > and unnecessary duplication of what can be done in a simple way (and
> > we already do it for JAR names, Maven artifacts, etc...).
> >
> > D.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
> For additional commands, e-mail: dev-help@lucene.apache.org
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org