workflomics-benchmarker

Library used to execute workflows (in CWL) and benchmark them as part of the Workflomics.

https://github.com/workflomics/workflomics-benchmarker

Science Score: 67.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 1 DOI reference(s) in README
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (15.4%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Library used to execute workflows (in CWL) and benchmark them as part of the Workflomics.

Basic Info
Statistics
  • Stars: 0
  • Watchers: 5
  • Forks: 0
  • Open Issues: 4
  • Releases: 3
Created about 2 years ago · Last pushed 9 months ago
Metadata Files
Readme Contributing License Citation

README.md

Workflomics Benchmarker

Workflomics Benchmarker is a library designed for executing and benchmarking workflows provided in Common Workflow Language (CWL) within the Workflomics ecosystem.

Detailed user documentation is available on readthedocs.

Badges

| Description | Badge | |:------------|:------| | Packages and Releases | Latest release PyPI | | DOI | DOI | | License | GitHub license | | OS Support | | | Requirements | |

Requirements

  • Python 3.10 or higher
  • Docker or Singularity

NOTE: Workflomics Benchmarker is will run on Linux and macOS without any additional configuration. However, Windows users need to use Windows Subsystem for Linux (WSL) to run the tool (see MS Windows users).

Optional:

  • Poetry (if you want to build the package from source)

Installation

Create a virtual environment and install the required packages:

bash python3 -m venv workflomics-env # Create a virtual environment named 'env' in the current directory source workflomics-env/bin/activate # Activate environment before installing `workflomics`

Install workflomics-benchmarker from PyPI using pip:

bash pip install workflomics-benchmarker

Alternatively, you clone the repository and can install it using Poetry by running:

bash git clone https://github.com/workflomics/workflomics-benchmarker.git cd workflomics-benchmarker poetry install

MS Windows users

  1. Install Windows Subsystem for Linux 2 and Docker Desktop.
  2. Install Debian from the Microsoft Store.
  3. Set Debian as your default WSL 2 distro: wsl --set-default debian.
  4. Return to the Docker Desktop, choose SettingsResourcesWSL Integration and under "Enable integration with additional distros" select "Debian",
  5. Reboot if you have not yet already.
  6. Launch Debian and follow the Linux instructions above (pip install workflomics-benchmarker)

Network problems from within WSL2? Try these instructions <https://github.com/microsoft/WSL/issues/4731#issuecomment-702176954>_ followed by wsl --shutdown.

Usage

Ensure Docker or Singularity is running before executing workflows. Here are the commands for both services:

Docker

bash workflomics benchmark tests/data/

Or directly with Python:

bash python src/benchmarker/workflomics.py benchmark tests/data/

The results will be saved in the ./tests/data directory.

Singularity

To use Singularity, ensure it's installed and append the --singularity flag:

bash python src/benchmarker/workflomics.py benchmark tests/data/ --singularity

Testing

Run the following command to execute tests:

bash poetry run pytest

This command runs a workflow and benchmarks it, assuming Docker is operational. Results are stored in the ./tests/data directory.

Owner

  • Name: Workflomics
  • Login: Workflomics
  • Kind: organization

Projects tailored for automated creation and benchmarking of workflows in life sciences .

Citation (CITATION.cff)

cff-version: 1.2.0
title: 'Workflomics Benchmarker: Executing and Benchmarking CWL Workflows'
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Vedran
    family-names: Kasalica
    email: v.kasalica@esciencecenter.nl
    affiliation: Netherlands eScience Center, Netherlands
    orcid: 'https://orcid.org/0000-0002-0097-1056'
  - family-names: Nauman
    given-names: Ahmed
    email: n.ahmed@esciencecenter.nl
    affiliation: Netherlands eScience Center, Netherlands
    orcid: 'https://orcid.org/0000-0003-3559-9941'
  - family-names: Peter
    given-names: Kok
    email: p.kok@esciencecenter.nl
    affiliation: Netherlands eScience Center, Netherlands
    orcid: 'https://orcid.org/0000-0002-6630-7326'
  - family-names: Rob
    given-names: Marissen
    email: r.j.marissen@lumc.nl
    affiliation: Leiden University Medical Center, Netherlands
    orcid: 'https://orcid.org/0000-0002-1220-9173'
  - family-names: Anna-Lena
    given-names: Lamprecht
    email: anna-lena.lamprecht@uni-potsdam.de
    affiliation: University of Potsdam, Germany
    orcid: 'https://orcid.org/0000-0003-1953-5606'
  - family-names: Magnus
    given-names: Palmblad
    email: n.m.palmblad@lumc.nl
    affiliation: Leiden University Medical Center, Netherlands
    orcid: 'https://orcid.org/0000-0002-5865-8994'
identifiers:
  - type: doi
    value: 10.5281/zenodo.10839466
repository-code: 'https://github.com/workflomics/workflomics-frontend'
url: 'https://github.com/workflomics/workflomics-frontend'
abstract: >-
  Workflomics Benchmarker is a library designed for executing and benchmarking workflows provided in Common Workflow Language (CWL) within the Workflomics ecosystem.

keywords:
  - bioinformatics
  - workflow benchmarking
  - workflow execution
license: Apache-2.0

GitHub Events

Total
  • Issues event: 1
Last Year
  • Issues event: 1

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 12
  • Total pull requests: 16
  • Average time to close issues: 11 days
  • Average time to close pull requests: 9 days
  • Total issue authors: 2
  • Total pull request authors: 2
  • Average comments per issue: 0.75
  • Average comments per pull request: 0.25
  • Merged pull requests: 16
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • vedran-kasalica (8)
  • 524D (4)
Pull Request Authors
  • vedran-kasalica (14)
  • 524D (2)
Top Labels
Issue Labels
Pull Request Labels

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 9 last-month
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 3
  • Total maintainers: 1
pypi.org: workflomics-benchmarker

Library used to execute workflows (in CWL) and benchmark them as part of the Workflomics ecosystem.

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 9 Last month
Rankings
Dependent packages count: 9.8%
Average: 37.4%
Dependent repos count: 64.9%
Maintainers (1)
Last synced: 6 months ago

Dependencies

pyproject.toml pypi
poetry.lock pypi
  • appnope 0.1.3
  • argcomplete 3.2.2
  • asttokens 2.4.1
  • bagit 1.8.1
  • cachecontrol 0.12.14
  • certifi 2023.11.17
  • cffi 1.16.0
  • charset-normalizer 3.3.2
  • colorama 0.4.6
  • coloredlogs 15.0.1
  • comm 0.2.1
  • coverage 7.4.1
  • cwl-upgrader 1.2.11
  • cwl-utils 0.15
  • cwltool 3.1.20220907141119
  • debugpy 1.8.0
  • decorator 5.1.1
  • exceptiongroup 1.2.0
  • executing 2.0.1
  • humanfriendly 10.0
  • idna 3.6
  • importlib-metadata 7.0.1
  • iniconfig 2.0.0
  • ipykernel 6.29.0
  • ipython 8.18.1
  • isodate 0.6.1
  • jedi 0.19.1
  • jupyter-client 8.6.0
  • jupyter-core 5.7.1
  • lockfile 0.12.2
  • lxml 5.1.0
  • matplotlib-inline 0.1.6
  • mistune 0.8.4
  • msgpack 1.0.7
  • mypy-extensions 1.0.0
  • nest-asyncio 1.6.0
  • networkx 3.2.1
  • packaging 23.2
  • parso 0.8.3
  • pexpect 4.9.0
  • platformdirs 4.2.0
  • pluggy 1.4.0
  • prompt-toolkit 3.0.43
  • prov 1.5.1
  • psutil 5.9.8
  • ptyprocess 0.7.0
  • pure-eval 0.2.2
  • pycparser 2.21
  • pydot 2.0.0
  • pygments 2.17.2
  • pyparsing 3.1.1
  • pyreadline3 3.4.1
  • pytest 7.4.4
  • pytest-cov 4.1.0
  • pytest-datadir 1.5.0
  • python-dateutil 2.8.2
  • pywin32 306
  • pyyaml 6.0.1
  • pyzmq 25.1.2
  • rdflib 6.2.0
  • requests 2.31.0
  • ruamel-yaml 0.17.21
  • ruamel-yaml-clib 0.2.8
  • schema-salad 8.3.20220801194920
  • setuptools 69.0.3
  • shellescape 3.8.1
  • six 1.16.0
  • stack-data 0.6.3
  • tomli 2.0.1
  • tornado 6.4
  • traitlets 5.14.1
  • typing-extensions 4.9.0
  • urllib3 2.2.0
  • wcwidth 0.2.13
  • zipp 3.17.0