SHA256
1
0
forked from pool/python-ruff
python-ruff/python-ruff.changes
Ondřej Súkup 0c9d775e5d - update to 0.1.15
* Preview features
   * Error when NURSERY selector is used with --preview 
   * Preserve indentation around multiline strings in formatter 
   * [flake8-return] Add fixes for all rules (RET505, RET506, RET507, RET508) 
   * [flake8-simplify] Add fix for if-with-same-arms (SIM114) 
   * [pycodestyle] Add fix for multiple-imports-on-one-line (E401) 
   * [pylint] Add fix for collapsible-else-if (PLR5501) 
   * [pylint] Add fix for useless-else-on-loop (PLW0120) 
   * [pylint] Implement assigning-non-slot (E0237) 
   * [pylint] Implement potential-index-error (PLE0643) 
   * [pylint] Implement too-many-nested-blocks (PLR1702) 
   * [ruff] Add rule to sort __slots__ and __match_args__ 
   * [ruff] Detect unnecessary dict comprehensions for iterables (RUF025) 
   * [ruff] Guard against use of default_factory as a keyword argument (RUF026) 
   * [ruff] Implement mutable-fromkeys-value (RUF024) 
 * CLI
   * Enable auto-wrapping of --help output 
 * Bug fixes
   * Avoid rendering display-only rules as fixable 
   * Detect automagic-like assignments in notebooks 
   * Generate custom JSON schema for dynamic setting 
   * [flake8-no-pep420] Include global --config when determining namespace packages 
   * [flake8-pie] Omit bound tuples passed to .startswith or .endswith 
   * [flake8-return] Avoid panic when fixing inlined else blocks 
   * [flake8-return] Consider exception suppression in unnecessary assignment 
   * [flake8-return] Take NoReturn annotation into account when analyzing implicit returns 
   * [flake8-simplify] Support inverted returns in needless-bool (SIM103) 
   * [flake8-type-checking] Add Pydantic's BaseConfig to default-copy list 
   * [flake8-type-checking] Avoid marking InitVar as a typing-only annotation

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-ruff?expand=0&rev=34
2024-02-01 18:08:29 +00:00

754 lines
38 KiB
Plaintext

-------------------------------------------------------------------
Thu Feb 1 18:05:47 UTC 2024 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.15
* Preview features
* Error when NURSERY selector is used with --preview
* Preserve indentation around multiline strings in formatter
* [flake8-return] Add fixes for all rules (RET505, RET506, RET507, RET508)
* [flake8-simplify] Add fix for if-with-same-arms (SIM114)
* [pycodestyle] Add fix for multiple-imports-on-one-line (E401)
* [pylint] Add fix for collapsible-else-if (PLR5501)
* [pylint] Add fix for useless-else-on-loop (PLW0120)
* [pylint] Implement assigning-non-slot (E0237)
* [pylint] Implement potential-index-error (PLE0643)
* [pylint] Implement too-many-nested-blocks (PLR1702)
* [ruff] Add rule to sort __slots__ and __match_args__
* [ruff] Detect unnecessary dict comprehensions for iterables (RUF025)
* [ruff] Guard against use of default_factory as a keyword argument (RUF026)
* [ruff] Implement mutable-fromkeys-value (RUF024)
* CLI
* Enable auto-wrapping of --help output
* Bug fixes
* Avoid rendering display-only rules as fixable
* Detect automagic-like assignments in notebooks
* Generate custom JSON schema for dynamic setting
* [flake8-no-pep420] Include global --config when determining namespace packages
* [flake8-pie] Omit bound tuples passed to .startswith or .endswith
* [flake8-return] Avoid panic when fixing inlined else blocks
* [flake8-return] Consider exception suppression in unnecessary assignment
* [flake8-return] Take NoReturn annotation into account when analyzing implicit returns
* [flake8-simplify] Support inverted returns in needless-bool (SIM103)
* [flake8-type-checking] Add Pydantic's BaseConfig to default-copy list
* [flake8-type-checking] Avoid marking InitVar as a typing-only annotation
* [pycodestyle] Allow dtype comparisons in type-comparison
* [pydocstyle] Re-implement last-line-after-section (D413)
* Documentation
* [flake8-pytest-style] Add fix safety documentation for duplicate-parameterize-test-cases
* [pylint] Document literal-membership fix safety conditions
* [isort] Fix reference to isort rule code
-------------------------------------------------------------------
Sun Jan 21 15:21:29 UTC 2024 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.14
* Preview features
* [flake8-bugbear] Add fix for duplicate-value (B033)
* [flake8-simplify] Implement enumerate-for-loop (SIM113)
* [pygrep_hooks] Add fix for deprecated-log-warn (PGH002)
* [pylint] Implement import-private-name (C2701)
* [refurb] Implement regex-flag-alias with fix (FURB167)
* [ruff] Add rule and fix to sort contents of __all__ (RUF022)
* [tryceratops] Add fix for error-instead-of-exception (TRY400)
* Rule changes
* [flake8-pyi] Fix PYI047 false negatives on PEP-695 type aliases
* [flake8-pyi] Fix PYI049 false negatives on call-based TypedDicts
* [pylint] Exclude self and cls when counting method arguments (PLR0917)
* CLI
* --show-settings displays active settings in a far more readable format
* Add --extension support to the formatter
* Configuration
* Ignore preview status for fixable and unfixable selectors
* [pycodestyle] Use the configured tab size when expanding indents
* Bug fixes
* Recursively visit deferred AST nodes
* Visit deferred lambdas before type definitions
* [flake8-simplify] Avoid some more enumerate-for-loop false positives (SIM113)
* [pandas-vet] Limit inplace diagnostics to methods that accept inplace
* [pylint] Add the __prepare__ method to the list of recognized dunder method
* [pylint] Ignore unnecessary dunder calls within dunder definitions
* [refurb] Avoid bailing when reimplemented-operator is called on function (FURB118)
* [ruff] Avoid treating named expressions as static keys (RUF011)
* Documentation
* Add instructions on using noqa with isort rules
* Documentation update for URL giving 'page not found'
* Fix admonition in dark mode
* Update contributing docs to use cargo bench -p ruff_benchmark
* Update emacs integration section to include emacs-ruff-format
* [flake8-blind-except] Document exceptions to blind-except rule
-------------------------------------------------------------------
Mon Jan 15 13:27:02 UTC 2024 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.13
* Bug fixes
* Include base pyproject when initializing cache settings
* [flake8-simplify] Account for possibly-empty f-string values in truthiness logic
* [pylint] Add the missing period in unnecessary-dunder-call
* [pylint] Fix __aenter__ message in unnecessary-dunder-call
-------------------------------------------------------------------
Fri Jan 12 11:48:38 UTC 2024 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.12:
* Preview features
* Formatter: Hug multiline-strings in preview style
* [flake8-bandit] Add ssl-with-no-version (S504)
* [flake8-bandit] Implement ssl-insecure-version (S502)
* [flake8-bandit] Implement ssl-with-bad-defaults (S503)
* [flake8-bandit] Implement suspicious import rules (S4XX)
* [flake8-simplify] Implement zip-dict-keys-and-values (SIM911)
* [pyflakes] Add a fix for redefined-while-unused (F811)
* [pylint] Implement unnecessary-dunder-call (C2801)
* [ruff] Add parenthesize-chained-operators (RUF021) to enforce parentheses in a or b and c
* Rule changes
* [flake8-boolean-trap] Allow Boolean positional arguments in setters
* [flake8-builtins] Restrict builtin-attribute-shadowing (A003) to actual shadowed references
* [flake8-pyi] Add fix for generator-return-from-iter-method (PYI058)
* [pyflakes] Don't flag redefined-while-unused (F811) in if branches
* [pyupgrade] Add some additional Python 3.12 typing members to deprecated-import
* [ruff] Add fix for parenthesize-chained-operators (RUF021)
* [ruff] Include subscripts and attributes in static key rule (RUF011)
* [ruff] Support variable keys in static dictionary key rule (RUF011)
* Formatter
* Generate deterministic IDs when formatting notebooks
* Allow # fmt: skip with interspersed same-line comments
* Parenthesize breaking named expressions in match guards
* Bug fixes
* Add cell indexes to all diagnostics
* Avoid infinite loop in constant vs. None comparisons
* Handle raises with implicit alternate branches
* Ignore trailing quotes for unclosed l-brace errors
* Respect multi-segment submodule imports when resolving qualified names
* Use DisplayParseError for stdin parser errors
* Use comment_ranges for isort directive extraction
* Use transformed source code for diagnostic locations
* [flake8-pyi] Exclude warnings.deprecated and typing_extensions.deprecated arguments
* [flake8-pyi] Fix false negative for unused-private-protocol (PYI046) with unused generic protocols
* [pydocstyle] Disambiguate argument descriptors from section headers
* [pylint] Homogenize PLR0914 message to match other PLR09XX rules
* [ruff] Allow Hashable = None in type annotations (RUF013)
* Documentation
* Fix admonition hyperlink colouring
* Add missing preview link
-------------------------------------------------------------------
Mon Jan 8 09:39:09 UTC 2024 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.11
* [pylint] Implement super-without-brackets (W0245)
* Check path string properly in python -m ruff invocations
* Documentation
* Tweak relative-imports message
* Add fix safety note for yield-in-for-loop
* 0.1.10
* Preview features
* Improve dummy_implementations preview style formatting
* Normalise Hex and unicode escape sequences in strings
* Parenthesize long type annotations in annotated assignments
* Parenthesize multi-context managers in with statements
* [flake8-pyi] Implement generator-return-from-iter-method (PYI058)
* [pylint] Implement empty-comment (PLR2044)
* [refurb] Implement bit-count (FURB161)
* [ruff] Add never-union rule to detect redundant typing.NoReturn and typing.Never
* CLI
* Add paths to TOML parse errors
* Add row and column numbers to formatter parse errors
* Improve responsiveness when invoked via Python
* Short rule messages should not end with a period
* Configuration
* Respect runtime-required decorators on functions
* Bug fixes
* Avoid asyncio-dangling-task for nonlocal and global bindings
* Escape trailing placeholders in rule documentation
* Fix continuation detection following multi-line strings
* Fix scoping for generators in named expressions in classes
* Port from obsolete wsl crate to is-wsl
* Remove special pre-visit for module docstrings
* Respect __str__ definitions from super classes
* Respect unused-noqa via per-file-ignores
* Respect attribute chains when resolving builtin call paths
* Treat all typing_extensions members as typing aliases
* Use Display for formatter parse errors
* Wrap subscripted dicts in parens for f-string conversion
* [flake8-annotations] Avoid adding return types to stub methods
* [flake8-annotations] Respect mixed return and raise cases in return-type analysis
* [flake8-bandit] Don't report violations when SafeLoader is imported from yaml.loader (S506)
* [pylint] Avoid panic when comment is preceded by Unicode
* [pylint] Change PLR0917 error message to match other PLR09XX messages
* [refurb] Avoid false positives for math-constant (FURB152)
* Documentation
* Expand target name for better rule documentation
* Fix typos found by codespell
* [perflint] Document PERF102 fix un-safety
* [pyupgrade] Document UP007 fix un-safety
-------------------------------------------------------------------
Thu Dec 21 23:27:31 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.9
* Breaking changes
* Add site-packages to default exclusions
* Preview features
* Fix: Avoid parenthesizing subscript targets and values
* [pylint] Implement too-many-locals (PLR0914)
* Implement reimplemented_operator (FURB118)
* Add a rule to detect string members in runtime-evaluated unions
* Implement no_blank_line_before_class_docstring preview style
* Rule changes
* CONSTANT_CASE variables are improperly flagged for yoda violation (SIM300)
* [flake8-pyi] Cover ParamSpecs and TypeVarTuples (PYI018)
* [flake8-bugbear] Add fix for zip-without-explicit-strict (B905)
* Add fix to automatically remove print and pprint statements (T201, T203)
* Prefer Never to NoReturn in auto-typing in Python >= 3.11 (ANN201)
* Formatter
* can_omit_optional_parentheses: Exit early for unparenthesized expressions
* Fix dynamic mode with doctests so that it doesn't exceed configured line width
* Fix can_omit_optional_parentheses for expressions with a right most fstring
* Add target_version to formatter options
* CLI
* Update ruff format --check to display message for already formatted files
* Bug fixes
* Reverse order of arguments for operator.contains
* Iterate over lambdas in deferred type annotations
* Fix panic in D208 with multibyte indent
* Add support for NoReturn in auto-return-typing
* Allow removal of typing from exempt-modules
* Avoid mutable-class-default violations for Pydantic subclasses
* Fix dropped union expressions for piped non-types in PYI055 autofix
* Enable annotation quoting for multi-line expressions
* Deduplicate edits when quoting annotations
* Prevent invalid utf8 indexing in cell magic detection
* Avoid nested quotations in auto-quoting fix
* Add base-class inheritance detection to flake8-django rules
* Avoid asyncio-dangling-task violations on shadowed bindings
* Documentation
* Fix blog post URL in changelog
* Add error suppression hint for multi-line strings
* Fix typo in SemanticModel.parent_expression docstring
* Document link between import sorting and formatter
-------------------------------------------------------------------
Thu Dec 14 10:14:53 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.8
* Preview features
* Add "preserve" quote-style to mimic Black's skip-string-normalization
* Implement prefer_splitting_right_hand_side_of_assignments preview style
* [pycodestyle] Add fix for unexpected-spaces-around-keyword-parameter-equals
* [pycodestyle] Add fix for comment-related whitespace rules
* [pycodestyle] Allow sys.path modifications between imports
* [refurb] Implement hashlib-digest-hex (FURB181)
* Rule changes
* Allow flake8-type-checking rules to automatically quote runtime-evaluated references
* Allow transparent cell magics in Jupyter Notebooks
* [flake8-annotations] Avoid ANN2xx fixes for abstract methods with empty bodies
* [flake8-self] Ignore underscore references in type annotations
* [pep8-naming] Allow class names when apps.get_model is a non-string
* [pycodestyle] Allow matplotlib.use calls to intersperse imports
* [pyflakes] Support fixing unused assignments in tuples by renaming variables (F841)
* [pylint] Add fix for subprocess-run-without-check (PLW1510)
* Formatter
* Add docstring-code-format knob to enable docstring snippet formatting
* Use double quotes for all docstrings, including single-quoted docstrings
* Implement "dynamic" line width mode for docstring code formatting
* Support reformatting Markdown code blocks
* add support for formatting reStructuredText code snippets
* Avoid trailing comma for single-argument with positional separator
* Fix handling of trailing target comment
* CLI
* Hide unsafe fix suggestions when explicitly disabled
* Add SARIF support to --output-format
* Bug fixes
* Apply unnecessary index rule prior to enumerate rewrite
* [flake8-err-msg] Allow EM fixes even if msg variable is defined
* [flake8-pie] Prevent keyword arguments duplication
* [flake8-pie] Respect trailing comma in unnecessary-dict-kwargs (PIE804)
* [flake8-raise] Avoid removing parentheses on ctypes.WinError
* [isort] Avoid invalid combination of force-sort-within-types and lines-between-types
* [isort] Ensure that from-style imports are always ordered first in __future__
* [pycodestyle] Allow tab indentation before keyword
* [pylint] Ignore @overrides and @overloads for too-many-positional
* [pyupgrade] Enable printf-string-formatting fix with comments on right-hand side
* [refurb] Make math-constant (FURB152) rule more targeted
* [refurb] Support floating-point base in redundant-log-base (FURB163)
* [ruff] Detect unused-asyncio-dangling-task (RUF006) on unused assignments
-------------------------------------------------------------------
Tue Dec 5 08:53:06 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.7
* Preview features
* Implement multiline dictionary and list hugging for preview style
* Implement the fix_power_op_line_length preview style
* Use Python version to determine typing rewrite safety
* [flake8-annotations] Enable auto-return-type involving Optional and Union annotations
* [flake8-bandit] Implement django-raw-sql (S611)
* [flake8-bandit] Implement tarfile-unsafe-members (S202)
* [flake8-pyi] Implement fix for unnecessary-literal-union (PYI030)
* [flake8-simplify] Extend dict-get-with-none-default (SIM910) to non-literals
* [pylint] - add unnecessary-list-index-lookup (PLR1736) + autofix
* [pylint] - implement R0202 and R0203 with autofixes
* [pylint] Implement repeated-keyword (PLe1132)
* [pylint] Implement too-many-positional (PLR0917)
* [pylint] Implement unnecessary-dict-index-lookup (PLR1733)
* [refurb] Implement redundant-log-base (FURB163)
* Rule changes
* [flake8-boolean-trap] Allow booleans in @override methods
* [flake8-bugbear] Avoid B015,B018 for last expression in a cell
* [flake8-pie] Allow ellipses for enum values in stub files
* [flake8-pyi] Check PEP 695 type aliases for snake-case-type-alias and t-suffixed-type-alias
* [flake8-pyi] Check for kwarg and vararg NoReturn type annotations
* [flake8-simplify] Omit select context managers from SIM117
* [pep8-naming] Allow Django model loads in non-lowercase-variable-in-function (N806)
* [pycodestyle] Avoid E703 for last expression in a cell
* [pycodestyle] Update E402 to work at cell level for notebooks
* [pydocstyle] Avoid D100 for Jupyter Notebooks
* [pylint] Implement fix for unspecified-encoding (PLW1514)
* Formatter
* Avoid unstable formatting in ellipsis-only body with trailing comment
* Inline trailing comments for type alias similar to assignments
* Insert trailing comma when function breaks with single argument
* CLI
* Update ruff check and ruff format to default to the current directory
* Stop at the first resolved parent configuration
* Configuration
* [pylint] Default max-positional-args to max-args
* [pylint] Add allow-dunder-method-names setting for bad-dunder-method-name (PLW3201)
* [isort] Add support for from-first setting
* [isort] Add support for length-sort settings
* Bug fixes
* Add support for @functools.singledispatch
* Avoid off-by-one error in stripping noqa following multi-byte char
* Avoid off-by-one error in with-item named expressions
* Avoid syntax error via invalid ur string prefix
* Avoid underflow in get_model matching
* Avoid unnecessary index diagnostics when value is modified
* Convert over-indentation rule to use number of characters
* Detect implicit returns in auto-return-types
* Fix start >= end error in over-indentation
* Ignore @overload and @override methods for too-many-arguments checks
* Lexer start of line is false only for Mode::Expression
* Mark pydantic_settings.BaseSettings as having default copy semantics
* Respect dictionary unpacking in NamedTuple assignments
* Respect local subclasses in flake8-type-checking
* Support type alias statements in simple statement positions
* [flake8-annotations] Avoid filtering out un-representable types in return annotation
* [flake8-pie] Retain extra ellipses in protocols and abstract methods
* [flake8-pyi] Respect local enum subclasses in simple-defaults (PYI052)
* [flake8-trio] Use correct range for TRIO115 fix
* [flake8-trio] Use full arguments range for zero-sleep-call
* [isort] fix: mark __main__ as first-party import
* [pep8-naming] Avoid N806 errors for type alias statements
* [perflint] Avoid PERF101 if there's an append in loop body
* [pycodestyle] Allow space-before-colon after end-of-slice
* [pydocstyle] Avoid non-character breaks in over-indentation (D208)
* [pydocstyle] Ignore underlines when determining docstring logical lines
* [pylint] Extend self-assigning-variable to multi-target assignments
* [tryceratops] Avoid repeated triggers in nested tryceratops diagnostics
* Documentation
* Add advice for fixing RUF008 when mutability is not desired
* Added the command to run ruff using pkgx to the installation.md
* Document fix safety for flake8-comprehensions and some pyupgrade rules
* Fix doc formatting for zero-sleep-call
* Remove duplicate imports from os-stat documentation
* Replace generated reference to MkDocs
* Update Arch Linux package URL in installation.md
* [flake8-pyi] Fix error in t-suffixed-type-alias (PYI043) example
* [flake8-pyi] Improve motivation for custom-type-var-return-type (PYI019)
-------------------------------------------------------------------
Sun Nov 19 03:53:46 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- switch to libalternatives
- drop cargo_config
- update _service for new cargo-vendor service
- update to 0.1.6
* Preview features
* [flake8-boolean-trap] Extend boolean-type-hint-positional-argument (FBT001) to include booleans in unions
* [flake8-pie] Extend reimplemented-list-builtin (PIE807) to dict reimplementations
* [flake8-pie] Extend unnecessary-pass (PIE790) to include ellipses (...)
* [flake8-pie] Implement fix for unnecessary-spread (PIE800)
* [flake8-quotes] Implement unnecessary-escaped-quote (Q004)
* [pycodestyle] Implement fix for multiple-spaces-after-keyword (E271) and multiple-spaces-before-keyword (E272)
* [pycodestyle] Implement fix for multiple-spaces-after-operator (E222) and multiple-spaces-before-operator (E221)
* [pyflakes] Extend is-literal (F632) to include comparisons against mutable initializers
* [pylint] Implement redefined-argument-from-local (PLR1704)
* [pylint] Implement fix for unnecessary-lambda (PLW0108)
* [refurb] Implement if-expr-min-max (FURB136)
* [refurb] Implement math-constant (FURB152)
* Rule changes
* [flake8-annotations] Add autotyping-like return type inference for annotation rules
* [flake8-future-annotations] Implement fix for future-required-type-annotation (FA102)
* [flake8-implicit-namespace-package] Avoid missing namespace violations in scripts with shebangs
* [pydocstyle] Update over-indentation (D208) to preserve indentation offsets when fixing overindented lines
* [pyupgrade] Refine timeout-error-alias (UP041) to remove false positives
* Formatter
* Fix instability in await formatting with fluent style
* Compare formatted and unformatted ASTs during formatter tests
* Preserve trailing semicolon for Notebooks
* CLI
* Improve debug printing for resolving origin of config settings
* Write unchanged, excluded files to stdout when read via stdin
* Configuration
* [isort] Support disabling sections with no-sections = true
* [pep8-naming] Support local and dynamic class- and static-method decorators
* [pydocstyle] Allow overriding pydocstyle convention rules
* Bug fixes
* Avoid syntax error via importing trio.lowlevel
* Omit unrolled augmented assignments in PIE794
* Slice source code instead of generating it for EM fixes
* Allow whitespace around colon in slices for whitespace-before-punctuation (E203)
* Use function range for no-self-use
* F-strings doesn't contain bytes literal for PLW0129
* Improve detection of TYPE_CHECKING blocks imported from typing_extensions or _typeshed
* Treat display as a builtin in IPython
* Avoid FURB113 autofix if comments are present
* Consider the new f-string tokens for flake8-commas
* Remove erroneous bad-dunder-name reference
* Avoid recommending Self usages in metaclasses
* Detect runtime-evaluated base classes defined in the current file
* Avoid inserting trailing commas within f-strings
* Remove incorrect deprecation label for stdout and stderr
* Fix unnecessary parentheses in UP007 fix
* Remove repeated and erroneous scoped settings headers in docs
* Trim trailing empty strings when converting to f-strings
* Fix ordering for force-sort-within-sections
* Run unicode prefix rule over tokens
* Update UP032 to unescape curly braces in literal parts of converted strings
* List all ipython builtins
* Documentation
* Document conventions in the FAQ
* Redirect from rule codes to rule pages in docs
* Fix permalink to convention setting
-------------------------------------------------------------------
Mon Nov 13 14:21:57 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.5
* Preview features
* [flake8-bandit] Implement mako-templates (S702)
* [flake8-trio] Implement TRIO105
* [flake8-trio] Implement TRIO109
* [flake8-trio] Implement TRIO110
* [flake8-trio] Implement TRIO115
* [refurb] Implement type-none-comparison (FURB169)
* Flag all comparisons against builtin types in E721
* Make SIM118 fix as safe when the expression is a known dictionary
* Formatter
* Fix multiline lambda expression statement formatting
* CLI
* Add hidden --extension to override inference of source type from file extension
* Configuration
* Account for selector specificity when merging extend_unsafe_fixes and override extend_safe_fixes
* Add support for disabling cache with RUFF_NO_CACHE environment variable
* Bug fixes
* [E721] Flag comparisons to memoryview
* Allow collapsed-ellipsis bodies in other statements
* Avoid D301 autofix for u prefixed strings
* Only flag flake8-trio rules when trio import is present
* Reject more syntactically invalid Python programs
* Avoid raising TRIO115 violations for trio.sleep(...) calls with non-number values
* Fix F841 false negative on assignment to multiple variables
* Documentation
* Fix link to isort known-first-party
* Add notes on fix safety to a few rules
* Add missing toml config tabs
* Add instructions for configuration of Emacs
* Improve detail link contrast in dark mode
* Fix typo in example
* Added tabs for configuration files in the documentation
* Recommend project.requires-python over target-version
* Add singleton escape hatch to B008 documentation
* Fix tab configuration docs
-------------------------------------------------------------------
Tue Nov 7 11:29:10 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- Update to 0.1.4
* Preview features
* [flake8-trio] Implement timeout-without-await (TRIO001)
* [numpy] Implement NumPy 2.0 migration rule (NPY200)
* [pylint] Implement bad-open-mode (W1501)
* [pylint] Implement import-outside-toplevel (C0415) rule
* [pylint] Implement useless-with-lock (W2101)
* [pyupgrade] Implement timeout-error-alias (UP041)
* [refurb] Implement isinstance-type-none (FURB168)
* Detect confusable Unicode-to-Unicode units in RUF001, RUF002, and RUF003
* Add newline after module docstrings in preview style
* Formatter
* Add a note on line-too-long to the formatter docs
* Preserve trailing statement semicolons when using fmt: skip
* Preserve trailing semicolons when using fmt: off
* Avoid duplicating linter-formatter compatibility warnings
* Avoid inserting a newline after function docstrings
* Insert newline between docstring and following own line comment
* Split tuples in return positions by comma first
* Avoid treating byte strings as docstrings
* Add --line-length option to format command
* Avoid parenthesizing unsplittable because of comments
* CLI
* Add --output-format to ruff rule and ruff linter
* Bug fixes
* Respect --force-exclude in lint.exclude and format.exclude
* Respect --extend-per-file-ignores on the CLI
* Extend bad-dunder-method-name to permit __index__
* Fix panic with 8 in octal escape
* Avoid raising D300 when both triple quote styles are present
* Consider unterminated f-strings in FStringRanges
* Avoid including literal shell=True for truthy, non-True diagnostics
* Avoid triggering single-element test for starred expressions
* Detect and ignore Jupyter automagics
* Fix invalid E231 error with f-strings
* Avoid triggering NamedTuple rewrite with starred annotation
* Avoid un-setting bracket flag in logical lines
* Place 'r' prefix before 'f' for raw format strings
* Remove trailing periods from NumPy 2.0 code actions
* Fix bug where PLE1307 was raised when formatting %c with characters
* Remove unicode flag from comparable
* Improve B015 message
* Use fixedOverflowWidgets for playground popover
* Mark byte_bounds as a non-backwards-compatible NumPy 2.0 change
* Internals
* Add a dedicated cache directory per Ruff version
* Allow selective caching for --fix and --diff
* Improve performance of comment parsing
* Improve performance of string parsing
* Use a dedicated sort key for isort import sorting
-------------------------------------------------------------------
Fri Oct 27 07:53:47 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- Update to 0.1.3
* Formatter
* Avoid space around pow for None, True and False
* Avoid sorting all paths in the format command
* Insert necessary blank line between class and leading comments
* Avoid introducing new parentheses in annotated assignments
* Refine the warnings about incompatible linter options
* Add test and basic implementation for formatter preview mode
* Refine warning about incompatible isort settings
* Only omit optional parentheses for starting or ending with parentheses
* Use source type to determine parser mode for formatting
* Don't warn about magic trailing comma when isort.force-single-line is true
* Use SourceKind::diff for formatter
* Fix fmt:off with trailing child comment
* Formatter parentheses support for IpyEscapeCommand
* Linter
* [pylint] Add buffer methods to bad-dunder-method-name (PLW3201) exclusions
* Match rule prefixes from external codes setting in unused-noqa
* Use line-length setting for isort in lieu of pycodestyle.max-line-length
* Update fix for unnecessary-paren-on-raise-exception to unsafe for unknown types
* Correct quick fix message for W605
* Documentation
* Fix typo in max-doc-length documentation
* Improve documentation around linter-formatter conflicts
* Fix link to error suppression documentation in unused-noqa
* Add external option to unused-noqa documentation
* Add title attribute to icons
* Clarify unsafe case in RSE102
* Fix skipping formatting examples
* docs: fix name of magic-trailing-comma option in README
* Add note about scope of rule changing in versioning policy
* Document: Fix default lint rules
* Fix a wrong setting in configuration.md
* Fix misspelled TOML headers in the tutorial
-------------------------------------------------------------------
Wed Oct 25 12:38:40 UTC 2023 - ecsos <ecsos@opensuse.org>
- Add %{?sle15_python_module_pythons}
-------------------------------------------------------------------
Wed Oct 25 11:04:42 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- Update to 0.1.2
* This release includes the Beta version of the Ruff formatter — an extremely
fast, Black-compatible Python formatter
* Preview features
* [pylint] Implement non-ascii-module-import (C2403)
* [pylint] implement non-ascii-name (C2401)
* [pylint] Implement unnecessary-lambda (W0108)
* [refurb] Implement read-whole-file (FURB101)
* Add fix for E223, E224, and E242
* Add fix for E225, E226, E227, and E228
* Add fix for E252
* Add fix for E261
* Add fix for E273 and E274
* Add fix for E275
* Update SIM401 to catch ternary operations
* Update E721 to allow is and is not for direct type comparisons
* Rule changes
* Add backports.strenum to deprecated-imports
* Update SIM112 to ignore https_proxy, http_proxy, and no_proxy
* Update fix for literal-membership (PLR6201) to be unsafe
* Update fix for mutable-argument-defaults (B006) to be unsafe
* Formatter
* Change line-ending default to auto
* Respect parenthesized generators in has_own_parentheses
* Add caching to formatter
* Remove --line-length option from format command
* Add formatter to line-length documentation
* Warn about incompatible formatter options
* Fix range of unparenthesized tuple subject in match statement
* Remove experimental formatter warning
* Don't move type param opening parenthesis comment
* Update versions in format benchmark script
* Avoid loading files for cached format results
* CLI
* Show the ruff format command in help menus
* Add ruff version command with long version display
* Configuration
* New pycodestyle.max-line-length option
* Bug fixes
* Detect sys.version_info slices in outdated-version-block
* Avoid if-else simplification for TYPE_CHECKING blocks
* Avoid false-positive print separator diagnostic with starred argument
* Documentation
* Fix message for too-many-arguments lint
* Fix extend-unsafe-fixes and extend-safe-fixes example
* Add links to flake8-import-conventions options
* Rework the documentation to incorporate the Ruff formatter
* Fix Options JSON schema description
* Fix typo (pytext -> pytest)
* Improve magic-value-comparison example in docs
-------------------------------------------------------------------
Fri Oct 20 10:09:22 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.1
* Rule changes
* Add unsafe fix for escape-sequence-in-docstring (D301)
* Configuration
* Respect #(deprecated) attribute in configuration options
* Add [format|lint].exclude options
* Respect tab-size setting in formatter
* Add lint.preview
* Preview features
* [pylint] Implement literal-membership (PLR6201)
* [pylint] Implement too-many-boolean-expressions (PLR0916)
* [pylint] Implement misplaced-bare-raise (E0704)
* [pylint] Implement global-at-module-level (W0604)
* [pylint] Implement unspecified-encoding (PLW1514)
* Add fix for triple-single-quotes (D300)
* Formatter
* New code style badge for ruff format
* Fix comments outside expression parentheses
* Add --target-version to ruff format
* Skip over parentheses when detecting in keyword
* Add --diff option to ruff format
* Insert newline after nested function or class statements
* Use pass over ellipsis in non-function/class contexts
* Bug fixes
* Lazily evaluate all PEP 695 type alias values
* Avoid failed assertion when showing fixes from stdin
* Avoid flagging HTTP and HTTPS literals in urllib-open
* Avoid flagging bad-dunder-method-name for _
* Remove Python 2-only methods from URLOpen audit
* Use set bracket replacement for iteration-over-set to preserve whitespace and comments
* Documentation
* Update tutorial to match revised Ruff defaults
* Update rule B005 docs
* Update GitHub actions example in docs to use --output-format
* Document lint.preview and format.preview
* Clarify that new rules should be added to RuleGroup::Preview.
-------------------------------------------------------------------
Tue Oct 17 10:38:21 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.1.0
* Breaking changes
+ Unsafe fixes are no longer displayed or applied without opt-in
+ Drop formatting specific rules from the default set
+ The deprecated format setting has been removed
+ The format setting cannot be used to configure the output format, use output-format instead
+ The RUFF_FORMAT environment variable is ignored, use RUFF_OUTPUT_FORMAT instead
+ The --format option has been removed from ruff check, use --output-format instead
* Rule changes
+ Extend reimplemented-starmap (FURB140) to catch calls with a single and starred argument
+ Improve cases covered by RUF015
+ Update SIM15 to allow open followed by close
+ Respect msgspec.Struct default-copy semantics in RUF012
+ Add sqlalchemy methods to `flake8-boolean-trap`` exclusion list
+ Add fix for PLR1714
+ Add fix for PIE804
+ Add fix for PLC0208
+ Add fix for PYI055
+ Update non-pep695-type-alias to require --unsafe-fixes outside of stub files
+ Improve fix message for UP018
+ Update PLW3201 to support Enum sunder names
* Preview features
+ Only show warnings for empty preview selectors when enabling rules
+ Add unnecessary-key-check to simplify key in dct and dct[key] to dct.get(key)
+ Add assignment-in-assert to prevent walrus expressions in assert statements
+ [refurb] Add single-item-membership-test (FURB171)
+ [pylint] Add and-or-ternary (R1706)
+ New rules are added in preview.
* Configuration
+ Add unsafe-fixes setting
+ Add extend-safe-fixes and extend-unsafe-fixes for promoting and demoting fixes
* CLI
+ Added --unsafe-fixes option for opt-in to display and apply unsafe fixes
+ Fix use of deprecated --format option in warning
+ Show changed files when running under --check
+ Write summary messages to stderr when fixing via stdin instead of omitting them
+ Update fix summary message in check --diff to include unsafe fix hints
+ Add notebook cell field to JSON output format
+ Rename applicability levels to Safe, Unsafe, and Display
* Bug fixes
+ Fix bug where f-strings were allowed in match pattern literal
+ Fix SIM110 with a yield in the condition
+ Preserve trailing comments in C414 fixes
+ Check sequence type before triggering unnecessary-enumerate len suggestion
+ Use correct start location for class/function clause header
+ Fix incorrect fixes for SIM101
+ Format comment before parameter default correctly
+ Fix E251 false positive inside f-strings
+ Allow bindings to be created and referenced within annotations
+ Show per-cell diffs when analyzing notebooks over stdin
+ Avoid curly brace escape in f-string format spec
+ Fix lexing single-quoted f-string with multi-line format spec
+ Consider nursery rules to be in-preview for ruff rule
+ Report precise location for invalid conversion flag
+ Visit pattern match guard as a boolean test
+ Respect --unfixable in ISC rules
+ Fix edge case with PIE804
+ Show custom message in PTH118 for Path.joinpath with starred arguments
+ Fix false negative in outdated-version-block when using greater than comparisons
+ Avoid converting f-strings within Django gettext calls
+ Fix false positive in PLR6301
+ Treat type aliases as typing-only expressions e.g. resolves false positive in TCH004
+ Resolve cache-dir relative to project root
+ Respect subscripted base classes in type-checking rules e.g. resolves false positive in TCH003
+ Fix JSON schema limit for line-length
+ Fix commented-out coalesce keyword
* Documentation
+ Document reimplemented-starmap performance effects
+ Default to following the system dark/light mode
+ Add documentation for fixes
+ Fix typo in docs of PLR6301
+ Update UP038 docs to note that it results in slower code
+ crlf -> cr-lf
+ Add an example of an unsafe fix
+ Fix documented examples for unnecessary-subscript-reversal
+ Correct error in tuple example in ruff formatter docs
+ Add versioning policy to documentation
+ Fix invalid code in FURB177 example
* Formatter
+ Less scary ruff format message
+ Remove spaces from import statements
+ Formatter quoting for f-strings with triple quotes
+ Update ruff_python_formatter generate.py comment
+ Document one-call chaining deviation
+ Allow f-string modifications in line-shrinking cases
+ Add trailing comment deviation to README
+ Add trailing zero between dot and exponential
+ Force parentheses for power operations in unary expressions
* Playground
+ Fix playground Quick Fix action
-------------------------------------------------------------------
Fri Oct 13 16:22:47 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- initial package