-
Notifications
You must be signed in to change notification settings - Fork 2
/
pyproject.toml
87 lines (79 loc) · 3.82 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
[tool.poetry]
name = "odevlib"
version = "0.1.4"
description = "ODevLib is a Django helper library that provides a set of tools for developing web applications."
authors = ["iammaxim"]
#Repository = "https://github.com/O-Dev-OXOZONE/ODevLib"
#Issues = "https://github.com/O-Dev-OXOZONE/ODevLib/issues"
#Changelog = "https://github.com/me/spam/blob/master/CHANGELOG.md"
readme = "README.md"
#license = {file = "LICENSE"}
[tool.poetry.dependencies]
python = ">=3.11,<3.12"
Django = "^4.1.2"
django-simple-history = "^3.0.0"
djangorestframework = "^3.12.2"
drf-spectacular = "^0.26.1"
drf-spectacular-sidecar = "^2023.3.1"
psycopg2-binary = "^2.9.5"
django-filter = "^22.1"
django-timescaledb = "^0.2.13"
[tool.poetry.dev-dependencies]
pytest = "^7.1.3"
pytest-xdist = "^2.5.0"
pytest-cov = "^4.0.0"
pytest-django = "^4.5.2"
django-stubs = {extras = ["compatible-mypy"], version = "^1.14.0"}
djangorestframework-stubs = {extras = ["compatible-mypy"], version = "^1.8.0"}
pandas-stubs = "^1.5.3.230214"
mypy = "^0.991"
openpyxl-stubs = "^0.1.25"
[tool.poetry.group.dev.dependencies]
mkdocs = "^1.4.2"
sphinx = "^6.1.3"
sphinx-rtd-theme = "^1.2.0"
types-docutils = "^0.19.1.6"
sphinx-immaterial = "^0.11.3"
myst-parser = "^1.0.0"
commonmark = "^0.9.1"
types-commonmark = "^0.9.2.2"
pytest-django = "^4.5.2"
black = "^23.3.0"
sphinx-autoapi = "^2.1.0"
sphinx-autobuild = "^2021.3.14"
types-redis = "^4.5.5.2"
# ==== Ruff ====
ruff = "^0.0.292"
[tool.ruff]
line-length = 119
target-version = "py311"
exclude = [
"migrations",
]
select = ["ALL", "NURSERY"]
ignore = [
"Q", # flake8-quotes
"D100", # undocumented-public-module Missing docstring in public module
"D101", # undocumented-public-class "Missing" # docstring in public class
"D102", # undocumented-public-method Missing docstring "in" # public method
"D103", # undocumented-public-function Missing docstring in "public" # function
"D104", # undocumented-public-package Missing docstring in public package "🛠"
"D105", # undocumented-magic-method Missing docstring in magic method
"D106", # # undocumented-public-nested-class Missing docstring in public nested class
"D107", # # undocumented-public-init Missing docstring in __init__
"ANN101", # missing-type-self. Allow to not specify type for `self` argument
"TD003", # missing-todo-link missing issue link on the line following this TODO
"TD002", # missing-todo-author missing author in TODO; try: `# TODO(<author_name>): ...` or `# TODO @<author_name>: ...`Ruff
"S101", # assert Use of assert detected
"D200", # matter of personal preference. Allow single-line docstrings to be on a separate line from """
"D202", # matter of personal preference. Allow blank lines after docstrings inside functions
"D205", # matter of personal preference. Allow to write a single docstring instead of summary/in-depth description
"D212", # matter of personal preference. Allow starting docstring on a new line, not on a """ line
"RUF005", # matter of personal preference. Allow concatenation like `[...] + another_list` instead of `[..., *another_list]`
"CPY001", # Don't require copyright notice at the top of a file
"DJ001", # Allow null=True in string-based fields. This may be opinionated, but in my opinion it should be either NULL or formatted value e-mail, URL, etc.
"FBT001", # Allow to declare boolean arguments for functions
"FBT002", # Allow to specify default boolean values in function declarations. # TODO: dig deeper into why this even exists
"ANN002", # Allow omitting type annotations for *args. We usually use them to silently pass all esoteric unknown arguments that library functions may expect or pass themselves.
"ANN003", # Allow omitting type annotations for **kwargs. We usually use them to silently pass all esoteric unknown arguments that library functions may expect or pass themselves.
]