generic/pyproject.toml
2022-11-20 13:54:56 -05:00

127 lines
2.5 KiB
TOML

[tool.poetry]
name = "generic"
version = "1.1.1"
description = "Generic programming library for Python"
authors = [
"Andrey Popp <8mayday@gmail.com>",
"Arjan Molenaar <gaphor@gmail.com>"
]
maintainers = [
"Arjan Molenaar <gaphor@gmail.com>",
"Dan Yeaw <dan@yeaw.me>"
]
license = "BSD License"
readme = "README.md"
homepage = "https://generic.readthedocs.io/"
repository = "https://github.com/gaphor/generic"
documentation = "https://generic.readthedocs.io/"
keywords = ["generic", "multi dispatch", "dispatch", "event"]
classifiers = [
"Development Status :: 5 - Production/Stable",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"License :: OSI Approved :: BSD License",
"Programming Language :: Python",
]
[tool.poetry.dependencies]
python = "^3.8"
exceptiongroup = "^1.0.0-rc.5"
[tool.poetry.dev-dependencies]
pytest = "^7.2"
pytest-cov = "^4.0"
pytest-runner = "^6.0"
black = { version = "^22.10", python = "^3.7" }
mypy = "0.991"
pre-commit = "^2.20"
bw_sphinxtheme = "^0.1.8"
tox = "^3.27"
[tool.tox]
legacy_tox_ini = """
[tox]
isolated_build = true
envlist = clean, py38, py39, py310, py311, report
[gh-actions]
python =
3.8: py38
3.9: py39
3.10: py310
3.11: py311
[testenv]
commands =
pytest --cov --cov-append --cov-report=term-missing {posargs}
deps =
pytest
pytest-cov
depends =
{py38,py39,py310,py311}: clean
report: py38,py39,py310,py311
[testenv:report]
deps = coverage[toml]
skip_install = true
commands =
coverage report
coverage html
[testenv:clean]
deps = coverage[toml]
skip_install = true
commands = coverage erase
"""
[tool.pytest.ini_options]
testpaths = [
"tests",
"docs",
]
addopts = [
"--doctest-modules",
"--doctest-glob='*.rst'",
"--import-mode=importlib",
]
[tool.isort]
multi_line_output = 3
include_trailing_comma = true
force_grid_wrap = 0
use_parentheses = true
line_length = 88
known_third_party = ["pytest"]
skip = ".venv,build,dist"
[tool.coverage.run]
source = ["generic"]
[tool.mypy]
python_version = 3.9
warn_return_any = true
warn_unused_configs = true
warn_redundant_casts = true
check_untyped_defs = true
strict_optional = true
show_error_codes = true
ignore_missing_imports=true
warn_unused_ignores = true
namespace_packages = true
[[tool.mypy.overrides]]
module = [
"pytest.*",
"conf",
]
ignore_missing_imports = true
warn_unreachable = true
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"