Proposal (revised): #VersionsInModuleNames

Robert Scholte rfscholte at apache.org
Fri Mar 24 09:20:08 UTC 2017


Hi Mark,

I like these adjustments.

thanks,
Robert

On Thu, 23 Mar 2017 19:15:24 +0100, <mark.reinhold at oracle.com> wrote:

> Issue summary
> -------------
>
>   #VersionsInModuleNames -- Some have argued that library maintainers
>   will be tempted to encode major version numbers, or even full version
>   numbers, in module names.  Is there some way we can guide people away
>   from doing that?  [1]
>
> Proposal
> --------
>
> Based on extensive feedback, from EG members and others, make two
> changes:
>
>   - Abandon the current proposal [2] to mandate that module names used
>     anywhere in source-form module declarations both start and end with
>     "Java letters".
>
>     (This restriction was never implemented in the prototype RI.)
>
>   - Revise the algorithm that computes the names of automatic modules so
>     that it preserves digits at the end of module names [3].  The name
>     for `commons-lang3-3.0.jar`, e.g., will now be `commons.lang3`.
>
>     (Whether that algorithm is changed in other ways, or automatic
>      modules are abandoned altogether, is the subject of the separate
>      #AutomaticModuleNames issue [4].)
>
> In order to discourage the encoding of version numbers in module names a
> Java language compiler may issue a lint warning when a module with such
> a name is compiled, but whether or not a compiler does so is beyond the
> scope of this specification.
>
>
> [1]  
> http://openjdk.java.net/projects/jigsaw/spec/issues/#VersionsInModuleNames
> [2]  
> http://mail.openjdk.java.net/pipermail/jpms-spec-experts/2016-December/000516.html
> [3]  
> http://cr.openjdk.java.net/~mr/jigsaw/spec/api/java/lang/module/ModuleFinder.html#of-java.nio.file.Path...-
> [4]  
> http://openjdk.java.net/projects/jigsaw/spec/issues/#AutomaticModuleNames


More information about the jpms-spec-observers mailing list