Skip to content

chore(deps): autoupdate uv.lock #1036

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 15 commits into from
Jun 23, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -62,7 +62,7 @@ benchmark = [
# Run unit tests with coverage assessment
test = [
"coreax[benchmark]",
"beartype>=0.19, !=0.20.1, !=0.20.2",
"beartype>=0.19",
"pytest>=8",
"pytest-cov>=6",
"pytest-rerunfailures>=15",
75 changes: 39 additions & 36 deletions requirements-doc.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# This file was autogenerated by uv via the following command:
# uv export --frozen --format requirements-txt --no-hashes --no-dev --no-editable --extra doc --output-file requirements-doc.txt
.
absl-py==2.2.2
absl-py==2.3.0
# via
# chex
# optax
@@ -29,7 +29,7 @@ beautifulsoup4==4.13.4
# sphinx-toolbox
cachecontrol==0.14.3
# via sphinx-toolbox
certifi==2025.4.26
certifi==2025.6.15
# via
# requests
# sphinx-prompt
@@ -62,16 +62,14 @@ domdf-python-tools==3.10.0
# sphinx-toolbox
equinox==0.11.10 ; python_full_version < '3.10'
# via coreax
equinox==0.12.1 ; python_full_version >= '3.10'
equinox==0.12.2 ; python_full_version >= '3.10'
# via coreax
etils==1.5.2 ; python_full_version < '3.10'
# via
# optax
# orbax-checkpoint
etils==1.12.2 ; python_full_version >= '3.10'
# via
# optax
# orbax-checkpoint
# via orbax-checkpoint
filelock==3.18.0
# via
# cachecontrol
@@ -80,7 +78,7 @@ flax==0.8.5 ; python_full_version < '3.10'
# via coreax
flax==0.10.6 ; python_full_version >= '3.10'
# via coreax
fsspec==2025.3.2
fsspec==2025.5.1
# via etils
furo==2024.8.6
# via coreax
@@ -98,6 +96,7 @@ imagesize==1.4.1
importlib-metadata==8.7.0 ; python_full_version < '3.10'
# via
# jax
# pybtex
# sphinx
# sphinxcontrib-bibtex
importlib-resources==6.5.2
@@ -111,7 +110,7 @@ jax==0.4.30 ; python_full_version < '3.10'
# jaxopt
# optax
# orbax-checkpoint
jax==0.6.0 ; python_full_version >= '3.10'
jax==0.6.2 ; python_full_version >= '3.10'
# via
# chex
# coreax
@@ -127,7 +126,7 @@ jaxlib==0.4.30 ; python_full_version < '3.10'
# jaxopt
# optax
# orbax-checkpoint
jaxlib==0.6.0 ; python_full_version >= '3.10'
jaxlib==0.6.2 ; python_full_version >= '3.10'
# via
# chex
# jax
@@ -147,13 +146,13 @@ jinja2==3.1.6
# via
# sphinx
# sphinx-jinja2-compat
joblib==1.5.0
joblib==1.5.1
# via scikit-learn
jsonschema==4.23.0
jsonschema==4.24.0
# via sphobjinv
jsonschema-specifications==2025.4.1
# via jsonschema
latexcodec==3.0.0
latexcodec==3.0.1
# via pybtex
markdown-it-py==3.0.0
# via rich
@@ -170,7 +169,7 @@ ml-dtypes==0.5.1
# tensorstore
more-itertools==10.7.0
# via cssutils
msgpack==1.1.0
msgpack==1.1.1
# via
# cachecontrol
# flax
@@ -192,7 +191,7 @@ numpy==2.0.2 ; python_full_version < '3.10'
# scikit-learn
# scipy
# tensorstore
numpy==2.2.5 ; python_full_version >= '3.10'
numpy==2.2.6 ; python_full_version >= '3.10'
# via
# chex
# flax
@@ -208,27 +207,31 @@ numpy==2.2.5 ; python_full_version >= '3.10'
# treescope
opt-einsum==3.4.0
# via jax
optax==0.2.4
optax==0.2.4 ; python_full_version < '3.10'
# via
# coreax
# flax
optax==0.2.5 ; python_full_version >= '3.10'
# via
# coreax
# flax
orbax-checkpoint==0.6.4 ; python_full_version < '3.10'
# via flax
orbax-checkpoint==0.11.13 ; python_full_version >= '3.10'
orbax-checkpoint==0.11.16 ; python_full_version >= '3.10'
# via flax
packaging==25.0
# via sphinx
platformdirs==4.3.8
# via apeye
protobuf==6.30.2
protobuf==6.31.1
# via orbax-checkpoint
pybtex==0.24.0
pybtex==0.25.0
# via
# pybtex-docutils
# sphinxcontrib-bibtex
pybtex-docutils==1.0.3
# via sphinxcontrib-bibtex
pygments==2.19.1
pygments==2.19.2
# via
# furo
# rich
@@ -244,7 +247,7 @@ referencing==0.36.2
# via
# jsonschema
# jsonschema-specifications
requests==2.32.3
requests==2.32.4
# via
# apeye
# cachecontrol
@@ -253,15 +256,17 @@ rich==14.0.0
# via flax
roman-numerals-py==3.1.0 ; python_full_version >= '3.11'
# via sphinx
rpds-py==0.24.0
rpds-py==0.25.1
# via
# jsonschema
# referencing
ruamel-yaml==0.18.10
ruamel-yaml==0.18.14
# via sphinx-toolbox
ruamel-yaml-clib==0.2.12 ; python_full_version < '3.13' and platform_python_implementation == 'CPython'
ruamel-yaml-clib==0.2.12 ; python_full_version < '3.14' and platform_python_implementation == 'CPython'
# via ruamel-yaml
scikit-learn==1.6.1
scikit-learn==1.6.1 ; python_full_version < '3.10'
# via coreax
scikit-learn==1.7.0 ; python_full_version >= '3.10'
# via coreax
scipy==1.13.1 ; python_full_version < '3.10'
# via
@@ -275,16 +280,14 @@ scipy==1.15.3 ; python_full_version >= '3.10'
# jaxlib
# jaxopt
# scikit-learn
setuptools==80.4.0 ; python_full_version >= '3.12'
setuptools==80.9.0
# via
# chex
# sphinxcontrib-bibtex
simplejson==3.20.1 ; python_full_version >= '3.10'
# via orbax-checkpoint
six==1.17.0
# via
# html5lib
# pybtex
# via html5lib
snowballstemmer==3.0.1
# via sphinx
soupsieve==2.7
@@ -344,11 +347,11 @@ sphinx-prompt==1.9.0 ; python_full_version >= '3.10'
# via sphinx-toolbox
sphinx-tabs==3.4.5
# via sphinx-toolbox
sphinx-toolbox==3.10.0
sphinx-toolbox==4.0.0
# via coreax
sphinxcontrib-applehelp==2.0.0
# via sphinx
sphinxcontrib-bibtex==2.6.3
sphinxcontrib-bibtex==2.6.4
# via coreax
sphinxcontrib-devhelp==2.0.0
# via sphinx
@@ -360,7 +363,7 @@ sphinxcontrib-qthelp==2.0.0
# via sphinx
sphinxcontrib-serializinghtml==2.0.0
# via sphinx
sphobjinv==2.3.1.2
sphobjinv==2.3.1.3
# via coreax
standard-imghdr==3.10.14 ; python_full_version >= '3.13'
# via sphinx-jinja2-compat
@@ -370,7 +373,7 @@ tensorstore==0.1.69 ; python_full_version < '3.10'
# via
# flax
# orbax-checkpoint
tensorstore==0.1.74 ; python_full_version >= '3.10'
tensorstore==0.1.75 ; python_full_version >= '3.10'
# via
# flax
# orbax-checkpoint
@@ -384,7 +387,7 @@ tqdm==4.67.1
# via coreax
treescope==0.1.9 ; python_full_version >= '3.10'
# via flax
typing-extensions==4.13.2
typing-extensions==4.14.0
# via
# beautifulsoup4
# chex
@@ -398,17 +401,17 @@ typing-extensions==4.13.2
# referencing
# rich
# sphinx-toolbox
urllib3==2.4.0
urllib3==2.5.0
# via
# requests
# sphinx-prompt
wadler-lindig==0.1.5 ; python_full_version >= '3.10'
wadler-lindig==0.1.7 ; python_full_version >= '3.10'
# via
# equinox
# jaxtyping
webencodings==0.5.1
# via html5lib
zipp==3.21.0
zipp==3.23.0
# via
# etils
# importlib-metadata
6 changes: 3 additions & 3 deletions tests/unit/test_data.py
Original file line number Diff line number Diff line change
@@ -207,13 +207,13 @@ def test_jaxtyping_compatibility(
valid_shape = " ".join(str(dim) for dim in data.shape)
invalid_shape = " ".join(str(dim + 1) for dim in data.shape)

assert is_bearable(data, Shaped[coreax.data.Data, valid_shape])
assert is_bearable(data, Shaped[coreax.data.Data, valid_shape]) # pyright: ignore reportArgumentType see #1007
assert is_bearable(data, valid_jax_type[coreax.data.Data, valid_shape])
assert not is_bearable(data, invalid_jax_type[coreax.data.Data, invalid_shape])
assert not is_bearable(data, Shaped[coreax.data.Data, invalid_shape])
assert not is_bearable(data, Shaped[coreax.data.Data, invalid_shape]) # pyright: ignore reportArgumentType see #1007
if not isinstance(data, coreax.data.SupervisedData):
incorrect_instance_type = Shaped[coreax.data.SupervisedData, "..."]
assert not is_bearable(data, incorrect_instance_type)
assert not is_bearable(data, incorrect_instance_type) # pyright: ignore reportArgumentType see #1007


class TestSupervisedData:
2 changes: 2 additions & 0 deletions tests/unit/test_kernels.py
Original file line number Diff line number Diff line change
@@ -69,10 +69,12 @@ class _Problem(NamedTuple):
class BaseKernelTest(ABC, Generic[_ScalarValuedKernel]):
"""Test the ``compute`` methods of a ``coreax.kernels.ScalarValuedKernel``."""

@pytest.fixture
@abstractmethod
def kernel(self) -> _ScalarValuedKernel:
"""Abstract pytest fixture which initialises a kernel with parameters fixed."""

@pytest.fixture
@abstractmethod
def problem(
self, request: pytest.FixtureRequest, kernel: _ScalarValuedKernel
2 changes: 2 additions & 0 deletions tests/unit/test_least_squares.py
Original file line number Diff line number Diff line change
@@ -58,10 +58,12 @@ class _InverseProblem(NamedTuple):
class InverseApproximationTest(ABC, Generic[_RegularisedLeastSquaresSolver]):
"""Tests related to inverting kernel gramians via methods in least_squares.py."""

@pytest.fixture
@abstractmethod
def approximator(self) -> _RegularisedLeastSquaresSolver:
"""Abstract pytest fixture which initialises a least-squares approximator."""

@pytest.fixture
@abstractmethod
def problem(self) -> _InverseProblem:
"""Abstract fixture which returns a problem for least-squares approximation."""
1 change: 1 addition & 0 deletions tests/unit/test_solvers.py
Original file line number Diff line number Diff line change
@@ -123,6 +123,7 @@ class SolverTest:
random_key: KeyArrayLike = jr.key(2024)
shape: tuple[int, int] = (128, 10)

@pytest.fixture
@abstractmethod
def solver_factory(self, request: pytest.FixtureRequest) -> jtu.Partial:
"""
1 change: 1 addition & 0 deletions tests/unit/test_weights.py
Original file line number Diff line number Diff line change
@@ -58,6 +58,7 @@ class BaseWeightsOptimiserTest(ABC, Generic[_Data]):
data_shape: tuple = (100, 2)
coreset_size: int = data_shape[0] // 10

@pytest.fixture
@abstractmethod
def problem(self) -> _Problem:
"""Abstract pytest fixture which returns a weight optimisation problem."""
Loading