From 1c3f0ff2323a6f5984596cb6c49ffda11d1b90ab Mon Sep 17 00:00:00 2001 From: Nelson Torres Date: Fri, 14 Feb 2025 17:03:17 -0300 Subject: [PATCH] `ruff.toml`: - Add new `ruff.toml` config file and migrate all configs from `pyproject.toml` --- pyproject.toml | 17 --------- ruff.toml | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 93 insertions(+), 17 deletions(-) create mode 100644 ruff.toml diff --git a/pyproject.toml b/pyproject.toml index cb8eda2d..7a6de4e7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,23 +18,6 @@ requires = ["hatchling"] build-backend = "hatchling.build" -# ------ - ------ -# TODO, stop warnings around `anext()` builtin use? -# tool.ruff.target-version = "py310" - -# [tool.ruff.lint] -# # https://docs.astral.sh/ruff/settings/#lint_ignore -# ignore = [] - -# # https://docs.astral.sh/ruff/settings/#lint_per-file-ignores -# "piker/ui/qt.py" = [ -# "E402", -# 'F401', # unused imports (without __all__ or blah as blah) -# # "F841", # unused variable rules -# ] -# ignore-init-module-imports = false - - [project] name = "piker" version = "0.1.0a0dev0" diff --git a/ruff.toml b/ruff.toml new file mode 100644 index 00000000..4b40c900 --- /dev/null +++ b/ruff.toml @@ -0,0 +1,93 @@ +# from default `ruff.toml` @ +# https://docs.astral.sh/ruff/configuration/ + +# Exclude a variety of commonly ignored directories. +exclude = [ + ".bzr", + ".direnv", + ".eggs", + ".git", + ".git-rewrite", + ".hg", + ".ipynb_checkpoints", + ".mypy_cache", + ".nox", + ".pants.d", + ".pyenv", + ".pytest_cache", + ".pytype", + ".ruff_cache", + ".svn", + ".tox", + ".venv", + ".vscode", + "__pypackages__", + "_build", + "buck-out", + "build", + "dist", + "node_modules", + "site-packages", + "venv", +] + +# Same as Black. +line-length = 88 +indent-width = 4 + +# Assume Python 3.9 +target-version = "py312" + +# ------ - ------ +# TODO, stop warnings around `anext()` builtin use? +# tool.ruff.target-version = "py310" + + +[lint] +# Enable Pyflakes (`F`) and a subset of the pycodestyle (`E`) codes by default. +# Unlike Flake8, Ruff doesn't enable pycodestyle warnings (`W`) or +# McCabe complexity (`C901`) by default. +select = ["E4", "E7", "E9", "F"] +ignore = [] +ignore-init-module-imports = false + +[lint.per-file-ignores] +"piker/ui/qt.py" = [ + "E402", + 'F401', # unused imports (without __all__ or blah as blah) + # "F841", # unused variable rules +] + +# 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] +# Use single quotes in `ruff format`. +quote-style = "single" + +# 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" + +# Enable auto-formatting of code examples in docstrings. Markdown, +# reStructuredText code/literal blocks and doctests are all supported. +# +# This is currently disabled by default, but it is planned for this +# to be opt-out in the future. +docstring-code-format = false + +# Set the line length limit used when formatting code snippets in +# docstrings. +# +# This only has an effect when the `docstring-code-format` setting is +# enabled. +docstring-code-line-length = "dynamic"