JetBrains-Research / span

SPAN Semi-supervised Peak Analyzer
https://doi.org/10.1093/bioinformatics/btab376
MIT License
9 stars 1 forks source link

Build instructions #33

Closed maxim-h closed 1 year ago

maxim-h commented 2 years ago

Hello.

I'm quite interested in using SPAN in my analysis.

One thing I've notice is that the latest release is more than a year old, while it seems the repo is under active development. As someone not familiar with Kotlin or maven or gradle, I didn't manage to build the latest version. All I did was clone the master branch and try gradle build which resulted in the following error:

FAILURE: Build failed with an exception.

* What went wrong:
Could not determine the dependencies of task ':shadowJar'.
> Could not resolve all dependencies for configuration ':runtimeClasspath'.
   > Could not resolve project :bioinf-commons.
     Required by:
         project :
      > No matching configuration of project :bioinf-commons was found. The consumer was configured to find a runtime of a library compatible with Java 8, packaged as a jar, preferably optimized for standard JVMs, and its dependencies declared externally, as well as attribute 'org.jetbrains.kotlin.platform.type' with value 'jvm' but:
          - None of the consumable configurations have attributes.
...

Probably some misconfiguration due to my lack of knowledge.

Would you consider providing some build instructions in the README? Or is it not recommended until an official release?

olegs commented 2 years ago

Dear maxim-h,

Indeed, we are actively working on the next version of SPAN, which will be released soon. In the meantime we are going to update the build configuration and instructions.

At the moment, please use official release version or you can download development build at: https://artyomovlab.wustl.edu/publications/supp_materials/4Oleg/span-0.14.build.jar

Latest build contains new peak calling routine, which can be executed with analyse-experimental --islands command. For example for regular peak calling, you can use the following command line: java -Xmx4G -jar span-0.14.build.jar analyze-experimental --islands -t ChIP.bam -c Control.bam --cs Chrom.sizes -p Results.peak In this case SPAN will use updated routine which results in more robust peak calling.

Best regards, Oleg

maxim-h commented 2 years ago

@olegs @dievsky

Ok, thank you for a quick reply)

The cloning of the bioinf-commons didn't work for me due to the following error:

FAILURE: Build failed with an exception.

* Where:
Build file '/home/max/.build/span/bioinf-commons/build.gradle' line: 30

* What went wrong:
A problem occurred evaluating project ':bioinf-commons'.
> Could not find method compile() for arguments [org.jetbrains.kotlin:kotlin-stdlib:1.5.31] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

But I'll check out the development build that @olegs shared.

Actually my main reason for checking the updates is a strange bug I'm still trying to understand. I'll file a proper issue for it once I understand what is going on a little bit. But the gist of it is that when I run SPAN as a job on a slurm HPC cluster it continues performing heavy IO even after reading the input files. And in fact the IO is directed at the disk share with Java installation and not the input BAM files.

Maybe it immediately sounds familiar to any one of you, Otherwise, I'll provide more details a bit later.

olegs commented 2 years ago

No, this problem doesn't sound familiar. Can you provide mode details? Which Java version do you use? Have you configured working directory for SPAN? Working directory is the folder where SPAN stores caches and models by default. It can be configured with -w, --workdir PATH command line option.

maxim-h commented 2 years ago

The Java is

java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

But actually, running with the newer build you shared and setting -w seems to have solved the problem for me. I'll get back to you if I get it again. Thanks!

kesner commented 1 year ago

Hi, I can't seem to get JBR to work with a *.span file on an M1 Mac.

I can not run SPAN on my MAC M1. I down loaded the latest version of JAVA for MAC osX and it tells me SPAN' version of JAVA is not supported. B. I try to load an *.span track on JBR and I get Deserialization error: Cannot load class org.jetbrains.bio.experiments.fit.Span1AnalyzeFitInformation

Also have problems on reading *.span file in JBR on linux where I get a problem with the header error. Barry

olegs commented 1 year ago

Hello @kesner, thank you for reaching out, could you provide additional details on which SPAN version do you use, which JBR version, and what Java version do you use.

Java version can be found by running in command line: java -version

kesner commented 1 year ago

Latest SPAN and java for osx on an M1 mac

On Thu, Mar 9, 2023 at 4:37 AM Oleg Shpynov @.***> wrote:

Hello @kesner https://github.com/kesner, thank you for reaching out, could you provide additional details on which SPAN version do you use, which JBR version, and what Java version do you use.

Java version can be found by running in command line: java -version

— Reply to this email directly, view it on GitHub https://github.com/JetBrains-Research/span/issues/33#issuecomment-1461663707, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEJYOY2VYNOWDYIWVH5TV5TW3GQD3ANCNFSM5JRLNBHQ . You are receiving this because you were mentioned.Message ID: @.***>

olegs commented 1 year ago

Dear @kesner Please try the newest version of SPAN: https://download.jetbrains.com/biolabs/span/span-1.1.5628.jar It should work fine with the the java version you downloaded. It should be fully compatible with the latest version of JBR Genome Browser.

P.S. We are currently working on stabilising features of both SPAN and JBR before publication, so some versions may be incompatible, sorry for the possible inconveniences.

olegs commented 1 year ago

Closing, as latest versions of SPAN and JBR are fully compatible and no other feedback received.

kesner commented 1 year ago

Hi, I have not yet time to test. Barry

On Tue, Mar 14, 2023 at 8:23 AM Oleg Shpynov @.***> wrote:

Closing, as latest versions of SPAN and JBR are fully compatible and no other feedback received.

— Reply to this email directly, view it on GitHub https://github.com/JetBrains-Research/span/issues/33#issuecomment-1468009568, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEJYOY5IJYB7I6MQTN5DHKTW4BPM7ANCNFSM5JRLNBHQ . You are receiving this because you were mentioned.Message ID: @.***>

olegs commented 1 year ago

Hello, Barry. That is not a problem, feel free to open a new issue in case you encounter any problems. I will be happy to help. Oleg