diff --git a/.github/workflows/publish.yaml b/.github/workflows/publish.yaml index 5799fbc..3481530 100644 --- a/.github/workflows/publish.yaml +++ b/.github/workflows/publish.yaml @@ -25,26 +25,30 @@ jobs: strategy: matrix: - python-version: ["3.12"] + python-version: ["3.13"] steps: - name: Checkout repo uses: actions/checkout@v4 - - name: Set up Python 🐍 - uses: actions/setup-python@v5 + - name: Install uv 🐍 + uses: astral-sh/setup-uv@v3 with: - python-version: ${{ matrix.python-version }} - cache: 'pip' - cache-dependency-path: '**/requirements.txt' + cache-dependency-glob: "**/requirements.txt" + cache-suffix: ${{ github.job }} + enable-cache: true + + - name: Create base venv 🐙 + run: uv venv --python ${{ matrix.python-version }} - name: Install dependencies 💁🏻 run: | - python -m pip install --upgrade pip wheel setuptools - python -m pip install --upgrade -r requirements.txt + source .venv/bin/activate + uv pip install --upgrade -r requirements.txt - name: Build slides 📚 run: | + source .venv/bin/activate shopt -s globstar jupytext --to ipynb ${{ github.workspace }}/**/*.py.md jupyter nbconvert --execute --allow-errors --to html ${{ github.workspace }}/**/*.py.ipynb @@ -58,7 +62,7 @@ jobs: - name: Setup Pages id: pages - uses: actions/configure-pages@v4.0.0 + uses: actions/configure-pages@v5.0.0 - name: Build with Jekyll 🔨 run: bundle exec jekyll build --baseurl ${{ steps.pages.outputs.base_path }} # defaults output to '/_site' @@ -96,3 +100,4 @@ jobs: # with: # NO_PUSH: true # MYBINDERORG_TAG: ${{ github.event.ref }} +