3131 steps :
3232 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
3333 - name : Set up Python 3.11
34- uses : actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3 .0
34+ uses : actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4 .0
3535 with :
3636 python-version : 3.11
3737 - run : python -m pip install pre-commit
@@ -62,22 +62,13 @@ jobs:
6262 steps :
6363 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
6464 - name : Set up Python ${{ matrix.python-version }}
65- uses : actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3 .0
65+ uses : actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4 .0
6666 with :
6767 python-version : ${{ matrix.python-version }}
68- - name : Get pip cache dir
69- id : pip-cache
70- run : |
71- python -m pip install --upgrade pip wheel
72- echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
73- - name : pip cache
74- uses : actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
75- with :
76- path : ${{ steps.pip-cache.outputs.dir }}
77- key : ${{ runner.os }}-py${{ matrix.python-version }}-pip-${{ hashFiles('**/setup.py', '**/requirements.txt', '**/test-requirements.txt') }}
7868 - name : Install dependencies
7969 run : |
80- pip install .[minimum-jaxlib] -r build/test-requirements.txt
70+ pip install uv
71+ uv pip install --system .[minimum-jaxlib] -r build/test-requirements.txt
8172
8273 - name : Run tests
8374 env :
@@ -109,30 +100,21 @@ jobs:
109100 steps :
110101 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
111102 - name : Set up Python ${{ matrix.python-version }}
112- uses : actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3 .0
103+ uses : actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4 .0
113104 with :
114105 python-version : ${{ matrix.python-version }}
115- - name : Get pip cache dir
116- id : pip-cache
117- run : |
118- python -m pip install --upgrade pip wheel
119- echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
120- - name : pip cache
121- uses : actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
122- with :
123- path : ${{ steps.pip-cache.outputs.dir }}
124- key : ${{ runner.os }}-pip-docs-${{ hashFiles('**/setup.py', '**/requirements.txt', '**/test-requirements.txt') }}
125106 - name : Install dependencies
126107 run : |
127- pip install -r docs/requirements.txt
108+ pip install uv
109+ uv pip install --system -r docs/requirements.txt
128110 - name : Test documentation
129111 env :
130112 XLA_FLAGS : " --xla_force_host_platform_device_count=8"
131113 JAX_TRACEBACK_FILTERING : " off"
132114 JAX_ARRAY : 1
133115 PY_COLORS : 1
134116 run : |
135- pytest -n auto --tb=short --doctest-glob='*.md' --doctest-glob='*.rst' docs --doctest-continue-on-failure --ignore=docs/multi_process.md
117+ pytest -n auto --tb=short --doctest-glob='*.md' --doctest-glob='*.rst' docs --doctest-continue-on-failure --ignore=docs/multi_process.md
136118 pytest -n auto --tb=short --doctest-modules jax --ignore=jax/config.py --ignore=jax/experimental/jax2tf --ignore=jax/_src/lib/mlir --ignore=jax/_src/lib/triton.py --ignore=jax/_src/lib/mosaic_gpu.py --ignore=jax/interpreters/mlir.py --ignore=jax/experimental/array_serialization --ignore=jax/collect_profile.py --ignore=jax/_src/tpu_custom_call.py --ignore=jax/experimental/mosaic --ignore=jax/experimental/pallas --ignore=jax/_src/pallas --ignore=jax/lib/xla_extension.py
137119
138120
@@ -146,22 +128,13 @@ jobs:
146128 steps :
147129 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
148130 - name : Set up Python ${{ matrix.python-version }}
149- uses : actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3 .0
131+ uses : actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4 .0
150132 with :
151133 python-version : ${{ matrix.python-version }}
152- - name : Get pip cache dir
153- id : pip-cache
154- run : |
155- python -m pip install --upgrade pip wheel
156- echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
157- - name : pip cache
158- uses : actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
159- with :
160- path : ${{ steps.pip-cache.outputs.dir }}
161- key : ${{ runner.os }}-pip-docs-${{ hashFiles('**/setup.py', '**/requirements.txt', '**/test-requirements.txt') }}
162134 - name : Install dependencies
163135 run : |
164- pip install -r docs/requirements.txt
136+ pip install uv
137+ uv pip install --system -r docs/requirements.txt
165138 - name : Render documentation
166139 run : |
167140 sphinx-build -j auto --color -W --keep-going -b html -D nb_execution_mode=off docs docs/build/html
@@ -181,22 +154,13 @@ jobs:
181154 steps :
182155 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
183156 - name : Set up Python ${{ matrix.python-version }}
184- uses : actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3 .0
157+ uses : actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4 .0
185158 with :
186159 python-version : ${{ matrix.python-version }}
187- - name : Get pip cache dir
188- id : pip-cache
189- run : |
190- python -m pip install --upgrade pip wheel
191- echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
192- - name : pip cache
193- uses : actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
194- with :
195- path : ${{ steps.pip-cache.outputs.dir }}
196- key : ${{ runner.os }}-py${{ matrix.python-version }}-pip-${{ hashFiles('**/setup.py', '**/requirements.txt', '**/test-requirements.txt') }}
197160 - name : Install dependencies
198161 run : |
199- pip install .[minimum-jaxlib] tensorflow -r build/test-requirements.txt
162+ pip install uv
163+ uv pip install --system .[minimum-jaxlib] tensorflow -r build/test-requirements.txt
200164
201165 - name : Run tests
202166 env :
@@ -220,23 +184,15 @@ jobs:
220184 steps :
221185 - uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
222186 - name : Set up Python
223- uses : actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5.3 .0
187+ uses : actions/setup-python@42375524e23c412d93fb67b49958b491fce71c38 # v5.4 .0
224188 with :
225189 python-version : 3.12
226- - name : Get pip cache dir
227- id : pip-cache
228- run : |
229- python -m pip install --upgrade pip wheel
230- echo "dir=$(pip cache dir)" >> $GITHUB_OUTPUT
231- - name : pip cache
232- uses : actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
233- with :
234- path : ${{ steps.pip-cache.outputs.dir }}
235- key : ${{ runner.os }}-pip-ffi-examples-${{ hashFiles('**/setup.py', '**/requirements.txt', '**/test-requirements.txt', 'examples/**/pyproject.toml') }}
236190 - name : Install JAX
237- run : pip install .
191+ run : |
192+ pip install uv
193+ uv pip install --system .
238194 - name : Build and install example project
239- run : python -m pip install -v ./examples/ffi[test]
195+ run : uv pip install --system ./examples/ffi[test]
240196 env :
241197 # We test building using GCC instead of clang. All other JAX builds use
242198 # clang, but it is useful to make sure that FFI users can compile using
0 commit comments