[
https://issues.apache.org/jira/browse/DERBY-6945?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16306480#comment-16306480
]
Rick Hillegas commented on DERBY-6945:
--------------------------------------
Thanks for that suggestion, Martin. I had not considered the solution which you
are proposing. I believe that the developer experience would be as follows:
L1) Legacy applications would run on Derby 10.15 and also on earlier versions
of Derby.
L2) However, when compiling an old application against the Derby 10.15 jars,
the developer would see deprecation warnings. The developer would be encouraged
to use new classes in the public api.
I think this change would entail the following community interaction:
C1) Call a vote to approve the change to the public api. The change would be
phased in over two releases. In 10.15, the old api would still work but
deprecation warnings would appear during compilation of legacy applications.
C2) In 10.16, the old classes would be removed. By then, legacy applications
should have changed their import statements.
I don't have a lot of visibility into usage of the client driver vs. the
embedded driver. Many years ago, a survey taken at Java One suggested that 40%
of Derby usage involved the client driver and 60% involved the embedded driver.
If we were to adopt this approach, then my preference would be to leave the
embedded DataSources and driver in org.apache.derby.jdbc and re-locate the
client DataSources and driver to a new package in client.jar.
> 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,
> derby-6945-02-ac-newDerbySharedJar.diff, derby-6945-03-aa-partitionTest.diff,
> derby-6945-04-aa-moveRunClass.diff,
> derby-6945-05-aa-removeRedundant_Attribute_SQLState.diff,
> derby-6945-06-aa-removeOtherSharedDuplicates.diff,
> derby-6945-07-aa-net_client_overlap.diff,
> derby-6945-08-aa-move_shared_iapi_under_shared.diff,
> derby-6945-08-ab-move_shared_iapi_under_shared.diff,
> derby-6945-08-ad-move_shared_iapi_under_shared.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)