From Bioinformatics.Org Wiki
BIRCH Launcher in OSX
The main purpose of this incremental release is to fix a problem with the BIRCH launcher in OSX.
In OSX, the desktop app to launch the BIRCH BioLegato application is in $BIRCH/admin/launchers/birch.app. Although BioLegato is a 64-bit Java application, the launcher is an old one generated when apps were 32-bit. Beginning with OSX Catalina, 32-bit apps will no longer run. This app has been regenerated using Platypus on a High Sierra Mac.
- bldna - DONE
revised Save SELECTION As to reflect direct saving of GenBank files by Biolegato, rather than readseq. Revised bioLegato_bugs.html to reflect changes.
Revise genome and transcriptome assembly tutorials to include new features for QC/QA.
tests of Java applications
On Fedora 35, it was discovered that the latest versions of some Java applications didn't work. Therefore a successive regime of testing was done on many platforms until a way was found to get each program to run. In some cases, it was necessary to use a particular version of Java. In particular, the only cross-platform solution for Jalview was to use a Java 8 JRE distributed with Jalview. Even other Java 8 JREs didn't work in some environments.
Jalview - launches but endless call to download a zip file.
Running jalview.bin.Jalview with memory setting -Xmx9469377536 WARNING: A terminally deprecated method in java.lang.System has been called WARNING: System::setSecurityManager has been called by jalview.bin.Jalview (file:/home/frist/BIRCH/java/jalview-all-184.108.40.206-j1.8/jalview-all-220.127.116.11-j1.8.jar) WARNING: Please consider reporting this to the maintainers of jalview.bin.Jalview WARNING: System::setSecurityManager will be removed in a future release Java version: 17.0.2 ...
Jalview 18.104.22.168 requires Java8 or Java11. Since Jalview is good at finding what it considers a compatible Java, nothing further is needed other than just installing Java8 or 11. The next release should support Java17.
Wrote wrapper to check for Java 8 and run Mesquite if successful.
Current version is 3.70 Aug. 2021. Authors state that it requires JDK8 and will not run with newer Java.
Cutadapt - This is a Python program that suffers from the dreaded version dependency. Rather than asking the end user to install this separately, Created a standalone binary using pyinstaller. Pyinstaller copies all of the dependencies imported by a Python package, generates C code for the Python (I kid you not!) and links it into a single standalone binary. The only dependency is the presence of glibc, so you have to do this on a system with the oldest glibc that you expect to have to support, and then it will work as a binary on later versions of glibc.
To get pyinstaller to work,
1. On your "old" machine, install your desired package using pip. 2. Run pyinstaller using the following script
#!/bin/bash ENTRYFILE=/usr/local/bin/cutadapt pyinstaller $ENTRYFILE --name cutadapt --onefile
3. The standalone binary is written to the dist directory as cutadapt.
Pyinstaller isn't perfect. I was able to get it to create a binary for Weblogo, but upon execution there was an error message saying something to the effect that there was no parent package for some of the imports. This never worked despite days or experimentation and consulting sources on the web.
Trinity - On Fedora35, "can't find threads.pm". Can we add this to the installed package?
fastqc - missing Perl module?
Can't locate FindBin.pm in @INC (you may need to install the FindBin module) (@INC contains: /usr/local/lib64/perl5/5.34 /usr/local/share/perl5/5.34 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at /home/frist/BIRCH/script/fastqc line 4. BEGIN failed--compilation aborted at /home/frist/BIRCH/script/fastqc line 4.
Updating fastqc to v0.11.9 (current 0.11.5) did not fix the problem. Had to modify fastqc to remove use of FindBin module.
- not found. Is this actually part of BIRCH, or is it just in the BIRCH menu?.
No longer supported. Delete from BIRCH.
- requires Java8. Added code to Mauve script to get path to Java8 from JAVA8_CMD environment variable.
cytoscape DONE -
starts with errors. Upgrade to latest version. Fix: Install JDK11. In cytoscape.sh, get JAVA_HOME from JAVA11_HOME set in local.profile.source.
java.lang.NoClassDefFoundError: org/w3c/dom/ls/DocumentLS at java.base/java.lang.ClassLoader.defineClass1(Native Method)
May be time to remove this. It has probably not been supported for years.
The strategy is to get things working first on CCL, and then test them on cutting edge Linux distributions in virtual machines. These are done first so that we break things as soon as possible and find out what surprises are in store in new Linux releases.
|CCL - BIRCHDEV||RHEL7||OK|
|brassica - Fedora35 VM||fedora35||OK|
|brassica - Ubuntu22 VM||Ubuntu 22.0.4 LTS||OK|
|brassica||MATE Ubuntu 18.0.4 LTS||OK|
|maui||Ubuntu MATE 20.0.4 LTS||OK|
|wotan||Scientific Linux 7||OK|
|flamingo||Ubuntu MATE 18.0.4 LTS||OK|
|rm335 (Li's lab)||Ubuntu MATE 20.04.2 LTS||OK|
|triticum||Ubuntu MATE 20.04.2 LTS||OK|
|CCL - psgendb||RHEL7|