Commit Graph

  • 7546db0d61 Accepting request 1206146 from devel:languages:python Ana Guerrero 2024-10-08 15:16:37 +00:00
  • dd17e5b1cc - update to 0.6.9 * Preview features * Fix codeblock dynamic line length calculation for indented docstring examples * [refurb] Mark FURB118 fix as unsafe * Rule changes * [pydocstyle] Don't raise D208 when last line is non-empty * [pylint] Preserve trivia (i.e. comments) in PLR5501 autofix * Configuration * [pyflakes] Add allow-unused-imports setting for unused-import rule (F401) * Bug fixes * Support ruff discovery in pip build environments * [flake8-bugbear] Avoid short circuiting B017 for multiple context managers * [pylint] Do not offer an invalid fix for PLR1716 when the comparisons contain parenthesis * [pyupgrade] Fix UP043 to apply to collections.abc.Generator and collections.abc.AsyncGenerator * [refurb] Fix handling of slices in tuples for FURB118, e.g., x[:, 1] Ondřej Súkup 2024-10-07 16:58:51 +00:00
  • 1ce46c3266 - update to 0.6.9 * Preview features * Fix codeblock dynamic line length calculation for indented docstring examples * [refurb] Mark FURB118 fix as unsafe * Rule changes * [pydocstyle] Don't raise D208 when last line is non-empty * [pylint] Preserve trivia (i.e. comments) in PLR5501 autofix * Configuration * [pyflakes] Add allow-unused-imports setting for unused-import rule (F401) * Bug fixes * Support ruff discovery in pip build environments * [flake8-bugbear] Avoid short circuiting B017 for multiple context managers * [pylint] Do not offer an invalid fix for PLR1716 when the comparisons contain parenthesis * [pyupgrade] Fix UP043 to apply to collections.abc.Generator and collections.abc.AsyncGenerator * [refurb] Fix handling of slices in tuples for FURB118, e.g., x[:, 1] Ondřej Súkup 2024-10-07 16:58:51 +00:00
  • a9c5f883e7 Accepting request 1203894 from devel:languages:python Ana Guerrero 2024-09-29 16:09:07 +00:00
  • c2b1223e9d Accepting request 1203894 from devel:languages:python Ana Guerrero 2024-09-29 16:09:07 +00:00
  • a2aba31431 - update to 0.6.8: * Preview features * Remove unnecessary parentheses around match case clauses * Parenthesize overlong if guards in match..case clauses * Detect basic wildcard imports in ruff analyze graph * [pylint] Implement boolean-chained-comparison (R1716) * Rule changes * [lake8-simplify] Detect SIM910 when using variadic keyword arguments, i.e., **kwargs * [pyupgrade] Avoid false negatives with non-reference shadowed bindings of loop variables (UP028) * Bug fixes * Detect tuples bound to variadic positional arguments i.e. *args * Exit gracefully on broken pipe errors * Avoid panic when analyze graph hits broken pipe * Performance * Reuse BTreeSets in module resolver * Skip traversal for non-compound statements Ondřej Súkup 2024-09-26 13:39:56 +00:00
  • d8fd757aec - update to 0.6.8: * Preview features * Remove unnecessary parentheses around match case clauses * Parenthesize overlong if guards in match..case clauses * Detect basic wildcard imports in ruff analyze graph * [pylint] Implement boolean-chained-comparison (R1716) * Rule changes * [lake8-simplify] Detect SIM910 when using variadic keyword arguments, i.e., **kwargs * [pyupgrade] Avoid false negatives with non-reference shadowed bindings of loop variables (UP028) * Bug fixes * Detect tuples bound to variadic positional arguments i.e. *args * Exit gracefully on broken pipe errors * Avoid panic when analyze graph hits broken pipe * Performance * Reuse BTreeSets in module resolver * Skip traversal for non-compound statements Ondřej Súkup 2024-09-26 13:39:56 +00:00
  • 45a26cc8b9 Accepting request 1202630 from devel:languages:python Ana Guerrero 2024-09-24 15:31:22 +00:00
  • 3ae622054c Accepting request 1202630 from devel:languages:python Ana Guerrero 2024-09-24 15:31:22 +00:00
  • 6379086470 - update to 0.6.7: * Add Python version support to ruff analyze CLI * Add exclude support to ruff analyze * Fix parentheses around return type annotations * \[pycodestyle\] Fix: Don't autofix if the first line ends in a question mark? (D400) * Respect lint.exclude in ruff check --add-noqa * Avoid tracking module resolver files in Salsa - update to 0.6.6: * \[refurb\] Skip slice-to-remove-prefix-or-suffix (FURB188) when non-trivial slice steps are present * Add a subcommand to generate dependency graphs * Fix placement of inline parameter comments * Fix off-by one error in the LineIndex::offset calculation * \[fastapi\] Respect FastAPI aliases in route definitions * \[pydocstyle\] Respect word boundaries when detecting function signature in docs * [pydoclint] Ignore DOC201 when function name is "new" * [refurb] Implement slice-to-remove-prefix-or-suffix (FURB188) * Rule changes * [eradicate] Ignore script-comments with multiple end-tags (ERA001) was added in a newer version than specified in Ruff config (F821) * Add support for extensionless Python files for server * Fix configuration inheritance for configurations specified in the LSP settings * Bug fixes * [ruff] Handle unary operators in decimal-from-float-literal (RUF032) * CLI * Only include rules with diagnostics in SARIF metadata * Add "Copy as pyproject.toml/ruff.toml" and "Paste from TOML" * Fix errors not shown for restored snippet on page load Dirk Mueller 2024-09-23 12:02:23 +00:00
  • de72b1d90e - update to 0.6.7: * Add Python version support to ruff analyze CLI * Add exclude support to ruff analyze * Fix parentheses around return type annotations * \[pycodestyle\] Fix: Don't autofix if the first line ends in a question mark? (D400) * Respect lint.exclude in ruff check --add-noqa * Avoid tracking module resolver files in Salsa - update to 0.6.6: * \[refurb\] Skip slice-to-remove-prefix-or-suffix (FURB188) when non-trivial slice steps are present * Add a subcommand to generate dependency graphs * Fix placement of inline parameter comments * Fix off-by one error in the LineIndex::offset calculation * \[fastapi\] Respect FastAPI aliases in route definitions * \[pydocstyle\] Respect word boundaries when detecting function signature in docs * [pydoclint] Ignore DOC201 when function name is "new" * [refurb] Implement slice-to-remove-prefix-or-suffix (FURB188) * Rule changes * [eradicate] Ignore script-comments with multiple end-tags (ERA001) was added in a newer version than specified in Ruff config (F821) * Add support for extensionless Python files for server * Fix configuration inheritance for configurations specified in the LSP settings * Bug fixes * [ruff] Handle unary operators in decimal-from-float-literal (RUF032) * CLI * Only include rules with diagnostics in SARIF metadata * Add "Copy as pyproject.toml/ruff.toml" and "Paste from TOML" * Fix errors not shown for restored snippet on page load Dirk Mueller 2024-09-23 12:02:23 +00:00
  • 17069d5b87 Accepting request 1201802 from devel:languages:python Ana Guerrero 2024-09-19 19:16:49 +00:00
  • bb1d51752b Accepting request 1201802 from devel:languages:python Ana Guerrero 2024-09-19 19:16:49 +00:00
  • d873b4dbee - update to 0.6.5: * Preview features * [pydoclint] Ignore DOC201 when function name is "new" * [refurb] Implement slice-to-remove-prefix-or-suffix (FURB188) * Rule changes * [eradicate] Ignore script-comments with multiple end-tags (ERA001) * [pyflakes] Improve error message for UndefinedName when a builtin was added in a newer version than specified in Ruff config (F821) * Server * Add support for extensionless Python files for server * Fix configuration inheritance for configurations specified in the LSP settings * Bug fixes * [ruff] Handle unary operators in decimal-from-float-literal (RUF032) * CLI * Only include rules with diagnostics in SARIF metadata * Playground * Add "Copy as pyproject.toml/ruff.toml" and "Paste from TOML" * Fix errors not shown for restored snippet on page load Ondřej Súkup 2024-09-18 13:43:52 +00:00
  • 06779c207d - update to 0.6.5: * Preview features * [pydoclint] Ignore DOC201 when function name is "new" * [refurb] Implement slice-to-remove-prefix-or-suffix (FURB188) * Rule changes * [eradicate] Ignore script-comments with multiple end-tags (ERA001) * [pyflakes] Improve error message for UndefinedName when a builtin was added in a newer version than specified in Ruff config (F821) * Server * Add support for extensionless Python files for server * Fix configuration inheritance for configurations specified in the LSP settings * Bug fixes * [ruff] Handle unary operators in decimal-from-float-literal (RUF032) * CLI * Only include rules with diagnostics in SARIF metadata * Playground * Add "Copy as pyproject.toml/ruff.toml" and "Paste from TOML" * Fix errors not shown for restored snippet on page load Ondřej Súkup 2024-09-18 13:43:52 +00:00
  • ee581a7a22 Accepting request 1199612 from devel:languages:python Ana Guerrero 2024-09-10 19:12:18 +00:00
  • 5f2569237a Accepting request 1199612 from devel:languages:python Ana Guerrero 2024-09-10 19:12:18 +00:00
  • f38da4e07e - update to 0.6.4: * \[flake8-builtins\] Use dynamic builtins list based on Python version * \[pydoclint\] Permit yielding None in DOC402 and DOC403 * \[pylint\] Update diagnostic message for PLW3201 * \[ruff\] Implement post-init-default (RUF033) * \[ruff\] Implement useless if-else (RUF034) * \[flake8-pyi\] Respect pep8_naming.classmethod-decorators settings when determining if a method is a classmethod in custom-type-var-return-type (PYI019) * \[flake8-pyi\] Teach various rules that annotations might be stringized * \[pylint\] Avoid no-self-use for attrs-style validators * \[pylint\] Recurse into subscript subexpressions when searching for list/dict lookups (PLR1733, PLR1736) * \[pyupgrade\] Detect aiofiles.open calls in UP015 * \[pyupgrade\] Mark sys.version_info[0] < 3 and similar comparisons as outdated (UP036) * [flake8-simplify] Extend open-file-with-context-handler to work with other standard-library IO modules (SIM115) * [ruff] Avoid unused-async for functions with FastAPI route decorator (RUF029) * [ruff] Ignore fstring-missing-syntax (RUF027) for fastAPI paths * [ruff] Implement check for Decimal called with a float literal (RUF032) * [flake8-simplify] Extend open-file-with-context-handler to work with dbm.sqlite3 (SIM115) * [pycodestyle] Disable E741 in stub files (.pyi) * [pydoclint] Avoid DOC201 on explicit returns in functions that only return None * Rule changes * [flake8-bugbear] Update diagnostic message when expression is at the end of function (B015) * [flake8-pyi] Skip type annotations in string-or-bytes-too-long (PYI053) * [flake8-type-checking] Always recognise relative imports as first-party Dirk Mueller 2024-09-09 08:15:34 +00:00
  • e1c8684150 - update to 0.6.4: * \[flake8-builtins\] Use dynamic builtins list based on Python version * \[pydoclint\] Permit yielding None in DOC402 and DOC403 * \[pylint\] Update diagnostic message for PLW3201 * \[ruff\] Implement post-init-default (RUF033) * \[ruff\] Implement useless if-else (RUF034) * \[flake8-pyi\] Respect pep8_naming.classmethod-decorators settings when determining if a method is a classmethod in custom-type-var-return-type (PYI019) * \[flake8-pyi\] Teach various rules that annotations might be stringized * \[pylint\] Avoid no-self-use for attrs-style validators * \[pylint\] Recurse into subscript subexpressions when searching for list/dict lookups (PLR1733, PLR1736) * \[pyupgrade\] Detect aiofiles.open calls in UP015 * \[pyupgrade\] Mark sys.version_info[0] < 3 and similar comparisons as outdated (UP036) * [flake8-simplify] Extend open-file-with-context-handler to work with other standard-library IO modules (SIM115) * [ruff] Avoid unused-async for functions with FastAPI route decorator (RUF029) * [ruff] Ignore fstring-missing-syntax (RUF027) for fastAPI paths * [ruff] Implement check for Decimal called with a float literal (RUF032) * [flake8-simplify] Extend open-file-with-context-handler to work with dbm.sqlite3 (SIM115) * [pycodestyle] Disable E741 in stub files (.pyi) * [pydoclint] Avoid DOC201 on explicit returns in functions that only return None * Rule changes * [flake8-bugbear] Update diagnostic message when expression is at the end of function (B015) * [flake8-pyi] Skip type annotations in string-or-bytes-too-long (PYI053) * [flake8-type-checking] Always recognise relative imports as first-party Dirk Mueller 2024-09-09 08:15:34 +00:00
  • 331b8100f5 Accepting request 1198261 from devel:languages:python Dominique Leuenberger 2024-09-03 11:37:42 +00:00
  • 0cc7674dbf Accepting request 1198261 from devel:languages:python Dominique Leuenberger 2024-09-03 11:37:42 +00:00
  • d6d8efee62 - update to 0.6.3: * Preview features * [flake8-simplify] Extend open-file-with-context-handler to work with other standard-library IO modules (SIM115) * [ruff] Avoid unused-async for functions with FastAPI route decorator (RUF029) * [ruff] Ignore fstring-missing-syntax (RUF027) for fastAPI paths * [ruff] Implement check for Decimal called with a float literal (RUF032) * [flake8-simplify] Extend open-file-with-context-handler to work with dbm.sqlite3 (SIM115) * [pycodestyle] Disable E741 in stub files (.pyi) * [pydoclint] Avoid DOC201 on explicit returns in functions that only return None * Rule changes * [flake8-bugbear] Update diagnostic message when expression is at the end of function (B015) * [flake8-pyi] Skip type annotations in string-or-bytes-too-long (PYI053) * [flake8-type-checking] Always recognise relative imports as first-party * [flake8-unused-arguments] Ignore unused arguments on stub functions (ARG001) * [pylint] Ignore augmented assignment for self-cls-assignment (PLW0642) * [flake8-async] Disable check for asyncio before Python 3.11 (ASYNC109) * Bug fixes * [pep8-naming] Don't flag from imports following conventional import names (N817) * [pylint] - Allow __new__ methods to have cls as their first argument even if decorated with @staticmethod for bad-staticmethod-argument (PLW0211) * [FastAPI] Avoid introducing invalid syntax in fix for fast-api-non-annotated-dependency (FAST002) * [flake8-implicit-str-concat] Normalize octals before merging concatenated strings in single-line-implicit-string-concatenation (ISC001) * [flake8-pytest-style] Improve help message for pytest-incorrect-mark-parentheses-style (PT023) * [pylint] Avoid autofix for calls that aren't min or max as starred expression (PLW3301) * [ruff] Add datetime.time, datetime.tzinfo, and datetime.timezone as immutable function calls (RUF009) * [ruff] Extend comment deletion for RUF100 to include trailing text from noqa directives while preserving any following comments on the same line, if any * Fix dark theme on initial page load for the Ruff playground * Server * Show full context in error log messages * Documentation * Add hyperfine installation instructions; update hyperfine code samples Ondřej Súkup 2024-09-02 09:12:13 +00:00
  • 5a3f554ec2 - update to 0.6.3: * Preview features * [flake8-simplify] Extend open-file-with-context-handler to work with other standard-library IO modules (SIM115) * [ruff] Avoid unused-async for functions with FastAPI route decorator (RUF029) * [ruff] Ignore fstring-missing-syntax (RUF027) for fastAPI paths * [ruff] Implement check for Decimal called with a float literal (RUF032) * [flake8-simplify] Extend open-file-with-context-handler to work with dbm.sqlite3 (SIM115) * [pycodestyle] Disable E741 in stub files (.pyi) * [pydoclint] Avoid DOC201 on explicit returns in functions that only return None * Rule changes * [flake8-bugbear] Update diagnostic message when expression is at the end of function (B015) * [flake8-pyi] Skip type annotations in string-or-bytes-too-long (PYI053) * [flake8-type-checking] Always recognise relative imports as first-party * [flake8-unused-arguments] Ignore unused arguments on stub functions (ARG001) * [pylint] Ignore augmented assignment for self-cls-assignment (PLW0642) * [flake8-async] Disable check for asyncio before Python 3.11 (ASYNC109) * Bug fixes * [pep8-naming] Don't flag from imports following conventional import names (N817) * [pylint] - Allow __new__ methods to have cls as their first argument even if decorated with @staticmethod for bad-staticmethod-argument (PLW0211) * [FastAPI] Avoid introducing invalid syntax in fix for fast-api-non-annotated-dependency (FAST002) * [flake8-implicit-str-concat] Normalize octals before merging concatenated strings in single-line-implicit-string-concatenation (ISC001) * [flake8-pytest-style] Improve help message for pytest-incorrect-mark-parentheses-style (PT023) * [pylint] Avoid autofix for calls that aren't min or max as starred expression (PLW3301) * [ruff] Add datetime.time, datetime.tzinfo, and datetime.timezone as immutable function calls (RUF009) * [ruff] Extend comment deletion for RUF100 to include trailing text from noqa directives while preserving any following comments on the same line, if any * Fix dark theme on initial page load for the Ruff playground * Server * Show full context in error log messages * Documentation * Add hyperfine installation instructions; update hyperfine code samples Ondřej Súkup 2024-09-02 09:12:13 +00:00
  • 4bbf80e561 Accepting request 1194751 from devel:languages:python Ana Guerrero 2024-08-20 14:13:10 +00:00
  • 9762fb0dff Accepting request 1194751 from devel:languages:python Ana Guerrero 2024-08-20 14:13:10 +00:00
  • ea958188bf - update to 0.6.1: * Detect imports in src layouts by default for isort rules * The pytest rules PT001 and PT023 now default to omitting the decorator parentheses when there are no arguments . * Lint and format Jupyter Notebook by default . * big list of changes: https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md Ondřej Súkup 2024-08-19 17:42:38 +00:00
  • c4dc60d61d - update to 0.6.1: * Detect imports in src layouts by default for isort rules * The pytest rules PT001 and PT023 now default to omitting the decorator parentheses when there are no arguments . * Lint and format Jupyter Notebook by default . * big list of changes: https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md Ondřej Súkup 2024-08-19 17:42:38 +00:00
  • 5c60a77a2b Accepting request 1192842 from devel:languages:python Dominique Leuenberger 2024-08-13 11:22:52 +00:00
  • d3af8199cc Accepting request 1192842 from devel:languages:python Dominique Leuenberger 2024-08-13 11:22:52 +00:00
  • eac981d0c6 - update to 0.5.6: * Ruff 0.5.6 automatically enables linting and formatting of notebooks in preview mode. * Enable notebooks by default in preview mode * [flake8-builtins] Implement import, lambda, and module shadowing * [pydoclint] Add docstring-missing-returns (DOC201) and docstring-extraneous-returns (DOC202) * [flake8-return] Exempt cached properties and other property-like decorators from explicit return rule (RET501) * Make server panic hook more error resilient * Use $/logTrace for server trace logs in Zed and VS Code * Keep track of deleted cells for reorder change request * [flake8-implicit-str-concat] Always allow explicit multi-line concatenations when implicit concatenations are banned * [flake8-async] Avoid flagging asyncio.timeouts as unused when the context manager includes asyncio.TaskGroup * [flake8-slots] Avoid recommending __slots__ for classes that inherit from more than namedtuple * [isort] Avoid marking required imports as unused * [isort] Preserve trailing inline comments on import-from statements * [pycodestyle] Add newlines before comments (E305) * [pycodestyle] Don't attach comments with mismatched indents * [pyflakes] Fix preview-mode bugs in F401 when attempting to autofix unused first-party submodule imports in an __init__.py file * [pylint] Respect start index in unnecessary-list-index-lookup * [pyupgrade] Avoid recommending no-argument super in slots=True dataclasses * [pyupgrade] Use colon rather than dot formatting for integer-only types * Fix NFKC normalization bug when removing unused imports * Consider more stdlib decorators to be property-like * Improve handling of metaclasses in various linter rules * Improve consistency between linter rules in determining whether a function is property Ondřej Súkup 2024-08-09 10:52:07 +00:00
  • 02a920a0af Accepting request 1191718 from home:uncomfyhalomacro:branches:devel:languages:python Ondřej Súkup 2024-08-09 10:52:07 +00:00
  • 1fdb004325 Accepting request 1190325 from devel:languages:python Dominique Leuenberger 2024-07-31 11:28:25 +00:00
  • f6063af4f9 Accepting request 1190325 from devel:languages:python Dominique Leuenberger 2024-07-31 11:28:25 +00:00
  • d7619ba9c4 - update to 0.5.5 * server funcionality is now stable * big list of changes: https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md Ondřej Súkup 2024-07-29 18:10:36 +00:00
  • a66d8dcedc - update to 0.5.5 * server funcionality is now stable * big list of changes: https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md Ondřej Súkup 2024-07-29 18:10:36 +00:00
  • 83994768e7 Accepting request 1186130 from devel:languages:python Ana Guerrero 2024-07-08 17:07:13 +00:00
  • f93b9987f8 Accepting request 1186130 from devel:languages:python Ana Guerrero 2024-07-08 17:07:13 +00:00
  • f6fca5b7dc - update to 0.5.1: * Enable token-based rules on source with syntax errors * \[flake8-bandit\] Detect httpx for S113 * \[numpy\] Update NPY201 to include exception deprecations * \[pylint\] Generate autofix for duplicate-bases (PLE0241) * Avoid syntax error notification for source code actions * Consider the content of the new cells during notebook sync * Fix replacement edit range computation * Disable auto-fix when source has syntax errors * Fix cache key collisions for paths with separators * Make requires-python inference robust to == * Use char-wise width instead of str-width * \[pycodestyle\] Avoid E275 if keyword followed by comma * \[pycodestyle\] Avoid E275 if keyword is followed by a semicolon * \[pylint\] Skip dummy variables for PLR1704 Dirk Mueller 2024-07-08 09:49:30 +00:00
  • 8ae4e818fd - update to 0.5.1: * Enable token-based rules on source with syntax errors * \[flake8-bandit\] Detect httpx for S113 * \[numpy\] Update NPY201 to include exception deprecations * \[pylint\] Generate autofix for duplicate-bases (PLE0241) * Avoid syntax error notification for source code actions * Consider the content of the new cells during notebook sync * Fix replacement edit range computation * Disable auto-fix when source has syntax errors * Fix cache key collisions for paths with separators * Make requires-python inference robust to == * Use char-wise width instead of str-width * \[pycodestyle\] Avoid E275 if keyword followed by comma * \[pycodestyle\] Avoid E275 if keyword is followed by a semicolon * \[pylint\] Skip dummy variables for PLR1704 Dirk Mueller 2024-07-08 09:49:30 +00:00
  • 8cef2c3109 Accepting request 1184226 from devel:languages:python Ana Guerrero 2024-07-04 14:21:33 +00:00
  • c0ca8eb36a Accepting request 1184226 from devel:languages:python Ana Guerrero 2024-07-04 14:21:33 +00:00
  • 8c75d71fed - update to 0.5.0: * Selecting ALL now excludes deprecated rules * The released archives now include an extra level of nesting, which can be removed with --strip-components=1 when untarring. * The release artifact's file name no longer includes the version tag. This enables users to install via /latest URLs on GitHub. * The diagnostic ranges for some flake8-bandit rules were modified * for details see https://github.com/astral-sh/ruff/releases/tag/0.5.0 * Implement re-lexing logic for better error recovery * Rule changes * [flake8-copyright] Update CPY001 to check the first 4096 bytes instead of 1024 * [pycodestyle] Update E999 to show all syntax errors instead of just the first one * Add tracing setup guide to Helix documentation * Add tracing setup guide to Neovim documentation * Defer notebook cell deletion to avoid an error message Dirk Mueller 2024-07-01 08:23:35 +00:00
  • 9b51e974de - update to 0.5.0: * Selecting ALL now excludes deprecated rules * The released archives now include an extra level of nesting, which can be removed with --strip-components=1 when untarring. * The release artifact's file name no longer includes the version tag. This enables users to install via /latest URLs on GitHub. * The diagnostic ranges for some flake8-bandit rules were modified * for details see https://github.com/astral-sh/ruff/releases/tag/0.5.0 * Implement re-lexing logic for better error recovery * Rule changes * [flake8-copyright] Update CPY001 to check the first 4096 bytes instead of 1024 * [pycodestyle] Update E999 to show all syntax errors instead of just the first one * Add tracing setup guide to Helix documentation * Add tracing setup guide to Neovim documentation * Defer notebook cell deletion to avoid an error message Dirk Mueller 2024-07-01 08:23:35 +00:00
  • 99db7b097a Accepting request 1182988 from devel:languages:python Ana Guerrero 2024-06-24 18:50:51 +00:00
  • 072047b9cf Accepting request 1182988 from devel:languages:python Ana Guerrero 2024-06-24 18:50:51 +00:00
  • 83129278d1 - update to 0.4.10 * Parser * Implement re-lexing logic for better error recovery * Rule changes * [flake8-copyright] Update CPY001 to check the first 4096 bytes instead of 1024 * [pycodestyle] Update E999 to show all syntax errors instead of just the first one * Server * Add tracing setup guide to Helix documentation * Add tracing setup guide to Neovim documentation * Defer notebook cell deletion to avoid an error message * Security * Guard against malicious ecosystem comment artifacts Ondřej Súkup 2024-06-24 09:30:01 +00:00
  • 01dc23a60c - update to 0.4.10 * Parser * Implement re-lexing logic for better error recovery * Rule changes * [flake8-copyright] Update CPY001 to check the first 4096 bytes instead of 1024 * [pycodestyle] Update E999 to show all syntax errors instead of just the first one * Server * Add tracing setup guide to Helix documentation * Add tracing setup guide to Neovim documentation * Defer notebook cell deletion to avoid an error message * Security * Guard against malicious ecosystem comment artifacts Ondřej Súkup 2024-06-24 09:30:01 +00:00
  • 932fff28b3 - update to 0.4.9: * Preview features + [pylint] Implement consider-dict-items (C0206) (#11688) + [refurb] Implement repeated-global (FURB154) (#11187) * Rule changes + [pycodestyle] Adapt fix for E203 to work identical to ruff format (#10999) * Formatter + Fix formatter instability for lines only consisting of zero-width characters (#11748) * Server + Add supported commands in server capabilities (#11850) + Use real file path when available in ruff server (#11800) + Improve error message when a command is run on an unavailable document (#11823) + Introduce the ruff.printDebugInformation command (#11831) + Tracing system now respects log level and trace level, with options to log to a file (#11747) + Handle non-printable characters in diff view (#11687) * Bug fixes + [refurb] Avoid suggesting starmap when arguments are used outside call (FURB140) + [flake8-bugbear] Avoid panic in B909 when checking large loop blocks (#11772) + [refurb] Fix misbehavior of operator.itemgetter when getter param is a tuple (FURB118) (#11774) - update ruff: * by refactoring the lexer and parser to maintain synchronicity between them * Preview features * [flake8-bugbear] Implement return-in-generator (B901) Dirk Mueller 2024-06-17 09:35:46 +00:00
  • 64b15cdfe5 - update to 0.4.9: * Preview features + [pylint] Implement consider-dict-items (C0206) (#11688) + [refurb] Implement repeated-global (FURB154) (#11187) * Rule changes + [pycodestyle] Adapt fix for E203 to work identical to ruff format (#10999) * Formatter + Fix formatter instability for lines only consisting of zero-width characters (#11748) * Server + Add supported commands in server capabilities (#11850) + Use real file path when available in ruff server (#11800) + Improve error message when a command is run on an unavailable document (#11823) + Introduce the ruff.printDebugInformation command (#11831) + Tracing system now respects log level and trace level, with options to log to a file (#11747) + Handle non-printable characters in diff view (#11687) * Bug fixes + [refurb] Avoid suggesting starmap when arguments are used outside call (FURB140) + [flake8-bugbear] Avoid panic in B909 when checking large loop blocks (#11772) + [refurb] Fix misbehavior of operator.itemgetter when getter param is a tuple (FURB118) (#11774) - update ruff: * by refactoring the lexer and parser to maintain synchronicity between them * Preview features * [flake8-bugbear] Implement return-in-generator (B901) Dirk Mueller 2024-06-17 09:35:46 +00:00
  • 9ea22faf18 Accepting request 1178989 from devel:languages:python Ana Guerrero 2024-06-07 13:02:21 +00:00
  • 09e874e74a Accepting request 1178989 from devel:languages:python Ana Guerrero 2024-06-07 13:02:21 +00:00
  • 8f9a859399 - update ruff: * 0.4.8 * Performance * Linter performance has been improved by around 10% on some microbenchmarks * by refactoring the lexer and parser to maintain synchronicity between them * Preview features * [flake8-bugbear] Implement return-in-generator (B901) * [flake8-pyi] Implement PYI063 * [pygrep_hooks] Check blanket ignores via file-level pragmas (PGH004) * Rule changes * [pyupgrade] Update UP035 for Python 3.13 and the latest version of typing_extensions * [numpy] Update NPY001 rule for NumPy 2.0 * Server * Formatting a document with syntax problems no longer spams a visible error popup * CLI * Add RDJson support for --output-format flag * Bug fixes * [pyupgrade] Write empty string in lieu of panic when fixing UP032 * [flake8-simplify] Simplify double negatives in SIM103 * Ensure the expression generator adds a newline before type statements * Respect per-file ignores for blanket and redirected noqa rules * 0.4.7 * Preview features * [flake8-pyi] Implement PYI064 * [flake8-pyi] Implement PYI066 * [flake8-pyi] Implement PYI057 * [pyflakes] Enable F822 in __init__.py files by default * Formatter * Fix incorrect placement of trailing stub function comments * Server Ondřej Súkup 2024-06-06 09:54:18 +00:00
  • a76610a6c7 - update ruff: * 0.4.8 * Performance * Linter performance has been improved by around 10% on some microbenchmarks * by refactoring the lexer and parser to maintain synchronicity between them * Preview features * [flake8-bugbear] Implement return-in-generator (B901) * [flake8-pyi] Implement PYI063 * [pygrep_hooks] Check blanket ignores via file-level pragmas (PGH004) * Rule changes * [pyupgrade] Update UP035 for Python 3.13 and the latest version of typing_extensions * [numpy] Update NPY001 rule for NumPy 2.0 * Server * Formatting a document with syntax problems no longer spams a visible error popup * CLI * Add RDJson support for --output-format flag * Bug fixes * [pyupgrade] Write empty string in lieu of panic when fixing UP032 * [flake8-simplify] Simplify double negatives in SIM103 * Ensure the expression generator adds a newline before type statements * Respect per-file ignores for blanket and redirected noqa rules * 0.4.7 * Preview features * [flake8-pyi] Implement PYI064 * [flake8-pyi] Implement PYI066 * [flake8-pyi] Implement PYI057 * [pyflakes] Enable F822 in __init__.py files by default * Formatter * Fix incorrect placement of trailing stub function comments * Server Ondřej Súkup 2024-06-06 09:54:18 +00:00
  • d8159eb51c Accepting request 1173634 from devel:languages:python Ana Guerrero 2024-05-14 11:37:21 +00:00
  • 3f183348a1 Accepting request 1173634 from devel:languages:python Ana Guerrero 2024-05-14 11:37:21 +00:00
  • 5762e7474a - update to 0.4.4 * Preview features * [pycodestyle] Ignore end-of-line comments when determining blank line rules * [pylint] Detect pathlib.Path.open calls in unspecified-encoding (PLW1514) * [flake8-pyi] Implement PYI059 (generic-not-last-base-class) * [flake8-pyi] Implement PYI062 (duplicate-literal-member) * Rule changes * [flake8-boolean-trap] Allow passing booleans as positional-only arguments in code such as set(True) * [flake8-bugbear] Ignore enum classes in cached-instance-method (B019) * Server * Expand tildes when resolving Ruff server configuration file * Fix ruff server hanging after Neovim closes * Editor settings are used by default if no file-based configuration exists * Bug fixes * [pylint] Consider with statements for too-many-branches (PLR0912) * [flake8-blind-except, tryceratops] Respect logged and re-raised expressions in nested statements (BLE001, TRY201) * Recognise assignments such as __all__ = builtins.list(["foo", "bar"]) as valid __all__ definitions Ondřej Súkup 2024-05-13 11:09:55 +00:00
  • 8f86ce75ed - update to 0.4.4 * Preview features * [pycodestyle] Ignore end-of-line comments when determining blank line rules * [pylint] Detect pathlib.Path.open calls in unspecified-encoding (PLW1514) * [flake8-pyi] Implement PYI059 (generic-not-last-base-class) * [flake8-pyi] Implement PYI062 (duplicate-literal-member) * Rule changes * [flake8-boolean-trap] Allow passing booleans as positional-only arguments in code such as set(True) * [flake8-bugbear] Ignore enum classes in cached-instance-method (B019) * Server * Expand tildes when resolving Ruff server configuration file * Fix ruff server hanging after Neovim closes * Editor settings are used by default if no file-based configuration exists * Bug fixes * [pylint] Consider with statements for too-many-branches (PLR0912) * [flake8-blind-except, tryceratops] Respect logged and re-raised expressions in nested statements (BLE001, TRY201) * Recognise assignments such as __all__ = builtins.list(["foo", "bar"]) as valid __all__ definitions Ondřej Súkup 2024-05-13 11:09:55 +00:00
  • 680a5e1bd4 Accepting request 1172165 from devel:languages:python Dominique Leuenberger 2024-05-07 16:02:30 +00:00
  • 4b9f68f817 Accepting request 1172165 from devel:languages:python Dominique Leuenberger 2024-05-07 16:02:30 +00:00
  • f50771d5fa - update to 0.4.3 * Enhancements * Add support for PEP 696 syntax * Preview features * [refurb] Use function range for reimplemented-operator diagnostics * [refurb] Ignore methods in reimplemented-operator (FURB118) * [refurb] Implement fstring-number-format (FURB116) * [ruff] Implement redirected-noqa (RUF101) * [pyflakes] Distinguish between first-party and third-party imports for fix suggestions * Rule changes * [flake8-bugbear] Ignore non-abstract class attributes when enforcing B024 * [flake8-logging] Include inline instantiations when detecting loggers * [pylint] Also emit PLR0206 for properties with variadic parameters * [ruff] Detect duplicate codes as part of unused-noqa (RUF100) * [flake8-pyi] Allow for overloaded __exit__ and __aexit__ definitions (PYI036) * [pyupgrade] Catch usages of "%s" % var and provide an unsafe fix (UP031) * [refurb] Implement new rule that suggests min/max over sorted() (FURB192) * Formatter * Avoid multiline expression if format specifier is present * LSP * Write ruff server setup guide for Helix * ruff server no longer hangs after shutdown * ruff server reads from a configuration TOML file in the user configuration directory if no local configuration exists * ruff server respects per-file-ignores configuration * ruff server: Support a custom TOML configuration file * ruff server: Support setting to prioritize project configuration over editor configuration * Fix an issue with missing diagnostics for Neovim and Helix * Implement hover documentation for noqa codes * Introduce common Ruff configuration options with new server settings * Bug fixes Ondřej Súkup 2024-05-06 12:09:56 +00:00
  • 30ba73b6f8 - update to 0.4.3 * Enhancements * Add support for PEP 696 syntax * Preview features * [refurb] Use function range for reimplemented-operator diagnostics * [refurb] Ignore methods in reimplemented-operator (FURB118) * [refurb] Implement fstring-number-format (FURB116) * [ruff] Implement redirected-noqa (RUF101) * [pyflakes] Distinguish between first-party and third-party imports for fix suggestions * Rule changes * [flake8-bugbear] Ignore non-abstract class attributes when enforcing B024 * [flake8-logging] Include inline instantiations when detecting loggers * [pylint] Also emit PLR0206 for properties with variadic parameters * [ruff] Detect duplicate codes as part of unused-noqa (RUF100) * [flake8-pyi] Allow for overloaded __exit__ and __aexit__ definitions (PYI036) * [pyupgrade] Catch usages of "%s" % var and provide an unsafe fix (UP031) * [refurb] Implement new rule that suggests min/max over sorted() (FURB192) * Formatter * Avoid multiline expression if format specifier is present * LSP * Write ruff server setup guide for Helix * ruff server no longer hangs after shutdown * ruff server reads from a configuration TOML file in the user configuration directory if no local configuration exists * ruff server respects per-file-ignores configuration * ruff server: Support a custom TOML configuration file * ruff server: Support setting to prioritize project configuration over editor configuration * Fix an issue with missing diagnostics for Neovim and Helix * Implement hover documentation for noqa codes * Introduce common Ruff configuration options with new server settings * Bug fixes Ondřej Súkup 2024-05-06 12:09:56 +00:00
  • 9957b29113 Accepting request 1169832 from devel:languages:python Ana Guerrero 2024-04-24 13:13:35 +00:00
  • ac344179c4 Accepting request 1169832 from devel:languages:python Ana Guerrero 2024-04-24 13:13:35 +00:00
  • d1725d9741 - update to 0.4.1 * A new, hand-written parser * A new language server in Rust * ruff server is only in alpha, but it has a lot of features that you can try out today: * Lints Python files automatically and shows quick-fixes when available * Formats Python files, with support for range formatting * Comes with commands for quickly performing actions: ruff.applyAutofix, ruff.applyFormat, and ruff.applyOrganizeImports * Supports source.fixAll and source.organizeImports source actions * Automatically reloads your project configuration when you change it * To setup ruff server with your editor, refer to the README.md. * Preview features * [pylint] Implement invalid-hash-returned (PLE0309) * [pylint] Implement invalid-index-returned (PLE0305) * [pycodestyle] Do not trigger E3 rules on defs following a function/method with a dummy body * [pylint] Implement invalid-bytes-returned (E0308) * [pylint] Implement invalid-length-returned (E0303) * [pylint] Implement self-cls-assignment (W0642) * [pylint] Omit stubs from invalid-bool and invalid-str-return-type * [ruff] New rule unused-async (RUF029) to detect unneeded async keywords on functions * Rule changes * [flake8-bandit] Allow urllib.request.urlopen calls with static Request argument (S310) * [flake8-bugbear] Treat raise NotImplemented-only bodies as stub functions (B006) * [flake8-slots] Respect same-file Enum subclasses (SLOT000) * [pylint] Support inverted comparisons (PLR1730) * Linter * Improve handling of builtin symbols in linter rules * Improve display of rules in --show-settings * Improve inference capabilities of the BuiltinTypeChecker * Resolve classes and functions relative to script name * Improve performance of RuleTable::any_enabled Ondřej Súkup 2024-04-23 08:08:48 +00:00
  • d3ec76ba43 - update to 0.4.1 * A new, hand-written parser * A new language server in Rust * ruff server is only in alpha, but it has a lot of features that you can try out today: * Lints Python files automatically and shows quick-fixes when available * Formats Python files, with support for range formatting * Comes with commands for quickly performing actions: ruff.applyAutofix, ruff.applyFormat, and ruff.applyOrganizeImports * Supports source.fixAll and source.organizeImports source actions * Automatically reloads your project configuration when you change it * To setup ruff server with your editor, refer to the README.md. * Preview features * [pylint] Implement invalid-hash-returned (PLE0309) * [pylint] Implement invalid-index-returned (PLE0305) * [pycodestyle] Do not trigger E3 rules on defs following a function/method with a dummy body * [pylint] Implement invalid-bytes-returned (E0308) * [pylint] Implement invalid-length-returned (E0303) * [pylint] Implement self-cls-assignment (W0642) * [pylint] Omit stubs from invalid-bool and invalid-str-return-type * [ruff] New rule unused-async (RUF029) to detect unneeded async keywords on functions * Rule changes * [flake8-bandit] Allow urllib.request.urlopen calls with static Request argument (S310) * [flake8-bugbear] Treat raise NotImplemented-only bodies as stub functions (B006) * [flake8-slots] Respect same-file Enum subclasses (SLOT000) * [pylint] Support inverted comparisons (PLR1730) * Linter * Improve handling of builtin symbols in linter rules * Improve display of rules in --show-settings * Improve inference capabilities of the BuiltinTypeChecker * Resolve classes and functions relative to script name * Improve performance of RuleTable::any_enabled Ondřej Súkup 2024-04-23 08:08:48 +00:00
  • 3885521780 Accepting request 1167007 from devel:languages:python Ana Guerrero 2024-04-14 09:53:43 +00:00
  • 1803cc1d2d Accepting request 1167007 from devel:languages:python Ana Guerrero 2024-04-14 09:53:43 +00:00
  • 110ae87c6a - update to 0.3.7 * Preview features * [flake8-bugbear] Implement loop-iterator-mutation (B909) * [pylint] Implement rule to prefer augmented assignment (PLR6104) * [pylint] Implement bad-staticmethod-argument (PLW0211) * [pylint] Implement if-stmt-min-max (PLR1730, PLR1731) * [pyupgrade] Replace str,Enum multiple inheritance with StrEnum UP042 * [refurb] Implement if-expr-instead-of-or-operator (FURB110) * [refurb] Implement int-on-sliced-str (FURB166) * [refurb] Implement write-whole-file (FURB103) * [refurb] Support itemgetter in reimplemented-operator (FURB118) * [flake8_comprehensions] Add sum/min/max to unnecessary comprehension check (C419) * Rule changes * [pydocstyle] Require capitalizing docstrings where the first sentence is a single word (D403) * [pycodestyle] Ignore annotated lambdas in class scopes (E731) * [flake8-pyi] Various improvements to PYI034 * [flake8-slots] Flag subclasses of call-based typing.NamedTuples as well as subclasses of collections.namedtuple() (SLOT002) * [pyflakes] Allow forward references in class bases in stub files (F821) * [pygrep-hooks] Improve blanket-noqa error message (PGH004) * CLI * Support FORCE_COLOR env var * Configuration * Support negated patterns in [extend-]per-file-ignores * Bug fixes * Avoid TOCTOU errors in cache initialization * [pylint] Recode nan-comparison rule to W0177 * [pylint] Reverse min-max logic in if-stmt-min-max * [flake8-import-conventions] Accept non-aliased (but correct) import in unconventional-import-alias (ICN001) * [flake8-quotes] Add semantic model flag when inside f-string replacement field * [pep8-naming] Recursively resolve TypeDicts for N815 violations Ondřej Súkup 2024-04-12 08:57:53 +00:00
  • 3a4e0c09ba - update to 0.3.7 * Preview features * [flake8-bugbear] Implement loop-iterator-mutation (B909) * [pylint] Implement rule to prefer augmented assignment (PLR6104) * [pylint] Implement bad-staticmethod-argument (PLW0211) * [pylint] Implement if-stmt-min-max (PLR1730, PLR1731) * [pyupgrade] Replace str,Enum multiple inheritance with StrEnum UP042 * [refurb] Implement if-expr-instead-of-or-operator (FURB110) * [refurb] Implement int-on-sliced-str (FURB166) * [refurb] Implement write-whole-file (FURB103) * [refurb] Support itemgetter in reimplemented-operator (FURB118) * [flake8_comprehensions] Add sum/min/max to unnecessary comprehension check (C419) * Rule changes * [pydocstyle] Require capitalizing docstrings where the first sentence is a single word (D403) * [pycodestyle] Ignore annotated lambdas in class scopes (E731) * [flake8-pyi] Various improvements to PYI034 * [flake8-slots] Flag subclasses of call-based typing.NamedTuples as well as subclasses of collections.namedtuple() (SLOT002) * [pyflakes] Allow forward references in class bases in stub files (F821) * [pygrep-hooks] Improve blanket-noqa error message (PGH004) * CLI * Support FORCE_COLOR env var * Configuration * Support negated patterns in [extend-]per-file-ignores * Bug fixes * Avoid TOCTOU errors in cache initialization * [pylint] Recode nan-comparison rule to W0177 * [pylint] Reverse min-max logic in if-stmt-min-max * [flake8-import-conventions] Accept non-aliased (but correct) import in unconventional-import-alias (ICN001) * [flake8-quotes] Add semantic model flag when inside f-string replacement field * [pep8-naming] Recursively resolve TypeDicts for N815 violations Ondřej Súkup 2024-04-12 08:57:53 +00:00
  • ed2154ca2a Accepting request 1166515 from devel:languages:python Ana Guerrero 2024-04-10 15:48:53 +00:00
  • a5ddb1a987 Accepting request 1166515 from devel:languages:python Ana Guerrero 2024-04-10 15:48:53 +00:00
  • 44965e7ae3 - update to 0.3.5 * Preview features * [pylint] Implement modified-iterating-set (E4703) * [refurb] Implement for-loop-set-mutations (FURB142) * [refurb] Implement unnecessary-from-float (FURB164) * [refurb] Implement verbose-decimal-constructor (FURB157) * Rule changes * [flake8-comprehensions] Handled special case for C401 which also matches C416 * [flake8-pyi] Mark unaliased-collections-abc-set-import fix as "safe" for more cases in stub files (PYI025) * [numpy] Add row_stack to NumPy 2.0 migration rule * [pycodestyle] Allow cell magics before an import (E402) * [pycodestyle] Avoid blank line rules for the first logical line in cell * Configuration * Respected nested namespace packages * [flake8-boolean-trap] Add setting for user defined allowed boolean trap * Bug fixes * Correctly handle references in __all__ definitions when renaming symbols in autofixes * Track ranges of names inside __all__ definitions * [flake8-bugbear] Avoid false positive for usage after continue (B031) * [flake8-copyright] Accept commas in default copyright pattern * [flake8-datetimez] Allow f-strings with %z for DTZ007 * [flake8-pytest-style] Fix PT014 autofix for last item in list * [flake8-quotes] Ignore Q000, Q001 when string is inside forward ref * [isort] Always place non-relative imports after relative imports * [isort] Respect Unicode characters in import sorting * [pyflakes] Fix F821 false negatives when from __future__ import annotations is active (attempt 2) * [pyflakes] Make unnecessary-lambda an always-unsafe fix * [pylint] Fixed false-positive on the rule PLW1641 (eq-without-hash) * [ruff] Fix panic in unused # noqa removal with multi-byte space (RUF100) * Documentation Ondřej Súkup 2024-04-09 21:35:45 +00:00
  • f7efc1a721 - update to 0.3.5 * Preview features * [pylint] Implement modified-iterating-set (E4703) * [refurb] Implement for-loop-set-mutations (FURB142) * [refurb] Implement unnecessary-from-float (FURB164) * [refurb] Implement verbose-decimal-constructor (FURB157) * Rule changes * [flake8-comprehensions] Handled special case for C401 which also matches C416 * [flake8-pyi] Mark unaliased-collections-abc-set-import fix as "safe" for more cases in stub files (PYI025) * [numpy] Add row_stack to NumPy 2.0 migration rule * [pycodestyle] Allow cell magics before an import (E402) * [pycodestyle] Avoid blank line rules for the first logical line in cell * Configuration * Respected nested namespace packages * [flake8-boolean-trap] Add setting for user defined allowed boolean trap * Bug fixes * Correctly handle references in __all__ definitions when renaming symbols in autofixes * Track ranges of names inside __all__ definitions * [flake8-bugbear] Avoid false positive for usage after continue (B031) * [flake8-copyright] Accept commas in default copyright pattern * [flake8-datetimez] Allow f-strings with %z for DTZ007 * [flake8-pytest-style] Fix PT014 autofix for last item in list * [flake8-quotes] Ignore Q000, Q001 when string is inside forward ref * [isort] Always place non-relative imports after relative imports * [isort] Respect Unicode characters in import sorting * [pyflakes] Fix F821 false negatives when from __future__ import annotations is active (attempt 2) * [pyflakes] Make unnecessary-lambda an always-unsafe fix * [pylint] Fixed false-positive on the rule PLW1641 (eq-without-hash) * [ruff] Fix panic in unused # noqa removal with multi-byte space (RUF100) * Documentation Ondřej Súkup 2024-04-09 21:35:45 +00:00
  • fb87dfb187 Accepting request 1160627 from devel:languages:python Ana Guerrero 2024-03-26 18:24:28 +00:00
  • beeecce63d Accepting request 1160627 from devel:languages:python Ana Guerrero 2024-03-26 18:24:28 +00:00
  • 8a76a4aa22 - update ruff to 0.3.4 * Preview features * [flake8-simplify] Detect implicit else cases in needless-bool (SIM103) * [pylint] Implement nan-comparison (PLW0117) * [pylint] Implement nonlocal-and-global (E115) * [pylint] Implement singledispatchmethod-function (PLE5120) * [refurb] Implement list-reverse-copy (FURB187) * Rule changes * [flake8-pytest-style] Add automatic fix for pytest-parametrize-values-wrong-type (PT007) * [pycodestyle] Allow SPDX license headers to exceed the line length (E501) * Formatter * Fix unstable formatting for trailing subscript end-of-line comment * Bug fixes * Avoid code comment detection in PEP 723 script tags * Avoid incorrect tuple transformation in single-element case (C409) * Bug fix: Prevent fully defined links name from being reformatted * Consider raw source code for W605 * Docs: Link inline settings when not part of options section * Don't treat annotations as redefinitions in .pyi files * Fix E231 bug: Inconsistent catch compared to pycodestyle, such as when dict nested in list * Fix pylint upstream categories not showing in docs * Add missing Options references to blank line docs * 'Revert "F821: Fix false negatives in .py files when from __future__ import annotations is active "' * Apply NFKC normalization to unicode identifiers in the lexer * Avoid failures due to non-deterministic binding ordering * [flake8-bugbear] Allow tuples of exceptions (B030) * [flake8-quotes] Avoid syntax errors due to invalid quotes (Q000, Q002) Ondřej Súkup 2024-03-22 10:50:16 +00:00
  • 5f196ee920 - update ruff to 0.3.4 * Preview features * [flake8-simplify] Detect implicit else cases in needless-bool (SIM103) * [pylint] Implement nan-comparison (PLW0117) * [pylint] Implement nonlocal-and-global (E115) * [pylint] Implement singledispatchmethod-function (PLE5120) * [refurb] Implement list-reverse-copy (FURB187) * Rule changes * [flake8-pytest-style] Add automatic fix for pytest-parametrize-values-wrong-type (PT007) * [pycodestyle] Allow SPDX license headers to exceed the line length (E501) * Formatter * Fix unstable formatting for trailing subscript end-of-line comment * Bug fixes * Avoid code comment detection in PEP 723 script tags * Avoid incorrect tuple transformation in single-element case (C409) * Bug fix: Prevent fully defined links name from being reformatted * Consider raw source code for W605 * Docs: Link inline settings when not part of options section * Don't treat annotations as redefinitions in .pyi files * Fix E231 bug: Inconsistent catch compared to pycodestyle, such as when dict nested in list * Fix pylint upstream categories not showing in docs * Add missing Options references to blank line docs * 'Revert "F821: Fix false negatives in .py files when from __future__ import annotations is active "' * Apply NFKC normalization to unicode identifiers in the lexer * Avoid failures due to non-deterministic binding ordering * [flake8-bugbear] Allow tuples of exceptions (B030) * [flake8-quotes] Avoid syntax errors due to invalid quotes (Q000, Q002) Ondřej Súkup 2024-03-22 10:50:16 +00:00
  • 22d99bde62 Accepting request 1159022 from devel:languages:python Dominique Leuenberger 2024-03-20 20:10:29 +00:00
  • 8f5e66e89a Accepting request 1159022 from devel:languages:python Dominique Leuenberger 2024-03-20 20:10:29 +00:00
  • 91893edc35 - update to 0.3.3 * Preview features * [flake8-bandit]: Implement S610 rule * [pycodestyle] Implement blank-line-at-end-of-file (W391) * [pycodestyle] Implement redundant-backslash (E502) * [pylint] - implement redeclared-assigned-name (W0128) * Rule changes * [flake8_comprehensions] Handled special case for C400 which also matches C416 * [flake8-bandit] Implement upstream updates for S311, S324 and S605 * [pyflakes] Remove F401 fix for __init__ imports by default and allow opt-in to unsafe fix * [pylint] Implement invalid-bool-return-type (E304) * [pylint] Include builtin warnings in useless-exception-statement (PLW0133) * CLI * Add message on success to ruff check * Bug fixes * [PIE970] Allow trailing ellipsis in typing.TYPE_CHECKING * Avoid TRIO115 if the argument is a variable * [F811] Avoid removing shadowed imports that point to different symbols * Fix F821 and F822 false positives in .pyi files * Fix F821 false negatives in .py files when from __future__ import annotations is active * Fix case where Indexer fails to identify continuation preceded by newline #10351 * Sort hash maps in Settings display * Track conditional deletions in the semantic model * [C413] Wrap expressions in parentheses when negating * [pycodestyle] Do not ignore lines before the first logical line in blank lines rules. * [pycodestyle] Do not trigger E225 and E275 when the next token is a ')' * [pylint] Avoid false-positive slot non-assignment for __dict__ (PLE0237) * Gate f-string struct size test for Rustc < 1.76 * Documentation * Use ruff.toml format in README Ondřej Súkup 2024-03-18 13:48:21 +00:00
  • da4bf405fa - update to 0.3.3 * Preview features * [flake8-bandit]: Implement S610 rule * [pycodestyle] Implement blank-line-at-end-of-file (W391) * [pycodestyle] Implement redundant-backslash (E502) * [pylint] - implement redeclared-assigned-name (W0128) * Rule changes * [flake8_comprehensions] Handled special case for C400 which also matches C416 * [flake8-bandit] Implement upstream updates for S311, S324 and S605 * [pyflakes] Remove F401 fix for __init__ imports by default and allow opt-in to unsafe fix * [pylint] Implement invalid-bool-return-type (E304) * [pylint] Include builtin warnings in useless-exception-statement (PLW0133) * CLI * Add message on success to ruff check * Bug fixes * [PIE970] Allow trailing ellipsis in typing.TYPE_CHECKING * Avoid TRIO115 if the argument is a variable * [F811] Avoid removing shadowed imports that point to different symbols * Fix F821 and F822 false positives in .pyi files * Fix F821 false negatives in .py files when from __future__ import annotations is active * Fix case where Indexer fails to identify continuation preceded by newline #10351 * Sort hash maps in Settings display * Track conditional deletions in the semantic model * [C413] Wrap expressions in parentheses when negating * [pycodestyle] Do not ignore lines before the first logical line in blank lines rules. * [pycodestyle] Do not trigger E225 and E275 when the next token is a ')' * [pylint] Avoid false-positive slot non-assignment for __dict__ (PLE0237) * Gate f-string struct size test for Rustc < 1.76 * Documentation * Use ruff.toml format in README Ondřej Súkup 2024-03-18 13:48:21 +00:00
  • 4e353b122f Accepting request 1156882 from devel:languages:python Ana Guerrero 2024-03-14 16:42:20 +00:00
  • 5d78c09ce6 Accepting request 1156882 from devel:languages:python Ana Guerrero 2024-03-14 16:42:20 +00:00
  • 4f989f3cf8 - update to 0.3.2 * Preview features * Improve single-with item formatting for Python 3.8 or older * Rule changes * [pyupgrade] Allow fixes for f-string rule regardless of line length (UP032) * [pycodestyle] Include actual conditions in E712 diagnostics * Bug fixes * Fix trailing kwargs end of line comment after slash * Fix unstable with items formatting * Avoid repeating function calls in f-string conversions * Fix E203 false positive for slices in format strings * Fix incorrect Parameter range for *args and **kwargs * Treat typing.Annotated subscripts as type definitions * 0.3.1 * Preview features * [pycodestyle] Fix E301 not triggering on decorated methods. * [pycodestyle] Respect isort settings in blank line rules (E3*) * [pycodestyle] Make blank lines in typing stub files optional (E3*) * [pylint] Implement singledispatch-method (E1519) * [pylint] Implement useless-exception-statement (W0133) * Rule changes * [flake8-debugger] Check for use of debugpy and ptvsd debug modules * [pyupgrade] Generate diagnostic for all valid f-string conversions regardless of line length (UP032) * [pep8_naming] Add fixes for N804 and N805 * CLI * Colorize the output of ruff format --diff * Make --config and --isolated global flags * Correctly expand tildes and environment variables in paths passed to --config * Configuration * Accept a PEP 440 version specifier for required-version Ondřej Súkup 2024-03-11 08:55:36 +00:00
  • fa7208be97 - update to 0.3.2 * Preview features * Improve single-with item formatting for Python 3.8 or older * Rule changes * [pyupgrade] Allow fixes for f-string rule regardless of line length (UP032) * [pycodestyle] Include actual conditions in E712 diagnostics * Bug fixes * Fix trailing kwargs end of line comment after slash * Fix unstable with items formatting * Avoid repeating function calls in f-string conversions * Fix E203 false positive for slices in format strings * Fix incorrect Parameter range for *args and **kwargs * Treat typing.Annotated subscripts as type definitions * 0.3.1 * Preview features * [pycodestyle] Fix E301 not triggering on decorated methods. * [pycodestyle] Respect isort settings in blank line rules (E3*) * [pycodestyle] Make blank lines in typing stub files optional (E3*) * [pylint] Implement singledispatch-method (E1519) * [pylint] Implement useless-exception-statement (W0133) * Rule changes * [flake8-debugger] Check for use of debugpy and ptvsd debug modules * [pyupgrade] Generate diagnostic for all valid f-string conversions regardless of line length (UP032) * [pep8_naming] Add fixes for N804 and N805 * CLI * Colorize the output of ruff format --diff * Make --config and --isolated global flags * Correctly expand tildes and environment variables in paths passed to --config * Configuration * Accept a PEP 440 version specifier for required-version Ondřej Súkup 2024-03-11 08:55:36 +00:00
  • 5bd5d7adb6 - Remove limitations on building (do not exclude any arch beforehand). Matej Cepl 2024-03-08 16:58:05 +00:00
  • 7253a8ffec - Remove limitations on building (do not exclude any arch beforehand). Matej Cepl 2024-03-08 16:58:05 +00:00
  • 53bd271c15 Accepting request 1155592 from devel:languages:python Dominique Leuenberger 2024-03-06 22:04:51 +00:00
  • eae2de6950 Accepting request 1155592 from devel:languages:python Dominique Leuenberger 2024-03-06 22:04:51 +00:00
  • 4bc9116680 - update to 0.3.0 * Preview features * [flake8-bandit] Remove suspicious-lxml-import (S410) * [pycodestyle] Allow os.environ modifications between imports (E402) * [pycodestyle] Don't warn about a single whitespace character before a comma in a tuple (E203) * Rule changes * [eradicate] Detect commented out case statements (ERA001) * [eradicate] Detect single-line code for try:, except:, etc. (ERA001) * [flake8-boolean-trap] Allow boolean positionals in __post_init__ * [flake8-copyright] Allow © in copyright notices * [isort]: Use one blank line after imports in typing stub files * [pylint] New Rule dict-iter-missing-items (PLE1141) * [pylint] Ignore sys.version and sys.platform (PLR1714) * [pyupgrade] Detect literals with unary operators (UP018) * [ruff] Expand rule for list(iterable).pop(0) idiom (RUF015) * Formatter * This release introduces the Ruff 2024.2 style, stabilizing the following changes: * Prefer splitting the assignment's value over the target or type annotation * Remove blank lines before class docstrings * Wrap multiple context managers in with parentheses when targeting Python 3.9 or newer * Add a blank line after nested classes with a dummy body (...) in typing stub files * Reduce vertical spacing for classes and functions with a dummy (...) body * Add a blank line after the module docstring * Parenthesize long type hints in assignments * Preserve indent for single multiline-string call-expressions * Normalize hex escape and unicode escape sequences * Format module docstrings * CLI * Explicitly disallow extend as part of a --config flag * Remove build from the default exclusion list Ondřej Súkup 2024-03-06 14:23:47 +00:00
  • 8c9cf25952 - update to 0.3.0 * Preview features * [flake8-bandit] Remove suspicious-lxml-import (S410) * [pycodestyle] Allow os.environ modifications between imports (E402) * [pycodestyle] Don't warn about a single whitespace character before a comma in a tuple (E203) * Rule changes * [eradicate] Detect commented out case statements (ERA001) * [eradicate] Detect single-line code for try:, except:, etc. (ERA001) * [flake8-boolean-trap] Allow boolean positionals in __post_init__ * [flake8-copyright] Allow © in copyright notices * [isort]: Use one blank line after imports in typing stub files * [pylint] New Rule dict-iter-missing-items (PLE1141) * [pylint] Ignore sys.version and sys.platform (PLR1714) * [pyupgrade] Detect literals with unary operators (UP018) * [ruff] Expand rule for list(iterable).pop(0) idiom (RUF015) * Formatter * This release introduces the Ruff 2024.2 style, stabilizing the following changes: * Prefer splitting the assignment's value over the target or type annotation * Remove blank lines before class docstrings * Wrap multiple context managers in with parentheses when targeting Python 3.9 or newer * Add a blank line after nested classes with a dummy body (...) in typing stub files * Reduce vertical spacing for classes and functions with a dummy (...) body * Add a blank line after the module docstring * Parenthesize long type hints in assignments * Preserve indent for single multiline-string call-expressions * Normalize hex escape and unicode escape sequences * Format module docstrings * CLI * Explicitly disallow extend as part of a --config flag * Remove build from the default exclusion list Ondřej Súkup 2024-03-06 14:23:47 +00:00
  • 6c61e04b79 Accepting request 1155229 from openSUSE:Factory:RISCV Matej Cepl 2024-03-05 21:09:48 +00:00
  • a4368094c0 Accepting request 1155229 from openSUSE:Factory:RISCV Matej Cepl 2024-03-05 21:09:48 +00:00
  • d3286fb873 Accepting request 1152491 from devel:languages:python Ana Guerrero 2024-02-28 18:46:31 +00:00
  • f711577330 Accepting request 1152491 from devel:languages:python Ana Guerrero 2024-02-28 18:46:31 +00:00
  • f74cb95efd - update to 0.2.2 * Highlights include: * Initial support formatting f-strings (in --preview). * Support for overriding arbitrary configuration options via the CLI through an expanded --config argument (e.g., --config "lint.isort.combine-as-imports=false"). * Significant performance improvements in Ruff's lexer, parser, and lint rules. * Preview features * Implement minimal f-string formatting * [pycodestyle] Add blank line(s) rules (E301, E302, E303, E304, E305, E306) * [refurb] Implement readlines_in_for (FURB129) * Rule changes * [ruff] Ensure closing parentheses for multiline sequences are always on their own line (RUF022, RUF023) * [numpy] Add missing deprecation violations (NPY002) * [flake8-bandit] Detect mark_safe usages in decorators * [ruff] Expand asyncio-dangling-task (RUF006) to include new_event_loop * [flake8-pyi] Ignore 'unused' private type dicts in class scopes * Formatter * Docstring formatting: Preserve tab indentation when using indent-style=tabs * Disable top-level docstring formatting for notebooks * Stabilize quote-style's preserve mode * CLI * Allow arbitrary configuration options to be overridden via the CLI * Bug fixes * Make show-settings filters directory-agnostic * Respect duplicates when rewriting type aliases * Respect tuple assignments in typing analyzer * Use atomic write when persisting cache * Use non-parenthesized range for DebugText * [flake8-simplify] Avoid false positive with async for loops (SIM113) * [flake8-trio] Respect async with in timeout-without-await Ondřej Súkup 2024-02-21 16:54:24 +00:00
  • a8986e4f6e - update to 0.2.2 * Highlights include: * Initial support formatting f-strings (in --preview). * Support for overriding arbitrary configuration options via the CLI through an expanded --config argument (e.g., --config "lint.isort.combine-as-imports=false"). * Significant performance improvements in Ruff's lexer, parser, and lint rules. * Preview features * Implement minimal f-string formatting * [pycodestyle] Add blank line(s) rules (E301, E302, E303, E304, E305, E306) * [refurb] Implement readlines_in_for (FURB129) * Rule changes * [ruff] Ensure closing parentheses for multiline sequences are always on their own line (RUF022, RUF023) * [numpy] Add missing deprecation violations (NPY002) * [flake8-bandit] Detect mark_safe usages in decorators * [ruff] Expand asyncio-dangling-task (RUF006) to include new_event_loop * [flake8-pyi] Ignore 'unused' private type dicts in class scopes * Formatter * Docstring formatting: Preserve tab indentation when using indent-style=tabs * Disable top-level docstring formatting for notebooks * Stabilize quote-style's preserve mode * CLI * Allow arbitrary configuration options to be overridden via the CLI * Bug fixes * Make show-settings filters directory-agnostic * Respect duplicates when rewriting type aliases * Respect tuple assignments in typing analyzer * Use atomic write when persisting cache * Use non-parenthesized range for DebugText * [flake8-simplify] Avoid false positive with async for loops (SIM113) * [flake8-trio] Respect async with in timeout-without-await Ondřej Súkup 2024-02-21 16:54:24 +00:00
  • baf2db0363 Accepting request 1144921 from devel:languages:python Ana Guerrero 2024-02-07 17:50:45 +00:00
  • e65fab4d4f Accepting request 1144921 from devel:languages:python Ana Guerrero 2024-02-07 17:50:45 +00:00
  • b41eea67e8 - update to 0.2.1 * This release includes support for range formatting (i.e., the ability to format specific lines within a source file). * Preview features * [refurb] Implement missing-f-string-syntax (RUF027) * Format module-level docstrings * Formatter * Add --range option to ruff format * Don't trim last empty line in docstrings * Bug fixes * Skip empty lines when determining base indentation * Drop __get__ and __set__ from unnecessary-dunder-call * Respect generic Protocol in ellipsis removal * Revert "Use publicly available Apple Silicon runners" * Performance * Skip LibCST parsing for standard dedent adjustments * Remove CST-based fixer for C408 * Add our own ignored-names abstractions * Remove CST-based fixers for C400, C401, C410, and C418 * Use AhoCorasick to speed up quote match * Remove CST-based fixers for C405 and C409 * Add fast-path for comment detection * Invert order of checks in zero-sleep-call * Short-circuit typing matches based on imports * Run dunder method rule on methods directly * Track top-level module imports in the semantic model * Slight speed-up for lowercase and uppercase identifier checks * Remove LibCST-based fixer for C403 * Documentation * Update max-pos-args example to max-positional-args Ondřej Súkup 2024-02-07 12:57:56 +00:00