Skip to main content

Galaxy Workflow Format 2 Descriptions

Project description

https://readthedocs.org/projects/gxformat2/badge/?version=latest https://badge.fury.io/py/gxformat2.svg https://github.com/galaxyproject/gxformat2/workflows/Python%20CI/badge.svg https://github.com/galaxyproject/gxformat2/workflows/Java%20CI/badge.svg https://img.shields.io/badge/latest%20schema-v19.09-blue

Format 2

This package defines a high-level Galaxy workflow description termed “Format 2”. The current schema version is v19_09 and the schema can be found here. This version of workflow format can be consumed by Galaxy since version 19.09.

The Format 2 workflow description is still somewhat experimental and may yet change in small potentially backward incompatible ways until the format is exported by Galaxy by default.

The traditional Galaxy workflow description (files ending in .ga extension, sometimes called native workflows in this project) was not designed to be concise and is neither readily human readable or human writable. Galaxy workflow Format 2 is being designed to address these limitations, while also moving Galaxy’s workflow description language toward standards such as the Common Workflow Language.

gxformat2

This Python project can be installed from PyPI using pip.

$ pip install gxformat2

Checkout the project tests or how it used in projects such as Planemo and Galaxy to see how to use the gxformat2 library. Reference documentation for the modules can be found as part of the project’s documentation.

This project also includes various scripts for working with Galaxy workflows. Checkout their help for more information.

$ gxwf-lint --help
$ gxwf-viz --help
$ gxwf-abstract-export --help

This library and associated scripts are licensed under the MIT License.

History

0.16.0 (2022-09-20)

0.15.0 (2020-08-12)

  • Lint types of default values.

  • Fix bugs in schema related to differing type names between Galaxy and CWL.

  • Generate cwl v1.2 instead of cwl v1.2.0-dev5 release now that it has been released.

  • More testing of linting and CWL 1.2 export.

0.14.0 (2020-08-11)

  • Bug fix where native export had explicit outputs declaration still in it (wouldn’t break anything, but was deceptive).

  • Fixes for experimental CWL 1.2 abstract export.

  • Improve script structures and documentation.

  • Improve code structure - add more types, make more things immutable, mention mutability in docstrings.

0.13.1 (2020-08-03)

  • Improve package structure - publish fixed sphinx docs, fix readme badges, add mypy typing support.

0.13.0 (2020-07-30)

  • Add experimental export to CWL 1.2 using new abstract Operation classes.

0.12.0 (2020-07-27)

  • Drop support for Python 2 - to support next bullet.

  • Update schema parser for recent changes to schema salad.

0.11.4 (2020-07-27)

  • Added abstraction for uniform access to workflow outputs across formats.

0.11.3 (2020-07-23)

  • Bug fixes for exporting newer input concepts from native to Format 2.

  • Added abstraction for uniform access to workflow inputs across formats.

0.11.2 (2020-07-22)

  • Rework cytoscape and helpers for reuse from Planemo.

  • Rev markdown validator for and from latest Galaxy changes.

0.11.1 (2020-02-25)

  • Bug fix for gxwf-lint invocation from setup.py installed script.

0.11.0 (2020-02-25)

  • Validate Galaxy Markdown in workflow reports as part of linting.

  • Improved null handling in native ga workflow linting.

  • Enhancements to workflow linting from Python. Lint for lack of documentation, tools using the test toolshed, and implement special linting for training material workflows to ensure a tag matches the workflow topic.

  • Add gxwf-viz script that produces a cytoscape visualization of a workflow.

0.10.1 (2019-12-07)

  • Bug fix to handle outputs without labels in Format 2 - they don’t validate per se but they are important for testing in the Galaxy framework.

0.10.0 (2019-12-06)

  • Implement scheam, validation, linting (for Format 2 and .ga).

  • Handle new reports field in Galaxy 19.09 workflows.

  • Numerous fixes for conversiion to and from native workflows.

  • Numerous new test cases.

  • Implement Java project for valiating and linting both kinds of workflows.

0.9.0 (2019-07-08)

  • Implement default values in gxformat2.

0.8.4 (2019-06-24)

  • Fix output IDs of 0.

0.8.3 (2019-05-23)

  • Implement set_columns PJA.

0.8.2 (2019-03-16)

  • Allow another API return option for experimental tool creation API.

0.8.1 (2019-03-11)

  • Implement change datatype PJA.

0.8.0 (2018-11-01)

  • Implement experimental CWL-style step defaults (see Galaxy PR #6850).

0.7.1 (2018-10-09)

  • Various small fixes for changes in 0.7.1.

0.7.0 (2018-10-08)

  • Add some basic test cases.

  • Allow ID-map style listing of steps.

  • Ordered load (in addition to existing dump functionality) or ordering of steps in ID-map style variant works.

  • Allow CWL-style $graph defs that can define multiple workflows in a single file.

  • Initial work on de-duplicating subworkflow definitions on import.

  • Fix position handling while exporting workflow.

0.6.1 (2018-10-01)

  • Fix export of non-data parameters and implicit workflow connections.

0.6.0 (2018-10-01)

  • Various fixes, allow id map style workflow input definitions.

0.5.0 (2018-10-01)

  • More fixes for PJA, add the doc keyword to format 2 workflows to match CWL workflows. Map to and from native Galaxy workflows as annotations.

0.4.0 (2018-10-01)

  • Fixes for exporting PJA when exporting workflows from native .ga to format 2.

0.3.2 (2018-10-01)

  • Fixes for exporting workflow outputs from native .ga to format 2, support for modern map style output definitions like CWL 1.0.

0.3.1 (2018-10-01)

  • Fixes for exporting subworkflows from native .ga to format 2.

0.3.0 (2018-09-30)

  • More cwl style inputs, initial work on conversion from native workflows, various small fixes and tweaks.

0.2.0 (2018-02-21)

  • Bring in latest Galaxy updates - Python 3 fixes, safe YAML usage, and more PJA implemented.

0.1.1 (2016-08-15)

  • Fix one Python 3 incompatibility.

0.1.0 (2016-05-02)

  • Initial version - code from Galaxy’s test framework with changes based on planemo testing.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gxformat2-0.16.0.tar.gz (52.6 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

gxformat2-0.16.0-py3.9.egg (109.1 kB view details)

Uploaded Egg

gxformat2-0.16.0-py2.py3-none-any.whl (50.5 kB view details)

Uploaded Python 2Python 3

File details

Details for the file gxformat2-0.16.0.tar.gz.

File metadata

  • Download URL: gxformat2-0.16.0.tar.gz
  • Upload date:
  • Size: 52.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.13

File hashes

Hashes for gxformat2-0.16.0.tar.gz
Algorithm Hash digest
SHA256 16ff5aae1456e0a65c1ed644537e66626ea047a567c8eda19d2a2eb0b20fb752
MD5 502541ad94425197f8aa32aef9dbe517
BLAKE2b-256 7427bb68dd45d360de76d224c79f91fb213699efc83868f35c516400347b3bf1

See more details on using hashes here.

File details

Details for the file gxformat2-0.16.0-py3.9.egg.

File metadata

  • Download URL: gxformat2-0.16.0-py3.9.egg
  • Upload date:
  • Size: 109.1 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.13

File hashes

Hashes for gxformat2-0.16.0-py3.9.egg
Algorithm Hash digest
SHA256 17600c04faece4a37698ac3c406a491844f075c62dd40eb80e53d269741ce917
MD5 4a5d3dad0da30e1d2c50c82a3427e2f9
BLAKE2b-256 905693b5e4cdb2f4b9f92c6f624ff0be6ed91da6933ad22089730346cd23e167

See more details on using hashes here.

File details

Details for the file gxformat2-0.16.0-py2.py3-none-any.whl.

File metadata

  • Download URL: gxformat2-0.16.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 50.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.0 pkginfo/1.8.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.13

File hashes

Hashes for gxformat2-0.16.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 3501d7f0c2f75efb3a49e0805fd7597db691c2640bce2cdd71d8d263a2607793
MD5 e223d545ecf33ca76518a047d2dd655e
BLAKE2b-256 113d88016d9ed55ce46cb89d3d2d14ef9f138ee6520a1d3faaba8c76d718fb6e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page