78 lines
1.8 KiB
TOML
78 lines
1.8 KiB
TOML
[build-system]
|
|
requires = ["pdm-backend", "setuptools>=64", "setuptools-scm>=8"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "JOJ3-config-generator"
|
|
version = "0.1.0"
|
|
dependencies = [
|
|
"pyyaml>=6.0.2",
|
|
"typer>=0.12.5",
|
|
"loguru>=0.7.2",
|
|
"pydantic>=2.9.2",
|
|
"inquirer>=3.4.0",
|
|
"humanfriendly>=10.0",
|
|
"tomlkit>=0.13.2",
|
|
"tomli>=2.2.1",
|
|
]
|
|
requires-python = ">=3.9"
|
|
authors = [{ name = "JOJ3-dev", email = "joj3@focs.ji.sjtu.edu.cn" }]
|
|
maintainers = []
|
|
description = "JOJ3 json configuration file generator"
|
|
readme = "README.md"
|
|
license = { text = "MIT" }
|
|
|
|
[project.scripts]
|
|
joj3-config-generator = "joj3_config_generator.main:app"
|
|
joj3-forge = "joj3_config_generator.main:app"
|
|
|
|
[tool.bandit]
|
|
exclude_dirs = ["tests"]
|
|
skips = ["B101"]
|
|
|
|
[tool.pdm]
|
|
distribution = true
|
|
|
|
[tool.pdm.dev-dependencies]
|
|
lint = ["black>=24.10.0", "mypy>=1.12.0", "types-PyYAML>=6.0.12.20240917"]
|
|
test = ["pytest>=8.3.3", "pytest-cov>=5.0.0"]
|
|
dev = ["pre-commit>=4.0.1"]
|
|
|
|
[tool.pdm.scripts]
|
|
lint = "mypy joj3_config_generator tests"
|
|
test = "pytest"
|
|
coverage = "pytest --cov=joj3_config_generator --cov-report=xml --cov-report=html"
|
|
all = { composite = ["lint", "test"] }
|
|
app.call = "joj3_config_generator.main:app"
|
|
|
|
[tool.pdm.build]
|
|
includes = ["joj3_config_generator"]
|
|
excludes = ["tests"]
|
|
|
|
[tool.pytest.ini_options]
|
|
testpaths = ["tests"]
|
|
xfail_strict = true
|
|
|
|
[tool.mypy]
|
|
plugins = ["pydantic.mypy"]
|
|
|
|
follow_imports = "silent"
|
|
warn_redundant_casts = true
|
|
warn_unused_ignores = true
|
|
disallow_any_generics = true
|
|
check_untyped_defs = true
|
|
no_implicit_reexport = true
|
|
disable_error_code = "import-untyped"
|
|
|
|
disallow_untyped_defs = true
|
|
|
|
[tool.pydantic-mypy]
|
|
init_forbid_extra = true
|
|
init_typed = true
|
|
warn_required_dynamic_aliases = true
|
|
warn_untyped_fields = true
|
|
|
|
[tool.setuptools_scm]
|
|
write_to = "joj3_config_generator/_version.py"
|
|
fallback_version = "0.0.0+unknown"
|