Skip to content

Commit 3c64f8a

Browse files
author
Mattia Baldari
committed
Configure ruff for linting and formatting
- Add ruff.toml with configuration based on octoenergy/kraken-core - Replace flake8 with ruff in dev dependencies - Remove obsolete .flake8 configuration file
1 parent f8baa07 commit 3c64f8a

File tree

3 files changed

+67
-4
lines changed

3 files changed

+67
-4
lines changed

.flake8

Lines changed: 0 additions & 2 deletions
This file was deleted.

pyproject.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,13 @@ Documentation = "https://ambro17.github.io/graphql-schema-diff/"
3131

3232
[project.optional-dependencies]
3333
dev = [
34-
"pytest",
35-
"flake8",
3634
"pytest",
3735
"pytest-cov",
3836
"codecov",
3937
"pdoc3==0.9.1",
4038
"hatch",
39+
"ruff",
40+
"pre-commit",
4141
]
4242

4343
[tool.hatch.build.targets.wheel]

ruff.toml

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
target-version = "py313"
2+
line-length = 99
3+
extend-exclude = [
4+
".DS_Store",
5+
".pytest_cache",
6+
"__pycache__",
7+
]
8+
9+
[format]
10+
docstring-code-format = true
11+
12+
[lint]
13+
select = ["ALL"]
14+
ignore = [
15+
"A001", # https://docs.astral.sh/ruff/rules/builtin-variable-shadowing/
16+
"A002", # https://docs.astral.sh/ruff/rules/builtin-argument-shadowing/
17+
"ANN002", # https://docs.astral.sh/ruff/rules/missing-type-args/
18+
"ANN003", # https://docs.astral.sh/ruff/rules/missing-type-kwargs/
19+
"ANN401", # https://docs.astral.sh/ruff/rules/any-type/
20+
"ARG001", # https://docs.astral.sh/ruff/rules/unused-function-argument/
21+
"ARG002", # https://docs.astral.sh/ruff/rules/unused-method-argument/
22+
"C901", # https://docs.astral.sh/ruff/rules/complex-structure/
23+
"COM812", # https://docs.astral.sh/ruff/rules/missing-trailing-comma/
24+
"D100", # https://docs.astral.sh/ruff/rules/undocumented-public-module/
25+
"D101", # https://docs.astral.sh/ruff/rules/undocumented-public-class/
26+
"D102", # https://docs.astral.sh/ruff/rules/undocumented-public-method/
27+
"D103", # https://docs.astral.sh/ruff/rules/undocumented-public-function/
28+
"D104", # https://docs.astral.sh/ruff/rules/undocumented-public-package/
29+
"D105", # https://docs.astral.sh/ruff/rules/undocumented-magic-method/
30+
"D107", # https://docs.astral.sh/ruff/rules/undocumented-public-init/
31+
"D203", # https://docs.astral.sh/ruff/rules/incorrect-blank-line-before-class/
32+
"D212", # https://docs.astral.sh/ruff/rules/multi-line-summary-first-line/
33+
"E501", # https://docs.astral.sh/ruff/rules/line-too-long/
34+
"EM101", # https://docs.astral.sh/ruff/rules/raw-string-in-exception/
35+
"EM102", # https://docs.astral.sh/ruff/rules/f-string-in-exception/
36+
"ERA001", # https://docs.astral.sh/ruff/rules/commented-out-code/
37+
"FBT001", # https://docs.astral.sh/ruff/rules/boolean-type-hint-positional-argument/
38+
"FBT002", # https://docs.astral.sh/ruff/rules/boolean-default-value-positional-argument/
39+
"FBT003", # https://docs.astral.sh/ruff/rules/boolean-positional-value-in-call/
40+
"FIX002", # https://docs.astral.sh/ruff/rules/line-contains-todo/
41+
"ISC001", # https://docs.astral.sh/ruff/rules/single-line-implicit-string-concatenation/
42+
"PLR0911", # https://docs.astral.sh/ruff/rules/too-many-return-statements/
43+
"PLR0912", # https://docs.astral.sh/ruff/rules/too-many-branches/
44+
"PLR0913", # https://docs.astral.sh/ruff/rules/too-many-arguments/
45+
"PLR0915", # https://docs.astral.sh/ruff/rules/too-many-statements/
46+
"PLR2004", # https://docs.astral.sh/ruff/rules/magic-value-comparison/
47+
"RET504", # https://docs.astral.sh/ruff/rules/unnecessary-assign/
48+
"S101", # https://docs.astral.sh/ruff/rules/assert/
49+
"SIM108", # https://docs.astral.sh/ruff/rules/if-else-block-instead-of-if-exp/
50+
"TD002", # https://docs.astral.sh/ruff/rules/missing-todo-author/
51+
"TD003", # https://docs.astral.sh/ruff/rules/missing-todo-link/
52+
"TRY003", # https://docs.astral.sh/ruff/rules/raise-vanilla-args/
53+
]
54+
55+
[lint.per-file-ignores]
56+
"__init__.py" = [
57+
"F401", # https://docs.astral.sh/ruff/rules/unused-import/
58+
]
59+
"**/tests/**" = [
60+
"ANN001", # https://docs.astral.sh/ruff/rules/missing-type-function-argument/
61+
"ANN201", # https://docs.astral.sh/ruff/rules/missing-return-type-undocumented-public-function/
62+
"S105", # https://docs.astral.sh/ruff/rules/hardcoded-password-string/
63+
"S106", # https://docs.astral.sh/ruff/rules/hardcoded-password-func-arg/
64+
"SLF001", # https://docs.astral.sh/ruff/rules/private-member-access/
65+
]

0 commit comments

Comments
 (0)