Giter VIP home page Giter VIP logo

bio-cwl-tools's Introduction

All Contributors

Build Status

Goals: to collect and collaboratively maintain CWL CommandLineTool descriptions of any biology/life-sciences related applications.

Non-goals: software packaging or containerization, go to https://biocontainers.pro for that

All CWL tool descriptions are licensed under the Apache 2.0 license. The underlying tools are under one or more Free and Open Source Software licenses.

How to donate your tool descriptions

We welcome pull requests to this repository to add new CWL tool descriptions!

For tools we already have, please compare your definition to the existing descriptions, maybe you can help improve them.

If you are using a tool (or its subcommand) for a different purpose than the existing description in this repository, then please submit it as a separate CWL file next to the existing description(s).

Check out CONTRIBUTING.md for a Styleguide and other contribution tips. Thank you for your contribution!

How to use these descriptions in your own repository

Here are four different ways that you can use tools from this repository in your own workflows:

  1. Make add a git submodule of this repository to the Git repository of your workflow, typically under the path tools.

    Example of using git submodule with this repo.

    Then you can control the exact version of this repository used in your workflow.

  2. Copy the entire contents of this repo to your repository. You may have a harder time managing updates, but if git submodule is uncomfortable then this might be a good choice.

    Example of copying the this repo

  3. Use the in-development CWL Dependency Manager.

  4. Refer to the tools in this repository by URL, as in this example which uses a namespace to refer to the bio-cwl-tools repository and then specifies in the individual tool by path within that namespace prefix. If this route is used, cwltool --pack can created a runnable version of the workflow with all remote references resolved.

Contributors ✨

Thanks goes to these wonderful people (emoji key):


KerstenBreuer

πŸ’»

Peter Amstutz

πŸ€” πŸ’»

Michael Kotliar

πŸ€” πŸ’»

pvanheus

πŸ’»

medcelerate

πŸ€”

stain

πŸ’»

Miguel Boland

πŸ’»

fjrmoreews

πŸ’»

cjuigne

πŸ’»

MartΓ­n Beracochea

πŸ’»

Denis Yuen

πŸ“–

Sehrish Kanwal

πŸ’»

This project follows the all-contributors specification. Contributions of any kind welcome!

bio-cwl-tools's People

Contributors

allcontributors[bot] avatar denis-yuen avatar douglowe avatar fjrmoreews avatar kafeenstra avatar kerstenbreuer avatar leipzig avatar mb1069 avatar mberacochea avatar medcelerate avatar michael-kotliar avatar mr-c avatar pgrimaud avatar pvanheus avatar skanwal avatar stain avatar svonworl avatar tetron avatar zmahnoor14 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bio-cwl-tools's Issues

Add RSEM

I didn't see RSEM available as a tool here. Is RSEM available?

Pull request template

What should go into a PR template for this repository? I'd like to propose the following:

  • Radio button with options:
    This PR adds a new tool descriptor
    This PR updates a tool descriptor
    This PR does something else
  • Check box: "I have read the CONTRIBUTING.md" document
  • Check box: "I am making this work available under the terms of the Apache License 2.0 (as per the LICENSE file)"

And then as a stop-gap for testing, perhaps we can ask that the test in the tests/ folder be run by the contributor and the cwltool output of running the test is appended as a comment in the PR. I'm not sure exactly how to work this but more importantly, what do others think about this? It will at least ensure that contributed tools are working.

Then on the last check box proposed above, how does that relate to the public domain donations issue? And do / should tool contributors retain copyright to their tools?

Finally, what else is there to add to such a template?

VARSCAN and SAMTools_mpileup CWL tool.

Sir,

I have to write CWL script for variant calling using VARSCAN and samtools separately. I do not find VARSCAN as well as samtools_mpileup into the cwl tool repository.

How to form CWL script using them?

Output in Kallisto-quant not working

Hi, I've tested the Kallisto-Quant.cwl with

InputReads:
    - class: File
      path: ../../rnaseq/sample1-1.fastq.gz
    - class: File
      path: ../../rnaseq/sample1-2.fastq.gz
Index:
  class: File
  path: ../../kallisto-index-biocwl/output/Fbid
isSingle: true  
FragmentLength: 200
StandardDeviation: 20  
BootstrapSamples: 0
PseudoBam: false

Unfortunately the output is not wired properly.

("Error collecting output for parameter 'quantification_h5': Kallisto-Quant.cwl:129:7: Did not find output file with glob pattern: ['out/abundances.h5'].", {})

I am new to CWL, so not sure how to fix and PR.

old containers neeed updating

[DEPRECATION NOTICE] Docker Image Format v1 and Docker Image manifest version 2, schema 1 support is disabled by default and will be removed in an upcoming release. Suggest the author of quay.io/biocontainers/subread:1.5.0p3--0 to upgrade the image to the OCI Format or Docker Image manifest v2, schema 2. More information at https://docs.docker.com/go/deprecated-image-specs/

  • quay.io/biocontainers/bowtie2:2.3.0--py36_1
  • quay.io/biocontainers/bwa:0.7.17--ha92aebf_3
  • quay.io/biocontainers/crossmap:0.2.7--py27_0
  • quay.io/biocontainers/fastp:0.20.0--hdbcaa40_0
  • quay.io/biocontainers/gatk4:4.1.1.0--0
  • quay.io/biocontainers/gatk4:4.1.3.0--0
  • quay.io/biocontainers/kallisto:0.45.0--hdcc98e5_0
  • quay.io/biocontainers/kraken2:2.0.8_beta--pl526h6bb024c_0
  • quay.io/biocontainers/mashmap:2.0--gsl2.2_1
  • quay.io/biocontainers/minimap2:2.17--h8b12597_1
  • quay.io/biocontainers/multiqc:1.7--py_4
  • quay.io/biocontainers/phantompeakqualtools:1.2--1
  • quay.io/biocontainers/pizzly:0.37.3--0
  • quay.io/biocontainers/seqkit:0.7.1--0
  • quay.io/biocontainers/snp-sites:2.5.1--hed695b0_0
  • quay.io/biocontainers/spades:3.13.0--0

Add "intent" fields with EDAM Operation values where possible

https://www.commonwl.org/v1.2/CommandLineTool.html#CommandLineTool (scroll to intent)

An identifier for the type of computational operation, of this Process. Especially useful for "class: Operation", but can also be used for CommandLineTool, Workflow, or ExpressionTool.

If provided, then this must be an IRI of a concept node that represents the type of operation, preferably defined within an ontology.

For example, in the domain of bioinformatics, one can use an IRI from the EDAM Ontology's Operation concept nodes, like Alignment, or Clustering; or a more specific Operation concept like Split read mapping.

Will be useful to the Workflomics project, amongst others.

Update CI to only run on changed files.

Currently the CI runs on all cwl files, if we plan to integrate execution tests then we need to identify the proper mechanism of doing this via pull requests.

ci.py doesn't work on the release branch

$ python ci.py

fatal: ambiguous argument 'release..FETCH_HEAD': unknown revision or path not in the working tree.

Use '--' to separate paths from revisions, like this:

'git <command> [<revision>...] -- [<file>...]'

Traceback (most recent call last):

  File "ci.py", line 9, in <module>

    changed_files = check_output("git --no-pager diff --name-status release..FETCH_HEAD", shell=True)

  File "/opt/python/3.7.1/lib/python3.7/subprocess.py", line 389, in check_output

    **kwargs).stdout

  File "/opt/python/3.7.1/lib/python3.7/subprocess.py", line 481, in run

    output=stdout, stderr=stderr)

subprocess.CalledProcessError: Command 'git --no-pager diff --name-status release..FETCH_HEAD' returned non-zero exit status 128.

https://travis-ci.com/common-workflow-library/bio-cwl-tools/jobs/248764797

Add script to generate .dockstore.yml

Create a script that can be used (via a github action?) to automatically generate a complete .dockstore.yml that contains entries for all tools in the repo. This would be a follow-on to #139, which added a .dockstore.yml file for the existing tools, and instructions in CONTRIBUTING.md about how to update it for a new tool.

The structure of the repository

Here we need to decide the structure of the this repository. As it was agreed, every tool should be placed in a separate directory. The questions are:

  • should we keep Dockerfile in the same folder?
  • where do we put job files for testing?
  • where do we keep input data for testing jobs?

A call for a bio-cwl-tools team

At the moment I have a number of PRs open against this repository, and I have opened a discussion on moving this repository forward. I would like to see a few things addressed:

  1. Adding a PR template
  2. Increasing the pool of people who are contributors to the repository
  3. Developing the expectations for tool testing and testing infrastructure further
  4. Developing best practice for using bio-cwl-tools in your own workflows (also see this) discussion

Please comment below if you think this is a reasonable programme of action and if you would like to contribute.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.