-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathpyproject.toml
90 lines (76 loc) · 2.07 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
83
84
85
86
87
88
89
90
[tool.poetry]
name = "aga"
version = "0.13.10"
description = "aga grades assignments"
authors = ["Riley Shahar <riley.shahar@gmail.com>"]
license = "MIT"
readme = "README.md"
homepage = "https://github.com/nihilistkitten/aga"
repository = "https://github.com/nihilistkitten/aga"
documentation = "https://aga.readthedocs.io"
[tool.poetry.dependencies]
dataclasses-json = "^0.5.6"
dill = "^0.3.4"
gradescope-utils = "^0.5.0"
python = "^3.10.0"
typer = {extras = ["all"], version = "^0.7.0"}
dacite = "^1.6.0"
toml = "^0.10.2"
types-toml = "^0.10.8"
[tool.poetry.scripts]
aga = "aga.cli:aga_app"
[tool.poetry.group.dev.dependencies]
nox-poetry = "^1.0.2"
nox = "^2022.11.21"
mypy = "^1.2.0"
black = "^23.3.0"
coverage = "^7.2.3"
flake8 = "^6.0.0"
flake8-black = "^0.3.6"
flake8-bugbear = "^23.3.23"
mypy-ls = "^0.5.1"
myst-parser = "^1.0.0"
pydocstyle = "^6.3.0"
pyls-flake8 = "^0.4.0"
pyls-isort = "^0.2.2"
pytest = "^7.3.1"
pytest-cov = "^4.0.0"
pytest-lazy-fixture = "^0.6.3"
pytest-mock = "^3.10.0"
sphinx = "^6.1.3"
sphinx-autodoc-typehints = "^1.23.0"
sphinx-click = "^4.4.0"
sphinx-rtd-theme = "^1.2.0"
python-lsp-black = "^1.0.0"
python-lsp-server = {extras = ["mccabe", "pydocstyle", "flake8"], version = "^1.4.1"}
[tool.pytest.ini_options]
filterwarnings = ["ignore:'autocompletion' is renamed to 'shell_complete':DeprecationWarning"]
markers = ["slow: marks tests as slow (ignored by default, select with `-m slow` CLI option)"]
[tool.coverage.paths]
source = ["src", "*/site-packages"]
[tool.coverage.run]
branch = true
source = ["aga"]
omit = ["src/aga/gradescope/resources/setup.py", "src/aga/prize.py"]
[tool.coverage.report]
show_missing = true
exclude_lines = [
"pragma: no cover",
"if TYPE_CHECKING:"
]
[tool.mypy]
mypy_path = "src"
strict = true
warn_unused_ignores = false
[tool.pylint.MASTER]
disable = ["no-else-return"]
[tool.pylint.format]
max-line-length = 88
good-names = ["i", "j", "k", "s", "x", "y", "_", "ui", "e"]
[tool.pydocstyle]
convention = "numpy"
[tool.isort]
profile = "black"
[build-system]
requires = ["poetry-core>=1.0.0"]
build-backend = "poetry.core.masonry.api"