73 lines
2.5 KiB
TOML
73 lines
2.5 KiB
TOML
# ============================================================
|
||
# DjangoAdmin Flask 项目管理配置
|
||
# ============================================================
|
||
# 说明:
|
||
# 1. 运行依赖以 requirements.txt 为唯一事实来源(应用工程部署约定)。
|
||
# [project].dependencies 通过 [tool.setuptools.dynamic] 直接读取
|
||
# requirements.txt,二者自动保持同步、无需手工镜像。
|
||
# 2. 本文件承载各开发工具(pytest/black/isort/mypy/coverage)统一配置。
|
||
|
||
[build-system]
|
||
requires = ["setuptools>=61"]
|
||
build-backend = "setuptools.build_meta"
|
||
|
||
[project]
|
||
name = "djangoadmin-flask"
|
||
version = "3.0.0"
|
||
description = "DjangoAdmin 企业数字化开发平台(后端)"
|
||
readme = "README.md"
|
||
requires-python = ">=3.9"
|
||
license = {text = "Apache-2.0"}
|
||
authors = [
|
||
{name = "小蚂蚁云团队", email = "djangoadmin@126.com"},
|
||
]
|
||
dynamic = ["dependencies"]
|
||
|
||
# dependencies 动态读取 requirements.txt(以它为准,改动 requirements.txt 即同步)
|
||
[tool.setuptools.dynamic]
|
||
dependencies = {file = ["requirements.txt"]}
|
||
|
||
# ============================================================
|
||
# pytest
|
||
# ============================================================
|
||
[tool.pytest.ini_options]
|
||
testpaths = ["tests"]
|
||
addopts = "-ra --strict-markers"
|
||
python_files = ["test_*.py"]
|
||
filterwarnings = [
|
||
# 存量依赖(Flask-SQLAlchemy 3.x 等)DeprecationWarning 噪音较多,暂统一忽略
|
||
"ignore::DeprecationWarning",
|
||
]
|
||
|
||
# ============================================================
|
||
# black(代码格式化)
|
||
# ============================================================
|
||
[tool.black]
|
||
line-length = 120
|
||
target-version = ["py39", "py310", "py311", "py312"]
|
||
skip-string-normalization = false
|
||
|
||
# ============================================================
|
||
# isort(import 排序)
|
||
# ============================================================
|
||
[tool.isort]
|
||
profile = "black"
|
||
line_length = 120
|
||
skip_gitignore = true
|
||
known_first_party = ["application", "config", "extensions", "src", "utils"]
|
||
|
||
# ============================================================
|
||
# mypy(类型检查)
|
||
# ============================================================
|
||
[tool.mypy]
|
||
python_version = "3.9"
|
||
ignore_missing_imports = true
|
||
warn_unused_configs = true
|
||
exclude = ["migrations/", "ui/", "static/"]
|
||
|
||
# ============================================================
|
||
# coverage(pytest-cov)
|
||
# ============================================================
|
||
[tool.coverage.run]
|
||
omit = ["migrations/*", "ui/*", "static/*", "tests/*", "scripts/*"]
|