Style guide:
- PEP-8 / format with
black
viamake format
- Python 3.9+ compatible code
- PEP-484 type hints
It is suggested that you run git config blame.ignoreRevsFile .git-blame-ignore-revs
to filter out mass-formatting commits from git blame
.
In order to contribute to the development of cwl-utils
, you need to install cwl-utils from source (preferably in a virtual environment):
Here's a rough guide (improvements are welcome!)
- Install virtualenv via pip:
pip install virtualenv
- Clone the cwl-utils Git repository:
git clone https://github.com/common-workflow-language/cwl-utils.git
- Switch to cwl-utils directory:
cd cwl-utils
- Create a virtual environment:
virtualenv env
- To begin using the virtual environment, it needs to be activated:
source env/bin/activate
- To check if you have the virtual environment set up:
which python
and it should point to python executable in your virtual env - Install cwl-utils in the virtual environment:
pip install -e .
- Check the version which might be different from the version installed in general on any system:
pip show cwl-utils
- After you've made the changes, you can the complete test suite via tox:
tox
- If you want to run specific tests, say
unit tests
in Python 3.13, then:tox -e py313-unit
. - Look at
tox -l
for all available tests and runtimes
- If you want to run specific tests, say
- If tests are passing, you can create a PR on
cwl-utils
GitHub repository. - After you're done working on the
cwl-utils
, you can deactivate the virtual environment:deactivate