Repository: edgewall/genshi (language: python)

Issue:
Update GitHub actions used in sdist and wheels workflow
The build sdist and wheels workflow currently gives the following warnings:

```
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, actions/setup-python@v2, actions/upload-artifact@v2. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
```


Discussion / hints:

Fix patch:
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index d932b39..3a3bf55 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -12,12 +12,13 @@ jobs:
     name: Build sdist
     runs-on: ubuntu-20.04
     steps:
-      - uses: actions/checkout@v2
+      - uses: actions/checkout@v4
 
-      - uses: actions/setup-python@v2
+      - uses: actions/setup-python@v5
         name: Install Python
         with:
-          python-version: "3.6"
+          # Python 3.8 is the oldest version supported by build
+          python-version: "3.8"
 
       - name: Install pip build
         run: |
@@ -28,7 +29,7 @@ jobs:
         run: |
           python -m build --sdist .
 
-      - uses: actions/upload-artifact@v2
+      - uses: actions/upload-artifact@v4
         with:
           name: sdist
           path: |
@@ -42,12 +43,13 @@ jobs:
       # Build a wheel without speedups that can run on pure Python
       GENSHI_BUILD_SPEEDUP: 0
     steps:
-      - uses: actions/checkout@v2
+      - uses: actions/checkout@v4
 
-      - uses: actions/setup-python@v2
+      - uses: actions/setup-python@v5
         name: Install Python
         with:
-          python-version: "3.6"
+          # Python 3.8 is the oldest version supported by build
+          python-version: "3.8"
 
       - name: Install pip build
         run: |
@@ -58,7 +60,7 @@ jobs:
         run: |
           python -m build --wheel .
 
-      - uses: actions/upload-artifact@v2
+      - uses: actions/upload-artifact@v4
         with:
           name: wheels
           path: |
@@ -78,9 +80,9 @@ jobs:
 
     steps:
       - name: Download build artifacts to local runner
-        uses: actions/download-artifact@v2
+        uses: actions/download-artifact@v4
 
-      - uses: actions/setup-python@v2
+      - uses: actions/setup-python@v5
         name: Install Python
         with:
           python-version: "3.10"


Test patch:
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index 495cc77..7c81b5a 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -9,19 +9,19 @@ jobs:
 
     strategy:
       matrix:
-        python-version: [3.6, 3.7, 3.8, 3.9, "3.10", "3.11", "3.12", pypy3]
+        python-version: [3.6, 3.7, 3.8, 3.9, "3.10", "3.11", "3.12", "pypy3.9"]
         pytest-extra-options: ["--strict-config -W \"ignore:pkg_resources is deprecated\""]
         include:
-          - python-version: pypy2
+          - python-version: "pypy2.7"
             pytest-extra-options: ""
           - python-version: "3.13.0-beta.2"
             pytest-extra-options: "--strict-config -W \"ignore:pkg_resources is deprecated\" -W ignore::DeprecationWarning"
       fail-fast: false
 
     steps:
-      - uses: actions/checkout@v2
+      - uses: actions/checkout@v4
       - name: Set up Python ${{ matrix.python-version }}
-        uses: actions/setup-python@v2
+        uses: actions/setup-python@v5
         with:
           python-version: ${{ matrix.python-version }}