@@ -52,11 +52,9 @@ test = [
5252 " pytest-django" ,
5353]
5454lint = [
55- " bandit==1.8.6" ,
56- " black==25.1.0" ,
57- " flake8==7.3.0" ,
58- " isort==6.0.1" ,
59- " pydocstyle[toml]==6.3.0" ,
55+ " ruff==0.13.1" ,
56+ " pyupgrade==3.20.0" ,
57+ " django-upgrade==1.28.0" ,
6058]
6159docs = [
6260 " sphinx" ,
@@ -93,17 +91,50 @@ source = ["mailauth"]
9391[tool .coverage .report ]
9492show_missing = true
9593
96- [tool .isort ]
97- atomic = true
98- line_length = 88
99- multi_line_output = 3
100- force_grid_wrap = 0
101- known_first_party = " mailauth, tests"
102- include_trailing_comma = true
103- use_parentheses = true
104- default_section = " THIRDPARTY"
105- combine_as_imports = true
106- skip = [" mailauth/_version.py" ]
107-
108- [tool .pydocstyle ]
109- add_ignore = " D1"
94+ [tool .ruff ]
95+ src = [" mailauth" , " tests" ]
96+ line-length = 88
97+ indent-width = 4
98+
99+ [tool .ruff .format ]
100+ quote-style = " double"
101+ indent-style = " space"
102+ skip-magic-trailing-comma = false
103+ line-ending = " auto"
104+ preview = true
105+
106+ [tool .ruff .lint ]
107+ select = [
108+ " D" , # pydocstyle
109+ " E" , # pycodestyle errors
110+ " EXE" , # flake8-executable
111+ " F" , # pyflakes
112+ " I" , # isort
113+ " PGH" , # pygrep-hooks
114+ " PT" , # flake8-pytest-style
115+ " RET" , # flake8-return
116+ " S" , # flake8-bandit
117+ " SIM" , # flake8-simplify
118+ " UP" , # pyupgrade
119+ " W" , # pycodestyle warnings
120+ ]
121+
122+ ignore = [" D1" ]
123+
124+ [tool .ruff .lint .per-file-ignores ]
125+ "*/test*.py" = [" S101" , " PLR2004" ]
126+ "*/migrations/*.py" = [" E501" ]
127+
128+ [tool .ruff .lint .flake8-pytest-style ]
129+ fixture-parentheses = false
130+ mark-parentheses = false
131+
132+ [tool .ruff .lint .isort ]
133+ combine-as-imports = true
134+ split-on-trailing-comma = true
135+ section-order = [" future" , " standard-library" , " third-party" , " first-party" , " local-folder" ]
136+ force-wrap-aliases = true
137+ known-first-party = [" mailauth" , " tests" ]
138+
139+ [tool .ruff .lint .pydocstyle ]
140+ convention = " pep257"
0 commit comments