diff --git a/.github/workflows/build-and-publish.yml b/.github/workflows/build-and-publish.yml index 7b17b1d30..590fbbf65 100644 --- a/.github/workflows/build-and-publish.yml +++ b/.github/workflows/build-and-publish.yml @@ -15,7 +15,7 @@ jobs: contents: write steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment diff --git a/.github/workflows/check-release-tag.yml b/.github/workflows/check-release-tag.yml index 75d95ec99..eded3e3fd 100644 --- a/.github/workflows/check-release-tag.yml +++ b/.github/workflows/check-release-tag.yml @@ -12,7 +12,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml index 7c95718f4..88b6a6035 100644 --- a/.github/workflows/checks.yml +++ b/.github/workflows/checks.yml @@ -11,7 +11,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -29,7 +29,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment @@ -56,7 +56,7 @@ jobs: if: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/master' }} steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment @@ -75,7 +75,7 @@ jobs: matrix: ${{ fromJson(needs.build-matrix.outputs.matrix) }} steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment @@ -86,7 +86,7 @@ jobs: run: poetry run -- nox -s lint:code - name: Upload Artifacts - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: lint-python${{ matrix.python-version }} path: | @@ -106,7 +106,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment @@ -128,7 +128,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment @@ -139,7 +139,7 @@ jobs: run: poetry run -- nox -s lint:security - name: Upload Artifacts - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: security-python${{ matrix.python-version }} path: .security.json @@ -152,7 +152,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment @@ -168,7 +168,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment @@ -183,7 +183,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment @@ -203,7 +203,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 # The PTB has unit tests which require the fetch-depth to be 0. with: fetch-depth: 0 @@ -217,7 +217,7 @@ jobs: run: poetry run -- nox -s test:unit -- --coverage - name: Upload Artifacts - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: coverage-python${{ matrix.python-version }}-fast path: .coverage diff --git a/.github/workflows/gh-pages.yml b/.github/workflows/gh-pages.yml index 8ead89753..fea0dbdae 100644 --- a/.github/workflows/gh-pages.yml +++ b/.github/workflows/gh-pages.yml @@ -12,7 +12,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -22,12 +22,12 @@ jobs: - name: Build Documentation run: | poetry run -- nox -s docs:multiversion - rm -r .html-documentation/*/.doctrees + mv .html-documentation html-documentation - name: Upload artifact - uses: actions/upload-pages-artifact@v3 + uses: actions/upload-pages-artifact@v4 with: - path: .html-documentation + path: html-documentation deploy-documentation: needs: [ build-documentation ] diff --git a/.github/workflows/matrix-all.yml b/.github/workflows/matrix-all.yml index fbed33a85..bed900156 100644 --- a/.github/workflows/matrix-all.yml +++ b/.github/workflows/matrix-all.yml @@ -14,7 +14,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment diff --git a/.github/workflows/matrix-exasol.yml b/.github/workflows/matrix-exasol.yml index 3319b89b4..adba1fa08 100644 --- a/.github/workflows/matrix-exasol.yml +++ b/.github/workflows/matrix-exasol.yml @@ -14,7 +14,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment diff --git a/.github/workflows/matrix-python.yml b/.github/workflows/matrix-python.yml index 7805dd53a..cc89884f4 100644 --- a/.github/workflows/matrix-python.yml +++ b/.github/workflows/matrix-python.yml @@ -14,7 +14,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment diff --git a/.github/workflows/report.yml b/.github/workflows/report.yml index 52c8af805..e7968e316 100644 --- a/.github/workflows/report.yml +++ b/.github/workflows/report.yml @@ -14,7 +14,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -22,7 +22,7 @@ jobs: uses: ./.github/actions/python-environment - name: Download Artifacts - uses: actions/download-artifact@v6 + uses: actions/download-artifact@v7 with: path: ./artifacts @@ -41,7 +41,7 @@ jobs: run: poetry run -- nox -s project:report -- --format json | tee metrics.json - name: Upload Artifacts - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: metrics.json path: metrics.json diff --git a/.github/workflows/slow-checks.yml b/.github/workflows/slow-checks.yml index 2737e3bcd..52e53889d 100644 --- a/.github/workflows/slow-checks.yml +++ b/.github/workflows/slow-checks.yml @@ -24,7 +24,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: ./.github/actions/python-environment @@ -35,7 +35,7 @@ jobs: run: poetry run -- nox -s test:integration -- --coverage --db-version ${{ matrix.exasol-version }} - name: Upload Artifacts - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: coverage-python${{ matrix.python-version }}-slow path: .coverage @@ -62,7 +62,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Set up Python & Poetry Environment uses: ./.github/actions/python-environment diff --git a/doc/changes/unreleased.md b/doc/changes/unreleased.md index 1fad4d6ff..8e97b5887 100644 --- a/doc/changes/unreleased.md +++ b/doc/changes/unreleased.md @@ -2,9 +2,34 @@ ## Summary -In exasol-toolbox version `5.0.0` and higher the default behavior for -`.github/actions/python-environment/action.yml` has changed. In previous versions, -the default value for `poetry-version` was `2.1.2`, and it is now `2.3.0`. +In this major release, attention needs to be given to the following: + +* `gh-pages.yml` changes + * See GitHub `upload-pages-artifact` v4 +* default Poetry version changed from `2.1.2` to `2.3.0` + * See Poetry Update + +### GitHub `upload-pages-artifact` v4 + +In v4, the developers of `upload-pages-artifact` dropped support for uploading +dotfiles. This means that the `gh-pages.yml` has been modified such that it +converts the generated `.html-documentation` to `html-documentation`. It was also checked +which files are created by the nox session `docs:build`. It was found that in many cases +that the only dotfiles produced are `.buildinfo` and `.doctrees`, which do not need +to be uploaded for the GitHub pages to work. To verify that your project will not be +adversely affected by these changes, please: + +1. Run the nox sessions `docs:build` +2. Use this command to see what dotfiles are created: + ```bash + ls -a .hmtl-documentation/ | grep "^\." + ``` +3. If there are other critical dotfiles, consider converting them. Otherwise, create +an issue in the `python-toolbox`. + +### Poetry Update +The default behavior for `.github/actions/python-environment/action.yml` has changed. +In previous versions, the default value for `poetry-version` was `2.1.2`, and it is now `2.3.0`. * Depending on its poetry version, a repository relying on the default behavior of said action may run into breaking changes. This can easily be resolved with explicitly setting the @@ -42,4 +67,9 @@ take care and will need to make manual changes to ensure it still works with ## Refactoring -* 624: Updated GitHub python-environment action and all code to use Poetry >= 2.3.0 +* #624: Updated GitHub python-environment action and all code to use Poetry >= 2.3.0 +* #662: Update GitHub actions + * `checkout` from v5 to [v6](https://github.com/actions/checkout/releases/tag/v6.0.0) - using Node.js 24 + * `upload-pages-artifact` from v3 to [v4](https://github.com/actions/upload-pages-artifact/releases/tag/v4.0.0) - breaking change + * `download-artifact`from v6 to [v7](https://github.com/actions/download-artifact/releases/tag/v7.0.0) - using Node.js 24 + * `upload-artifact` from v5 to [v6](https://github.com/actions/upload-artifact/releases/tag/v6.0.0) - using Node.js 24 diff --git a/doc/github_actions/python_environment.rst b/doc/github_actions/python_environment.rst index f8dd94af7..f400b02b4 100644 --- a/doc/github_actions/python_environment.rst +++ b/doc/github_actions/python_environment.rst @@ -49,10 +49,10 @@ Example Usage steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment - uses: exasol/python-toolbox/.github/actions/python-environment@v1 + uses: exasol/python-toolbox/.github/actions/python-environment@v4 with: python-version: 3.12 poetry-version: 2.3.0 diff --git a/doc/github_actions/security_issues.rst b/doc/github_actions/security_issues.rst index 303bcf2aa..d85f8ed33 100644 --- a/doc/github_actions/security_issues.rst +++ b/doc/github_actions/security_issues.rst @@ -26,7 +26,7 @@ Example Usage steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Report Security Issues uses: exasol/python-toolbox/.github/actions/security-issues@v1 diff --git a/exasol/toolbox/templates/github/workflows/build-and-publish.yml b/exasol/toolbox/templates/github/workflows/build-and-publish.yml index 62a678e62..d06d10235 100644 --- a/exasol/toolbox/templates/github/workflows/build-and-publish.yml +++ b/exasol/toolbox/templates/github/workflows/build-and-publish.yml @@ -15,7 +15,7 @@ jobs: contents: write steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 diff --git a/exasol/toolbox/templates/github/workflows/check-release-tag.yml b/exasol/toolbox/templates/github/workflows/check-release-tag.yml index cb6585ad9..1e27719a5 100644 --- a/exasol/toolbox/templates/github/workflows/check-release-tag.yml +++ b/exasol/toolbox/templates/github/workflows/check-release-tag.yml @@ -12,7 +12,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 diff --git a/exasol/toolbox/templates/github/workflows/checks.yml b/exasol/toolbox/templates/github/workflows/checks.yml index 0f767614d..c25bccaab 100644 --- a/exasol/toolbox/templates/github/workflows/checks.yml +++ b/exasol/toolbox/templates/github/workflows/checks.yml @@ -11,7 +11,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -29,7 +29,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 @@ -56,7 +56,7 @@ jobs: if: ${{ github.ref != 'refs/heads/main' && github.ref != 'refs/heads/master' }} steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 @@ -75,7 +75,7 @@ jobs: matrix: ${{ fromJson(needs.build-matrix.outputs.matrix) }} steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 @@ -86,7 +86,7 @@ jobs: run: poetry run -- nox -s lint:code - name: Upload Artifacts - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: lint-python${{ matrix.python-version }} path: | @@ -106,7 +106,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 @@ -128,7 +128,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 @@ -139,7 +139,7 @@ jobs: run: poetry run -- nox -s lint:security - name: Upload Artifacts - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: security-python${{ matrix.python-version }} path: .security.json @@ -152,7 +152,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 @@ -168,7 +168,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 @@ -188,7 +188,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 @@ -199,7 +199,7 @@ jobs: run: poetry run -- nox -s test:unit -- --coverage - name: Upload Artifacts - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: coverage-python${{ matrix.python-version }}-fast path: .coverage diff --git a/exasol/toolbox/templates/github/workflows/gh-pages.yml b/exasol/toolbox/templates/github/workflows/gh-pages.yml index 99788b3ee..b71cd7006 100644 --- a/exasol/toolbox/templates/github/workflows/gh-pages.yml +++ b/exasol/toolbox/templates/github/workflows/gh-pages.yml @@ -12,7 +12,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -22,12 +22,12 @@ jobs: - name: Build Documentation run: | poetry run -- nox -s docs:multiversion - rm -r .html-documentation/*/.doctrees + mv .html-documentation html-documentation - name: Upload artifact - uses: actions/upload-pages-artifact@v3 + uses: actions/upload-pages-artifact@v4 with: - path: .html-documentation + path: html-documentation deploy-documentation: needs: [ build-documentation ] diff --git a/exasol/toolbox/templates/github/workflows/matrix-all.yml b/exasol/toolbox/templates/github/workflows/matrix-all.yml index bfd34e602..8200ed1da 100644 --- a/exasol/toolbox/templates/github/workflows/matrix-all.yml +++ b/exasol/toolbox/templates/github/workflows/matrix-all.yml @@ -14,7 +14,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 diff --git a/exasol/toolbox/templates/github/workflows/matrix-exasol.yml b/exasol/toolbox/templates/github/workflows/matrix-exasol.yml index 547b21bd8..6baab3221 100644 --- a/exasol/toolbox/templates/github/workflows/matrix-exasol.yml +++ b/exasol/toolbox/templates/github/workflows/matrix-exasol.yml @@ -14,7 +14,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 diff --git a/exasol/toolbox/templates/github/workflows/matrix-python.yml b/exasol/toolbox/templates/github/workflows/matrix-python.yml index 8d4fe663e..3b4aa7468 100644 --- a/exasol/toolbox/templates/github/workflows/matrix-python.yml +++ b/exasol/toolbox/templates/github/workflows/matrix-python.yml @@ -14,7 +14,7 @@ jobs: contents: read steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 diff --git a/exasol/toolbox/templates/github/workflows/report.yml b/exasol/toolbox/templates/github/workflows/report.yml index 8e2828ade..af9b32ece 100644 --- a/exasol/toolbox/templates/github/workflows/report.yml +++ b/exasol/toolbox/templates/github/workflows/report.yml @@ -14,7 +14,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -22,7 +22,7 @@ jobs: uses: exasol/python-toolbox/.github/actions/python-environment@v4 - name: Download Artifacts - uses: actions/download-artifact@v6 + uses: actions/download-artifact@v7 with: path: ./artifacts @@ -41,7 +41,7 @@ jobs: run: poetry run -- nox -s project:report -- --format json | tee metrics.json - name: Upload Artifacts - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: metrics.json path: metrics.json diff --git a/exasol/toolbox/templates/github/workflows/slow-checks.yml b/exasol/toolbox/templates/github/workflows/slow-checks.yml index c9ba594c0..964365ba7 100644 --- a/exasol/toolbox/templates/github/workflows/slow-checks.yml +++ b/exasol/toolbox/templates/github/workflows/slow-checks.yml @@ -24,7 +24,7 @@ jobs: steps: - name: SCM Checkout - uses: actions/checkout@v5 + uses: actions/checkout@v6 - name: Setup Python & Poetry Environment uses: exasol/python-toolbox/.github/actions/python-environment@v4 @@ -35,7 +35,7 @@ jobs: run: poetry run -- nox -s test:integration -- --coverage --db-version ${{ matrix.exasol-version }} - name: Upload Artifacts - uses: actions/upload-artifact@v5 + uses: actions/upload-artifact@v6 with: name: coverage-python${{ matrix.python-version }}-exasol${{ matrix.exasol-version }}-slow path: .coverage