[project]
name = "openap"
version = "2.4"
description = "Open Aircraft Performance Model (OpenAP) in Python"
authors = [{ name = "Junzi Sun", email = "[email protected]" }]
license = { text = "GNU LGPL v3" }
readme = "README.md"
classifiers = [
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Intended Audience :: Science/Research",
"Topic :: Software Development :: Libraries :: Python Modules",
"License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)",
"Programming Language :: Python :: 3",
]
requires-python = ">=3.11"
dependencies = [
"numpy>=2.1",
"scipy>=1.14",
"pandas>=2.0",
"pyyaml>=6.0",
"matplotlib>=3.8",
]
[project.urls]
homepage = "https://openap.dev"
repository = "https://github.com/junzis/openap"
issues = "https://github.com/junzis/openap/issues"
[project.optional-dependencies]
casadi = ["casadi>=3.6"]
jax = ["jax>=0.4"]
all = ["casadi>=3.6", "jax>=0.4"]
[dependency-groups]
dev = [
"ruff>=0.8.0",
"ipykernel>=6.9.0",
"pytest>=7.2.0",
"pytest-cov>=7.0.0",
"casadi>=3.7.2",
"jax>=0.8.2",
]
[tool.ruff]
target-version = "py311"
[tool.ruff.lint]
select = [
"E",
"W",
"F",
"I",
"NPY",
"DTZ",
"RUF",
]
ignore = [
"E402",
"RUF022",
]
[tool.ruff.lint.isort]
known-first-party = ["numpy", "pandas", "pyproj"]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"