On 11/16/2011 3:45 PM, Tommaso Teofili wrote:
> Hi all,
>
> looking at the roadmap towards 2.4.0 release of UIMA SDK I was wondering
> why not migrate to Java 6 and consequently drop Java 5 support.
> The 2.3.1 version is known to be stable enough to keep it as the last Java
> 5 enabled version in my opinion to allow backward compatibility.
>
> This way we may also open up to integrate easier with a number of other
> open source projects which adopt Java 6.
> Just as an example, some months ago I was working on the RDF CAS Consumer
> using Clerezza but then (my fault) I realized it was not possible to use it
> on Java 5 as Clerezza uses Java 6 however this alone wouldn't be a strong
> enough reason.

I guess I don't understand this.  The UIMA framework and annotators, written to
work on Java 5, will also work on Java 6.
So I don't understand the issue here; can you explain a bit more?


> Other much more important reasons, in my opinion, lie in bugs in Java 5
> which have been fixed only in Java 6, see this one from Lucene as an
> example:
> https://issues.apache.org/jira/browse/LUCENE-3235

This bug was reported to also affect (some) Java 6 issues, according to the fast
read I did of all the comments on that issue.  There recommendation I think was
to fix their code to avoid tripping over that issue in JVMs. 

> Consider also that some bugs have been resolved in minor versions of Java 6
> so this wouldn't secure things 100% from previous bugs, but I think that
> doing a minor version upgrade (usually to at least 1.6.0_18) is trivial
> while changing major versions could be an issue with a big project.
> By the way, it seems Lucene 3.x is going to drop Java 5 support thus this
> would block any further update to Lucas/Solrcas (Lucene/Solr 3.4 still has
> Java 5 but 3.5/3.6+ will probably migrate to Java 6).

Again, I don't know why we couldn't continue to upgrade Lucas, even if was Java
5 compatible.  Wouldn't it run just fine under Java 6?

>
> What do you think?

I think that things written for Java 5 will run on either Java 5 or 6.  So
"requiring" Java 6 will cause Java 5 users of UIMA to stop being able to get
updates (unless we undertake to maintain multiple releases in parallel :-) ).  I
think we should wait quite a while before doing this kind of thing, because I
don't see any particular value in Java 6 features over Java 5 for UIMA; and
anyone can exploit the Java 6 implementations if they wish, already.

Please let me know if I misunderstand some basics, here :-) ....

-Marshall
> Tommaso
>

Reply via email to