@@ -135,6 +135,10 @@ skip = [
135135 " tests/stub_data/*" ,
136136]
137137
138+ [tool .markdown_toc_creator ]
139+ horizontal-rule-style = " prettier"
140+ proactive = false
141+
138142[tool .mypy ]
139143# Type-checks the interior of functions without type annotations.
140144check_untyped_defs = true
@@ -220,7 +224,7 @@ max-line-length = 88 # Match ruff line-length
220224# Files or directories matching the regular expression patterns are skipped.
221225# The regex matches against base names, not paths. The default value ignores
222226ignore-patterns = [
223- " version.py" , # setuptools-scm version files, SEE: https://github.com/pylint-dev/pylint/issues/10479
227+ " ^ version\\ .py$ " , # Version files made by setuptools_scm , SEE: https://github.com/pylint-dev/pylint/issues/10479
224228]
225229# Use multiple processes to speed up Pylint. Specifying 0 will auto-detect the
226230# number of processors available to use, and will cap the count on Windows to
@@ -250,6 +254,7 @@ disable = [
250254 " global-statement" , # Rely on ruff PLW0603 for this
251255 " global-variable-not-assigned" , # Rely on ruff PLW0602 for this
252256 " import-outside-toplevel" , # Rely on ruff PLC0415 for this
257+ " import-private-name" , # Rely on ruff PLC2701 for this
253258 " invalid-name" , # Don't care to enforce this
254259 " keyword-arg-before-vararg" , # Rely on ruff B026 for this
255260 " line-too-long" , # Rely on ruff E501 for this
@@ -289,7 +294,9 @@ disable = [
289294 " unused-argument" , # Rely on ruff ARG002 for this
290295 " unused-import" , # Rely on ruff F401 for this
291296 " unused-variable" , # Rely on ruff F841 for this
297+ " unused-wildcard-import" , # Wildcard imports are convenient
292298 " use-sequence-for-iteration" , # Rely on ruff C0208 for this
299+ " wildcard-import" , # Wildcard imports are convenient
293300 " wrong-import-order" , # Rely on ruff I001 for this
294301 " wrong-import-position" , # Rely on ruff E402 for this
295302]
@@ -367,11 +374,14 @@ preview = true
367374explicit-preview-rules = true
368375extend-select = [
369376 " ASYNC212" ,
377+ " ASYNC240" ,
370378 " ASYNC250" ,
371379 " B901" ,
372380 " B903" ,
373381 " B909" ,
382+ " B912" ,
374383 " CPY001" ,
384+ " DOC102" ,
375385 " DOC201" ,
376386 " DOC202" ,
377387 " DOC402" ,
@@ -477,6 +487,7 @@ extend-select = [
477487 " RUF061" ,
478488 " RUF063" ,
479489 " RUF064" ,
490+ " RUF065" ,
480491 " RUF102" ,
481492 " TC008" ,
482493 " UP042" ,
@@ -568,6 +579,7 @@ mypy-init-return = true
568579[tool .ruff .lint .per-file-ignores ]
569580"**/tests/*.py" = [
570581 " N802" , # Tests function names can match class names
582+ " PLC2701" , # Test can import private names if needed
571583 " PLR2004" , # Tests can have magic values
572584 " PLR6301" , # Test classes can ignore self
573585 " S101" , # Tests can have assertions
0 commit comments