From beb5c1f7ed8db359a94e671a42d5d672a0f3422d Mon Sep 17 00:00:00 2001 From: Andrej730 Date: Wed, 5 Aug 2026 11:27:27 +0500 Subject: [PATCH] build_pyodide: use uv --- .github/workflows/build_pyodide.yml | 15 +++++++++++---- pyodide/order_pyodide_wheel_shared_objects.py | 2 ++ pyodide/split_pyodide_ifcopenshell_wheel.py | 2 ++ 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build_pyodide.yml b/.github/workflows/build_pyodide.yml index c13db044e9..19964b9293 100644 --- a/.github/workflows/build_pyodide.yml +++ b/.github/workflows/build_pyodide.yml @@ -8,6 +8,13 @@ jobs: runs-on: ubuntu-22.04 steps: + - name: Set up uv + uses: astral-sh/setup-uv@37802adc94f370d6bfd71619e3f0bf239e1f3b78 # v7.6.0 + + - name: Install Python + # Installs latest Python version so it's preferred by uv over system Python. + run: uv python install + - name: Checkout Repository uses: actions/checkout@v7 with: @@ -26,7 +33,7 @@ jobs: - name: Unpack Dependencies run: | cd ifcopenshell_build - python ../IfcOpenShell/nix/cache_dependencies.py unpack + uv run ../IfcOpenShell/nix/cache_dependencies.py unpack - name: ccache uses: hendrikmuhs/ccache-action@v1.2.23 @@ -42,13 +49,13 @@ jobs: - name: Order wheel shared objects run: | - python ./IfcOpenShell/pyodide/order_pyodide_wheel_shared_objects.py dist/ifcopenshell-*.whl + uv run ./IfcOpenShell/pyodide/order_pyodide_wheel_shared_objects.py dist/ifcopenshell-*.whl - name: Split packages run: | VERSION=v`cat ./IfcOpenShell/VERSION` mkdir -p dist-modular - python ./IfcOpenShell/pyodide/split_pyodide_ifcopenshell_wheel.py dist/ifcopenshell-*.whl ./dist-modular + uv run ./IfcOpenShell/pyodide/split_pyodide_ifcopenshell_wheel.py dist/ifcopenshell-*.whl ./dist-modular cd dist-modular zip -r -qq ifcopenshell-modular-${VERSION}-${GITHUB_SHA:0:7}-pyodide.zip *.whl @@ -77,7 +84,7 @@ jobs: - name: Pack Dependencies run: | cd ifcopenshell_build - python ../IfcOpenShell/nix/cache_dependencies.py pack + uv run ../IfcOpenShell/nix/cache_dependencies.py pack - name: Commit and Push Changes to Build Repository run: | diff --git a/pyodide/order_pyodide_wheel_shared_objects.py b/pyodide/order_pyodide_wheel_shared_objects.py index 338d254df6..4e49077e67 100644 --- a/pyodide/order_pyodide_wheel_shared_objects.py +++ b/pyodide/order_pyodide_wheel_shared_objects.py @@ -1,4 +1,6 @@ #!/usr/bin/env python3 +# /// script +# /// # This file was generated with the assistance of an AI coding tool. """Order Pyodide wheel shared objects so wasm side modules load safely.""" diff --git a/pyodide/split_pyodide_ifcopenshell_wheel.py b/pyodide/split_pyodide_ifcopenshell_wheel.py index f4f64dc704..800223e123 100644 --- a/pyodide/split_pyodide_ifcopenshell_wheel.py +++ b/pyodide/split_pyodide_ifcopenshell_wheel.py @@ -1,4 +1,6 @@ #!/usr/bin/env python3 +# /// script +# /// """Split optional IfcOpenShell Pyodide payloads into separate wheels.""" from __future__ import annotations