Skip to content
Snippets Groups Projects
pyproject.toml 2.15 KiB
Newer Older
[build-system]
requires = ["scikit-build-core", "pybind11"]
build-backend = "scikit_build_core.build"

[project]
Xuefeng Ding's avatar
Xuefeng Ding committed
name = "myproj_simulation"
version = "0.2.1"
description = "A great package."
readme = "README.md"
Xuefeng Ding's avatar
Xuefeng Ding committed
authors = [{ name = "Xuefeng Ding", email = "dingxf@ihep.ac.cn" }]
maintainers = [{ name = "Xuefeng Ding (IHEP)", email = "dingxf@ihep.ac.cn" }]
requires-python = ">=3.9"

Xuefeng Ding's avatar
Xuefeng Ding committed
dependencies = []

classifiers = [
  "Development Status :: 4 - Beta",
  "License :: OSI Approved :: BSD License",
  "Programming Language :: Python :: 3 :: Only",
  "Programming Language :: Python :: 3.9",
  "Programming Language :: Python :: 3.10",
  "Programming Language :: Python :: 3.11",
  "Programming Language :: Python :: 3.12",
  "Programming Language :: Python :: 3.13",
  "Topic :: Scientific/Engineering :: Physics",
]

[project.urls]
Homepage = "https://github.com/organization/package"
Documentation = "https://package.readthedocs.io/"
"Bug Tracker" = "https://github.com/organization/package/issues"
Discussions = "https://github.com/organization/package/discussions"
Xuefeng Ding's avatar
Xuefeng Ding committed
Changelog = "https://package.readthedocs.io/en/latest/changelog.html"

[tool.scikit-build.wheel.packages]
Xuefeng Ding's avatar
Xuefeng Ding committed
"myproj/simulation" = "src/myproj/simulation"
Xuefeng Ding's avatar
Xuefeng Ding committed

Xuefeng Ding's avatar
Xuefeng Ding committed
[tool.scikit-build.wheel]
install-dir = "myproj/simulation"
Xuefeng Ding's avatar
Xuefeng Ding committed
exclude = ["CMakeLists.txt", "*.cc", "*.h"]
Xuefeng Ding's avatar
Xuefeng Ding committed

Xuefeng Ding's avatar
Xuefeng Ding committed
# [tool.scikit-build.package-data]
# myproj = ["py.typed"]
# myproj.simulation._csrc = ["*.pyi"]

Xuefeng Ding's avatar
Xuefeng Ding committed
[tool.mypy]
strict = true
ignore_missing_imports = true
warn_unused_configs = true
warn_unreachable = true
Xuefeng Ding's avatar
Xuefeng Ding committed
enable_error_code = ["ignore-without-code", "redundant-expr", "truthy-bool"]
Xuefeng Ding's avatar
Xuefeng Ding committed
disable_error_code = []
Xuefeng Ding's avatar
Xuefeng Ding committed
disallow_untyped_decorators = false
Xuefeng Ding's avatar
Xuefeng Ding committed

[tool.ruff.lint]
select = [
Xuefeng Ding's avatar
Xuefeng Ding committed
  "E",   # pycodestyle
  "F",   # Pyflakes
  "UP",  # pyupgrade
  "B",   # flake8-bugbear
  "SIM", # flake8-simplify
  "I",   # isort
]

[tool.pytest.ini_options]
minversion = "7"
Xuefeng Ding's avatar
Xuefeng Ding committed
testpaths = ["src/tests"]
Xuefeng Ding's avatar
Xuefeng Ding committed
python_files = "test_*.py"
python_classes = "Test*"
python_functions = "test_*"
addopts = [
  "--cov=myproj.simulation",
  "--cov-report=term-missing",
  "-ra",
  "--showlocals",
  "--strict-markers",
  "--strict-config",
Xuefeng Ding's avatar
Xuefeng Ding committed
]
Xuefeng Ding's avatar
Xuefeng Ding committed
xfail_strict = true
filterwarnings = ["error"]
log_cli_level = "info"