mirror of
https://github.com/mkdocs/mkdocs.git
synced 2026-03-27 01:48:30 +07:00
240 lines
6.5 KiB
TOML
240 lines
6.5 KiB
TOML
[build-system]
|
|
requires = ["hatchling"]
|
|
build-backend = "hatchling.build"
|
|
|
|
[project]
|
|
name = "mkdocs"
|
|
description = "Project documentation with Markdown."
|
|
readme = "README.md"
|
|
license = "BSD-2-Clause"
|
|
authors = [
|
|
{name = "Tom Christie", email = "tom@tomchristie.com"},
|
|
]
|
|
classifiers = [
|
|
"Development Status :: 5 - Production/Stable",
|
|
"Environment :: Console",
|
|
"Environment :: Web Environment",
|
|
"Intended Audience :: Developers",
|
|
"License :: OSI Approved :: BSD License",
|
|
"Operating System :: OS Independent",
|
|
"Programming Language :: Python",
|
|
"Programming Language :: Python :: 3",
|
|
"Programming Language :: Python :: 3.8",
|
|
"Programming Language :: Python :: 3.9",
|
|
"Programming Language :: Python :: 3.10",
|
|
"Programming Language :: Python :: 3.11",
|
|
"Programming Language :: Python :: 3.12",
|
|
"Programming Language :: Python :: 3 :: Only",
|
|
"Programming Language :: Python :: Implementation :: CPython",
|
|
"Programming Language :: Python :: Implementation :: PyPy",
|
|
"Topic :: Documentation",
|
|
"Topic :: Text Processing",
|
|
]
|
|
dynamic = ["version"]
|
|
requires-python = ">=3.8"
|
|
dependencies = [
|
|
"click >=7.0",
|
|
"Jinja2 >=2.11.1",
|
|
"markupsafe >=2.0.1",
|
|
"Markdown >=3.3.6",
|
|
"PyYAML >=5.1",
|
|
"watchdog >=2.0",
|
|
"ghp-import >=1.0",
|
|
"pyyaml_env_tag >=0.1",
|
|
"importlib-metadata >=4.4; python_version < '3.10'",
|
|
"packaging >=20.5",
|
|
"mergedeep >=1.3.4",
|
|
"pathspec >=0.11.1",
|
|
"mkdocs-get-deps >=0.2.0",
|
|
"colorama >=0.4; platform_system == 'Windows'",
|
|
]
|
|
[project.optional-dependencies]
|
|
i18n = [
|
|
"babel >=2.9.0",
|
|
]
|
|
min-versions = [
|
|
"click ==7.0",
|
|
"Jinja2 ==2.11.1",
|
|
"markupsafe ==2.0.1",
|
|
"Markdown ==3.3.6",
|
|
"PyYAML ==5.1",
|
|
"watchdog ==2.0",
|
|
"ghp-import ==1.0",
|
|
"pyyaml_env_tag ==0.1",
|
|
"importlib-metadata ==4.4; python_version < '3.10'",
|
|
"packaging ==20.5",
|
|
"mergedeep ==1.3.4",
|
|
"pathspec ==0.11.1",
|
|
"mkdocs-get-deps ==0.2.0",
|
|
"colorama ==0.4; platform_system == 'Windows'",
|
|
"babel ==2.9.0",
|
|
]
|
|
|
|
[project.urls]
|
|
Documentation = "https://www.mkdocs.org/"
|
|
Source = "https://github.com/mkdocs/mkdocs"
|
|
Issues = "https://github.com/mkdocs/mkdocs/issues"
|
|
History = "https://www.mkdocs.org/about/release-notes/"
|
|
|
|
[project.scripts]
|
|
mkdocs = "mkdocs.__main__:cli"
|
|
|
|
[project.entry-points."mkdocs.themes"]
|
|
mkdocs = "mkdocs.themes.mkdocs"
|
|
readthedocs = "mkdocs.themes.readthedocs"
|
|
|
|
[project.entry-points."mkdocs.plugins"]
|
|
search = "mkdocs.contrib.search:SearchPlugin"
|
|
|
|
[tool.hatch.version]
|
|
path = "mkdocs/__init__.py"
|
|
|
|
[tool.hatch.build]
|
|
artifacts = ["/mkdocs/**/*.mo"]
|
|
[tool.hatch.build.targets.sdist]
|
|
include = ["/mkdocs"]
|
|
[tool.hatch.build.targets.wheel]
|
|
exclude = ["/mkdocs/tests", "*.po", "*.pot", "babel.cfg"]
|
|
[tool.hatch.build.hooks.custom]
|
|
dependencies = [
|
|
"babel",
|
|
"setuptools; python_version >= '3.12'",
|
|
]
|
|
|
|
[tool.hatch.env]
|
|
requires = ["hatch-mkdocs", "hatch-pip-compile"]
|
|
|
|
[tool.hatch.envs.default.scripts]
|
|
all = [
|
|
"hatch run style:fix",
|
|
"hatch run types:check",
|
|
"hatch run test:test",
|
|
"hatch run lint:check",
|
|
"hatch run +type=default integration:test",
|
|
]
|
|
|
|
[tool.hatch.envs.test]
|
|
features = ["i18n"]
|
|
dependencies = [
|
|
"coverage",
|
|
]
|
|
[tool.hatch.envs.test.scripts]
|
|
test = 'python -m unittest discover -s mkdocs -p "*tests.py"'
|
|
_coverage = [
|
|
'coverage run --source=mkdocs --omit "mkdocs/tests/*" -m unittest discover -s mkdocs -p "*tests.py"',
|
|
"coverage xml",
|
|
"coverage report --show-missing"
|
|
]
|
|
with-coverage = "test"
|
|
[[tool.hatch.envs.test.matrix]]
|
|
python = ["3.8", "3.9", "3.10", "3.11", "3.12", "pypy3"]
|
|
type = ["default", "min-req"]
|
|
[tool.hatch.envs.test.overrides]
|
|
matrix.type.features = [
|
|
{ value = "min-versions", if = ["min-req"] },
|
|
]
|
|
matrix.type.scripts = [
|
|
{ key = "with-coverage", value = "_coverage", if = ["default"] },
|
|
]
|
|
|
|
[tool.hatch.env.collectors.mkdocs.integration]
|
|
path = "mkdocs.yml"
|
|
[tool.hatch.envs.integration]
|
|
detached = false
|
|
[tool.hatch.envs.integration.scripts]
|
|
test = "python -m mkdocs.tests.integration"
|
|
[[tool.hatch.envs.integration.matrix]]
|
|
python = ["3.8", "3.9", "3.10", "3.11", "3.12", "pypy3"]
|
|
type = ["default", "no-babel"]
|
|
[tool.hatch.envs.integration.overrides]
|
|
matrix.type.features = [
|
|
{ value = "i18n", if = ["default"] },
|
|
]
|
|
|
|
[tool.hatch.envs.types]
|
|
dependencies = [
|
|
"mypy",
|
|
"babel",
|
|
"types-Markdown",
|
|
"types-pytz",
|
|
"types-PyYAML",
|
|
"types-setuptools",
|
|
"typing-extensions",
|
|
]
|
|
[tool.hatch.envs.types.scripts]
|
|
check = "mypy mkdocs"
|
|
|
|
[tool.hatch.envs.style]
|
|
type = "pip-compile"
|
|
detached = true
|
|
dependencies = [
|
|
"black",
|
|
"isort",
|
|
"ruff",
|
|
]
|
|
[tool.hatch.envs.style.scripts]
|
|
check = [
|
|
"isort --check-only --diff mkdocs docs",
|
|
"black -q --check --diff mkdocs docs",
|
|
"lint",
|
|
]
|
|
lint = [
|
|
"ruff check mkdocs docs {args}"
|
|
]
|
|
fix = [
|
|
"lint --fix",
|
|
"format",
|
|
]
|
|
format = [
|
|
"isort -q mkdocs docs",
|
|
"black -q mkdocs docs",
|
|
]
|
|
|
|
[tool.hatch.envs.lint]
|
|
detached = true
|
|
dependencies = [
|
|
"codespell==2.2.6",
|
|
]
|
|
[tool.hatch.envs.lint.scripts]
|
|
spelling = 'codespell mkdocs docs *.* -S LC_MESSAGES -S "*.min.js" -S "lunr*.js" -S fontawesome-webfont.svg -S tinyseg.js -S "*.map"'
|
|
markdown = "npm exec --yes -- markdownlint-cli README.md CONTRIBUTING.md docs/ --ignore docs/CNAME"
|
|
js = "npm exec --yes -- jshint mkdocs/"
|
|
check = ["markdown", "js", "css", "spelling"]
|
|
|
|
[tool.hatch.env.collectors.mkdocs.docs]
|
|
path = "mkdocs.yml"
|
|
[tool.hatch.envs.docs]
|
|
type = "pip-compile"
|
|
detached = false
|
|
|
|
[tool.black]
|
|
line-length = 100
|
|
skip-string-normalization = true
|
|
|
|
[tool.isort]
|
|
profile = "black"
|
|
line_length = 100
|
|
|
|
[tool.ruff]
|
|
select = [
|
|
"F", "W", "E", "UP", "YTT", "C4", "DTZ", "FA", "ISC", "PIE", "T20", "RSE", "TCH",
|
|
"B002", "B003", "B005", "B007", "B009", "B012", "B013", "B014", "B015", "B018", "B020", "B021", "B023", "B026", "B033", "B034", "B905",
|
|
"COM818",
|
|
"D200", "D201", "D202", "D204", "D207", "D208", "D209", "D210", "D211", "D213", "D214", "D300", "D301", "D400", "D402", "D403", "D405", "D412", "D414", "D415", "D416", "D417", "D419",
|
|
"PERF101",
|
|
"PGH002", "PGH004", "PGH005",
|
|
"FLY002",
|
|
"PLC", "PLE", "PLR0124", "PLR0133", "PLR0206", "PLR0402", "PLR1701", "PLR1722", "PLW0120", "PLW0127", "PLW0129", "PLW0131", "PLW0406", "PLW0602", "PLW0603", "PLW0711",
|
|
"RUF001", "RUF005", "RUF007", "RUF010", "RUF013", "RUF100", "RUF200",
|
|
"SIM101", "SIM107", "SIM201", "SIM202", "SIM208", "SIM210", "SIM211", "SIM300", "SIM401", "SIM910",
|
|
]
|
|
ignore = ["E501", "E731"]
|
|
|
|
[tool.ruff.flake8-comprehensions]
|
|
allow-dict-calls-with-keyword-arguments = true
|
|
|
|
[tool.mypy]
|
|
warn_unreachable = true
|
|
no_implicit_optional = true
|
|
show_error_codes = true
|