diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ff7610f..8d9dc8a 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,7 +30,7 @@ jobs: node-version: "22" - name: Set up Python - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: "3.11" @@ -89,6 +89,40 @@ jobs: with: path: packages/docs/.vitepress/dist/ + test-python: + runs-on: ubuntu-latest + needs: build + strategy: + matrix: + python-version: ["3.11", "3.12", "3.13"] + steps: + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Download wheel + uses: actions/download-artifact@v4 + with: + name: python-dist + path: dist/ + + - name: Install wheel + run: pip install dist/*.whl + + - name: Run tests + run: | + embedding-atlas --help + + python -c "import embedding_atlas" + python -c "from embedding_atlas.projection import compute_text_projection, compute_image_projection, compute_vector_projection" + + pip install jupyterlab anywidget + python -c "from embedding_atlas.widget import EmbeddingAtlasWidget" + + pip install streamlit + python -c "from embedding_atlas.streamlit import embedding_atlas" + publish-pypi: runs-on: ubuntu-latest if: github.event_name == 'release'