Skip to main content

Utility to load a CWL (remote) document

Project description

cwl-loader

PyPI - Version PyPI - Python Version

cwl-loader provides utilities to load CWL documents (local files, URLs, streams, or strings) into cwl-utils object models, normalize references, and sort dependency graphs.

Installation

pip install cwl-loader

Quick Start

Load a CWL document from a URL or local path:

from cwl_loader import load_cwl_from_location

process = load_cwl_from_location("workflow.cwl")

Load from in-memory text:

from cwl_loader import load_cwl_from_string_content

content = """
cwlVersion: v1.2
class: CommandLineTool
id: example-tool
baseCommand: echo
inputs: []
outputs: []
"""

process = load_cwl_from_string_content(content)

Dump back to YAML:

from cwl_loader import dump_cwl

with open("normalized.cwl", "w", encoding="utf-8") as out:
    dump_cwl(process, out)

Development

Run tests:

task test

Or directly with Hatch:

hatch run test:test

Run code quality checks:

task check
task lint

Documentation

Project documentation is published at: https://Terradue.github.io/cwl-loader/

Contributing

Issues and pull requests are welcome: https://github.com/eoap/cwl-loader/issues

License

Licensed under the Apache License 2.0.

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

cwl_loader-0.18.0.tar.gz (102.6 kB view details)

Uploaded Source

Built Distribution

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

cwl_loader-0.18.0-py3-none-any.whl (15.3 kB view details)

Uploaded Python 3

File details

Details for the file cwl_loader-0.18.0.tar.gz.

File metadata

  • Download URL: cwl_loader-0.18.0.tar.gz
  • Upload date:
  • Size: 102.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cwl_loader-0.18.0.tar.gz
Algorithm Hash digest
SHA256 afad1dccda9bb7b5596d6a0ee56073a49b20792e20866d0a7f70c1387edcf8cf
MD5 ced7d0d46af4417cdb0a6bc66654bf05
BLAKE2b-256 14f831613f23880bcb4144f5258f5fdd26b96b07e9ee64936cdb361336f3e444

See more details on using hashes here.

Provenance

The following attestation bundles were made for cwl_loader-0.18.0.tar.gz:

Publisher: package.yaml on Terradue/cwl-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cwl_loader-0.18.0-py3-none-any.whl.

File metadata

  • Download URL: cwl_loader-0.18.0-py3-none-any.whl
  • Upload date:
  • Size: 15.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cwl_loader-0.18.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cbe6258e46c63c1352f7bcc66772b1f432b86d16b3fd36b90d0a73de024c59a0
MD5 5dadc82c348bf2b882041e1fb43511f4
BLAKE2b-256 bb0550cb36aa5efd3813002b4b8424f72aa3656f19a84531485fa5f56161a9a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for cwl_loader-0.18.0-py3-none-any.whl:

Publisher: package.yaml on Terradue/cwl-loader

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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