diff --git a/.github/workflows/cd.yml b/.github/workflows/cd.yml index da6e6b4d..f297d5fd 100644 --- a/.github/workflows/cd.yml +++ b/.github/workflows/cd.yml @@ -12,7 +12,7 @@ jobs: - uses: actions/checkout@v4 - run: scripts/cythonize.sh - run: pipx run build --sdist - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: dist path: dist/*.tar.gz @@ -22,7 +22,7 @@ jobs: - uses: actions/checkout@v4 - run: scripts/cythonize.sh - run: NO_EXTENSION=1 pipx run build - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: dist path: dist/*.whl @@ -36,7 +36,7 @@ jobs: - uses: actions/checkout@v4 - run: scripts/cythonize.sh - run: scripts/generate_tests_from_examples.py - - uses: pypa/cibuildwheel@v2.16.2 + - uses: pypa/cibuildwheel@v2.18.1 env: CIBW_SKIP: pp* CIBW_TEST_COMMAND: pytest {project}/tests @@ -45,7 +45,7 @@ jobs: CIBW_BEFORE_TEST: pip install -r tests/requirements.txt # TODO is skipping still necessary? CIBW_TEST_SKIP: "*universal2:arm64" - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: dist path: wheelhouse/*.whl @@ -54,10 +54,10 @@ jobs: runs-on: ubuntu-latest if: github.event_name == 'release' && github.event.action == 'published' steps: - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: dist path: dist - - uses: pypa/gh-action-pypi-publish@v1.8.10 + - uses: pypa/gh-action-pypi-publish@v1.8.14 with: password: ${{ secrets.PYPI_TOKEN }} diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e89d9096..42167d23 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,7 +29,7 @@ jobs: - python-version: '3.12' pytest-args: --cov=apischema --cov-branch --cov-report=xml --cov-report=html steps: - - uses: actions/cache@v3.3.2 + - uses: actions/cache@v4.0.2 with: path: ~/.cache/pip key: ${{ runner.os }}-pip-${{ hashFiles('tests/requirements.txt') }} @@ -37,7 +37,7 @@ jobs: ${{ runner.os }}-pip- - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install requirements @@ -46,10 +46,10 @@ jobs: run: scripts/generate_tests_from_examples.py - name: Run tests run: pytest tests ${{ matrix.pytest-args }} - - uses: codecov/codecov-action@v3 + - uses: codecov/codecov-action@v4 # https://github.community/t/run-step-if-file-exists/16445/3 if: hashFiles('coverage.xml') != '' - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 if: hashFiles('coverage.xml') != '' with: name: coverage diff --git a/.github/workflows/doc.yml b/.github/workflows/doc.yml index 5df1ad3d..a6f6da1c 100644 --- a/.github/workflows/doc.yml +++ b/.github/workflows/doc.yml @@ -26,14 +26,14 @@ jobs: run_benchmark: runs-on: ubuntu-latest steps: - - uses: actions/cache@v3.3.2 + - uses: actions/cache@v4.0.2 with: path: ~/.cache/pip key: ${{ runner.os }}-pip-${{ hashFiles('tests/requirements.txt') }} restore-keys: | ${{ runner.os }}-pip- - uses: actions/checkout@v4 - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: '3.12' - name: Cythonize @@ -44,15 +44,15 @@ jobs: run: pip install -r benchmark/requirements.txt - name: Run benchmark run: python benchmark/main.py - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: benchmark_table path: examples/benchmark_table.md - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: benchmark_chart_light path: docs/benchmark_chart_light.svg - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: benchmark_chart_dark path: docs/benchmark_chart_dark.svg @@ -60,25 +60,25 @@ jobs: needs: [run_benchmark] runs-on: ubuntu-latest steps: - - uses: actions/cache@v3.3.2 + - uses: actions/cache@v4.0.2 with: path: ~/.cache/pip key: ${{ runner.os }}-pip-${{ hashFiles('tests/requirements.txt') }} restore-keys: | ${{ runner.os }}-pip- - uses: actions/checkout@v4 - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: '3.12' - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: benchmark_table path: examples - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: benchmark_chart_light path: docs - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: benchmark_chart_dark path: docs @@ -86,7 +86,7 @@ jobs: run: pip install -r docs/requirements.txt - name: Build documentation run: mkdocs build - - uses: actions/upload-artifact@v3 + - uses: actions/upload-artifact@v4 with: name: documentation path: site/** @@ -95,26 +95,26 @@ jobs: runs-on: ubuntu-latest if: github.event_name == 'push' || github.event_name == 'release' steps: - - uses: actions/cache@v3.3.2 + - uses: actions/cache@v4.0.2 with: path: ~/.cache/pip key: ${{ runner.os }}-pip-${{ hashFiles('tests/requirements.txt') }} restore-keys: | ${{ runner.os }}-pip- - uses: actions/checkout@v4 - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: # TODO bump to 3.12 when mike will support it python-version: '3.11' - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: benchmark_table path: examples - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: benchmark_chart_light path: docs - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: name: benchmark_chart_dark path: docs