@@ -97,7 +97,7 @@ test = "mypy --install-types --non-interactive {args:.}"
9797dependencies = [
9898 " black[jupyter]==22.12.0" ,
9999 " mdformat>0.7" ,
100- " ruff==0.0.206 " ,
100+ " ruff==0.0.237 " ,
101101]
102102detached = true
103103[tool .hatch .envs .lint .scripts ]
@@ -165,38 +165,19 @@ target-version = ["py38"]
165165target-version = " py38"
166166line-length = 100
167167select = [
168- " A" , " B" , " C" , " E" , " EM" , " F" , " FBT" , " I" , " N" , " Q" , " RUF" , " S" , " T" ,
169- " UP" , " W" , " YTT" ,
168+ " A" , " B" , " C" , " DTZ" , " E" , " EM" , " F" , " FBT" , " I" , " ICN" , " ISC" , " N" ,
169+ " PLC" , " PLE" , " PLR" , " PLW" , " Q" , " RUF" , " S" , " SIM" , " T" , " TID" , " UP" ,
170+ " W" , " YTT" ,
170171]
171172ignore = [
172- # Allow non-abstract empty methods in abstract base classes
173- " B027" ,
174- # Ignore McCabe complexity
175- " C901" ,
176- # Allow boolean positional values in function calls, like `dict.get(... True)`
177- " FBT003" ,
178- # Use of `assert` detected
179- " S101" ,
180- # Line too long
181- " E501" ,
182- # Relative imports are banned
183- " I252" ,
184- # Boolean ... in function definition
185- " FBT001" ,
186- " FBT002" ,
187- # Module level import not at top of file
188- " E402" ,
189- # A001/A002/A003 .. is shadowing a python builtin
190- " A001" ,
191- " A002" ,
192- " A003" ,
193- # Possible hardcoded password
194- " S105" ,
195- " S106" ,
196- # Q000 Single quotes found but double quotes preferred
197- " Q000" ,
198- # N806 Variable `B` in function should be lowercase
199- " N806" ,
173+ # Q000 Single quotes found but double quotes preferred
174+ " Q000" ,
175+ # FBT001 Boolean positional arg in function definition
176+ " FBT001" , " FBT002" , " FBT003" ,
177+ # E501 Line too long (158 > 100 characters)
178+ " E501" ,
179+ # SIM105 Use `contextlib.suppress(...)`
180+ " SIM105" ,
200181]
201182unfixable = [
202183 # Don't touch print statements
@@ -213,7 +194,8 @@ unfixable = [
213194# T201 `print` found
214195# B007 Loop control variable `i` not used within the loop body.
215196# N802 Function name `assertIn` should be lowercase
216- "tests/*" = [" B011" , " F841" , " C408" , " E402" , " T201" , " B007" , " N802" ]
197+ # S101 Use of `assert` detected
198+ "tests/*" = [" B011" , " F841" , " C408" , " E402" , " T201" , " B007" , " N802" , " S101" ]
217199
218200[tool .interrogate ]
219201ignore-init-module =true
0 commit comments