Skip to main content

Utility to load a CWL (remote) document

Project description

cwl-loader

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.17.0.tar.gz (102.5 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.17.0-py3-none-any.whl (15.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cwl_loader-0.17.0.tar.gz
  • Upload date:
  • Size: 102.5 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.17.0.tar.gz
Algorithm Hash digest
SHA256 9b4c231a0df034c1e652280256e943ae0ea0d8e97091842c58806bb12b164e0b
MD5 51d0268d992d190e85cd52df7144bd08
BLAKE2b-256 fb2c9dd257a047cd9e1c022f7922d705ed2d187f65feb4acf52d282bb30ca638

See more details on using hashes here.

Provenance

The following attestation bundles were made for cwl_loader-0.17.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.17.0-py3-none-any.whl.

File metadata

  • Download URL: cwl_loader-0.17.0-py3-none-any.whl
  • Upload date:
  • Size: 15.1 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.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ccb6b8ccc5aff82e735d05f62175614a1de8cf67cbf89c0fe77cf0bb1150917a
MD5 9b4cbd7eb9b4bb3697031e38a230c0f4
BLAKE2b-256 f85d34a17178dbbbb4ae1e77ef6ef9c9788f4e4e4ac61d33da8cbf804e9f7a03

See more details on using hashes here.

Provenance

The following attestation bundles were made for cwl_loader-0.17.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