[Biojava-dev] Java version for Biojava 4

Andreas Prlic andreas at sdsc.edu
Wed Oct 8 18:14:42 UTC 2014


I think we need to clarify a few things. By backwards compiling BioJava for
java 1.6, nobody is forced to use or install Java 1.6. One can compile for
1.6 with any of the current Java versions. I have been developing biojava
for a long time now under Java 1.7 and all of my server-side applications
that I build on top of BioJava are using Java 1.7 as well.

This is really a question about user-friendliness and if we want end-users
to run the code that for whatever unfortunate reason are stuck with an
ancient java (e.g. students on old computers at educational institutions).

The project  has a property called "jdk.version", which is set to 1.6
currently. It instructs the compiler to compile the library in a backwards
compatible way. To change the java version is a one character change in
this config.
 However this would break applets and webstart for many of our our
end-users . This inconvenience is much greater than the essentially
non-existing inconvenience for a developer of having to backwards compile
the library, even when developing on a never JDK.

As such I simply suggest to wait with this upgrade for a while longer,
until Java 1.6 usage is further down.  See attachment for the decline in
Java 1.6 usage. We can expect 1.6 to be irrelevant for the end-user
probably at some point next year. I do hope that we can release BioJava 4.0
sooner rather than later (release early, release often). and as such I'd
prefer 4.0.0 to still support Java 1.6. We can take another look at this
for the version after.


[image: Inline image 1]

Andreas





On Wed, Oct 8, 2014 at 10:07 AM, Jose Manuel Duarte <jose.duarte at psi.ch>
wrote:

>  I agree with Spencer that there's not much in terms of features that
> justify the update. But the fact that Java 6 has been without security
> updates since April 2013 (
> http://en.wikipedia.org/wiki/Java_version_history) is not a minor point.
> A question: are browsers right now even allowing applets to run with so an
> outdated VM? How much time until a serious vulnerability is found and Java
> 6 is blocked by browsers or even by firewall admins?
>
> We should also not forget that we are talking about the *next* release of
> Biojava, which will only happen some time in the future, say in 6 months or
> 1 year. By that time Java 6 will be > 2 years without updates, so
> essentially dead. As Andy says Biojava 3.x will still be in 6 in case
> someone really needs that.
>
> In terms of real situations where having 7 is necessary now, I've
> encountered one already (out of biojava): third party jars that have moved
> to Java 7. e.g.: UniProt JAPI is on Java 7 since September 2013;
> DRMAA-grid-engine library in maven central is only available in Java 7. I
> admit that these are not such pressing reasons to move, but with so an
> outdated Java 6 I guess that in the next year or so many people will be
> moving their jars to 7.
>
> Jose
>
>
>
>
> On 08.10.2014 18:37, Nick England wrote:
>
>  I use the IDBS inforsense pipeline program (its essentially the same as
> pipeline pilot, but a lot cheaper!). This currently requires Java 6 (for
> some reason you can't even run it on the version 7 runtime, not sure why as
> I assumed it was backwards compatible).
>
>  This is the reason I'm currently still using 6, but hopefully they'll
> update to 7 soon, it's becoming a pain as Orcale have made it very
> difficult to download the Java 6 JRE/JDK from their website.
>
>  I wouldn't let this influence your choices for Biojava4, just stating a
> reason for people to be require 6!
>
>  Nick
>
> On 8 October 2014 17:23, Mark Fortner <phidias51 at gmail.com> wrote:
>
>> FWIW, Oracle is no longer supporting Java 6, and not keeping the JVM up
>> to date definitely has some security risks associated with it.  I'd
>> recommend moving to Java 7.  I'd be curious about the 10-20% of users who
>> are still on Java 6 and what their reasons are for remaining on it.  Are
>> they PDB users from specific domains (i.e. some slow-moving organizations)
>> or just individual users who are slow to upgrade?
>>
>>  Cheers,
>>
>>  Mark
>>
>>
>> On Wed, Oct 8, 2014 at 4:33 AM, Spencer Bliven <sbliven at ucsd.edu> wrote:
>>
>>> The language improvements in Java 7 are quite minor (syntactic sugar).
>>> None of them are worth preventing new features from being included in the
>>> applets. The RCSB applets are very widely used and can't (well, shouldn't)
>>> just dictate that users upgrade java to use the website features. Even
>>> without the RCSB, I think as a library it is not our place to "encourage"
>>> users to upgrade their code. Breaking backwards compatibility should be
>>> seen as a negative thing that is only done when clearly outweighed by
>>> substantial benefits.
>>>
>>> The 1.8 language additions might be significant enough that we'll one
>>> day want to break backwards compatibility in order to use lambdas in our
>>> API, but it will take years for 1.8+ to saturate the market.
>>>
>>>
>>> On Wed, Oct 8, 2014 at 12:35 PM, LAW Andy <andy.law at roslin.ed.ac.uk>
>>> wrote:
>>>
>>>> You are talking about what version of Java to work against for the
>>>> forthcoming 4.x releases. Anyone who has existing code that is 1.6
>>>> dependent has already compiled it against the 3.x series (presumably) and
>>>> can continue to do so, since those jars are in the wild and will remain so.
>>>> You will not be cutting away existing functionality from current software.
>>>>
>>>> Go 1.7 and encourage those who want to use biojava jars but haven’t
>>>> already upgraded their code to fit 1.7 to do so if they want the benefits
>>>> of the new code.
>>>>
>>>> IMHO, of course.
>>>>
>>>> On 8 Oct 2014, at 11:03, Paolo Pavan <paolo.pavan at gmail.com> wrote:
>>>>
>>>> > Well, just beacuse it happened me to ask the same thing recently,
>>>> anyway there are several improvements in java 7. Both in performance and in
>>>> language syntax. For example, recently it happens that I couldn't use a
>>>> switch statement using strings.
>>>> >
>>>> > Also, security updates for java 6 are already outdated. I'm not very
>>>> sure, this could be not an issue if they refer to the vm itself programs
>>>> (since old compiled code can be executed by newer releases), but it could
>>>> be if they refer to fixes to the system library. Anyone has an opinion
>>>> about that?
>>>> >
>>>> > bye bye,
>>>> > Paolo
>>>> >
>>>> > 2014-10-07 19:01 GMT+02:00 Andreas Prlic <andreas at sdsc.edu>:
>>>> > Hi,
>>>> >
>>>> > Based on RCSB PDB analytics, I would estimate that somewhere between
>>>> 10-20% of all users are still on Java 1.6.  If we would upgrade to 1.7 we
>>>> would break biojava derived applets and Java web start for these. As such
>>>> I'd vote for staying conservative and to NOT upgrade to 1.7 at this time,
>>>> in particular since there is no strong reason for the move. Less than 2% of
>>>> users seem to be using 1.8 currently.
>>>> >
>>>> > Please note: anybody who is using the biojava jars can still build a
>>>> derived application in 1.7 or 1.8, even if the underlying .jars have been
>>>> compiled with an older version.
>>>> >
>>>> > Andreas
>>>> >
>>>> >
>>>> >
>>>> >
>>>> > On Tue, Oct 7, 2014 at 7:44 AM, Michael Heuer <heuermh at gmail.com>
>>>> wrote:
>>>> > I'm fine bumping to Java 7 as the minimum, although if there isn't a
>>>> > strong reason to move from Java 6 we might as well stay there.
>>>> >
>>>> > I have found a few problems with Java 8, e.g.
>>>> >
>>>> > https://github.com/bigdatagenomics/adam/issues/198
>>>> > https://github.com/nmdp-bioinformatics/ngs/issues/34
>>>> >
>>>> > so I wouldn't want to move to Java 8 as a minimum at this time.
>>>> >
>>>> >    michael
>>>> >
>>>> >
>>>> > On Tue, Oct 7, 2014 at 2:57 AM, Jose Manuel Duarte <
>>>> jose.duarte at psi.ch> wrote:
>>>> > >
>>>> > >> So has Java 6 been decided as the version for the 4.0 release?
>>>> Just asking
>>>> > >> as Douglas' suggestion is solid (I actually wasn't aware of that
>>>> > >> functionality).
>>>> > >>
>>>> > >
>>>> > > [moved to a new thread]
>>>> > >
>>>> > > I would definitely vote for next release to be at least Java 7, I
>>>> would even
>>>> > > try Java 8 to be more future proof. At the moment Java 7 is already
>>>> 3 years
>>>> > > old and very established. By the time we release Biojava 4, Java 6
>>>> will
>>>> > > surely be quite ancient (around 8 years old).
>>>> > >
>>>> > > Any thoughts?
>>>> > >
>>>> > > Jose
>>>> > >
>>>> > > _______________________________________________
>>>> > > biojava-dev mailing list
>>>> > > biojava-dev at mailman.open-bio.org
>>>> > > http://mailman.open-bio.org/mailman/listinfo/biojava-dev
>>>> > _______________________________________________
>>>> > biojava-dev mailing list
>>>> > biojava-dev at mailman.open-bio.org
>>>> > http://mailman.open-bio.org/mailman/listinfo/biojava-dev
>>>> >
>>>> >
>>>> >
>>>> >
>>>> > _______________________________________________
>>>> > biojava-dev mailing list
>>>> > biojava-dev at mailman.open-bio.org
>>>> > http://mailman.open-bio.org/mailman/listinfo/biojava-dev
>>>> >
>>>> > _______________________________________________
>>>> > biojava-dev mailing list
>>>> > biojava-dev at mailman.open-bio.org
>>>> > http://mailman.open-bio.org/mailman/listinfo/biojava-dev
>>>>
>>>>
>>>>  --
>>>> The University of Edinburgh is a charitable body, registered in
>>>> Scotland, with registration number SC005336.
>>>>
>>>>
>>>> _______________________________________________
>>>> biojava-dev mailing list
>>>> biojava-dev at mailman.open-bio.org
>>>> http://mailman.open-bio.org/mailman/listinfo/biojava-dev
>>>>
>>>
>>>
>>> _______________________________________________
>>> biojava-dev mailing list
>>> biojava-dev at mailman.open-bio.org
>>> http://mailman.open-bio.org/mailman/listinfo/biojava-dev
>>>
>>
>>
>> _______________________________________________
>> biojava-dev mailing list
>> biojava-dev at mailman.open-bio.org
>> http://mailman.open-bio.org/mailman/listinfo/biojava-dev
>>
>
>
>
> _______________________________________________
> biojava-dev mailing listbiojava-dev at mailman.open-bio.orghttp://mailman.open-bio.org/mailman/listinfo/biojava-dev
>
>
>
> _______________________________________________
> biojava-dev mailing list
> biojava-dev at mailman.open-bio.org
> http://mailman.open-bio.org/mailman/listinfo/biojava-dev
>



-- 
-----------------------------------------------------------------------
Dr. Andreas Prlic
RCSB PDB Protein Data Bank
University of California, San Diego

Editor Software Section
PLOS Computational Biology

BioJava Project Lead
-----------------------------------------------------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.open-bio.org/pipermail/biojava-dev/attachments/20141008/960862b5/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: EA803DC2-32F6-4D32-B0BA-A2865B0F024E.png
Type: image/png
Size: 25926 bytes
Desc: not available
URL: <http://mailman.open-bio.org/pipermail/biojava-dev/attachments/20141008/960862b5/attachment-0001.png>


More information about the biojava-dev mailing list