TG-bot-CS_FK
/
ruff.toml
71 строка · 3.6 Кб
1src = ["src"]
2cache-dir = "../.cache/ruff" # папку кэша линтера отправляет на уровень выше проекта, чтобы случайно не подселить в репозиторий.
3
4select = ["E", "W", "F", "B", "I", "Q", "COM"] # "ANN" "ASYNC"
5ignore = ["D100"] # вроде это ошибка которая чекает заглушки внутри библиотек/за них не отвечаем, потому в игнор
6line-length = 135 # длинна строк кода в проекте
7fixable = ["I", "W", "COM", "Q"] # будет исправлять найденные ошибки если запустить с флагом --fix
8extend-exclude = [ # игнор файлов и директорий
9"settings.py",
10"manage.py",
11"migrations",
12"__init__.py",
13".cache",
14"__pycache__",
15"infra",
16"nginx",
17".vscode",
18".bzr",
19".direnv",
20".eggs",
21".git",
22".git-rewrite",
23".hg",
24".mypy_cache",
25".nox",
26".pants.d",
27".pytype",
28".ruff_cache",
29".svn",
30".tox",
31".venv",
32"__pypackages__",
33"_build",
34"buck-out",
35"build",
36"dist",
37"node_modules",
38"venv",
39"ex_venv",
40"env.py",
41"versions",
42"migrations",
43]
44
45[per-file-ignores]
46"settings.py" = ["E501"] # игнорирует ошибку длинну строки в файле settings.py
47
48[flake8-quotes]
49docstring-quotes = "double" # будет отслеживать чтобы docstring был в двойных ковычках.
50inline-quotes = "double" # будет отслеживать что в коде основым, используются одинарные ковычки.
51
52
53# ruff check path/to/file.py # проверка, все ли ок, покажет ошибки
54# чтобы исправить все из раздела fixable = ["I", "W", "COM", "Q"] запускаем с флагом --fix
55# пример ruff check path/to/file.py --fix
56
57# "E" - пробелы, неожиданные отступы между условий или переменных в коде.
58# "W" - это про лишние пробелы в пустых строках, в конце кода, отсутствие пустой строки в конце код и тп, все про пробелы вне условий кода.
59# "F" - это Pyflakes - для обнаружения потенциальных проблем в коде. Например: может удалить неиспользуемы импорты.
60# "B" это flake8-bugbear - находит баги и некорректный код, в основном устаревшее использование кода, или не по фэн шую там.
61# "I" это isort, все про импорты, их алфавитный порядок и правильные отступы.
62# "Q" это flake8-quotes - все про правильное соблюдение одинарных и двойных ковычек
63# "COM" это flake8-commas - помогает устранить tralling coma, забытые запятые по pep и тп.
64# "ANN" - это про типизацию, по желанию.
65# "ASYNC" - помогает по асинхронщине, по желанию.
66
67# УСТАНОВКА - pip install ruff
68# Файл с настройками необходимо назвать: ruff.toml
69# src = ["backend"] ставим с названием своего проекта, иначе isort будет работать некорректно.
70
71# ссылка на доку https://docs.astral.sh/ruff/rules/