From dcc1222e58b980682a8eb68b36f01071740a9ef0 Mon Sep 17 00:00:00 2001 From: Tyler Fox Date: Mon, 21 Sep 2026 11:38:43 -0700 Subject: [PATCH 1/2] Upload .pyd/.so files separately so they get added to the module, and update used actions --- .github/workflows/main.yml | 35 ++++++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index f2ff8120..ec65f0e2 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -53,7 +53,7 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: 'Checkout repo' - uses: actions/checkout@v5 + uses: actions/checkout@v7 - name: 'ACTUALLY get tags' run: git fetch --force --tag @@ -79,7 +79,7 @@ jobs: install-args: --skip-subprojects - name: Upload Artifacts - uses: actions/upload-artifact@v4 + uses: actions/upload-artifact@v7 with: name: ${{ runner.os }}-${{ matrix.maya }}-plugin path: output_Maya${{ matrix.maya }}/*.${{ steps.get-devkit.outputs.plugin-ext }} @@ -97,14 +97,14 @@ jobs: runs-on: ${{ matrix.os }} steps: - name: 'Checkout repo' - uses: actions/checkout@v5 + uses: actions/checkout@v7 - name: 'ACTUALLY get tags' run: git fetch --force --tags origin - name: 'Get Previous tag' id: previoustag - uses: "WyriHaximus/github-action-get-previous-tag@v1" + uses: "WyriHaximus/github-action-get-previous-tag@v2" with: fallback: v0.0.1 @@ -136,7 +136,7 @@ jobs: echo "PLAT_TAG=win_amd64" >> $GITHUB_ENV - name: Get an older python version - uses: actions/setup-python@v5 + uses: actions/setup-python@v7 with: python-version: ${{ env.PY_VER }} @@ -154,27 +154,44 @@ jobs: python -m wheel tags --remove --python-tag ${{ env.PY_VER_FLAT }} --abi-tag abi3 --platform-tag ${{ env.PLAT_TAG }} ${PY_WHEEL} done - - name: Upload Artifacts - uses: actions/upload-artifact@v4 + - name: Extract Compiled Module Files From Wheel + shell: bash + run: | + mkdir -p wheel_extract pyModule + for PY_WHEEL in dist/*.whl + do + python -m zipfile -e "${PY_WHEEL}" wheel_extract/ + done + find wheel_extract -type f \( -name '*.pyd' -o -name '*.so' \) -exec cp {} pyModule/ \; + + - name: Upload Wheel Artifacts + uses: actions/upload-artifact@v7 with: name: ${{ runner.os }}-wheels path: dist/*.whl if-no-files-found: error + - name: Upload Module Artifacts + uses: actions/upload-artifact@v7 + with: + name: ${{ runner.os }}-pyModule + path: pyModule + if-no-files-found: error + upload_release: name: Upload release needs: [compile_plugin, compile_python] runs-on: ubuntu-latest steps: - name: Checkout repo - uses: actions/checkout@v5 + uses: actions/checkout@v7 - name: 'ACTUALLY get tags' run: git fetch --force --tags origin - name: Get Previous tag id: previoustag - uses: "WyriHaximus/github-action-get-previous-tag@v1" + uses: "WyriHaximus/github-action-get-previous-tag@v2" with: fallback: v0.0.1 From 480e87af6f4b3e59e5555a4d97a9d1029a881649 Mon Sep 17 00:00:00 2001 From: Tyler Fox Date: Mon, 21 Sep 2026 14:04:09 -0700 Subject: [PATCH 2/2] Make sure meson uses vsenv when building wheels --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index f469cf6c..799921b5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -37,7 +37,7 @@ build-backend = "mesonpy" requires = ["meson-python>=0.15.0", "meson >= 1.6.0"] [tool.meson-python.args] -setup = ['-Dmaya_build=false', '-Dpython_build=true', '-Dpython_wheel_build=true'] +setup = ['-Dmaya_build=false', '-Dpython_build=true', '-Dpython_wheel_build=true', '--vsenv'] install = ['--skip-subprojects'] [tool.ruff]