meanas/pyproject.toml

99 lines
2.2 KiB
TOML
Raw Normal View History

2022-08-30 23:49:39 -07:00
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[project]
name = "meanas"
description = "Electromagnetic simulation tools"
readme = "README.md"
license = { file = "LICENSE.md" }
authors = [
{ name="Jan Petykiewicz", email="jan@mpxd.net" },
]
homepage = "https://mpxd.net/code/jan/meanas"
repository = "https://mpxd.net/code/jan/meanas"
keywords = [
"electromagnetic",
"photonics",
"simulation",
"FDTD",
"FDFD",
"finite",
"difference",
"Bloch",
"EME",
"mode",
"solver",
]
classifiers = [
"Programming Language :: Python :: 3",
"Development Status :: 4 - Beta",
"Intended Audience :: Developers",
"Intended Audience :: Science/Research",
"License :: OSI Approved :: GNU Affero General Public License v3",
"Topic :: Scientific/Engineering :: Physics",
]
2024-03-30 18:06:31 -07:00
requires-python = ">=3.11"
2022-08-30 23:49:39 -07:00
include = [
"LICENSE.md"
]
dynamic = ["version"]
dependencies = [
2024-07-29 02:25:16 -07:00
"numpy>=1.26",
"scipy~=1.14",
2022-08-30 23:49:39 -07:00
]
[tool.hatch.version]
path = "meanas/__init__.py"
[project.optional-dependencies]
dev = ["pytest", "pdoc", "gridlock"]
examples = ["gridlock"]
test = ["pytest"]
2024-07-29 00:22:54 -07:00
[tool.ruff]
exclude = [
".git",
"dist",
]
line-length = 245
indent-width = 4
lint.dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
lint.select = [
"NPY", "E", "F", "W", "B", "ANN", "UP", "SLOT", "SIM", "LOG",
"C4", "ISC", "PIE", "PT", "RET", "TCH", "PTH", "INT",
"ARG", "PL", "R", "TRY",
"G010", "G101", "G201", "G202",
"Q002", "Q003", "Q004",
]
lint.ignore = [
#"ANN001", # No annotation
"ANN002", # *args
"ANN003", # **kwargs
"ANN401", # Any
"ANN101", # self: Self
"SIM108", # single-line if / else assignment
"RET504", # x=y+z; return x
"PIE790", # unnecessary pass
"ISC003", # non-implicit string concatenation
"C408", # dict(x=y) instead of {'x': y}
"PLR09", # Too many xxx
"PLR2004", # magic number
"PLC0414", # import x as x
"TRY003", # Long exception message
"TRY002", # Exception()
]
[[tool.mypy.overrides]]
module = [
"scipy",
"scipy.optimize",
"scipy.linalg",
"scipy.sparse",
"scipy.sparse.linalg",
]
ignore_missing_imports = true