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


Reply via email to