I am concerned that this proposal includes dropping support for J2ME
from Derby. I would like to see a standard vote if this does mean
dropping the J2ME platform. IMHO it would also be good to poll the User
community specifically about the use of J2ME to determine if such a
change will leave some applications without an upgrade path.
Rick Hillegas wrote:
Rick Hillegas wrote:
I would like to start writing Derby code which makes use of Java 5
features. More specifically:
1) I would like to take advantage of the Java 5 extensions for
ease-of-use and stronger type checking.
2) I would like to be able to write regression tests which verify
that user-written Java 5 code runs correctly as Derby functions and
procedures.
Would anyone object to our requiring that developers use a Java 5 or
later compiler to build Derby? I believe that we would still require
the presence of the 1.4 libraries and the expectation would continue
to be that the compiler must compile down to 1.4 classes.
Thanks,
-Rick
Discussion on this thread has died down so I would like to summarize
what has been said so far:
a) Java 5 source can't be compiled down to 1.4 class files. This means
that any code which is necessary for Derby to operate must be 1.4
source. This means that mandatory code cannot take advantage of Java 5
features such as enums, generics, annotations, and varargs.
b) The CDC small device platforms require 1.4 level class files. Java
5 class files will not run on CDC platforms.
c) There is no problem with using the Java 5 compiler to compile 1.4
source into 1.4 targets. This already works today for those of us
whose default compiler is Java 5 or Java 6.
d) Java 5 is available on all likely development platforms, including
Windows, Linux, Mac OS X, and Solaris.
e) If we required Java 5 (or higher) in order to compile Derby, then
we could use Java 5 features in optional engine code and in optional
tests.
I propose that we require Java 5 (or higher) in order to build Derby.
If there are no objections and no further discussion, then I intend to
call a lazy consensus vote on this proposal.
Regards,
-Rick