click~=8.1
dataclasses-json~=0.6
dataclasses-jsonschema~=2.16
networkx~=3.1
numpy>=2.0
scipy~=1.13
sympy~=1.13
ts-type~=0.2
simpleeval~=0.9

[:platform_system != "Emscripten"]
diffrax~=0.7.2
equinox~=0.13.6
fmpy~=0.3.19
jax~=0.9.1
jaxlib~=0.9.1
jaxtyping~=0.3.9
optax~=0.2.8
brax~=0.14.1
jaxopt~=0.8.5
requests~=2.32
cloudpickle~=3.0
evosax~=0.1.6
opencv-python~=4.13.0

[:platform_system == "Emscripten"]
jaxlite

[:python_version < "3.11"]
StrEnum~=0.4.15

[all]
control~=0.9.4
cyipopt~=1.3.0
osqp<2,>=0.6.5
pandas~=2.2
pysindy~=1.7.5
pytwin~=0.6.0
sympy~=1.11.1
tensorflow~=2.16.1
torch~=2.3
mujoco
mujoco-mjx
evosax~=0.1.6
brax~=0.10.4
matplotlib~=3.9
opencv-python-headless

[all:platform_machine == "x86_64"]
nlopt~=2.7

[fmu]
pythonfmu>=0.6
fmpy>=0.3.20

[mcp]
mcp>=1.0.0

[nmpc]
cyipopt~=1.3.0
osqp<2,>=0.6.5

[recommended]
casadi~=3.6
roboticstoolbox-python~=1.1
scikit-learn~=1.3
spatialmath-python~=1.1
sysidentpy~=0.3

[recommended:platform_system == "Linux"]
pybamm~=23.9

[safe]
control~=0.9.4
pandas~=2.2
pysindy~=1.7.5
pytwin~=0.6.0
sympy~=1.11.1
tensorflow~=2.16.1
torch~=2.3
opencv-python-headless
evosax~=0.1.6
matplotlib~=3.9

[safe:platform_machine == "x86_64"]
nlopt~=2.7

[streaming-export]
h5py>=3.0
zarr>=2.10

[test]
pytest
pytest-asyncio
pytest-cov
pytest-xdist
pytest-mock
pytest-retry
pytest-timeout
hypothesis
toml
matplotlib~=3.9
control
pandas~=2.2

[test-full]
jaxonomy[all,recommended,test]
nbval
gplearn
onnx
onnxruntime
jaxonnxruntime
lightning
mediapy
ipywidgets
ipympl

[units]
pint>=0.20

[uq-qmc]
scipy>=1.7
