aboutsummaryrefslogtreecommitdiffstats
path: root/src/python/ruff.toml
diff options
context:
space:
mode:
Diffstat (limited to 'src/python/ruff.toml')
-rw-r--r--src/python/ruff.toml64
1 files changed, 64 insertions, 0 deletions
diff --git a/src/python/ruff.toml b/src/python/ruff.toml
new file mode 100644
index 0000000..1f0c2f8
--- /dev/null
+++ b/src/python/ruff.toml
@@ -0,0 +1,64 @@
+# Exclude a variety of commonly ignored directories.
+exclude = [
+ ".bzr",
+ ".direnv",
+ ".eggs",
+ ".git",
+ ".git-rewrite",
+ ".hg",
+ ".mypy_cache",
+ ".nox",
+ ".pants.d",
+ ".pytype",
+ ".ruff_cache",
+ ".svn",
+ ".tox",
+ ".venv",
+ "__pypackages__",
+ "_build",
+ "buck-out",
+ "build",
+ "dist",
+ "node_modules",
+ "venv",
+]
+
+# Same as Black.
+line-length = 88
+indent-width = 4
+
+# Assume Python 3.10
+target-version = "py310"
+
+[lint]
+# https://docs.astral.sh/ruff/rules/
+# Enable:
+# Pyflakes (`F`)
+# Pycodestyle (`E`)
+# Whitespace-warnings (`W`)
+# isort (`I`)
+select = ["E", "F", "W", "I"]
+
+# E501 too long lines
+# W191 tab indents - `ruff format` recommends this be ignored
+ignore = ["E501", "W191"]
+
+# Allow fix for all enabled rules (when `--fix`) is provided.
+fixable = ["ALL"]
+unfixable = []
+
+# Allow unused variables when underscore-prefixed.
+dummy-variable-rgx = "^(_+|(_+[a-zA-Z0-9_]*[a-zA-Z0-9]+?))$"
+
+[format]
+# Like Black, use double quotes for strings.
+quote-style = "double"
+
+# Like Black, indent with spaces, rather than tabs.
+indent-style = "space"
+
+# Like Black, respect magic trailing commas.
+skip-magic-trailing-comma = false
+
+# Like Black, automatically detect the appropriate line ending.
+line-ending = "auto"