deps: update pandas requirement from >=2.2.3 to >=2.3.3 (#207) #472
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: Unit tests | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| workflow_dispatch: {} | |
| env: | |
| CARGO_TERM_COLOR: always | |
| CARGO_INCREMENTAL: 0 | |
| RUSTFLAGS: "--cfg=ci_run" | |
| CI: true # insta snapshots behave differently on ci | |
| SCCACHE_GHA_ENABLED: "true" | |
| RUSTC_WRAPPER: "sccache" | |
| LLVM_VERSION: "14.0" | |
| LLVM_FEATURE_NAME: "14-0" | |
| jobs: | |
| check-rs: | |
| name: Checks (Rust) | |
| runs-on: ubuntu-latest | |
| env: | |
| # Fail on rust compiler warnings. | |
| RUSTFLAGS: -D warnings | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: mozilla-actions/sccache-action@v0.0.11 | |
| - name: Install stable toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| with: | |
| components: rustfmt, clippy | |
| - name: Check formatting | |
| run: cargo fmt -- --check | |
| - name: Install LLVM and Clang | |
| uses: KyleMayes/install-llvm-action@v2 | |
| with: | |
| version: ${{ env.LLVM_VERSION }} | |
| - name: Run clippy | |
| run: cargo clippy --all-targets --all-features --workspace -- -D warnings | |
| - name: Build docs | |
| run: cargo doc --no-deps --all-features --workspace | |
| env: | |
| RUSTDOCFLAGS: "-Dwarnings" | |
| test-rs: | |
| runs-on: ubuntu-latest | |
| name: Tests (Rust stable, all features) | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: mozilla-actions/sccache-action@v0.0.11 | |
| - id: toolchain | |
| uses: dtolnay/rust-toolchain@master | |
| with: | |
| toolchain: "stable" | |
| - name: Configure default rust toolchain | |
| run: rustup override set ${{steps.toolchain.outputs.name}} | |
| - name: Install LLVM and Clang | |
| uses: KyleMayes/install-llvm-action@v2 | |
| with: | |
| version: ${{ env.LLVM_VERSION }} | |
| - name: Build with all features | |
| run: cargo test --verbose --workspace --all-features --no-run | |
| - name: Tests with all features | |
| run: cargo test --verbose --workspace --all-features | |
| check-py: | |
| runs-on: ubuntu-latest | |
| name: Checks (Python ${{ matrix.python-version }}) | |
| strategy: | |
| matrix: | |
| python-version: ["3.11"] | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: mozilla-actions/sccache-action@v0.0.11 | |
| - name: Install stable toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Set up uv | |
| uses: astral-sh/setup-uv@v7 | |
| with: | |
| enable-cache: true | |
| - name: Install Python ${{ matrix.python-version }} | |
| run: uv python install ${{ matrix.python-version }} | |
| - name: Setup dependencies | |
| run: uv sync --python ${{ matrix.python-version }} | |
| - name: Build Python extension | |
| run: uv run maturin develop -m zixy-py/Cargo.toml | |
| - name: Ruff | |
| working-directory: zixy-py | |
| run: | | |
| uv run ruff format --check | |
| uv run ruff check | |
| - name: MyPy | |
| working-directory: zixy-py | |
| run: | | |
| uv run mypy zixy | |
| tests-py: | |
| runs-on: ubuntu-latest | |
| name: Tests (Python ${{ matrix.python-version }}) | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| python-version: ["3.10", "3.11", "3.12", "3.13"] | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - uses: mozilla-actions/sccache-action@v0.0.11 | |
| - name: Install stable toolchain | |
| uses: dtolnay/rust-toolchain@stable | |
| - name: Set up uv | |
| uses: astral-sh/setup-uv@v7 | |
| with: | |
| enable-cache: true | |
| - name: Install Python ${{ matrix.python-version }} | |
| run: uv python install ${{ matrix.python-version }} | |
| - name: Setup dependencies | |
| run: uv sync --python ${{ matrix.python-version }} | |
| - name: Build Python extension | |
| run: uv run maturin develop -m zixy-py/Cargo.toml | |
| - name: Run python tests | |
| run: uv run pytest --cov=./ --cov-report=xml | |
| - name: Upload coverage report artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: coverage-python-${{ matrix.python-version }} | |
| path: ./coverage.xml |