splotrs 0.1.2

Dependency-light sPlot fits backed by Rust and Ganesh
Documentation
[build-system]
requires = ["maturin>=1.14,<2.0"]
build-backend = "maturin"

[project]
name = "splotrs"
description = "Dependency-light sPlot fits backed by Rust and Ganesh"
authors = [{ name = "Nathaniel Dene Hoffman", email = "nhoffman@wm.edu" }]
license = "MIT OR Apache-2.0"
license-files = ["LICENSE-MIT", "LICENSE-APACHE"]
readme = "README.md"
requires-python = ">=3.10"
dependencies = ["numpy>=1.23"]
keywords = ["statistics", "splot", "fitting", "physics", "data analysis"]
classifiers = [
    "Development Status :: 3 - Alpha",
    "Intended Audience :: Science/Research",
    "Operating System :: OS Independent",
    "Programming Language :: Python :: 3",
    "Programming Language :: Python :: 3.10",
    "Programming Language :: Python :: 3.11",
    "Programming Language :: Python :: 3.12",
    "Programming Language :: Python :: 3.13",
    "Programming Language :: Python :: 3.14",
    "Programming Language :: Rust",
    "Programming Language :: Python :: Implementation :: CPython",
    "Programming Language :: Python :: Implementation :: PyPy",
]
dynamic = ["version"]

[project.urls]
Homepage = "https://github.com/denehoffman/splotrs"
Documentation = "https://docs.rs/splotrs"
Repository = "https://github.com/denehoffman/splotrs"
Issues = "https://github.com/denehoffman/splotrs/issues"

[dependency-groups]
dev = [
    "matplotlib>=3.8",
    "maturin>=1.14,<2.0",
    "numpy",
    "pytest",
    "ruff",
    "ty",
    "yamloom",
]

[tool.maturin]
module-name = "splotrs"

[tool.pytest.ini_options]
testpaths = ["python/tests"]

[tool.ruff]
exclude = [
    ".bzr",
    ".direnv",
    ".eggs",
    ".git",
    ".git-rewrite",
    ".hg",
    ".ipynb_checkpoints",
    ".mypy_cache",
    ".nox",
    ".pants.d",
    ".pyenv",
    ".pytest_cache",
    ".pytype",
    ".ruff_cache",
    ".svn",
    ".tox",
    ".venv",
    ".vscode",
    "__pypackages__",
    "_build",
    "buck-out",
    "build",
    "dist",
    "node_modules",
    "site-packages",
    "venv",
]

line-length = 100
indent-width = 4

target-version = "py310"

[tool.ruff.lint]
ignore = ["S101"]
fixable = ["ALL"]

[tool.ruff.format]
quote-style = "single"
indent-style = "space"

[tool.uv]
cache-keys = [
    { file = "pyproject.toml" },
    { file = "Cargo.toml" },
    { file = "Cargo.lock" },
    { file = "src/**/*.rs" },
]
config-settings = { build-args = "--generate-stubs" }