Skip to content

Migrate to uv, drop 3.9 and 3.10, fix tests #889

Migrate to uv, drop 3.9 and 3.10, fix tests

Migrate to uv, drop 3.9 and 3.10, fix tests #889

Workflow file for this run

name: CI
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
merge_group:
branches: [ main ]
permissions:
id-token: write
contents: read
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test_unit:
strategy:
fail-fast: false
matrix:
python-version: [ "3.11", "3.12", "3.13" ]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v6
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
env:
UV_LOCKED: "1"
UV_PYTHON: ${{ matrix.python-version }}
run: make install
- name: Run unit tests
env:
UV_PYTHON: ${{ matrix.python-version }}
run: |
make test-unit
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v6
- name: Set up Python 3.13
uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: Install dependencies
env:
UV_LOCKED: "1"
UV_PYTHON: "3.13"
run: make install
- name: Lint
env:
UV_PYTHON: "3.13"
run: |
make lint
test_integration:
strategy:
fail-fast: false
matrix:
python-version: [ "3.11", "3.12", "3.13" ]
runs-on: opensource-linux-8core
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v6
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
env:
UV_LOCKED: "1"
UV_PYTHON: ${{ matrix.python-version }}
run: make install
- name: Run integration tests
env:
UV_PYTHON: ${{ matrix.python-version }}
UNSTRUCTURED_API_KEY: ${{ secrets.UNSTRUCTURED_API_KEY }}
run: |
make test-integration-docker
test_contract:
strategy:
fail-fast: false
matrix:
python-version: [ "3.11", "3.12", "3.13" ]
runs-on: opensource-linux-8core
steps:
- uses: actions/checkout@v4
- uses: astral-sh/setup-uv@v6
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
env:
UV_LOCKED: "1"
UV_PYTHON: ${{ matrix.python-version }}
run: |
make install
- name: Run contract tests
env:
UV_PYTHON: ${{ matrix.python-version }}
run: |
make test-contract