python-control/pyproject.toml

65 lines
1.6 KiB
TOML

[build-system]
requires = [
"setuptools",
"setuptools-scm",
"wheel"
]
build-backend = "setuptools.build_meta"
[project]
name = "control"
description = "Python Control Systems Library"
authors = [{name = "Python Control Developers", email = "python-control-developers@lists.sourceforge.net"}]
license = {text = "BSD-3-Clause"}
readme = "README.rst"
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Science/Research",
"Intended Audience :: Developers",
"License :: OSI Approved :: BSD License",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Software Development",
"Topic :: Scientific/Engineering",
"Operating System :: Microsoft :: Windows",
"Operating System :: POSIX",
"Operating System :: Unix",
"Operating System :: MacOS",
]
requires-python = ">=3.10"
dependencies = [
"numpy>=1.23",
"scipy>=1.8",
"matplotlib>=3.6",
]
dynamic = ["version"]
[tool.setuptools]
packages = ["control"]
[project.optional-dependencies]
test = ["pytest", "pytest-timeout", "ruff"]
slycot = [ "slycot>=0.4.0" ]
cvxopt = [ "cvxopt>=1.2.0" ]
[project.urls]
homepage = "https://python-control.org"
source = "https://github.com/python-control/python-control"
[tool.setuptools_scm]
write_to = "control/_version.py"
[tool.pytest.ini_options]
addopts = "-ra"
filterwarnings = [
"error:.*matrix subclass:PendingDeprecationWarning",
]
[tool.ruff.lint]
select = ['D', 'E', 'W', 'DOC']
[tool.ruff.lint.pydocstyle]
convention = 'numpy'