Repository: soft-matter/trackpy (language: python)

Issue:
TST: Need to replace a GitHub action
CI tests are failing because of a change in GitHub actions:

> Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, s-weigand/setup-conda@v1. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.

Changing to checkout@v4 is easy enough, but the conda action has not been updated. We need to switch to another one, which may entail changing how we describe the environments.


Discussion / hints:

Fix patch:
diff --git a/setup.cfg b/setup.cfg
index d40d7b61..766107ba 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,5 +1,5 @@
 [metadata]
-description-file = README.md
+description_file = README.md
 
 [versioneer]
 VCS = git


Test patch:
diff --git a/.github/workflows/test-conda.yml b/.github/workflows/test-conda.yml
index 4393387c..e014d3d6 100644
--- a/.github/workflows/test-conda.yml
+++ b/.github/workflows/test-conda.yml
@@ -13,25 +13,31 @@ jobs:
         python: [3.8, 3.9, "3.10", "3.11"]
 
     steps:
-      - uses: actions/checkout@v2
+      - uses: actions/checkout@v4
 
-      - name: Setup Conda
-        uses: s-weigand/setup-conda@v1
+      - uses: conda-incubator/setup-miniconda@v3
         with:
-          activate-conda: false
-          conda-channels: conda-forge
+          auto-update-conda: true
+          python-version: ${{ matrix.python }}
+          channels: conda-forge
 
-      - name: Setup Environment
-        shell: bash
+      - name: Initialize conda
+        shell: bash -el {0}
         run: |
-          conda create --name test python=${{ matrix.python }} pytest numpy scipy matplotlib pandas pytables numba scikit-learn pyyaml looseversion
-          source activate test
+          conda init
+
+      - name: Install packages
+        shell: bash -el {0}  # Reads .profile so conda will work
+        run: |
+          conda create --name test python=${{ matrix.python }} pytest numpy scipy matplotlib pandas pytables numba scikit-learn pyyaml looseversion pip
+          conda activate test
+          pip install -v --no-deps -e .
           python -V
           conda info
           conda list
 
       - name: Run tests
-        shell: bash
+        shell: bash -el {0}  # Reads .profile so conda will work
         run: |
-          source activate test
+          conda activate test
           pytest trackpy