db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel John Debrunner <...@debrunners.com>
Subject Re: VOTE: Principles of sharing code
Date Mon, 24 Oct 2005 18:22:30 GMT
David W. Van Couvering wrote:

> As suggested by many of you, here is a call vote on the overall
> intention for how we want to share code, without bogging down in the
> details.  Thanks to Kathey for a very helpful suggested wording.
> This vote is to support the overall intention to implement a framework
> to allow code sharing across the Derby product jars that will allow
> Derby jars of the same major version to be loaded in a Java VM without
> having to use specialized classloaders.  Forward and backward
> compatibility between jar files within the same major version will be
> implemented using versioning, compatibility tests, and an explicit
> procedure for deprecating internal APIs.
> If the major version of the jars loaded in a JVM differ, the user will
> need to separate the two versions by using separate classloaders.

Is this a requirement, 'will need', since the wiki page says "We should
strive for forward compatibility between major releases, ..." and
elsewhere in referring to incompatibility between major releases it says
"(and this is to be avoided)"?
> This implementation will not have any significant impact on jar file
> size or otherwise affect product distribution or usage.
> The detailed guidelines are being documented and refined on the Derby
> Wiki site at
> http://wiki.apache.org/db-derby/SharedComponentVersioningGuidelines.

I'm a little nervous of the use of and reliance on "major version",
since we don't have any  guidelines as to when we would change major
version number. One could read this vote as saying I can break the
compatibility at any time by just bumping the major version. Is shared
code really the driver for major version changes?

Does specifying major version add any value to your proposal? Maybe you
could take the approach that at all times we strive for compatibility.
If someone in the future wants a change that would cause some
compatibility issues, they could raise it then with a vote.


View raw message