Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update dependency ruff to v0.1.15 #585

Merged
merged 5 commits into from
Jan 30, 2024
Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Jun 21, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
ruff (source, changelog) 0.0.272 -> 0.1.15 age adoption passing confidence

Release Notes

astral-sh/ruff (ruff)

v0.1.15

Compare Source

Preview features
  • Error when NURSERY selector is used with --preview (#​9682)
  • Preserve indentation around multiline strings in formatter (#​9637)
  • [flake8-return] Add fixes for all rules (RET505, RET506, RET507, RET508) (#​9595)
  • [flake8-simplify] Add fix for if-with-same-arms (SIM114) (#​9591)
  • [pycodestyle] Add fix for multiple-imports-on-one-line (E401) (#​9518)
  • [pylint] Add fix for collapsible-else-if (PLR5501) (#​9594)
  • [pylint] Add fix for useless-else-on-loop (PLW0120) (#​9590)
  • [pylint] Implement assigning-non-slot (E0237) (#​9623)
  • [pylint] Implement potential-index-error (PLE0643) (#​9545)
  • [pylint] Implement too-many-nested-blocks (PLR1702) (#​9172)
  • [ruff] Add rule to sort __slots__ and __match_args__ (#​9564)
  • [ruff] Detect unnecessary dict comprehensions for iterables (RUF025) (#​9613)
  • [ruff] Guard against use of default_factory as a keyword argument (RUF026) (#​9651)
  • [ruff] Implement mutable-fromkeys-value (RUF024) (#​9597)
CLI
  • Enable auto-wrapping of --help output (#​9633)
Bug fixes
  • Avoid rendering display-only rules as fixable (#​9649)
  • Detect automagic-like assignments in notebooks (#​9653)
  • Generate custom JSON schema for dynamic setting (#​9632)
  • [flake8-no-pep420] Include global --config when determining namespace packages (#​9603)
  • [flake8-pie] Omit bound tuples passed to .startswith or .endswith (#​9661)
  • [flake8-return] Avoid panic when fixing inlined else blocks (#​9657)
  • [flake8-return] Consider exception suppression in unnecessary assignment (#​9673)
  • [flake8-return] Take NoReturn annotation into account when analyzing implicit returns (#​9636)
  • [flake8-simplify] Support inverted returns in needless-bool (SIM103) (#​9619)
  • [flake8-type-checking] Add Pydantic's BaseConfig to default-copy list (#​9650)
  • [flake8-type-checking] Avoid marking InitVar as a typing-only annotation (#​9688)
  • [pycodestyle] Allow dtype comparisons in type-comparison (#​9676)
  • [pydocstyle] Re-implement last-line-after-section (D413) (#​9654)
Documentation
  • [flake8-pytest-style] Add fix safety documentation for duplicate-parameterize-test-cases (#​9678)
  • [pylint] Document literal-membership fix safety conditions (#​9677)
  • [isort] Fix reference to isort rule code (#​9598)
Other changes

v0.1.14

Compare Source

Preview features
  • [flake8-bugbear] Add fix for duplicate-value (B033) (#​9510)
  • [flake8-simplify] Implement enumerate-for-loop (SIM113) (#​7777)
  • [pygrep_hooks] Add fix for deprecated-log-warn (PGH002) (#​9519)
  • [pylint] Implement import-private-name (C2701) (#​5920)
  • [refurb] Implement regex-flag-alias with fix (FURB167) (#​9516)
  • [ruff] Add rule and fix to sort contents of __all__ (RUF022) (#​9474)
  • [tryceratops] Add fix for error-instead-of-exception (TRY400) (#​9520)
Rule changes
  • [flake8-pyi] Fix PYI047 false negatives on PEP-695 type aliases (#​9566)
  • [flake8-pyi] Fix PYI049 false negatives on call-based TypedDicts (#​9567)
  • [pylint] Exclude self and cls when counting method arguments (PLR0917) (#​9563)
CLI
  • --show-settings displays active settings in a far more readable format (#​9464)
  • Add --extension support to the formatter (#​9483)
Configuration
  • Ignore preview status for fixable and unfixable selectors (#​9538)
  • [pycodestyle] Use the configured tab size when expanding indents (#​9506)
Bug fixes
  • Recursively visit deferred AST nodes (#​9541)
  • Visit deferred lambdas before type definitions (#​9540)
  • [flake8-simplify] Avoid some more enumerate-for-loop false positives (SIM113) (#​9515)
  • [pandas-vet] Limit inplace diagnostics to methods that accept inplace (#​9495)
  • [pylint] Add the __prepare__ method to the list of recognized dunder method (#​9529)
  • [pylint] Ignore unnecessary dunder calls within dunder definitions (#​9496)
  • [refurb] Avoid bailing when reimplemented-operator is called on function (FURB118) (#​9556)
  • [ruff] Avoid treating named expressions as static keys (RUF011) (#​9494)
Documentation
  • Add instructions on using noqa with isort rules (#​9555)
  • Documentation update for URL giving 'page not found' (#​9565)
  • Fix admonition in dark mode (#​9502)
  • Update contributing docs to use cargo bench -p ruff_benchmark (#​9535)
  • Update emacs integration section to include emacs-ruff-format (#​9403)
  • [flake8-blind-except] Document exceptions to blind-except rule (#​9580)

v0.1.13

Compare Source

Bug fixes
  • Include base pyproject when initializing cache settings (#​9480)
  • [flake8-simplify] Account for possibly-empty f-string values in truthiness logic (#​9484)
  • [pylint] Add the missing period in unnecessary-dunder-call (#​9485)
  • [pylint] Fix __aenter__ message in unnecessary-dunder-call (#​9492)

v0.1.12

Compare Source

Preview features
  • Formatter: Hug multiline-strings in preview style (#​9243)
  • [flake8-bandit] Add ssl-with-no-version (S504) (#​9384)
  • [flake8-bandit] Implement ssl-insecure-version (S502) (#​9390)
  • [flake8-bandit] Implement ssl-with-bad-defaults (S503) (#​9391)
  • [flake8-bandit] Implement suspicious import rules (S4XX) (#​8831)
  • [flake8-simplify] Implement zip-dict-keys-and-values (SIM911) (#​9460)
  • [pyflakes] Add a fix for redefined-while-unused (F811) (#​9419)
  • [pylint] Implement unnecessary-dunder-call (C2801) (#​9166)
  • [ruff] Add parenthesize-chained-operators (RUF021) to enforce parentheses in a or b and c (#​9440)
Rule changes
  • [flake8-boolean-trap] Allow Boolean positional arguments in setters (#​9429)
  • [flake8-builtins] Restrict builtin-attribute-shadowing (A003) to actual shadowed references (#​9462)
  • [flake8-pyi] Add fix for generator-return-from-iter-method (PYI058) (#​9355)
  • [pyflakes] Don't flag redefined-while-unused (F811) in if branches (#​9418)
  • [pyupgrade] Add some additional Python 3.12 typing members to deprecated-import (#​9445)
  • [ruff] Add fix for parenthesize-chained-operators (RUF021) (#​9449)
  • [ruff] Include subscripts and attributes in static key rule (RUF011) (#​9416)
  • [ruff] Support variable keys in static dictionary key rule (RUF011) (#​9411)
Formatter
  • Generate deterministic IDs when formatting notebooks (#​9359)
  • Allow # fmt: skip with interspersed same-line comments (#​9395)
  • Parenthesize breaking named expressions in match guards (#​9396)
Bug fixes
  • Add cell indexes to all diagnostics (#​9387)
  • Avoid infinite loop in constant vs. None comparisons (#​9376)
  • Handle raises with implicit alternate branches (#​9377)
  • Ignore trailing quotes for unclosed l-brace errors (#​9388)
  • Respect multi-segment submodule imports when resolving qualified names (#​9382)
  • Use DisplayParseError for stdin parser errors (#​9409)
  • Use comment_ranges for isort directive extraction (#​9414)
  • Use transformed source code for diagnostic locations (#​9408)
  • [flake8-pyi] Exclude warnings.deprecated and typing_extensions.deprecated arguments (#​9423)
  • [flake8-pyi] Fix false negative for unused-private-protocol (PYI046) with unused generic protocols (#​9405)
  • [pydocstyle] Disambiguate argument descriptors from section headers (#​9427)
  • [pylint] Homogenize PLR0914 message to match other PLR09XX rules (#​9399)
  • [ruff] Allow Hashable = None in type annotations (RUF013) (#​9442)
Documentation
  • Fix admonition hyperlink colouring (#​9385)
  • Add missing preview link (#​9386)

v0.1.11

Compare Source

Preview features
  • [pylint] Implement super-without-brackets (W0245) (#​9257)
Bug fixes
  • Check path string properly in python -m ruff invocations (#​9367)
Documentation
  • Tweak relative-imports message (#​9365)
  • Add fix safety note for yield-in-for-loop (#​9364)

v0.1.10

Compare Source

Preview features
  • Improve dummy_implementations preview style formatting (#​9240)
  • Normalise Hex and unicode escape sequences in strings (#​9280)
  • Parenthesize long type annotations in annotated assignments (#​9210)
  • Parenthesize multi-context managers in with statements (#​9222)
  • [flake8-pyi] Implement generator-return-from-iter-method (PYI058) (#​9313)
  • [pylint] Implement empty-comment (PLR2044) (#​9174)
  • [refurb] Implement bit-count (FURB161) (#​9265)
  • [ruff] Add never-union rule to detect redundant typing.NoReturn and typing.Never (#​9217)
CLI
  • Add paths to TOML parse errors (#​9358)
  • Add row and column numbers to formatter parse errors (#​9321)
  • Improve responsiveness when invoked via Python (#​9315)
  • Short rule messages should not end with a period (#​9345)
Configuration
  • Respect runtime-required decorators on functions (#​9317)
Bug fixes
  • Avoid asyncio-dangling-task for nonlocal and global bindings (#​9263)
  • Escape trailing placeholders in rule documentation (#​9301)
  • Fix continuation detection following multi-line strings (#​9332)
  • Fix scoping for generators in named expressions in classes (#​9248)
  • Port from obsolete wsl crate to is-wsl (#​9356)
  • Remove special pre-visit for module docstrings (#​9261)
  • Respect __str__ definitions from super classes (#​9338)
  • Respect unused-noqa via per-file-ignores (#​9300)
  • Respect attribute chains when resolving builtin call paths (#​9309)
  • Treat all typing_extensions members as typing aliases (#​9335)
  • Use Display for formatter parse errors (#​9316)
  • Wrap subscripted dicts in parens for f-string conversion (#​9238)
  • [flake8-annotations] Avoid adding return types to stub methods (#​9277)
  • [flake8-annotations] Respect mixed return and raise cases in return-type analysis (#​9310)
  • [flake8-bandit] Don't report violations when SafeLoader is imported from yaml.loader (S506) (#​9299)
  • [pylint] Avoid panic when comment is preceded by Unicode (#​9331)
  • [pylint] Change PLR0917 error message to match other PLR09XX messages (#​9308)
  • [refurb] Avoid false positives for math-constant (FURB152) (#​9290)
Documentation
  • Expand target name for better rule documentation (#​9302)
  • Fix typos found by codespell (#​9346)
  • [perflint] Document PERF102 fix un-safety (#​9351)
  • [pyupgrade] Document UP007 fix un-safety (#​9306)

v0.1.9

Compare Source

Breaking changes
  • Add site-packages to default exclusions (#​9188)
Preview features
  • Fix: Avoid parenthesizing subscript targets and values (#​9209)
  • [pylint] Implement too-many-locals (PLR0914) (#​9163)
  • Implement reimplemented_operator (FURB118) (#​9171)
  • Add a rule to detect string members in runtime-evaluated unions (#​9143)
  • Implement no_blank_line_before_class_docstring preview style (#​9154)
Rule changes
  • CONSTANT_CASE variables are improperly flagged for yoda violation (SIM300) (#​9164)
  • [flake8-pyi] Cover ParamSpecs and TypeVarTuples (PYI018) (#​9198)
  • [flake8-bugbear] Add fix for zip-without-explicit-strict (B905) (#​9176)
  • Add fix to automatically remove print and pprint statements (T201, T203) (#​9208)
  • Prefer Never to NoReturn in auto-typing in Python >= 3.11 (ANN201) (#​9213)
Formatter
  • can_omit_optional_parentheses: Exit early for unparenthesized expressions (#​9125)
  • Fix dynamic mode with doctests so that it doesn't exceed configured line width (#​9129)
  • Fix can_omit_optional_parentheses for expressions with a right most fstring (#​9124)
  • Add target_version to formatter options (#​9220)
CLI
  • Update ruff format --check to display message for already formatted files (#​9153)
Bug fixes
  • Reverse order of arguments for operator.contains (#​9192)
  • Iterate over lambdas in deferred type annotations (#​9175)
  • Fix panic in D208 with multibyte indent (#​9147)
  • Add support for NoReturn in auto-return-typing (#​9206)
  • Allow removal of typing from exempt-modules (#​9214)
  • Avoid mutable-class-default violations for Pydantic subclasses (#​9187)
  • Fix dropped union expressions for piped non-types in PYI055 autofix (#​9161)
  • Enable annotation quoting for multi-line expressions (#​9142)
  • Deduplicate edits when quoting annotations (#​9140)
  • Prevent invalid utf8 indexing in cell magic detection (#​9146)
  • Avoid nested quotations in auto-quoting fix (#​9168)
  • Add base-class inheritance detection to flake8-django rules (#​9151)
  • Avoid asyncio-dangling-task violations on shadowed bindings (#​9215)
Documentation
  • Fix blog post URL in changelog (#​9119)
  • Add error suppression hint for multi-line strings (#​9205)
  • Fix typo in SemanticModel.parent_expression docstring (#​9167)
  • Document link between import sorting and formatter (#​9117)

v0.1.8

Compare Source

This release includes opt-in support for formatting Python snippets within
docstrings via the docstring-code-format setting.
Check out the blog post for more details!

Preview features
  • Add "preserve" quote-style to mimic Black's skip-string-normalization (#​8822)
  • Implement prefer_splitting_right_hand_side_of_assignments preview style (#​8943)
  • [pycodestyle] Add fix for unexpected-spaces-around-keyword-parameter-equals (#​9072)
  • [pycodestyle] Add fix for comment-related whitespace rules (#​9075)
  • [pycodestyle] Allow sys.path modifications between imports (#​9047)
  • [refurb] Implement hashlib-digest-hex (FURB181) (#​9077)
Rule changes
  • Allow flake8-type-checking rules to automatically quote runtime-evaluated references (#​6001)
  • Allow transparent cell magics in Jupyter Notebooks (#​8911)
  • [flake8-annotations] Avoid ANN2xx fixes for abstract methods with empty bodies (#​9034)
  • [flake8-self] Ignore underscore references in type annotations (#​9036)
  • [pep8-naming] Allow class names when apps.get_model is a non-string (#​9065)
  • [pycodestyle] Allow matplotlib.use calls to intersperse imports (#​9094)
  • [pyflakes] Support fixing unused assignments in tuples by renaming variables (F841) (#​9107)
  • [pylint] Add fix for subprocess-run-without-check (PLW1510) (#​6708)
Formatter
  • Add docstring-code-format knob to enable docstring snippet formatting (#​8854)
  • Use double quotes for all docstrings, including single-quoted docstrings (#​9020)
  • Implement "dynamic" line width mode for docstring code formatting (#​9098)
  • Support reformatting Markdown code blocks (#​9030)
  • add support for formatting reStructuredText code snippets (#​9003)
  • Avoid trailing comma for single-argument with positional separator (#​9076)
  • Fix handling of trailing target comment (#​9051)
CLI
  • Hide unsafe fix suggestions when explicitly disabled (#​9095)
  • Add SARIF support to --output-format (#​9078)
Bug fixes
  • Apply unnecessary index rule prior to enumerate rewrite (#​9012)
  • [flake8-err-msg] Allow EM fixes even if msg variable is defined (#​9059)
  • [flake8-pie] Prevent keyword arguments duplication (#​8450)
  • [flake8-pie] Respect trailing comma in unnecessary-dict-kwargs (PIE804) (#​9015)
  • [flake8-raise] Avoid removing parentheses on ctypes.WinError (#​9027)
  • [isort] Avoid invalid combination of force-sort-within-types and lines-between-types (#​9041)
  • [isort] Ensure that from-style imports are always ordered first in __future__ (#​9039)
  • [pycodestyle] Allow tab indentation before keyword (#​9099)
  • [pylint] Ignore @overrides and @overloads for too-many-positional (#​9000)
  • [pyupgrade] Enable printf-string-formatting fix with comments on right-hand side (#​9037)
  • [refurb] Make math-constant (FURB152) rule more targeted (#​9054)
  • [refurb] Support floating-point base in redundant-log-base (FURB163) (#​9100)
  • [ruff] Detect unused-asyncio-dangling-task (RUF006) on unused assignments (#​9060)

v0.1.7

Compare Source

Preview features
  • Implement multiline dictionary and list hugging for preview style (#​8293)
  • Implement the fix_power_op_line_length preview style (#​8947)
  • Use Python version to determine typing rewrite safety (#​8919)
  • [flake8-annotations] Enable auto-return-type involving Optional and Union annotations (#​8885)
  • [flake8-bandit] Implement django-raw-sql (S611) (#​8651)
  • [flake8-bandit] Implement tarfile-unsafe-members (S202) (#​8829)
  • [flake8-pyi] Implement fix for unnecessary-literal-union (PYI030) (#​7934)
  • [flake8-simplify] Extend dict-get-with-none-default (SIM910) to non-literals (#​8762)
  • [pylint] - add unnecessary-list-index-lookup (PLR1736) + autofix (#​7999)
  • [pylint] - implement R0202 and R0203 with autofixes (#​8335)
  • [pylint] Implement repeated-keyword (PLe1132) (#​8706)
  • [pylint] Implement too-many-positional (PLR0917) (#​8995)
  • [pylint] Implement unnecessary-dict-index-lookup (PLR1733) (#​8036)
  • [refurb] Implement redundant-log-base (FURB163) (#​8842)
Rule changes
  • [flake8-boolean-trap] Allow booleans in @override methods (#​8882)
  • [flake8-bugbear] Avoid B015,B018 for last expression in a cell (#​8815)
  • [flake8-pie] Allow ellipses for enum values in stub files (#​8825)
  • [flake8-pyi] Check PEP 695 type aliases for snake-case-type-alias and t-suffixed-type-alias (#​8966)
  • [flake8-pyi] Check for kwarg and vararg NoReturn type annotations (#​8948)
  • [flake8-simplify] Omit select context managers from SIM117 (#​8801)
  • [pep8-naming] Allow Django model loads in non-lowercase-variable-in-function (N806) (#​8917)
  • [pycodestyle] Avoid E703 for last expression in a cell (#​8821)
  • [pycodestyle] Update E402 to work at cell level for notebooks (#​8872)
  • [pydocstyle] Avoid D100 for Jupyter Notebooks (#​8816)
  • [pylint] Implement fix for unspecified-encoding (PLW1514) (#​8928)
Formatter
  • Avoid unstable formatting in ellipsis-only body with trailing comment (#​8984)
  • Inline trailing comments for type alias similar to assignments (#​8941)
  • Insert trailing comma when function breaks with single argument (#​8921)
CLI
  • Update ruff check and ruff format to default to the current directory (#​8791)
  • Stop at the first resolved parent configuration (#​8864)
Configuration
  • [pylint] Default max-positional-args to max-args (#​8998)
  • [pylint] Add allow-dunder-method-names setting for bad-dunder-method-name (PLW3201) (#​8812)
  • [isort] Add support for from-first setting (#​8663)
  • [isort] Add support for length-sort settings (#​8841)
Bug fixes
  • Add support for @functools.singledispatch (#​8934)
  • Avoid off-by-one error in stripping noqa following multi-byte char (#​8979)
  • Avoid off-by-one error in with-item named expressions (#​8915)
  • Avoid syntax error via invalid ur string prefix (#​8971)
  • Avoid underflow in get_model matching (#​8965)
  • Avoid unnecessary index diagnostics when value is modified (#​8970)
  • Convert over-indentation rule to use number of characters (#​8983)
  • Detect implicit returns in auto-return-types (#​8952)
  • Fix start >= end error in over-indentation (#​8982)
  • Ignore @overload and @override methods for too-many-arguments checks (#​8954)
  • Lexer start of line is false only for Mode::Expression (#​8880)
  • Mark pydantic_settings.BaseSettings as having default copy semantics (#​8793)
  • Respect dictionary unpacking in NamedTuple assignments (#​8810)
  • Respect local subclasses in flake8-type-checking (#​8768)
  • Support type alias statements in simple statement positions (#​8916)
  • [flake8-annotations] Avoid filtering out un-representable types in return annotation (#​8881)
  • [flake8-pie] Retain extra ellipses in protocols and abstract methods (#​8769)
  • [flake8-pyi] Respect local enum subclasses in simple-defaults (PYI052) (#​8767)
  • [flake8-trio] Use correct range for TRIO115 fix (#​8933)
  • [flake8-trio] Use full arguments range for zero-sleep-call (#​8936)
  • [isort] fix: mark __main__ as first-party import (#​8805)
  • [pep8-naming] Avoid N806 errors for type alias statements (#​8785)
  • [perflint] Avoid PERF101 if there's an append in loop body (#​8809)
  • [pycodestyle] Allow space-before-colon after end-of-slice (#​8838)
  • [pydocstyle] Avoid non-character breaks in over-indentation (D208) (#​8866)
  • [pydocstyle] Ignore underlines when determining docstring logical lines (#​8929)
  • [pylint] Extend self-assigning-variable to multi-target assignments (#​8839)
  • [tryceratops] Avoid repeated triggers in nested tryceratops diagnostics (#​8772)
Documentation
  • Add advice for fixing RUF008 when mutability is not desired (#​8853)
  • Added the command to run ruff using pkgx to the installation.md (#​8955)
  • Document fix safety for flake8-comprehensions and some pyupgrade rules (#​8918)
  • Fix doc formatting for zero-sleep-call (#​8937)
  • Remove duplicate imports from os-stat documentation (#​8930)
  • Replace generated reference to MkDocs (#​8806)
  • Update Arch Linux package URL in installation.md (#​8802)
  • [flake8-pyi] Fix error in t-suffixed-type-alias (PYI043) example (#​8963)
  • [flake8-pyi] Improve motivation for custom-type-var-return-type (PYI019) (#​8766)

v0.1.6

Compare Source

Preview features
  • [flake8-boolean-trap] Extend boolean-type-hint-positional-argument (FBT001) to include booleans in unions (#​7501)
  • [flake8-pie] Extend reimplemented-list-builtin (PIE807) to dict reimplementations (#​8608)
  • [flake8-pie] Extend unnecessary-pass (PIE790) to include ellipses (...) (#​8641)
  • [flake8-pie] Implement fix for unnecessary-spread (PIE800) (#​8668)
  • [flake8-quotes] Implement unnecessary-escaped-quote (Q004) (#​8630)
  • [pycodestyle] Implement fix for multiple-spaces-after-keyword (E271) and multiple-spaces-before-keyword (E272) (#​8622)
  • [pycodestyle] Implement fix for multiple-spaces-after-operator (E222) and multiple-spaces-before-operator (E221) (#​8623)
  • [pyflakes] Extend is-literal (F632) to include comparisons against mutable initializers (#​8607)
  • [pylint] Implement redefined-argument-from-local (PLR1704) (#​8159)
  • [pylint] Implement fix for unnecessary-lambda (PLW0108) (#​8621)
  • [refurb] Implement if-expr-min-max (FURB136) (#​8664)
  • [refurb] Implement math-constant (FURB152) (#​8727)
Rule changes
  • [flake8-annotations] Add autotyping-like return type inference for annotation rules (#​8643)
  • [flake8-future-annotations] Implement fix for future-required-type-annotation (FA102) (#​8711)
  • [flake8-implicit-namespace-package] Avoid missing namespace violations in scripts with shebangs (#​8710)
  • [pydocstyle] Update over-indentation (D208) to preserve indentation offsets when fixing overindented lines (#​8699)
  • [pyupgrade] Refine timeout-error-alias (UP041) to remove false positives (#​8587)
Formatter
  • Fix instability in await formatting with fluent style (#​8676)
  • Compare formatted and unformatted ASTs during formatter tests (#​8624)
  • Preserve trailing semicolon for Notebooks (#​8590)
CLI
  • Improve debug printing for resolving origin of config settings (#​8729)
  • Write unchanged, excluded files to stdout when read via stdin (#​8596)
Configuration
  • [isort] Support disabling sections with no-sections = true (#​8657)
  • [pep8-naming] Support local and dynamic class- and static-method decorators (#​8592)
  • [pydocstyle] Allow overriding pydocstyle convention rules (#​8586)
Bug fixes
  • Avoid syntax error via importing trio.lowlevel (#​8730)
  • Omit unrolled augmented assignments in PIE794 (#​8634)
  • Slice source code instead of generating it for EM fixes (#​7746)
  • Allow whitespace around colon in slices for whitespace-before-punctuation (E203) (#​8654)
  • Use function range for no-self-use (#​8637)
  • F-strings doesn't contain bytes literal for PLW0129 (#​8675)
  • Improve detection of TYPE_CHECKING blocks imported from typing_extensions or _typeshed (#​8429)
  • Treat display as a builtin in IPython (#​8707)
  • Avoid FURB113 autofix if comments are present (#​8494)
  • Consider the new f-string tokens for flake8-commas (#​8582)
  • Remove erroneous bad-dunder-name reference (#​8742)
  • Avoid recommending Self usages in metaclasses (#​8639)
  • Detect runtime-evaluated base classes defined in the current file (#​8572)
  • Avoid inserting trailing commas within f-strings (#​8574)
  • Remove incorrect deprecation label for stdout and stderr (#​8743)
  • Fix unnecessary parentheses in UP007 fix (#​8610)
  • Remove repeated and erroneous scoped settings headers in docs (#​8670)
  • Trim trailing empty strings when converting to f-strings (#​8712)
  • Fix ordering for force-sort-within-sections (#​8665)
  • Run unicode prefix rule over tokens (#​8709)
  • Update UP032 to unescape curly braces in literal parts of converted strings (#​8697)
  • List all ipython builtins (#​8719)
Documentation
  • Document conventions in the FAQ (#​8638)
  • Redirect from rule codes to rule pages in docs (#​8636)
  • Fix permalink to convention setting (#​8575)

v0.1.5

Compare Source

Preview features
  • [flake8-bandit] Implement mako-templates (S702) (#​8533)
  • [flake8-trio] Implement TRIO105 (#​8490)
  • [flake8-trio] Implement TRIO109 (#​8534)
  • [flake8-trio] Implement TRIO110 (#​8537)
  • [flake8-trio] Implement TRIO115 (#​8486)
  • [refurb] Implement type-none-comparison (FURB169) (#​8487)
  • Flag all comparisons against builtin types in E721 (#​8491)
  • Make SIM118 fix as safe when the expression is a known dictionary (#​8525)
Formatter
  • Fix multiline lambda expression statement formatting (#​8466)
CLI
  • Add hidden --extension to override inference of source type from file extension (#​8373)
Configuration
  • Account for selector specificity when merging extend_unsafe_fixes and override extend_safe_fixes (#​8444)
  • Add support for disabling cache with RUFF_NO_CACHE environment variable (#​8538)
Bug fixes
  • [E721] Flag comparisons to memoryview (#​8485)
  • Allow collapsed-ellipsis bodies in other statements (#​8499)
  • Avoid D301 autofix for u prefixed strings (#​8495)
  • Only flag flake8-trio rules when trio import is present (#​8550)
  • Reject more syntactically invalid Python programs (#​8524)
  • Avoid raising TRIO115 violations for trio.sleep(...) calls with non-number values (#​8532)
  • Fix F841 false negative on assignment to multiple variables (#​8489)
Documentation
  • Fix link to isort known-first-party (#​8562)
  • Add notes on fix safety to a few rules (#​8500)
  • Add missing toml config tabs (#​8512)
  • Add instructions for configuration of Emacs (#​8488)
  • Improve detail link contrast in dark mode (#​8548)
  • Fix typo in example (#​8506)
  • Added tabs for configuration files in the documentation (#​8480)
  • Recommend project.requires-python over target-version (#​8513)
  • Add singleton escape hatch to B008 documentation (#​8501)
  • Fix tab configuration docs (#​8502)

v0.1.4

Compare Source

Preview features
  • [flake8-trio] Implement timeout-without-await (TRIO001) (#​8439)
  • [numpy] Implement NumPy 2.0 migration rule (NPY200) (#​7702)
  • [pylint] Implement bad-open-mode (W1501) (#​8294)
  • [pylint] Implement import-outside-toplevel (C0415) rule (#​5180)
  • [pylint] Implement useless-with-lock (W2101) (#​8321)
  • [pyupgrade] Implement timeout-error-alias (UP041) (#​8476)
  • [refurb] Implement isinstance-type-none (FURB168) (#​8308)
  • Detect confusable Unicode-to-Unicode units in RUF001, RUF002, and RUF003 (#​4430)
  • Add newline after module docstrings in preview style (#​8283)
Formatter
  • Add a note on line-too-long to the formatter docs (#​8314)
  • Preserve trailing statement semicolons when using fmt: skip (#​8273)
  • Preserve trailing semicolons when using fmt: off (#​8275)
  • Avoid duplicating linter-formatter compatibility warnings (#​8292)
  • Avoid inserting a newline after function docstrings (#​8375)
  • Insert newline between docstring and following own line comment (#​8216)
  • Split tuples in return positions by comma first (#​8280)
  • Avoid treating byte strings as docstrings (#​8350)
  • Add --line-length option to format command (#​8363)
  • Avoid parenthesizing unsplittable because of comments (#​8431)
CLI
  • Add --output-format to ruff rule and ruff linter (#​8203)
Bug fixes
  • Respect --force-exclude in lint.exclude and format.exclude (#​8393)
  • Respect --extend-per-file-ignores on the CLI (#​8329)
  • Extend bad-dunder-method-name to permit __index__ (#​8300)
  • Fix panic with 8 in octal escape (#​8356)
  • Avoid raising D300 when both triple quote styles are present (#​8462)
  • Consider unterminated f-strings in FStringRanges (#​8154)
  • Avoid including literal shell=True for truthy, non-True diagnostics (#​8359)
  • Avoid triggering single-element test for starred expressions (#​8433)
  • Detect and ignore Jupyter automagics (#​8398)
  • Fix invalid E231 error with f-strings (#​8369)
  • Avoid triggering NamedTuple rewrite with starred annotation (#​8434)
  • Avoid un-setting bracket flag in logical lines (#​8380)
  • Place 'r' prefix before 'f' for raw format strings (#​8464)
  • Remove trailing periods from NumPy 2.0 code actions (#​8475)
  • Fix bug where PLE1307 was raised when formatting %c with characters (#​8407)
  • Remove unicode flag from comparable (#​8440)
  • Improve B015 message (#​8295)
  • Use fixedOverflowWidgets for playground popover (#​8458)
  • Mark byte_bounds as a non-backwards-compatible NumPy 2.0 change (#​8474)
Internals
  • Add a dedicated cache directory per Ruff version (#​8333)
  • Allow selective caching for --fix and --diff (#​8316)
  • Improve performance of comment parsing (#​8193)
  • Improve performance of string parsing (#​8227)
  • Use a dedicated sort key for isort import sorting (#​7963)

v0.1.3

Compare Source

This release includes a variety of improvements to the Ruff formatter, removing several known and
unintentional deviations from Black.

Formatter
  • Avoid space around pow for None, True and False (#​8189)
  • Avoid sorting all paths in the format command (#​8181)
  • Insert necessary blank line between class and leading comments (#​8224)
  • Avoid introducing new parentheses in annotated assignments (#​8233)
  • Refine the warnings about incompatible linter options (#​8196)
  • Add test and basic implementation for formatter preview mode (#​8044)
  • Refine warning about incompatible isort settings (#​8192)
  • Only omit optional parentheses for starting or ending with parentheses (#​8238)
  • Use source type to determine parser mode for formatting (#​8205)
  • Don't warn about magic trailing comma when isort.force-single-line is true (#​8244)
  • Use SourceKind::diff for formatter (#​8240)
  • Fix fmt:off with trailing child comment (#​8234)
  • Formatter parentheses support for IpyEscapeCommand (#​8207)
Linter
  • [pylint] Add buffer methods to bad-dunder-method-name (PLW3201) exclusions (#​8190)
  • Match rule prefixes from external codes setting in unused-noqa (#​8177)
  • Use line-length setting for isort in lieu of pycodestyle.max-line-length (#​8235)
  • Update fix for unnecessary-paren-on-raise-exception to unsafe for unknown types (#​8231)
  • Correct quick fix message for W605 (#​8255)
Documentation
  • Fix typo in max-doc-length documentation (#​8201)
  • Improve documentation around linter-formatter conflicts (#​8257)
  • Fix link to error suppression documentation in unused-noqa (#​8172)
  • Add external option to unused-noqa documentation (#​8171)
  • Add title attribute to icons (#​8060)
  • Clarify unsafe case in RSE102 ([#​8

Configuration

📅 Schedule: Branch creation - "before 4am" in timezone America/Chicago, Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@renovate renovate bot added dependencies Upgrade or downgrade of project dependencies. python labels Jun 21, 2023
@codecov
Copy link

codecov bot commented Jun 21, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (077fb5b) 96.15% compared to head (2177517) 96.17%.
Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #585      +/-   ##
==========================================
+ Coverage   96.15%   96.17%   +0.01%     
==========================================
  Files           7        7              
  Lines         442      444       +2     
  Branches       93       93              
==========================================
+ Hits          425      427       +2     
  Misses          4        4              
  Partials       13       13              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@renovate renovate bot changed the title Update dependency ruff to v0.0.274 Update dependency ruff to v0.0.275 Jun 22, 2023
@renovate renovate bot changed the title Update dependency ruff to v0.0.275 Update dependency ruff to v0.0.276 Jul 3, 2023
@renovate renovate bot changed the title Update dependency ruff to v0.0.276 Update dependency ruff to v0.0.277 Jul 5, 2023
@renovate renovate bot force-pushed the renovate/ruff-0.x branch 5 times, most recently from d611e42 to 2f4369e Compare July 10, 2023 03:30
@renovate renovate bot changed the title Update dependency ruff to v0.0.277 Update dependency ruff to v0.0.278 Jul 12, 2023
@renovate renovate bot changed the title Update dependency ruff to v0.0.278 Update dependency ruff to v0.0.279 Jul 21, 2023
@renovate renovate bot changed the title Update dependency ruff to v0.0.279 Update dependency ruff to v0.0.280 Jul 22, 2023
@renovate renovate bot changed the title Update dependency ruff to v0.0.280 Update dependency ruff to v0.0.281 Jul 31, 2023
@renovate renovate bot changed the title Update dependency ruff to v0.0.281 Update dependency ruff to v0.0.282 Aug 1, 2023
@renovate renovate bot changed the title Update dependency ruff to v0.0.282 Update dependency ruff to v0.0.283 Aug 8, 2023
@renovate renovate bot changed the title Update dependency ruff to v0.0.283 Update dependency ruff to v0.0.284 Aug 9, 2023
@renovate renovate bot force-pushed the renovate/ruff-0.x branch 4 times, most recently from 0001ba7 to 3920fce Compare August 15, 2023 03:48
@renovate renovate bot changed the title chore(deps): update dependency ruff to v0.1.9 chore(deps): update dependency ruff to v0.1.10 Jan 2, 2024
@renovate renovate bot changed the title chore(deps): update dependency ruff to v0.1.10 chore(deps): update dependency ruff to v0.1.11 Jan 3, 2024
@renovate renovate bot changed the title chore(deps): update dependency ruff to v0.1.11 chore(deps): update dependency ruff to v0.1.12 Jan 12, 2024
@renovate renovate bot changed the title chore(deps): update dependency ruff to v0.1.12 chore(deps): update dependency ruff to v0.1.13 Jan 12, 2024
@renovate renovate bot changed the title chore(deps): update dependency ruff to v0.1.13 chore(deps): update dependency ruff to v0.1.14 Jan 19, 2024
@renovate renovate bot changed the title chore(deps): update dependency ruff to v0.1.14 chore(deps): update dependency ruff to v0.1.15 Jan 30, 2024
@renovate renovate bot force-pushed the renovate/ruff-0.x branch 11 times, most recently from 09d3145 to c661928 Compare January 30, 2024 04:48
@ctalkington ctalkington merged commit dbe5aba into main Jan 30, 2024
15 checks passed
@ctalkington ctalkington deleted the renovate/ruff-0.x branch January 30, 2024 05:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Upgrade or downgrade of project dependencies.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant