|
40 | 40 | "3.13", |
41 | 41 | "3.14", |
42 | 42 | "3.14t", |
| 43 | + "3.15", |
| 44 | + "3.15t", |
43 | 45 | "pypy-3.11", |
44 | 46 | ] |
45 | 47 | platform: |
@@ -85,24 +87,35 @@ jobs: |
85 | 87 | with: |
86 | 88 | python-version: ${{ matrix.python-version }} |
87 | 89 | architecture: ${{ matrix.platform.python-architecture }} |
| 90 | + allow-prereleases: ${{ startsWith(matrix.python-version, '3.15') }} # remove once 3.15 releases |
| 91 | + - name: Set up UV |
| 92 | + uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b # v8.1.0 |
88 | 93 | - name: Install Rust |
89 | 94 | uses: dtolnay/rust-toolchain@stable |
90 | 95 | with: |
91 | 96 | targets: ${{ matrix.platform.rust-target }} |
92 | 97 | - name: Test |
93 | | - run: | |
94 | | - pip install "numpy" ml_dtypes |
95 | | - cargo test --all-features |
96 | 98 | # Not on PyPy, because no embedding API |
97 | 99 | if: ${{ !startsWith(matrix.python-version, 'pypy') }} |
| 100 | + run: | |
| 101 | + uv pip install "numpy" ml_dtypes |
| 102 | + cargo test --all-features |
| 103 | + - name: Test abi3t |
| 104 | + if: ${{ matrix.python-version == '3.15t' }} |
| 105 | + run: | |
| 106 | + cargo test --all-features -F pyo3/abi3t |
98 | 107 | - name: Test example |
99 | 108 | run: | |
100 | | - pip install nox |
101 | | - nox -f examples/simple/noxfile.py |
| 109 | + uvx nox -f examples/simple/noxfile.py |
102 | 110 | env: |
103 | 111 | CARGO_TERM_VERBOSE: true |
104 | 112 | CARGO_BUILD_TARGET: ${{ matrix.platform.rust-target }} |
105 | 113 | RUST_BACKTRACE: 1 |
| 114 | + UV_SYSTEM_PYTHON: true |
| 115 | + UV_PRERELEASE: ${{ startsWith(matrix.python-version, '3.15') && 'allow' || 'disallow' }} # remove once numpy 2.6 releases |
| 116 | + UV_NO_BUILD_PACKAGE: "numpy" |
| 117 | + UV_INDEX: ${{ startsWith(matrix.python-version, '3.15') && 'https://pypi.anaconda.org/scientific-python-nightly-wheels/simple/' || '' }} # remove once numpy 2.6 releases |
| 118 | + NOX_DEFAULT_VENV_BACKEND: "uv" |
106 | 119 |
|
107 | 120 | test-numpy1: |
108 | 121 | name: python${{ matrix.python-version }}-${{ matrix.platform.python-architecture }} ${{ matrix.platform.os }} numpy1 |
|
0 commit comments