From 23cb5c335e0fa74ac37cf99a6634bf07cb8876c6 Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 18:49:27 +0800 Subject: [PATCH 1/6] [CI] add compatibility check to unit test --- .github/workflows/compatibility.yml | 23 ++------------- .github/workflows/unit_tests.yml | 43 ++++++++++++++++++++++++++++- 2 files changed, 45 insertions(+), 21 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 b05286c..cf3165e 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -79,4 +79,45 @@ jobs: uv pip install . - name: test - run: pytest -n 8 -v tests/${{ matrix.test_script }} \ No newline at end of file + run: pytest -n 8 -v tests/${{ matrix.test_script }} + + 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 d7a54d7dc8507ce5507c7c5ac4d937000c985d81 Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 18:55:42 +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 cf3165e..7335e8a 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -93,7 +93,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 95b9cc0dfa431cf5f7c7659bcb53ad45e3cb190c Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 19:00:24 +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 7335e8a..9f000f1 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -81,7 +81,7 @@ jobs: - name: test run: pytest -n 8 -v tests/${{ matrix.test_script }} - prepare-compat: + prepare-setuptools: runs-on: ubuntu-latest outputs: versions: ${{ steps.parser.outputs.versions || '[]' }} @@ -96,8 +96,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 c9be7f5a9fc74321889dd882609970eb41074c09 Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 19:05:07 +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 9f000f1..5f2fd67 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -98,12 +98,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 eefd80248b32897977aca8cab913df9d4260ada6 Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 19:09:01 +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 5f2fd67..5af0f30 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -86,6 +86,7 @@ jobs: outputs: versions: ${{ steps.parser.outputs.versions || '[]' }} steps: + - uses: actions/checkout@v6 - uses: actions/setup-python@v6 with: python-version: "3.14" From 0ad202b9ca64b49e092d2ae5be242b6b659fb02a Mon Sep 17 00:00:00 2001 From: CSY-ModelCloud Date: Wed, 15 Apr 2026 19:12:44 +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 5af0f30..650c8d5 100644 --- a/.github/workflows/unit_tests.yml +++ b/.github/workflows/unit_tests.yml @@ -94,6 +94,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"