You are viewing a plain text version of this content. The canonical link for it is here.
Posted to derby-dev@db.apache.org by "Rick Hillegas (JIRA)" <ji...@apache.org> on 2017/12/17 16:56:00 UTC
[jira] [Comment Edited] (DERBY-6945) Re-package Derby as a
collection of jigsaw modules
[ https://issues.apache.org/jira/browse/DERBY-6945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16294226#comment-16294226 ]
Rick Hillegas edited comment on DERBY-6945 at 12/17/17 4:55 PM:
----------------------------------------------------------------
h2. Module Names
I would like to start a discussion about module names now, informed by Alex Buckley's advice, [Mark Reinhold's Jigsaw overview](http://openjdk.java.net/projects/jigsaw/spec/sotms/), and [Stephen Colebourne's blog](http://openjdk.java.net/projects/jigsaw/spec/sotms/). I am only ready to discuss the names of top level modules, that is, the ones which correspond to Derby jar files. Undoubtedly, top level modules will have sub-modules. I am cautiously hopeful that sub-module names will be straightforward once we name the top ones.
Mark Reinhold's examples and Stephen Colbourne's advice agree that module names should start with the reverse-DNS specification of our package space: org.apache.derby. That should insulate us from name conflicts with other projects and products. In the unlikely event of a conflict, the ASF is in a strong position to defend our claim to this namespace.
Here are a number of ideas about what we should call the top-level modules.
1. Named after the jar files
We could simply add the jar file name to the end of the project prefix:
org.apache.derby.derby
org.apache.derby.derbyclient
org.apache.derby.derbynet
org.apache.derby.derbyoptionaltools
org.apache.derby.derbyrun
org.apache.derby.derbyshared
org.apache.derby.derbytools
2. Named after top-level directories
Alternatively, we could name the modules after the top level branches of the source tree (that is, the subdirectories of trunk/java). Note that I am planning to add a new subdirectory to hold the package for derbyrun's entry point (trunk/java/tools/org/apache/derby/iapi/tools/run.java). I am tentatively thinking of naming it simply "run":
org.apache.derby.engine
org.apache.derby.client
org.apache.derby.drda
org.apache.derby.optional
org.apache.derby.run
org.apache.derby.shared
org.apache.derby.tools
3. Named more descriptively
Alternatively, we could follow Alex Buckley's advice and come up with more descriptive handles:
org.apache.derby.rdbms
org.apache.derby.remote_jdbc_client
org.apache.derby.network_server
org.apache.derby.plugins
org.apache.derby.programs
org.apache.derby.common
org.apache.derby.core_tools
There are, of course, many variations on the third option.
What are your thoughts?
was (Author: rhillegas):
h2. Module Names
I would like to start a discussion about module names now, informed by Alex Buckley's advice, [http://openjdk.java.net/projects/jigsaw/spec/sotms/|Mark Reinhold's Jigsaw overview], and [http://openjdk.java.net/projects/jigsaw/spec/sotms/|Stephen Colebourne's blog]. I am only ready to discuss the names of top level modules, that is, the ones which correspond to Derby jar files. Undoubtedly, top level modules will have sub-modules. I am cautiously hopeful that sub-module names will be straightforward once we name the top ones.
Mark Reinhold's examples and Stephen Colbourne's advice agree that module names should start with the reverse-DNS specification of our package space: org.apache.derby. That should insulate us from name conflicts with other projects and products. In the unlikely event of a conflict, the ASF is in a strong position to defend our claim to this namespace.
Here are a number of ideas about what we should call the top-level modules.
1. Named after the jar files
We could simply add the jar file name to the end of the project prefix:
org.apache.derby.derby
org.apache.derby.derbyclient
org.apache.derby.derbynet
org.apache.derby.derbyoptionaltools
org.apache.derby.derbyrun
org.apache.derby.derbyshared
org.apache.derby.derbytools
2. Named after top-level directories
Alternatively, we could name the modules after the top level branches of the source tree (that is, the subdirectories of trunk/java). Note that I am planning to add a new subdirectory to hold the package for derbyrun's entry point (trunk/java/tools/org/apache/derby/iapi/tools/run.java). I am tentatively thinking of naming it simply "run":
org.apache.derby.engine
org.apache.derby.client
org.apache.derby.drda
org.apache.derby.optional
org.apache.derby.run
org.apache.derby.shared
org.apache.derby.tools
3. Named more descriptively
Alternatively, we could follow Alex Buckley's advice and come up with more descriptive handles:
org.apache.derby.rdbms
org.apache.derby.remote_jdbc_client
org.apache.derby.network_server
org.apache.derby.plugins
org.apache.derby.programs
org.apache.derby.common
org.apache.derby.core_tools
There are, of course, many variations on the third option.
What are your thoughts?
> Re-package Derby as a collection of jigsaw modules
> --------------------------------------------------
>
> Key: DERBY-6945
> URL: https://issues.apache.org/jira/browse/DERBY-6945
> Project: Derby
> Issue Type: Improvement
> Affects Versions: 10.13.1.2
> Reporter: Rick Hillegas
> Attachments: derby-6945-01-aa-remove_derbyPreBuild_dep.diff, derby-6945-02-ab-newDerbySharedJar.diff, jdeps.out.tar
>
>
> Once we commit to building with Java 9 (see DERBY-6856), we should consider re-packaging Derby as a set of jigsaw modules. This would result in a different set of release artifacts. This might be a good opportunity to address the Tomcat artifactory issues raised by issue DERBY-6944.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)