{"thread":{"id":"60899","subject":"[PATCH] ci: bump remaining outdated Actions versions","startedAt":"2024-02-11T11:52:40Z","lastAt":"2024-02-12T16:51:37Z","messageCount":7,"participants":["Johannes Schindelin via GitGitGadget","Junio C Hamano"],"isPatch":true,"patchVersion":1,"patchTotal":null},"messages":[{"id":"488387","messageId":"pull.1660.git.1707652357696.gitgitgadget@gmail.com","threadId":"60899","inReplyTo":null,"subject":"[PATCH] ci: bump remaining outdated Actions versions","fromName":"Johannes Schindelin via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2024-02-11T11:52:37Z","receivedAt":"2024-02-11T11:52:40Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"From: Johannes Schindelin <Johannes.Schindelin@gmx.de>\n\nThis avoids \"Node.js 16 Actions\" deprecation messages by bumping the\nfollowing Actions' versions:\n\n- actions/upload-artifact from 3 to 4\n- actions/download-artifact from 3 to 4\n- actions/cache from 3 to 4\n\nHelped-by: Matthias Aßhauer <mha1993@live.de>\nOriginal-commits-by: dependabot[bot] <support@github.com>\nSigned-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>\n---\n    ci: bump remaining outdated Actions versions\n    \n    I noticed that Junio recently bumped a couple of these Actions versions,\n    and incidentally I also activated automatic Dependabot updates of those\n    in git-for-windows/git. Dependabot noticed a couple of yet-unaddressed\n    updates, which I accumulated into a single patch.\n    \n    This patch is based on jc/github-actions-update.\n\nPublished-As: https://github.com/gitgitgadget/git/releases/tag/pr-1660%2Fdscho%2Fmoar-github-actions-updates-v1\nFetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1660/dscho/moar-github-actions-updates-v1\nPull-Request: https://github.com/gitgitgadget/git/pull/1660\n\n .github/workflows/coverity.yml |  4 ++--\n .github/workflows/main.yml     | 18 +++++++++---------\n 2 files changed, 11 insertions(+), 11 deletions(-)\n\ndiff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml\nindex a81a7566d10..53cf12fe044 100644\n--- a/.github/workflows/coverity.yml\n+++ b/.github/workflows/coverity.yml\n@@ -98,7 +98,7 @@ jobs:\n       # A cache miss will add ~30s to create, but a cache hit will save minutes.\n       - name: restore the Coverity Build Tool\n         id: cache\n-        uses: actions/cache/restore@v3\n+        uses: actions/cache/restore@v4\n         with:\n           path: ${{ runner.temp }}/cov-analysis\n           key: cov-build-${{ env.COVERITY_LANGUAGE }}-${{ env.COVERITY_PLATFORM }}-${{ steps.lookup.outputs.hash }}\n@@ -141,7 +141,7 @@ jobs:\n           esac\n       - name: cache the Coverity Build Tool\n         if: steps.cache.outputs.cache-hit != 'true'\n-        uses: actions/cache/save@v3\n+        uses: actions/cache/save@v4\n         with:\n           path: ${{ runner.temp }}/cov-analysis\n           key: cov-build-${{ env.COVERITY_LANGUAGE }}-${{ env.COVERITY_PLATFORM }}-${{ steps.lookup.outputs.hash }}\ndiff --git a/.github/workflows/main.yml b/.github/workflows/main.yml\nindex bb857bdaf08..4eea49fc85c 100644\n--- a/.github/workflows/main.yml\n+++ b/.github/workflows/main.yml\n@@ -123,7 +123,7 @@ jobs:\n     - name: zip up tracked files\n       run: git archive -o artifacts/tracked.tar.gz HEAD\n     - name: upload tracked files and build artifacts\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: windows-artifacts\n         path: artifacts\n@@ -140,7 +140,7 @@ jobs:\n       cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}\n     steps:\n     - name: download tracked files and build artifacts\n-      uses: actions/download-artifact@v3\n+      uses: actions/download-artifact@v4\n       with:\n         name: windows-artifacts\n         path: ${{github.workspace}}\n@@ -157,7 +157,7 @@ jobs:\n       run: ci/print-test-failures.sh\n     - name: Upload failed tests' directories\n       if: failure() && env.FAILED_TEST_ARTIFACTS != ''\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: failed-tests-windows\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n@@ -212,7 +212,7 @@ jobs:\n     - name: zip up tracked files\n       run: git archive -o artifacts/tracked.tar.gz HEAD\n     - name: upload tracked files and build artifacts\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: vs-artifacts\n         path: artifacts\n@@ -230,7 +230,7 @@ jobs:\n     steps:\n     - uses: git-for-windows/setup-git-for-windows-sdk@v1\n     - name: download tracked files and build artifacts\n-      uses: actions/download-artifact@v3\n+      uses: actions/download-artifact@v4\n       with:\n         name: vs-artifacts\n         path: ${{github.workspace}}\n@@ -248,7 +248,7 @@ jobs:\n       run: ci/print-test-failures.sh\n     - name: Upload failed tests' directories\n       if: failure() && env.FAILED_TEST_ARTIFACTS != ''\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: failed-tests-windows\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n@@ -305,7 +305,7 @@ jobs:\n       run: ci/print-test-failures.sh\n     - name: Upload failed tests' directories\n       if: failure() && env.FAILED_TEST_ARTIFACTS != ''\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: failed-tests-${{matrix.vector.jobname}}\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n@@ -353,13 +353,13 @@ jobs:\n       run: ci/print-test-failures.sh\n     - name: Upload failed tests' directories\n       if: failure() && env.FAILED_TEST_ARTIFACTS != '' && matrix.vector.jobname != 'linux32'\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: failed-tests-${{matrix.vector.jobname}}\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n     - name: Upload failed tests' directories\n       if: failure() && env.FAILED_TEST_ARTIFACTS != '' && matrix.vector.jobname == 'linux32'\n-      uses: actions/upload-artifact@v1\n+      uses: actions/upload-artifact@v4\n       with:\n         name: failed-tests-${{matrix.vector.jobname}}\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n\nbase-commit: dcce2bda214ac4c838f4b85f2c550816df3a6ac9\n-- \ngitgitgadget\n"},{"id":"488388","messageId":"pull.1660.v2.git.1707653489.gitgitgadget@gmail.com","threadId":"60899","inReplyTo":"pull.1660.git.1707652357696.gitgitgadget@gmail.com","subject":"[PATCH v2 0/2] ci: bump remaining outdated Actions versions","fromName":"Johannes Schindelin via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2024-02-11T12:11:27Z","receivedAt":"2024-02-11T12:11:32Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"I noticed that Junio recently bumped a couple of these Actions versions, and\nincidentally I also activated automatic Dependabot updates of those in\ngit-for-windows/git. Dependabot noticed a couple of yet-unaddressed updates,\nwhich I accumulated into a single patch.\n\nThis patch is based on jc/github-actions-update.\n\nChanges since v1 (sorry for the quick succession):\n\n * The linux32 job cannot handle Node.js Actions, and therefore would fail\n   to run the latest actions/upload-artifact version. I only noticed this\n   after submitting v1 because CI does not fail (since this step is only in\n   use when something in Git's test suite breaks).\n * To avoid making the same mistake even one more time, I added a commit\n   that puts big fat warnings next to the Actions that must not be updated\n   to newer (i.e. Node.js) versions.\n\nJohannes Schindelin (2):\n  ci: bump remaining outdated Actions versions\n  ci(linux32): add a note about Actions that must not be updated\n\n .github/workflows/coverity.yml |  4 ++--\n .github/workflows/main.yml     | 20 ++++++++++----------\n 2 files changed, 12 insertions(+), 12 deletions(-)\n\n\nbase-commit: dcce2bda214ac4c838f4b85f2c550816df3a6ac9\nPublished-As: https://github.com/gitgitgadget/git/releases/tag/pr-1660%2Fdscho%2Fmoar-github-actions-updates-v2\nFetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-1660/dscho/moar-github-actions-updates-v2\nPull-Request: https://github.com/gitgitgadget/git/pull/1660\n\nRange-diff vs v1:\n\n 1:  77c0810bf1a ! 1:  2b35b9878a7 ci: bump remaining outdated Actions versions\n     @@ .github/workflows/main.yml: jobs:\n           - name: Upload failed tests' directories\n             if: failure() && env.FAILED_TEST_ARTIFACTS != '' && matrix.vector.jobname != 'linux32'\n      -      uses: actions/upload-artifact@v3\n     -+      uses: actions/upload-artifact@v4\n     -       with:\n     -         name: failed-tests-${{matrix.vector.jobname}}\n     -         path: ${{env.FAILED_TEST_ARTIFACTS}}\n     -     - name: Upload failed tests' directories\n     -       if: failure() && env.FAILED_TEST_ARTIFACTS != '' && matrix.vector.jobname == 'linux32'\n     --      uses: actions/upload-artifact@v1\n      +      uses: actions/upload-artifact@v4\n             with:\n               name: failed-tests-${{matrix.vector.jobname}}\n -:  ----------- > 2:  9088cc60bda ci(linux32): add a note about Actions that must not be updated\n\n-- \ngitgitgadget\n"},{"id":"488389","messageId":"2b35b9878a7ed6da268bff11c41a261ea774161f.1707653489.git.gitgitgadget@gmail.com","threadId":"60899","inReplyTo":"pull.1660.v2.git.1707653489.gitgitgadget@gmail.com","subject":"[PATCH v2 1/2] ci: bump remaining outdated Actions versions","fromName":"Johannes Schindelin via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2024-02-11T12:11:28Z","receivedAt":"2024-02-11T12:11:33Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"From: Johannes Schindelin <Johannes.Schindelin@gmx.de>\n\nThis avoids \"Node.js 16 Actions\" deprecation messages by bumping the\nfollowing Actions' versions:\n\n- actions/upload-artifact from 3 to 4\n- actions/download-artifact from 3 to 4\n- actions/cache from 3 to 4\n\nHelped-by: Matthias Aßhauer <mha1993@live.de>\nOriginal-commits-by: dependabot[bot] <support@github.com>\nSigned-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>\n---\n .github/workflows/coverity.yml |  4 ++--\n .github/workflows/main.yml     | 16 ++++++++--------\n 2 files changed, 10 insertions(+), 10 deletions(-)\n\ndiff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml\nindex a81a7566d10..53cf12fe044 100644\n--- a/.github/workflows/coverity.yml\n+++ b/.github/workflows/coverity.yml\n@@ -98,7 +98,7 @@ jobs:\n       # A cache miss will add ~30s to create, but a cache hit will save minutes.\n       - name: restore the Coverity Build Tool\n         id: cache\n-        uses: actions/cache/restore@v3\n+        uses: actions/cache/restore@v4\n         with:\n           path: ${{ runner.temp }}/cov-analysis\n           key: cov-build-${{ env.COVERITY_LANGUAGE }}-${{ env.COVERITY_PLATFORM }}-${{ steps.lookup.outputs.hash }}\n@@ -141,7 +141,7 @@ jobs:\n           esac\n       - name: cache the Coverity Build Tool\n         if: steps.cache.outputs.cache-hit != 'true'\n-        uses: actions/cache/save@v3\n+        uses: actions/cache/save@v4\n         with:\n           path: ${{ runner.temp }}/cov-analysis\n           key: cov-build-${{ env.COVERITY_LANGUAGE }}-${{ env.COVERITY_PLATFORM }}-${{ steps.lookup.outputs.hash }}\ndiff --git a/.github/workflows/main.yml b/.github/workflows/main.yml\nindex bb857bdaf08..ec25f6f99de 100644\n--- a/.github/workflows/main.yml\n+++ b/.github/workflows/main.yml\n@@ -123,7 +123,7 @@ jobs:\n     - name: zip up tracked files\n       run: git archive -o artifacts/tracked.tar.gz HEAD\n     - name: upload tracked files and build artifacts\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: windows-artifacts\n         path: artifacts\n@@ -140,7 +140,7 @@ jobs:\n       cancel-in-progress: ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}\n     steps:\n     - name: download tracked files and build artifacts\n-      uses: actions/download-artifact@v3\n+      uses: actions/download-artifact@v4\n       with:\n         name: windows-artifacts\n         path: ${{github.workspace}}\n@@ -157,7 +157,7 @@ jobs:\n       run: ci/print-test-failures.sh\n     - name: Upload failed tests' directories\n       if: failure() && env.FAILED_TEST_ARTIFACTS != ''\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: failed-tests-windows\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n@@ -212,7 +212,7 @@ jobs:\n     - name: zip up tracked files\n       run: git archive -o artifacts/tracked.tar.gz HEAD\n     - name: upload tracked files and build artifacts\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: vs-artifacts\n         path: artifacts\n@@ -230,7 +230,7 @@ jobs:\n     steps:\n     - uses: git-for-windows/setup-git-for-windows-sdk@v1\n     - name: download tracked files and build artifacts\n-      uses: actions/download-artifact@v3\n+      uses: actions/download-artifact@v4\n       with:\n         name: vs-artifacts\n         path: ${{github.workspace}}\n@@ -248,7 +248,7 @@ jobs:\n       run: ci/print-test-failures.sh\n     - name: Upload failed tests' directories\n       if: failure() && env.FAILED_TEST_ARTIFACTS != ''\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: failed-tests-windows\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n@@ -305,7 +305,7 @@ jobs:\n       run: ci/print-test-failures.sh\n     - name: Upload failed tests' directories\n       if: failure() && env.FAILED_TEST_ARTIFACTS != ''\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: failed-tests-${{matrix.vector.jobname}}\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n@@ -353,7 +353,7 @@ jobs:\n       run: ci/print-test-failures.sh\n     - name: Upload failed tests' directories\n       if: failure() && env.FAILED_TEST_ARTIFACTS != '' && matrix.vector.jobname != 'linux32'\n-      uses: actions/upload-artifact@v3\n+      uses: actions/upload-artifact@v4\n       with:\n         name: failed-tests-${{matrix.vector.jobname}}\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n-- \ngitgitgadget\n\n"},{"id":"488390","messageId":"9088cc60bda0f3f0d152ddc3c22a60effa272483.1707653489.git.gitgitgadget@gmail.com","threadId":"60899","inReplyTo":"pull.1660.v2.git.1707653489.gitgitgadget@gmail.com","subject":"[PATCH v2 2/2] ci(linux32): add a note about Actions that must not be updated","fromName":"Johannes Schindelin via GitGitGadget","fromEmail":"gitgitgadget@gmail.com","sentAt":"2024-02-11T12:11:29Z","receivedAt":"2024-02-11T12:11:34Z","isPatch":true,"sender":{"key":"johannes.schindelin@gmx.de","avatar":"https://avatars.githubusercontent.com/u/127790?v=4"},"body":"From: Johannes Schindelin <johannes.schindelin@gmx.de>\n\nThe Docker container used by the `linux32` job comes without Node.js,\nand therefore the `actions/checkout` and `actions/upload-artifact`\nActions cannot be upgraded to the latest versions (because they use\nNode.js).\n\nOne time too many, I accidentally tried to update them, where\n`actions/checkout` at least fails immediately, but the\n`actions/upload-artifact` step is only used when any test fails, and\ntherefore the CI run usually passes even though that Action was updated\nto a version that is incompatible with the Docker container in which\nthis job runs.\n\nSo let's add a big fat warning, mainly for my own benefit, to avoid\nrunning into the very same issue over and over again.\n\nSigned-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>\n---\n .github/workflows/main.yml | 4 ++--\n 1 file changed, 2 insertions(+), 2 deletions(-)\n\ndiff --git a/.github/workflows/main.yml b/.github/workflows/main.yml\nindex ec25f6f99de..7bacb322e4f 100644\n--- a/.github/workflows/main.yml\n+++ b/.github/workflows/main.yml\n@@ -344,7 +344,7 @@ jobs:\n     steps:\n     - uses: actions/checkout@v4\n       if: matrix.vector.jobname != 'linux32'\n-    - uses: actions/checkout@v1\n+    - uses: actions/checkout@v1 # cannot be upgraded because Node.js Actions aren't supported in this container\n       if: matrix.vector.jobname == 'linux32'\n     - run: ci/install-docker-dependencies.sh\n     - run: ci/run-build-and-tests.sh\n@@ -359,7 +359,7 @@ jobs:\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n     - name: Upload failed tests' directories\n       if: failure() && env.FAILED_TEST_ARTIFACTS != '' && matrix.vector.jobname == 'linux32'\n-      uses: actions/upload-artifact@v1\n+      uses: actions/upload-artifact@v1 # cannot be upgraded because Node.js Actions aren't supported in this container\n       with:\n         name: failed-tests-${{matrix.vector.jobname}}\n         path: ${{env.FAILED_TEST_ARTIFACTS}}\n-- \ngitgitgadget\n"},{"id":"488403","messageId":"xmqqplx29aze.fsf@gitster.g","threadId":"60899","inReplyTo":"pull.1660.git.1707652357696.gitgitgadget@gmail.com","subject":"Re: [PATCH] ci: bump remaining outdated Actions versions","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-02-11T17:17:25Z","receivedAt":"2024-02-11T17:17:31Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Johannes Schindelin via GitGitGadget\" <gitgitgadget@gmail.com>\nwrites:\n\n> From: Johannes Schindelin <Johannes.Schindelin@gmx.de>\n>\n> This avoids \"Node.js 16 Actions\" deprecation messages by bumping the\n> following Actions' versions:\n>\n> - actions/upload-artifact from 3 to 4\n> - actions/download-artifact from 3 to 4\n> - actions/cache from 3 to 4\n>\n> Helped-by: Matthias Aßhauer <mha1993@live.de>\n> Original-commits-by: dependabot[bot] <support@github.com>\n> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>\n> ---\n\n>      - name: Upload failed tests' directories\n>        if: failure() && env.FAILED_TEST_ARTIFACTS != '' && matrix.vector.jobname == 'linux32'\n> -      uses: actions/upload-artifact@v1\n> +      uses: actions/upload-artifact@v4\n>        with:\n>          name: failed-tests-${{matrix.vector.jobname}}\n>          path: ${{env.FAILED_TEST_ARTIFACTS}}\n\nCurious that, among all other uses of actions/upload-artifact@v3,\nonly this one has been using @v1, which may deserve explanation.\nThe proposed commit log message pretends that this never existed.\n\nPlease drop a non-standard \"Original-commits-by:\"  trailer, and\ninstead mention what you wrote under three-dash line about the\ndependabot in the log message.  Perhaps something like...\n\n\tAfter activating automatic Dependabot updates in the\n\tgit-for-windows/git repository, Dependabot noticed a couple\n\tof yet-unaddressed updates.  They avoid \"Node.js 16 Actions\"\n\tdeprecation messages by bumping the following Actions'\n\tversions:\n\n        - actions/upload-artifact from 1 or 3 to 4\n        - actions/download-artifact from 3 to 4\n        - actions/cache from 3 to 4\n\n\tNote that one actions/upload-artifact@v1 was used in one of\n\tthe rules because ...\n\n        Helped-by: Matthias Aßhauer <mha1993@live.de>\n        Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>\n\n\nThanks.\n"},{"id":"488452","messageId":"xmqqv86t7hr7.fsf@gitster.g","threadId":"60899","inReplyTo":"xmqqplx29aze.fsf@gitster.g","subject":"Re: [PATCH] ci: bump remaining outdated Actions versions","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-02-12T16:46:20Z","receivedAt":"2024-02-12T16:46:26Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Junio C Hamano <gitster@pobox.com> writes:\n\n> Curious that, among all other uses of actions/upload-artifact@v3,\n> only this one has been using @v1, which may deserve explanation.\n> The proposed commit log message pretends that this never existed.\n\nI see that [v2 2/2] addresses this.  Nice.\n"},{"id":"488454","messageId":"xmqqr0hh7hih.fsf@gitster.g","threadId":"60899","inReplyTo":"9088cc60bda0f3f0d152ddc3c22a60effa272483.1707653489.git.gitgitgadget@gmail.com","subject":"Re: [PATCH v2 2/2] ci(linux32): add a note about Actions that must not be updated","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2024-02-12T16:51:34Z","receivedAt":"2024-02-12T16:51:37Z","isPatch":true,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"\"Johannes Schindelin via GitGitGadget\" <gitgitgadget@gmail.com>\nwrites:\n\n> So let's add a big fat warning, mainly for my own benefit, to avoid\n> running into the very same issue over and over again.\n\nIf we had this, it would also have helped me when I did e94dec0c\n(GitHub Actions: update to checkout@v4, 2024-02-02), as I wouldn't\nhave had to dig for 6cf4d908 (ci(main): upgrade actions/checkout to\nv3, 2022-12-05).\n\nThanks.\n"}]}