@@ -20,47 +20,40 @@ jobs:
2020 - name : Install Pre-Commit
2121 run : python -m pip install pre-commit && pre-commit install
2222 - name : Load cached Pre-Commit Dependencies
23- id : cached-poetry-dependencies
2423 uses : actions/cache@v3
2524 with :
2625 path : ~/.cache/pre-commit/
2726 key : pre-commit-4|${{ env.pythonLocation }}|${{ hashFiles('.pre-commit-config.yaml') }}
2827 - name : Execute Pre-Commit
2928 run : pre-commit run --show-diff-on-failure --color=always --all-files
30- pyton_tests :
29+ python_tests :
3130 name : " Python Tests"
3231 runs-on : ubuntu-latest
3332 strategy :
3433 fail-fast : true
3534 matrix :
36- python-version : ["3.8", "3.9", "3.10", "3.11", "3.12"]
35+ python-version : ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13", "3.14" ]
3736 steps :
3837 - name : Checkout repository
3938 uses : actions/checkout@v4
4039 - name : Setup Python ${{ matrix.python-version }}
4140 uses : actions/setup-python@v5
4241 with :
4342 python-version : ${{ matrix.python-version }}
44- - name : Install Poetry
45- uses : snok/install-poetry@v1
43+ - name : Install uv
44+ 4645 with :
47- virtualenvs-create : true
48- virtualenvs-in-project : true
49- installer-parallel : true
50- - name : Load Cached Venv
51- id : cached-poetry-dependencies
52- uses : actions/cache@v3
53- with :
54- path : .venv
55- key : v1-venv-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }}
56- - name : Install Python Dependencies
57- run : poetry install --no-interaction --no-root
46+ python-version : ${{ inputs.python-version }}
47+ activate-environment : true
48+ cache-dependency-glob : " **/uv.lock"
49+ - name : Install project
50+ run : uv pip install .
5851 - name : Set pythonpath
5952 run : echo "PYTHONPATH=$PWD" >> $GITHUB_ENV
6053 - name : Install library
61- run : poetry run maturin develop
54+ run : uv run maturin develop
6255 - name : Test
63- run : poetry run pytest
56+ run : uv run pytest
6457 rust_tests :
6558 name : " Rust Tests"
6659 runs-on : ubuntu-latest
@@ -83,14 +76,14 @@ jobs:
8376 run : CARGO_INCREMENTAL=0 RUSTFLAGS='-Cinstrument-coverage' LLVM_PROFILE_FILE='cargo-test-%p-%m.profraw' cargo test
8477 - name : Generate Coverage Report
8578 run : mkdir coverage && grcov . --binary-path ./target/debug/deps/ -s . -t lcov --branch --ignore-not-existing --ignore '../*' --ignore "/*" -o coverage.lcov
86- - uses : actions/upload-artifact@v3
79+ - uses : actions/upload-artifact@v4.6.2
8780 with :
8881 name : coverage-lcov
8982 path : coverage.lcov
9083 sonar :
9184 name : " Sonar"
9285 needs :
93- - pyton_tests
86+ - python_tests
9487 - rust_tests
9588 - validate
9689 if : github.event.pull_request.head.repo.fork == false
0 commit comments