]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.13] Lint: Create a project-wide ``.ruff.toml`` settings file (GH-133124) (#137670)
author🇺🇦 Sviatoslav Sydorenko (Святослав Сидоренко) <wk.cvs.github@sydorenko.org.ua>
Mon, 25 Aug 2025 11:38:16 +0000 (13:38 +0200)
committerGitHub <noreply@github.com>
Mon, 25 Aug 2025 11:38:16 +0000 (14:38 +0300)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Hugo van Kemenade <1324225+hugovk@users.noreply.github.com>
Co-authored-by: Adam Turner <9087854+AA-Turner@users.noreply.github.com>
.ruff.toml [new file with mode: 0644]
Doc/.ruff.toml
Lib/test/.ruff.toml
Tools/build/.ruff.toml [new file with mode: 0644]
Tools/clinic/.ruff.toml

diff --git a/.ruff.toml b/.ruff.toml
new file mode 100644 (file)
index 0000000..1c015fa
--- /dev/null
@@ -0,0 +1,12 @@
+# Default settings for Ruff in CPython
+
+# PYTHON_FOR_REGEN
+target-version = "py310"
+
+# PEP 8
+line-length = 79
+
+# Enable automatic fixes by default.
+# To override this, use ``fix = false`` in a subdirectory's config file
+# or ``--no-fix`` on the command line.
+fix = true
index 111ce03b91df3896bfb10f76907eb83025f7f5b7..3e676e13c3f41ac6f9d13d7b272e528921553693 100644 (file)
@@ -1,7 +1,6 @@
+extend = "../.ruff.toml"  # Inherit the project-wide settings
+
 target-version = "py312"  # Align with the version in oldest_supported_sphinx
-fix = true
-output-format = "full"
-line-length = 79
 extend-exclude = [
     "includes/*",
     # Temporary exclusions:
index 218eefe5255706ddbe310579bb6e00847f11de9b..f800dc03dce62fa6362d502bbf6e09c57f3814eb 100644 (file)
@@ -1,5 +1,7 @@
-fix = true
+extend = "../../.ruff.toml"  # Inherit the project-wide settings
+
 target-version = "py312"
+
 extend-exclude = [
     # Excluded (run with the other AC files in its own separate ruff job in pre-commit)
     "test_clinic.py",
diff --git a/Tools/build/.ruff.toml b/Tools/build/.ruff.toml
new file mode 100644 (file)
index 0000000..dcbf293
--- /dev/null
@@ -0,0 +1,41 @@
+extend = "../../.ruff.toml"  # Inherit the project-wide settings
+
+[per-file-target-version]
+"deepfreeze.py" = "py311"  # requires `code.co_exceptiontable`
+"stable_abi.py" = "py311"  # requires 'tomllib'
+
+[format]
+preview = true
+docstring-code-format = true
+
+[lint]
+select = [
+    "C4",      # flake8-comprehensions
+    "E",       # pycodestyle
+    "F",       # pyflakes
+    "I",       # isort
+    "ISC",     # flake8-implicit-str-concat
+    "LOG",     # flake8-logging
+    "PGH",     # pygrep-hooks
+    "PT",      # flake8-pytest-style
+    "PYI",     # flake8-pyi
+    "RUF100",  # Ban unused `# noqa` comments
+    "UP",      # pyupgrade
+    "W",       # pycodestyle
+    "YTT",     # flake8-2020
+]
+ignore = [
+    "E501",    # Line too long
+    "F541",    # f-string without any placeholders
+    "PYI024",  # Use `typing.NamedTuple` instead of `collections.namedtuple`
+    "PYI025",  # Use `from collections.abc import Set as AbstractSet`
+    "UP038",   # Use `X | Y` in `isinstance` call instead of `(X, Y)`
+]
+
+[lint.per-file-ignores]
+"{check_extension_modules,freeze_modules}.py" = [
+    "UP031",  # Use format specifiers instead of percent format
+]
+"generate_{re_casefix,sre_constants,token}.py" = [
+    "UP031",  # Use format specifiers instead of percent format
+]
index c019572d0cb1864bf1b249f92972676976f0ce05..5033887df0c1cdaa86fc8a7cf1492213bf020949 100644 (file)
@@ -1,5 +1,4 @@
-target-version = "py310"
-fix = true
+extend = "../../.ruff.toml"  # Inherit the project-wide settings
 
 [lint]
 select = [