Skip to content

Refactor to target python 3.8+ #9

Refactor to target python 3.8+

Refactor to target python 3.8+ #9

Workflow file for this run

name: CI
concurrency:
group: ${{ github.ref }}
cancel-in-progress: true
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
test:
runs-on: ${{ matrix.os }}
env:
DISPLAY: :0
PYTEST_ADDOPTS: "--color=yes"
strategy:
fail-fast: false
matrix:
os: [ ubuntu-latest, macos-latest, windows-latest ]
python: [ "3.10","3.11","3.12" ]
defaults:
run:
shell: bash
steps:
- name: Check out repository
uses: actions/checkout@v3
- name: Install Poetry
uses: snok/install-poetry@v1
- name: Set up Python ${{ matrix.python }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python }}
cache: "poetry"
#- name: Setup macOS PATH
# if: runner.os == 'macOS'
# run: |
# echo "$HOME/.local/bin" >> $GITHUB_PATH
- name: Load cached venv
id: cached-poetry-dependencies
uses: actions/cache@v3
with:
path: .venv
key: venv-${{ runner.os }}-${{ steps.setup-python.outputs.python-version }}-${{ hashFiles('**/poetry.lock') }}
- name: Install dependencies
if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true'
run: poetry install --no-interaction --no-root
- name: Install project
run: poetry install --no-interaction
- name: Setup cache variables
shell: bash
id: cache-vars
run: |
echo "date=$(/bin/date -u "+%m%w%Y")" >> $GITHUB_OUTPUT
#- name: Install and cache ffmpeg (all OS)
# uses: FedericoCarboni/setup-ffmpeg@v2
# with:
# token: ${{ secrets.GITHUB_TOKEN }}
# id: setup-ffmpeg
- name: Typecheck with mypy
run: |
poetry run mypy
- name: Run tests
run: |
poetry run python -m pytest