[build-system]
requires = ["maturin>=1.0"]
build-backend = "maturin"
[project]
name = "survival"
version = "1.2.13"
description = "A high-performance survival analysis library written in Rust with Python bindings"
readme = "README.md"
license = { text = "MIT" }
requires-python = ">=3.11"
authors = [{ name = "Cameron Lyons", email = "cameron.lyons2@gmail.com" }]
maintainers = [{ name = "Cameron Lyons", email = "cameron.lyons2@gmail.com" }]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Science/Research",
"Intended Audience :: Healthcare Industry",
"License :: OSI Approved :: MIT License",
"Operating System :: POSIX :: Linux",
"Operating System :: MacOS",
"Operating System :: Microsoft :: Windows",
"Programming Language :: Python :: 3",
"Programming Language :: Rust",
"Topic :: Scientific/Engineering :: Medical Science Apps.",
"Topic :: Scientific/Engineering :: Mathematics",
"Typing :: Typed",
]
keywords = [
"survival-analysis",
"kaplan-meier",
"cox-regression",
"statistics",
"biostatistics",
"rust",
]
dependencies = [
"numpy>=1.20.0",
]
[project.urls]
Repository = "https://github.com/Cameron-Lyons/survival"
Documentation = "https://github.com/Cameron-Lyons/survival#readme"
Issues = "https://github.com/Cameron-Lyons/survival/issues"
[project.optional-dependencies]
dev = [
"pre-commit==4.5.1",
"pytest==9.0.2",
"numpy==2.4.2",
]
test = [
"pytest==9.0.2",
"numpy==2.4.2",
"pandas==3.0.1",
"polars==1.38.1",
]
sklearn = [
"scikit-learn>=1.0.0",
]
[tool.maturin]
features = ["pyo3/extension-module"]
module-name = "survival._survival"
python-source = "python"
strip = true
[tool.ruff]
line-length = 100
target-version = "py314"
[tool.ruff.lint]
select = ["E", "F", "I", "W"]
ignore = ["E501"]
[tool.ruff.lint.per-file-ignores]
"test/*.py" = ["S101", "PT017", "S110", "S603"]