diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..e4a5811 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,41 @@ +name: Test + +on: [push, pull_request, workflow_dispatch] + +env: + FORCE_COLOR: 1 + +jobs: + test: + runs-on: ${{ matrix.os }} + strategy: + fail-fast: false + matrix: + python-version: ["pypy3.10", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] + os: [windows-latest, macos-latest, ubuntu-latest] + + steps: + - uses: actions/checkout@v4 + with: + persist-credentials: false + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + allow-prereleases: true + + - name: Install uv + uses: astral-sh/setup-uv@v4 + with: + version: latest + + - name: Install pytracery + run: | + uv venv + uv pip install -e . + + - name: Test + run: | + uvx coverage run --source=tracery,tests -m unittest tests/test_*.py + uvx coverage report diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index ed820cf..0000000 --- a/.travis.yml +++ /dev/null @@ -1,34 +0,0 @@ -language: python - -# Use container-based infrastructure -sudo: false - -matrix: - fast_finish: true - include: - - python: pypy - - python: pypy3 - - python: 3.7 - dist: xenial - sudo: true - - python: 3.6 - - python: 3.5 - - python: 3.4 - - python: 2.7 - -install: - - pip install -r requirements.txt - - pip install coverage - -script: - - coverage run --source=tracery -m nose tests/test_*.py - -after_success: - - pip install coveralls - - coveralls - -after_script: - - coverage report - - pip install pycodestyle pyflakes - - pyflakes . | tee >(wc -l) - - pycodestyle --statistics --count . diff --git a/README.rst b/README.rst index c134ddc..9e4e3e8 100644 --- a/README.rst +++ b/README.rst @@ -1,8 +1,8 @@ Tracery for Python ================== -.. image:: https://img.shields.io/travis/aparrish/pytracery.svg - :target: https://travis-ci.org/aparrish/pytracery +.. image:: https://github.com/aparrish/pytracery/actions/workflows/test.yml/badge.svg + :target: https://github.com/aparrish/pytracery/actions/workflows/test.yml This is a (rough) port of `Kate Compton `_'s wonderful `Tracery `_ to Python. The port