Skip to content

Commit 0a6533f

Browse files
committed
fix(ducpy): enhance release workflow for Pyodide support
1 parent 42e0d76 commit 0a6533f

2 files changed

Lines changed: 24 additions & 1 deletion

File tree

.github/workflows/release-ducpy.yml

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,29 @@ jobs:
7676
fi
7777
working-directory: ./packages/ducpy
7878

79+
- name: Install Pyodide build tooling
80+
id: pyodide_tooling
81+
if: steps.release.outputs.status == 'success'
82+
run: |
83+
python -m pip install --upgrade pip
84+
pip install "pyodide-build>=0.29.2"
85+
echo "emscripten_version=$(pyodide config get emscripten_version)" >> $GITHUB_OUTPUT
86+
87+
- name: Setup Emscripten SDK
88+
if: steps.release.outputs.status == 'success'
89+
uses: mymindstorm/setup-emsdk@v14
90+
with:
91+
version: ${{ steps.pyodide_tooling.outputs.emscripten_version }}
92+
93+
- name: Build Pyodide wheel
94+
if: steps.release.outputs.status == 'success'
95+
working-directory: ./packages/ducpy
96+
run: |
97+
TAG=$(git describe --tags --abbrev=0)
98+
VERSION="${TAG#ducpy@}"
99+
echo "Building Pyodide wheel for version ${VERSION}"
100+
SETUPTOOLS_SCM_PRETEND_VERSION="${VERSION}" pyodide build --outdir dist
101+
79102
- name: Upload wheels to GitHub release
80103
if: steps.release.outputs.status == 'success'
81104
env:

packages/ducpy/release.config.cjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ module.exports = {
1616
"@semantic-release/exec",
1717
{
1818
prepareCmd:
19-
"bun prerelease && sed -i 's/^version = \".*\"$/version = \"${nextRelease.version}\"/' crate/Cargo.toml && bun run build ${nextRelease.version}",
19+
"bun prerelease && sed -i 's/^version = \".*\"$/version = \"${nextRelease.version}\"/' crate/Cargo.toml && SETUPTOOLS_SCM_PRETEND_VERSION=${nextRelease.version} uv build --sdist",
2020
publishCmd: "uv publish --token ${process.env.PYPI_TOKEN} dist/*.tar.gz",
2121
},
2222
],

0 commit comments

Comments
 (0)