From 3faee283f3e56f046e106fff5330a756a949618d Mon Sep 17 00:00:00 2001 From: Simeon Simeonov Date: Tue, 23 Dec 2025 21:24:30 +0100 Subject: Improve layout and add ruff configuration --- .ruff.toml | 98 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 .ruff.toml (limited to '.ruff.toml') diff --git a/.ruff.toml b/.ruff.toml new file mode 100644 index 0000000..956737c --- /dev/null +++ b/.ruff.toml @@ -0,0 +1,98 @@ +cache-dir = "~/.cache/ruff" +indent-width = 4 +line-length = 79 +target-version = "py314" + +[lint] +select = ["ALL", "D101", "D102", "D103", "D104"] +ignore = [ + "ANN", + "BLE001", + "COM812", + "D", + "EM101", # Exception must not use a string literal, assign to variable first + "EM102", # Exception must not use an f-string literal, assign to variable first + "ERA001", + #"FBT001", + #"FBT002", + #"INP001", + #"ISC001", + #"N802", + #"N806", + #"PLR2004", + # "PTH111", + # "PTH123", + "RUF012", + #"RUF013", + #"S101", + "S308", + #"T201", + "TRY003", + "TRY300", + #"UP020" +] + +# C901 - `outside_temperature` is too complex (12 > 10) +# D101 - Missing docstring in public class +# D102 - Missing docstring in public method +# D200 - One-line docstring should fit on one line +# D203 - 1 blank line required before class docstring +# D205 - 1 blank line required between summary line and description +# D403 - First word of the first line should be capitalized: `str` -> `Str` +# ERA001 - Found commented-out code +# FBT001 - Boolean-typed positional argument in function definition +# FBT002 - Boolean default positional argument in function definition +# INP001 - File `beinc_weechat.py` is part of an implicit namespace package. Add an `__init__.py` +# N802 - Function name `do_GET` should be lowercase +# N806 - Variable `POST_data` in function should be lowercase +# PTH111 - `os.path.expanduser()` should be replaced by `Path.expanduser()` +# PTH123 - `open()` should be replaced by `Path.open()` +# PLR0912 - Too many branches (13 > 12) +# PLR0913 - Too many arguments in function definition (6 > 5) +# PLR2004 - Magic value used in comparison, consider replacing `200` with a constant variable +# RUF012 - Mutable class attributes should be annotated with `typing.ClassVar` +# RUF013 - PEP 484 prohibits implicit `Optional` +# S101 - Use of `assert` detected +# S308 - Use of `mark_safe` may expose cross-site scripting vulnerabilities +# S603 - `subprocess` call: check for execution of untrusted input +# T201 - `print` found +# TRY003 - Avoid specifying long messages outside the exception class +# TRY300 - Consider moving this statement to an `else` block +# UP020 - Use builtin `open` + +# Allow fix for all enabled rules (when `--fix`) is provided. +fixable = ["ALL"] +unfixable = [] + +[format] +# Like Black, use double quotes for strings. +quote-style = "single" + +# Like Black, indent with spaces, rather than tabs. +indent-style = "space" + +# Like Black, respect magic trailing commas. +skip-magic-trailing-comma = true + +# Like Black, automatically detect the appropriate line ending. +line-ending = "lf" + +# 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" + +[lint.flake8-quotes] +inline-quotes = "single" + +[lint.isort] +split-on-trailing-comma = false -- cgit v1.3