Ugh, I forgot to mention the problem with cross-jdk build: if we want
"cayenne-jdk1.5-unpublished" sources to stay buildable with both 1.5 &
1.6, all the classes implementing DataSource, Connection, ResultSet,
etc. will have a compile dependency on things like java.sql.NClob,
java.sql.SQLXML, etc.
Andrus
On Sep 28, 2008, at 2:00 AM, Andrus Adamchik wrote:
To go ahead with JDBC 4 implementation (even as an optional module)
and keep a sane build system at the same time, logically we should
switch the build system to Java 1.6. It can still produce the code
compatible with Java 1.5, but the development environment will have
to be 1.6.
This will exclude 32-bit Mac owners from the dev process (I do have
1 such laptop in my company, Ari probably has a few, etc...). So how
do we make it build on 1.5 (everything except for the 1.6 module of
course). Here is one idea: a developer may extract the new JDBC 4
interfaces from Java 1.6 (we can provide a little script to do
that), and build a small extension jar and drop it in the lib/ext of
JDK 1.5. That and also we will publish 1.6 snapshots for downstream
dependents (such as cayenne-server and cayenne-client).
Thoughts on that? Maybe there are better ideas (and I may need to
vet this little hack with Apache legal).
Thanks,
Andrus