diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 532fb953..5915810d 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -63,18 +63,18 @@ jobs: # https://github.com/marketplace/actions/coveralls-python uses: AndreMiras/coveralls-python-action@develop - bionic_self_test: - # run_self_test in a ubuntu:18.04 image with only the minimal runtime dependencies installed + focal_self_test: + # run_self_test in a ubuntu:20.04 image with only the minimal runtime dependencies installed runs-on: ubuntu-20.04 steps: - uses: actions/checkout@v2 - name: docker build run: | - mkdir bionic_self_test - cp requirements.txt bionic_self_test + mkdir focal_self_test + cp requirements.txt focal_self_test - cat << 'EOF' > bionic_self_test/Dockerfile - FROM ubuntu:18.04 + cat << 'EOF' > focal_self_test/Dockerfile + FROM ubuntu:20.04 ENV LC_ALL C.UTF-8 ENV LANG C.UTF-8 RUN apt-get -qq update && DEBIAN_FRONTEND=noninteractive apt-get -qq install -y python3-pip @@ -93,11 +93,11 @@ jobs: # expectation -- mount miniwdl source tree at /home/wdler/miniwdl CMD env -C miniwdl python3 -m WDL run_self_test EOF - docker build -t miniwdl_bionic_self_test bionic_self_test + docker build -t miniwdl_focal_self_test focal_self_test - name: miniwdl run_self_test run: | docker run \ --group-add $(stat -c %g /var/run/docker.sock) -v /var/run/docker.sock:/var/run/docker.sock \ -v $(pwd):/home/wdler/miniwdl -v /tmp:/tmp \ -e AWS_EC2_METADATA_DISABLED=true \ - miniwdl_bionic_self_test + miniwdl_focal_self_test diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d5db0474..2b47b67a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -22,8 +22,8 @@ The Makefile has a few typical flows: - `make` or `make test` runs the full test suite with code coverage report (takes several minutes) - `make qtest` runs most of the tests more quickly (by omitting some slower cases, and not tracking coverage) -- `make pretty` reformats the code with [black](https://github.com/python/black) -- `make check` validates the code with [Pylint](https://www.pylint.org/) and [Pyre](https://pyre-check.org/) +- `make pretty` reformats the code with `ruff format` +- `make check` validates the code with `ruff check` and `mypy` To quickly run only a relevant subset of the tests, you can e.g. `python3 -m unittest -f tests/test_5stdlib.py` or `python3 -m unittest -f tests.test_5stdlib.TestStdLib.test_glob`. diff --git a/README.md b/README.md index 079db6c0..80bd403f 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # miniwdl -**[Workflow Description Language](http://openwdl.org/) local runner & developer toolkit for Python 3.6+** +**[Workflow Description Language](http://openwdl.org/) local runner & developer toolkit for Python 3.8+** ![Project Status](https://img.shields.io/badge/status-stable-green.svg) [![MIT license](https://img.shields.io/badge/license-MIT-brightgreen.svg)](https://github.com/chanzuckerberg/miniwdl/blob/main/LICENSE) @@ -9,7 +9,7 @@ ## Install miniwdl -Installation requires Python 3.6+, pip3 (or conda) and Docker (or Podman/Singularity/udocker). Linux preferred; [macOS (Intel) compatible with extra steps](https://github.com/chanzuckerberg/miniwdl/issues/145). More detail in [full documentation](https://miniwdl.readthedocs.io/en/latest/getting_started.html). +Installation requires Python 3.8+, pip3 (or conda) and Docker (or Podman/Singularity/udocker). Linux preferred; [macOS (Intel) compatible with extra steps](https://github.com/chanzuckerberg/miniwdl/issues/145). More detail in [full documentation](https://miniwdl.readthedocs.io/en/latest/getting_started.html). - Install with pip [![PyPI version](https://img.shields.io/pypi/v/miniwdl.svg)](https://pypi.org/project/miniwdl/) : run `pip3 install miniwdl` - Install with conda [![Anaconda-Server Badge](https://anaconda.org/conda-forge/miniwdl/badges/version.svg)](https://anaconda.org/conda-forge/miniwdl) : run `conda install -c conda-forge miniwdl` diff --git a/setup.py b/setup.py index e0fc369f..7e1a2974 100755 --- a/setup.py +++ b/setup.py @@ -4,5 +4,5 @@ setuptools.setup( setup_requires=['pbr'], pbr=True, - python_requires=">3.6.0", + python_requires=">3.8.0", )