From 60adb3e35e47ede5cf9102d3b144cf31bb3f3e9f Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 18:49:32 +0800 Subject: [PATCH 1/6] [CI] add compatibility check to unit test --- .github/workflows/compatibility.yml | 23 +++------------- .github/workflows/unit_tests.yml | 41 +++++++++++++++++++++++++++++ 2 files changed, 44 insertions(+), 20 deletions(-) diff --git a/.github/workflows/compatibility.yml b/.github/workflows/compatibility.yml index 20f4fc1..8fcd3ab 100644 --- a/.github/workflows/compatibility.yml +++ b/.github/workflows/compatibility.yml @@ -10,40 +10,23 @@ permissions: contents: read jobs: - prepare: + prepare-compat: runs-on: ubuntu-latest outputs: versions: ${{ steps.parser.outputs.versions || '[]' }} steps: - - uses: actions/checkout@v6 - with: - fetch-depth: 2 - - - name: Check license line changed - id: check - run: | - if [ "${{ github.event_name }}" = "workflow_dispatch" ]; then - echo "changed=true" >> "$GITHUB_OUTPUT" - elif git diff HEAD~1 HEAD -- pyproject.toml | grep -q '^[+-].*license = "Apache-2.0"'; then - echo "changed=true" >> "$GITHUB_OUTPUT" - else - echo "changed=false" >> "$GITHUB_OUTPUT" - fi - - uses: actions/setup-python@v6 - if: steps.check.outputs.changed == 'true' with: python-version: "3.14" - name: Generate version matrix - if: steps.check.outputs.changed == 'true' id: parser run: | versions=$(python ci_loop_versions.py setuptools ">=77.0.1,<83") echo "versions=$versions" >> "$GITHUB_OUTPUT" - check: - needs: prepare + check-compat: + needs: prepare-compat if: needs.prepare.outputs.versions != '[]' runs-on: ubuntu-latest strategy: diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index d48d703..9751498 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -187,3 +187,44 @@ jobs: pip install pip pytest tabulate regex setuptools build wheel -U pip install -v . pytest --durations=0 tests/${{ matrix.test_script }}.py + + prepare-compat: + runs-on: ubuntu-latest + outputs: + versions: ${{ steps.parser.outputs.versions || '[]' }} + steps: + - uses: actions/setup-python@v6 + with: + python-version: "3.14" + + - name: Generate version matrix + id: parser + run: | + versions=$(python ci_loop_versions.py setuptools ">=77.0.1,<83") + echo "versions=$versions" >> "$GITHUB_OUTPUT" + + check-compat: + needs: prepare-compat + if: needs.prepare.outputs.versions != '[]' + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + version: ${{ fromJSON(needs.prepare.outputs.versions) }} + + steps: + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 + with: + python-version: "3.14" + cache: pip + + - name: Install package with selected setuptools + run: | + python -m pip install --upgrade pip + python -m pip install . "setuptools==${{ matrix.version }}" + + - name: Show versions + run: | + python --version + python -m pip show setuptools From b942c55427031a523f8a7041693fc1ecd5c88562 Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 18:55:47 +0800 Subject: [PATCH 2/6] [CI] fix path --- .github/workflows/compatibility.yml | 2 +- .github/workflows/unit_tests.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/compatibility.yml b/.github/workflows/compatibility.yml index 8fcd3ab..43e7c86 100644 --- a/.github/workflows/compatibility.yml +++ b/.github/workflows/compatibility.yml @@ -22,7 +22,7 @@ jobs: - name: Generate version matrix id: parser run: | - versions=$(python ci_loop_versions.py setuptools ">=77.0.1,<83") + versions=$(python .github/scripts/ci_loop_versions.py setuptools ">=77.0.1,<83") echo "versions=$versions" >> "$GITHUB_OUTPUT" check-compat: diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index 9751498..398a42a 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -200,7 +200,7 @@ jobs: - name: Generate version matrix id: parser run: | - versions=$(python ci_loop_versions.py setuptools ">=77.0.1,<83") + versions=$(python .github/scripts/ci_loop_versions.py setuptools ">=77.0.1,<83") echo "versions=$versions" >> "$GITHUB_OUTPUT" check-compat: From fac4b82a8663338d71c91de2e865e7052533a646 Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 19:00:29 +0800 Subject: [PATCH 3/6] [CI] rename to setuptools --- .github/workflows/compatibility.yml | 6 +++--- .github/workflows/unit_tests.yml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/compatibility.yml b/.github/workflows/compatibility.yml index 43e7c86..8b8bca8 100644 --- a/.github/workflows/compatibility.yml +++ b/.github/workflows/compatibility.yml @@ -10,7 +10,7 @@ permissions: contents: read jobs: - prepare-compat: + prepare-setuptools: runs-on: ubuntu-latest outputs: versions: ${{ steps.parser.outputs.versions || '[]' }} @@ -25,8 +25,8 @@ jobs: versions=$(python .github/scripts/ci_loop_versions.py setuptools ">=77.0.1,<83") echo "versions=$versions" >> "$GITHUB_OUTPUT" - check-compat: - needs: prepare-compat + check-setuptools: + needs: prepare-setuptools if: needs.prepare.outputs.versions != '[]' runs-on: ubuntu-latest strategy: diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index 398a42a..7b7af16 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -188,7 +188,7 @@ jobs: pip install -v . pytest --durations=0 tests/${{ matrix.test_script }}.py - prepare-compat: + prepare-setuptools: runs-on: ubuntu-latest outputs: versions: ${{ steps.parser.outputs.versions || '[]' }} @@ -203,8 +203,8 @@ jobs: versions=$(python .github/scripts/ci_loop_versions.py setuptools ">=77.0.1,<83") echo "versions=$versions" >> "$GITHUB_OUTPUT" - check-compat: - needs: prepare-compat + check-setuptools: + needs: prepare-setuptools if: needs.prepare.outputs.versions != '[]' runs-on: ubuntu-latest strategy: From 7082c6d1c50dd4a4dadd42026db0403615f43c57 Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 19:05:12 +0800 Subject: [PATCH 4/6] [CI] fix needs reference --- .github/workflows/compatibility.yml | 4 ++-- .github/workflows/unit_tests.yml | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/compatibility.yml b/.github/workflows/compatibility.yml index 8b8bca8..df9dffb 100644 --- a/.github/workflows/compatibility.yml +++ b/.github/workflows/compatibility.yml @@ -27,12 +27,12 @@ jobs: check-setuptools: needs: prepare-setuptools - if: needs.prepare.outputs.versions != '[]' + if: needs.prepare-setuptools.outputs.versions != '[]' runs-on: ubuntu-latest strategy: fail-fast: false matrix: - version: ${{ fromJSON(needs.prepare.outputs.versions) }} + version: ${{ fromJSON(needs.prepare-setuptools.outputs.versions) }} steps: - uses: actions/checkout@v6 diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index 7b7af16..dfa9b23 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -205,12 +205,12 @@ jobs: check-setuptools: needs: prepare-setuptools - if: needs.prepare.outputs.versions != '[]' + if: needs.prepare-setuptools.outputs.versions != '[]' runs-on: ubuntu-latest strategy: fail-fast: false matrix: - version: ${{ fromJSON(needs.prepare.outputs.versions) }} + version: ${{ fromJSON(needs.prepare-setuptools.outputs.versions) }} steps: - uses: actions/checkout@v6 From 2ff0e9fbd107401d0608dd8218acf58e413d75f9 Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 19:09:06 +0800 Subject: [PATCH 5/6] [CI] restore checkout step --- .github/workflows/compatibility.yml | 1 + .github/workflows/unit_tests.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/compatibility.yml b/.github/workflows/compatibility.yml index df9dffb..7789e36 100644 --- a/.github/workflows/compatibility.yml +++ b/.github/workflows/compatibility.yml @@ -15,6 +15,7 @@ jobs: outputs: versions: ${{ steps.parser.outputs.versions || '[]' }} steps: + - uses: actions/checkout@v6 - uses: actions/setup-python@v6 with: python-version: "3.14" diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index dfa9b23..154971c 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -193,6 +193,7 @@ jobs: outputs: versions: ${{ steps.parser.outputs.versions || '[]' }} steps: + - uses: actions/checkout@v6 - uses: actions/setup-python@v6 with: python-version: "3.14" From 782cbaaaa5f7066777b02951e16919be275bb471 Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 19:12:49 +0800 Subject: [PATCH 6/6] [CI] fix requests & packaging --- .github/workflows/compatibility.yml | 1 + .github/workflows/unit_tests.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/compatibility.yml b/.github/workflows/compatibility.yml index 7789e36..f48cb5a 100644 --- a/.github/workflows/compatibility.yml +++ b/.github/workflows/compatibility.yml @@ -23,6 +23,7 @@ jobs: - name: Generate version matrix id: parser run: | + python -m pip install --upgrade requests packaging versions=$(python .github/scripts/ci_loop_versions.py setuptools ">=77.0.1,<83") echo "versions=$versions" >> "$GITHUB_OUTPUT" diff --git a/.github/workflows/unit_tests.yml b/.github/workflows/unit_tests.yml index 154971c..24332a8 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -201,6 +201,7 @@ jobs: - name: Generate version matrix id: parser run: | + python -m pip install --upgrade requests packaging versions=$(python .github/scripts/ci_loop_versions.py setuptools ">=77.0.1,<83") echo "versions=$versions" >> "$GITHUB_OUTPUT"