diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 83101ec..8e273b6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -1,26 +1,39 @@ name: build -on: [push, pull_request] +on: + push: + paths: + - '.github/workflows/build.yml' + - '**/*.py' + branches: + - '**' + tags: + - '!**' + pull_request: + paths: + - '.github/workflows/build.yml' + - '**/*.py' + workflow_dispatch: ~ jobs: lint: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: extractions/setup-just@v2 - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: - python-version: '3.12' + python-version: '3.13' - run: just install lint test: runs-on: ubuntu-latest strategy: matrix: - pythonversion: ['3.8', '3.9', '3.10', '3.11', '3.12'] + pythonversion: ['3.8', '3.9', '3.10', '3.11', '3.12', '3.13'] steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: extractions/setup-just@v2 - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: ${{ matrix.pythonversion }} - run: just install coverage @@ -28,11 +41,11 @@ jobs: if: github.ref == 'refs/heads/main' runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - uses: extractions/setup-just@v2 - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: - python-version: '3.12' + python-version: '3.13' - run: just install coverage - uses: coverallsapp/github-action@v2 with: diff --git a/justfile b/justfile index 0429304..b96ed51 100644 --- a/justfile +++ b/justfile @@ -54,7 +54,7 @@ isort-check: # Run mypy type checking on the project mypy: - {{VIRTUAL_BIN}}/mypy {{PROJECT_NAME}}/ {{TEST_DIR}}/ + {{VIRTUAL_BIN}}/mypy --install-types --non-interactive {{PROJECT_NAME}}/ {{TEST_DIR}}/ # Test the project test: diff --git a/setup.py b/setup.py index 45e9649..892dbe7 100644 --- a/setup.py +++ b/setup.py @@ -6,14 +6,12 @@ DEV_REQUIREMENTS = [ 'bandit == 1.7.*', - 'black == 23.*', - 'build == 0.10.*', - 'flake8 == 6.*', + 'black == 24.*', + 'flake8 == 7.*', 'isort == 5.*', - 'mypy == 1.3.*', - 'pytest == 7.*', + 'mypy == 1.11.*', + 'pytest == 8.*', 'pytest-cov == 4.*', - 'twine == 4.*', ] setuptools.setup(