-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathpyproject.toml
90 lines (73 loc) · 3.81 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
[project]
name = "YATB"
version = "0.6.3a0"
description = "Yet another fast and furious jeopardy-CTF taskboard"
authors = [
{ name = "Rubikoid", email = "rubikoid@kksctf.ru" },
{ name = "Maxim Anfinogenov", email = "anfinogenov@kksctf.ru" },
]
license = "Apache-2.0"
readme = "README.md"
requires-python = ">=3.11"
keywords = ["ctf", "jeopardy", "ctf-platform", "fastapi"]
classifiers = ["Topic :: Software Development"]
[project.urls]
homepage = "https://github.com/kksctf/yatb"
repository = "https://github.com/kksctf/yatb"
documentation = "https://github.com/kksctf/yatb"
# black config enabled.
[tool.black]
line-length = 120
target_version = ['py311']
include = '\.pyi?$'
exclude = '''
(
/(
\.eggs # exclude a few common directories in the
| \.git # root of the project
| \.hg
| \.mypy_cache
| \.tox
| \.venv
| _build
| buck-out
| build
| dist
)/
)
'''
[tool.ruff]
line-length = 120
# no thanks, i can fix it myself
fix = false
# python 3.10 target?
target-version = "py311"
task-tags = ["TODO", "FIXME", "WTF", "XXX"]
# rules...
select = ["ALL"]
ignore = [
"ANN101", # | ruff? | Missing type annotation for `self` in method # non sense
"B008", # | ruff? | Do not perform function call `...` in argument defaults # fastapi DI...
"D100", # | pydocstyle | Missing docstring in public module # meh
"D101", # | pydocstyle | Missing docstring in public class # meh
"D102", # | pydocstyle | Missing docstring in public method # meh
"D103", # | pydocstyle | Missing docstring in public function # meh
"D104", # | pydocstyle | Missing docstring in public package # meh
"D105", # | pydocstyle | Missing docstring in magic method # meh
"D106", # | pydocstyle | Missing docstring in public nested class # meh
"D107", # | pydocstyle | Missing docstring in `__init__` # meh
"D200", # | pydocstyle | One-line docstring should fit on one line # don't like it
"D202", # | pydocstyle | No blank lines allowed after function docstring (found 1) # don't like it
"D203", # | pydocstyle | 1 blank line required before class docstring # don't like it
"D205", # | pydocstyle | 1 blank line required between summary line and description # don't like it
"EM102", # | ruff? | Exception must not use an f-string literal, assign to variable first # i care, but not this proj
"ERA001", # | ruff? | commented out code # i know. and what?
"F401", # | pyflakes | %r imported but unused # pylance cover it
"TID252", # | flake8-tidy-imports | Relative imports are banned # no.
"TRY003", # | ruff? | Avoid specifying long messages outside the exception class # i care, but not this proj
"G004", # | ruff? | Logging statement uses f-string # i care, but not this proj
]
[tool.pytest.ini_options]
addopts = "--pyargs app --cov=app"
env = ["YATB_DEBUG=True", "ENABLE_METRICS=false"]
filterwarnings = ["ignore::DeprecationWarning"]