From df69a49123e9a78c51402c41213955b3c7f475e6 Mon Sep 17 00:00:00 2001 From: Andy Lee Date: Thu, 7 Aug 2025 11:31:25 -0700 Subject: [PATCH] fix: ensure CI installs correct Python version wheel packages - Use --find-links with --no-index to let uv select correct wheel - Prevents installing wrong Python version wheel (e.g., cp310 for Python 3.11) - Fixes ImportError: _diskannpy.cpython-310-x86_64-linux-gnu.so in Python 3.11 The issue was that *.whl glob matched all Python versions, causing uv to potentially install a cp310 wheel in a Python 3.11 environment. --- .github/workflows/build-reusable.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build-reusable.yml b/.github/workflows/build-reusable.yml index dda3a28..8da985c 100644 --- a/.github/workflows/build-reusable.yml +++ b/.github/workflows/build-reusable.yml @@ -211,13 +211,13 @@ jobs: source .venv/bin/activate || source .venv/Scripts/activate # Install the built wheels directly to ensure we use locally built packages - # Force local wheel installation to avoid PyPI version conflicts + # Use find-links to let uv select the correct wheel for current Python version if [[ "${{ matrix.os }}" == ubuntu-* ]]; then - uv pip install packages/leann-core/dist/*.whl --force-reinstall - uv pip install packages/leann/dist/*.whl --force-reinstall + uv pip install leann-core --find-links packages/leann-core/dist --force-reinstall --no-index + uv pip install leann --find-links packages/leann/dist --force-reinstall --no-index fi - uv pip install packages/leann-backend-hnsw/dist/*.whl --force-reinstall - uv pip install packages/leann-backend-diskann/dist/*.whl --force-reinstall + uv pip install leann-backend-hnsw --find-links packages/leann-backend-hnsw/dist --force-reinstall --no-index + uv pip install leann-backend-diskann --find-links packages/leann-backend-diskann/dist --force-reinstall --no-index # Install test dependencies using extras uv pip install -e ".[test]"