2019-11-08 15:47:37 +03:00
[ tool . poetry ]
name = "generic"
2022-11-20 21:53:36 +03:00
version = "1.1.1"
2019-11-08 15:47:37 +03:00
description = "Generic programming library for Python"
authors = [
"Andrey Popp <8mayday@gmail.com>" ,
2019-11-09 11:51:11 +03:00
"Arjan Molenaar <gaphor@gmail.com>"
]
maintainers = [
2019-11-08 15:49:40 +03:00
"Arjan Molenaar <gaphor@gmail.com>" ,
"Dan Yeaw <dan@yeaw.me>"
2019-11-08 15:47:37 +03:00
]
2019-11-09 11:51:11 +03:00
2019-11-08 15:47:37 +03:00
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 ]
2021-10-16 18:52:04 +03:00
python = "^3.8"
2023-02-03 06:06:51 +03:00
exceptiongroup = "^1.0.0-rc.5"
2019-11-08 15:47:37 +03:00
[ tool . poetry . dev-dependencies ]
2022-10-26 05:12:40 +03:00
pytest = "^7.2"
2022-09-29 13:08:08 +03:00
pytest-cov = "^4.0"
2023-02-03 06:06:51 +03:00
pytest-runner = "^6.0"
black = { version = "^23.1.0" , python = "^3.7" }
mypy = "0.991"
pre-commit = "^3.0.3"
bw_sphinxtheme = "^0.1.8"
tox = "^4.4.4"
2019-11-08 15:47:37 +03:00
2023-02-03 06:06:51 +03:00
[ 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
"" "
2022-12-21 23:35:40 +03:00
2020-10-20 04:50:49 +03:00
[ tool . pytest . ini_options ]
testpaths = [
"tests" ,
"docs" ,
]
2022-11-20 06:03:14 +03:00
addopts = [
"--doctest-modules" ,
"--doctest-glob='*.rst'" ,
"--import-mode=importlib" ,
]
2020-10-20 04:50:49 +03:00
2020-10-24 22:10:42 +03:00
[ tool . coverage . run ]
source = [ "generic" ]
2022-11-20 06:03:14 +03:00
[ 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
2023-02-03 06:06:51 +03:00
[ tool . ruff ]
exclude = [
".venv" ,
"dist" ,
]
ignore = [ "E501" ]
line-length = 88
select = [
"B" ,
"B9" ,
"C" ,
"E" ,
"F" ,
"W" ,
]
[ tool . ruff . mccabe ]
max-complexity = 18
2022-11-20 06:03:14 +03:00
[ build-system ]
requires = [ "poetry-core>=1.0.0" ]
build-backend = "poetry.core.masonry.api"