[project]
name = "symode"
version = "0.2.0"
description = "symODE is a tool for symbolic and numerical analysis of ordinary differential equations."
authors = [
    {name = "Erik T. K. Mau"}
]
license = {text = "MIT"}
readme = "README.md"
requires-python = ">=3.10"
dependencies = [
    "sympy>=1.13.3,<2.0.0",
    "numpy>=2.0.0,<3.0.0",
    "scipy>=1.15.2,<2.0.0",
    "numba>=0.61.0,<1.0.0"
]


[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"

[project.scripts]
autofix = "scripts:autofix"
test = "scripts:test"
notebooks = "scripts:notebooks"
notebooks-clear-output = "scripts:notebooks_clear_outputs"
typecheck = "scripts:typecheck"
all-checks = "scripts:all_checks"

[dependency-groups]
dev = [
    "ruff",
    "mypy",
    "pytest",
    "scipy-stubs"
]
interactive = [
    "jupyter",
    "matplotlib"
]

[[tool.mypy.overrides]]
module = "numba.*"
ignore_missing_imports = true

[[tool.mypy.overrides]]
module = "sympy.*"
ignore_missing_imports = true
