[Bioc-devel] RMassBank (almost) builds ...
Michael.Stravs at eawag.ch
Thu Oct 13 16:48:35 CEST 2016
Is there any compelling reason why one wouldn't want to upgrade BioC to Java 8? One way or another this update will have to come in the near future anyway, so causing disruption by downgrading rcdk now, then upgrading it again in the future seems unnecessary...
From: Schymanski, Emma
Sent: Donnerstag, 13. Oktober 2016 16:39
To: Stravs, Michael
Subject: FW: [Bioc-devel] RMassBank (almost) builds ...
Sent: Thursday, 13 October 2016 4:33 PM
To: Rajarshi Guha <rajarshi.guha at gmail.com<mailto:rajarshi.guha at gmail.com>>
Cc: Egon Willighagen <egon.willighagen at gmail.com<mailto:egon.willighagen at gmail.com>>; Schymanski, Emma <Emma.Schymanski at eawag.ch<mailto:Emma.Schymanski at eawag.ch>>; bioc-devel at r-project.org<mailto:bioc-devel at r-project.org>
Subject: Re: [Bioc-devel] RMassBank (almost) builds ...
It was my understanding that the newer depict module needed Java8 and that was the motivating reason for setting the system requirement to Java8. For example, when i was drawing molecules on my local machine I would encounter errors using Java7 and CDK >=1.5.12 , but did not encounter these with Java8. If i remember correctly the basic image generation test was failing with Java7 (https://github.com/cran/rcdk/blob/master/inst/unitTests/runit.depiction.R).
When I initially submitted to CRAN I did NOT check the Java version and therefore users would be able to use Java 7 and would encounter errors only when using some features of Depict. But in going through the submission gauntlet I was asked to add a system requirement and a check for the Java version. In retrospect a warning may have been more appropriate.
In terms of fixing this issue, I would mention that the single biggest problem in uploading to CRAN is that the CDK JAR size is much bigger (~18mb?) than the maximum allowed size (~5mb). I was given a waiver when I argued that the CDK core libraries are updated only infrequently. I think it would be very nice to have more rapid updates of rCDK on CRAN that tracks the CDK releases but this would require a better way to load JARs on CRAN as the package size was a friction point. For comparison, many rJava packages use only a few Java files that boil down to small Jars of <1Mb. The admins were understandably concerned about the strain on the archive system of large JARs. That was a bit of an aside but I bring this up to say that even a small change like downgrading a Java version check to a warning or changing the SystemRequirements line will require a full upload of the 18MB jar which presented an issue upon last submission.
In my view the potential solutions can be:
1. if RMassBank doesn't need the depict stuff, pin the rCDK version to 3.3.5 (CDK libs 1.5.12 but no Java check)
2. update BioC buildsystem (as per Herve's email and keep J8)
3. change the System requirements to java7 and re-upload to CRAN (are we sure? Egon would know but my own experience suggests there are issues here.)
4. Long-term: is there a better way to package JARs for CRAN that mitigate the package-size issue and the resulting reluctance to make small, incremental changes? Perhaps a Maven plugin?
On Thu, Oct 13, 2016 at 8:46 AM, Rajarshi Guha <rajarshi.guha at gmail.com<mailto:rajarshi.guha at gmail.com>> wrote:
Hi Zach, I see from the commits that you've put in a check for JDK >= 1.8 in the init methods and the unit tests. Is there a reason for that? According to Egon, CDK currently depends on >= 1.7
On Thu, Oct 13, 2016 at 4:15 AM, Egon Willighagen <egon.willighagen at gmail.com<mailto:egon.willighagen at gmail.com>> wrote:
On Wed, Oct 12, 2016 at 10:18 PM, Schymanski, Emma
<Emma.Schymanski at eawag.ch<mailto:Emma.Schymanski at eawag.ch>> wrote:
> Thanks to Laurent and Jo for updating MSnbase and thanks to the BioC team for getting the email updates working again! The good news is that RMassBank now builds on most platforms... but ...
> 1) we have a build error due to a Java version issue with rcdk, this has been a problem on release for ages.
> Will someone on the BioC side follow up with that?
It seems that Rajarshi's package depends on J8 which is not present on
the build system?
I did a quick search, but is rcdk actually in Bioconductor? I guess it
is using the CRAN version, which has this dependency formalized:
SystemRequirements:Java JDK 1.8 or higher
So, the RMassBank is effectively also depending on J8... is that
available on the build system?
Rajarshi, the CDK depends only on J7... why is the rcdk depending on J8?
Department of Bioinformatics - BiGCaT
Maastricht University (http://www.bigcat.unimaas.nl/)
Rajarshi Guha | http://blog.rguha.net
NIH Center for Advancing Translational Science
[[alternative HTML version deleted]]
More information about the Bioc-devel