-
-
Notifications
You must be signed in to change notification settings - Fork 13
/
Copy pathpyproject.toml
82 lines (65 loc) · 2.08 KB
/
pyproject.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
[build-system]
requires = [
"setuptools>=42",
"wheel"
]
build-backend = "setuptools.build_meta"
[project]
name = "table2ascii"
authors = [{name = "Jonah Lawrence", email = "[email protected]"}]
dynamic = ["version", "description"]
[tool.black]
line-length = 100
target-version = ["py37", "py38", "py39", "py310", "py311"]
[tool.isort]
profile = "black"
py_version = 38
line_length = 100
combine_as_imports = true
filter_files = true
[tool.taskipy.tasks]
black = { cmd = "task lint black", help = "Run black" }
docs = { cmd = "cd docs && sphinx-autobuild source _build/html --ignore _build --watch ../table2ascii --port 8888", help = "Build the documentation on an autoreloading server."}
isort = { cmd = "task lint isort", help = "Run isort" }
lint = { cmd = "pre-commit run --all-files", help = "Check all files for linting errors" }
precommit = { cmd = "pre-commit install --install-hooks", help = "Install the precommit hook" }
pyright = { cmd = "pyright", help = "Run pyright" }
slotscheck = { cmd = "python -m slotscheck --verbose -m table2ascii", help = "Run slotscheck" }
test = { cmd = "tox --skip-missing-interpreters", help = "Run tests" }
[tool.slotscheck]
strict-imports = true
require-superclass = true
require-subclass = false
[tool.pyright]
typeCheckingMode = "basic"
include = [
"table2ascii",
"tests",
"*.py",
]
pythonVersion = "3.7"
# https://github.com/microsoft/pyright/blob/main/docs/configuration.md
reportInvalidStringEscapeSequence = false
reportPropertyTypeMismatch = true
reportDuplicateImport = true
reportUntypedFunctionDecorator = true
reportUntypedClassDecorator = true
reportUntypedBaseClass = true
reportUntypedNamedTuple = true
reportUnknownLambdaType = true
reportInvalidTypeVarUse = true
reportUnnecessaryCast = true
reportSelfClsParameterName = true
reportUnsupportedDunderAll = true
reportUnusedVariable = true
reportUnnecessaryComparison = true
reportUnnecessaryTypeIgnoreComment = true
[tool.mypy]
python_version = "3.11"
namespace_packages = true
[[tool.mypy.overrides]]
module = [
"setuptools.*",
"wcwidth"
]
ignore_missing_imports = true