Migrate from Poetry to uv, improve workflows, drop support for Python 3.8 #204
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: ci | |
| on: | |
| push: | |
| branches: [ master ] | |
| pull_request: | |
| branches: [ master ] | |
| jobs: | |
| lint: | |
| runs-on: windows-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7 | |
| - name: Install the project | |
| run: uv sync --locked --all-extras --group lint --group form --group type | |
| - name: Install pre-commit patched for uv | |
| run: uv tool install pre-commit --with pre-commit-uv --force-reinstall | |
| - name: Run pre-commit to do linting, formatting, type-checking, and more | |
| run: uv run pre-commit run --all-files --show-diff-on-failure | |
| build: | |
| runs-on: windows-latest | |
| strategy: | |
| matrix: | |
| python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "3.14"] | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v7 | |
| - name: Install the project | |
| run: uv sync --locked --extra gui | |
| - name: Build project | |
| run: uv build | |
| - name: Cache prod.keys | |
| id: cache-prod-keys | |
| uses: actions/cache@v5 | |
| with: | |
| path: prod.keys | |
| key: prod-keys | |
| - name: Save prod.keys safely | |
| if: steps.cache-prod-keys.outputs.cache-hit != 'true' | |
| env: | |
| PROD_KEYS: ${{ secrets.PROD_KEYS }} | |
| run: $env:PROD_KEYS | Out-File prod.keys | |
| - name: Build basic NSP forwarder | |
| run: uv run nton build "sdl-hello.nro" --name "Hello World" --publisher "vgmoose" --version "1.1" --sdmc "/switch/sdl-hello.nro" |