squidfunk/mkdocs-material (docs/mkdocs-material)
### [`v9.5.2`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.2): mkdocs-material-9.5.2
[Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.5.1...9.5.2)
- Fixed types for `slugify` settings in blog plugin config
- Fixed [#6469](https://togithub.com/squidfunk/mkdocs-material/issues/6469): Horizontal scrollbars on MathJax containers
### [`v9.5.1`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.1): mkdocs-material-9.5.1
[Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.5.0...9.5.1)
- Updated Greek translations
- Fixed [#6464](https://togithub.com/squidfunk/mkdocs-material/issues/6464): Privacy plugin cannot be enabled
- Fixed [#6461](https://togithub.com/squidfunk/mkdocs-material/issues/6461): Sorting blog posts ignores time component in date
### [`v9.5.0`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.0): mkdocs-material-9.5.0
[Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.4.14...9.5.0)
Merged Insiders features of 'Goat's Horn' funding goal
- Added privacy plugin: automatic downloading of external assets
- Added support for card grids and grid layouts
- Added support for improved tooltips
- Added support for content tabs anchor links (deep linking)
- Added support for automatic dark/light mode
- Added support for document contributors
### [`v9.4.14`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.4.14): mkdocs-material-9.4.14
[Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.4.13...9.4.14)
- Added support for linking authors in blog posts
### [`v9.4.13`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.4.13): mkdocs-material-9.4.13
[Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.4.12...9.4.13)
- Fixed [#6365](https://togithub.com/squidfunk/mkdocs-material/issues/6365): Blog plugin pagination links to previous pages broken
- Fixed [#5758](https://togithub.com/squidfunk/mkdocs-material/issues/5758): Updated Mermaid.js to version 10.6.1 (latest)
### [`v9.4.12`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.4.12): mkdocs-material-9.4.12
[Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.4.11...9.4.12)
- Improved blog plugin to generate Unicode-aware slugs by default
- Fixed non-deterministic order of categories in blog plugin
psf/black (misc-lint/black)
### [`v23.12.0`](https://togithub.com/psf/black/blob/HEAD/CHANGES.md#23120)
[Compare Source](https://togithub.com/psf/black/compare/23.11.0...23.12.0)
##### Highlights
It's almost 2024, which means it's time for a new edition of *Black*'s stable style!
Together with this release, we'll put out an alpha release 24.1a1 showcasing the draft
2024 stable style, which we'll finalize in the January release. Please try it out and
[share your feedback](https://togithub.com/psf/black/issues/4042).
This release (23.12.0) will still produce the 2023 style. Most but not all of the
changes in `--preview` mode will be in the 2024 stable style.
##### Stable style
- Fix bug where `# fmt: off` automatically dedents when used with the `--line-ranges`
option, even when it is not within the specified line range. ([#4084](https://togithub.com/psf/black/issues/4084))
- Fix feature detection for parenthesized context managers ([#4104](https://togithub.com/psf/black/issues/4104))
##### Preview style
- Prefer more equal signs before a break when splitting chained assignments ([#4010](https://togithub.com/psf/black/issues/4010))
- Standalone form feed characters at the module level are no longer removed ([#4021](https://togithub.com/psf/black/issues/4021))
- Additional cases of immediately nested tuples, lists, and dictionaries are now
indented less ([#4012](https://togithub.com/psf/black/issues/4012))
- Allow empty lines at the beginning of all blocks, except immediately before a
docstring ([#4060](https://togithub.com/psf/black/issues/4060))
- Fix crash in preview mode when using a short `--line-length` ([#4086](https://togithub.com/psf/black/issues/4086))
- Keep suites consisting of only an ellipsis on their own lines if they are not
functions or class definitions ([#4066](https://togithub.com/psf/black/issues/4066)) ([#4103](https://togithub.com/psf/black/issues/4103))
##### Configuration
- `--line-ranges` now skips *Black*'s internal stability check in `--safe` mode. This
avoids a crash on rare inputs that have many unformatted same-content lines. ([#4034](https://togithub.com/psf/black/issues/4034))
##### Packaging
- Upgrade to mypy 1.7.1 ([#4049](https://togithub.com/psf/black/issues/4049)) ([#4069](https://togithub.com/psf/black/issues/4069))
- Faster compiled wheels are now available for CPython 3.12 ([#4070](https://togithub.com/psf/black/issues/4070))
##### Integrations
- Enable 3.12 CI ([#4035](https://togithub.com/psf/black/issues/4035))
- Build docker images in parallel ([#4054](https://togithub.com/psf/black/issues/4054))
- Build docker images with 3.12 ([#4055](https://togithub.com/psf/black/issues/4055))
astral-sh/ruff (misc-lint/ruff)
### [`v0.1.9`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#019)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.8...v0.1.9)
##### Breaking changes
- Add site-packages to default exclusions ([#9188](https://togithub.com/astral-sh/ruff/pull/9188))
##### Preview features
- Fix: Avoid parenthesizing subscript targets and values ([#9209](https://togithub.com/astral-sh/ruff/pull/9209))
- \[`pylint`] Implement `too-many-locals` (`PLR0914`) ([#9163](https://togithub.com/astral-sh/ruff/pull/9163))
- Implement `reimplemented_operator` (FURB118) ([#9171](https://togithub.com/astral-sh/ruff/pull/9171))
- Add a rule to detect string members in runtime-evaluated unions ([#9143](https://togithub.com/astral-sh/ruff/pull/9143))
- Implement `no_blank_line_before_class_docstring` preview style ([#9154](https://togithub.com/astral-sh/ruff/pull/9154))
##### Rule changes
- `CONSTANT_CASE` variables are improperly flagged for yoda violation (`SIM300`) ([#9164](https://togithub.com/astral-sh/ruff/pull/9164))
- \[`flake8-pyi`] Cover ParamSpecs and TypeVarTuples (`PYI018`) ([#9198](https://togithub.com/astral-sh/ruff/pull/9198))
- \[`flake8-bugbear`] Add fix for `zip-without-explicit-strict` (`B905`) ([#9176](https://togithub.com/astral-sh/ruff/pull/9176))
- Add fix to automatically remove `print` and `pprint` statements (`T201`, `T203`) ([#9208](https://togithub.com/astral-sh/ruff/pull/9208))
- Prefer `Never` to `NoReturn` in auto-typing in Python >= 3.11 (`ANN201`) ([#9213](https://togithub.com/astral-sh/ruff/pull/9213))
##### Formatter
- `can_omit_optional_parentheses`: Exit early for unparenthesized expressions ([#9125](https://togithub.com/astral-sh/ruff/pull/9125))
- Fix `dynamic` mode with doctests so that it doesn't exceed configured line width ([#9129](https://togithub.com/astral-sh/ruff/pull/9129))
- Fix `can_omit_optional_parentheses` for expressions with a right most fstring ([#9124](https://togithub.com/astral-sh/ruff/pull/9124))
- Add `target_version` to formatter options ([#9220](https://togithub.com/astral-sh/ruff/pull/9220))
##### CLI
- Update `ruff format --check` to display message for already formatted files ([#9153](https://togithub.com/astral-sh/ruff/pull/9153))
##### Bug fixes
- Reverse order of arguments for `operator.contains` ([#9192](https://togithub.com/astral-sh/ruff/pull/9192))
- Iterate over lambdas in deferred type annotations ([#9175](https://togithub.com/astral-sh/ruff/pull/9175))
- Fix panic in `D208` with multibyte indent ([#9147](https://togithub.com/astral-sh/ruff/pull/9147))
- Add support for `NoReturn` in auto-return-typing ([#9206](https://togithub.com/astral-sh/ruff/pull/9206))
- Allow removal of `typing` from `exempt-modules` ([#9214](https://togithub.com/astral-sh/ruff/pull/9214))
- Avoid `mutable-class-default` violations for Pydantic subclasses ([#9187](https://togithub.com/astral-sh/ruff/pull/9187))
- Fix dropped union expressions for piped non-types in `PYI055` autofix ([#9161](https://togithub.com/astral-sh/ruff/pull/9161))
- Enable annotation quoting for multi-line expressions ([#9142](https://togithub.com/astral-sh/ruff/pull/9142))
- Deduplicate edits when quoting annotations ([#9140](https://togithub.com/astral-sh/ruff/pull/9140))
- Prevent invalid utf8 indexing in cell magic detection ([#9146](https://togithub.com/astral-sh/ruff/pull/9146))
- Avoid nested quotations in auto-quoting fix ([#9168](https://togithub.com/astral-sh/ruff/pull/9168))
- Add base-class inheritance detection to flake8-django rules ([#9151](https://togithub.com/astral-sh/ruff/pull/9151))
- Avoid `asyncio-dangling-task` violations on shadowed bindings ([#9215](https://togithub.com/astral-sh/ruff/pull/9215))
##### Documentation
- Fix blog post URL in changelog ([#9119](https://togithub.com/astral-sh/ruff/pull/9119))
- Add error suppression hint for multi-line strings ([#9205](https://togithub.com/astral-sh/ruff/pull/9205))
- Fix typo in SemanticModel.parent_expression docstring ([#9167](https://togithub.com/astral-sh/ruff/pull/9167))
- Document link between import sorting and formatter ([#9117](https://togithub.com/astral-sh/ruff/pull/9117))
### [`v0.1.8`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#018)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.7...v0.1.8)
This release includes opt-in support for formatting Python snippets within
docstrings via the `docstring-code-format` setting.
[Check out the blog post](https://astral.sh/blog/ruff-v0.1.8) for more details!
##### Preview features
- Add `"preserve"` quote-style to mimic Black's skip-string-normalization ([#8822](https://togithub.com/astral-sh/ruff/pull/8822))
- Implement `prefer_splitting_right_hand_side_of_assignments` preview style ([#8943](https://togithub.com/astral-sh/ruff/pull/8943))
- \[`pycodestyle`] Add fix for `unexpected-spaces-around-keyword-parameter-equals` ([#9072](https://togithub.com/astral-sh/ruff/pull/9072))
- \[`pycodestyle`] Add fix for comment-related whitespace rules ([#9075](https://togithub.com/astral-sh/ruff/pull/9075))
- \[`pycodestyle`] Allow `sys.path` modifications between imports ([#9047](https://togithub.com/astral-sh/ruff/pull/9047))
- \[`refurb`] Implement `hashlib-digest-hex` (`FURB181`) ([#9077](https://togithub.com/astral-sh/ruff/pull/9077))
##### Rule changes
- Allow `flake8-type-checking` rules to automatically quote runtime-evaluated references ([#6001](https://togithub.com/astral-sh/ruff/pull/6001))
- Allow transparent cell magics in Jupyter Notebooks ([#8911](https://togithub.com/astral-sh/ruff/pull/8911))
- \[`flake8-annotations`] Avoid `ANN2xx` fixes for abstract methods with empty bodies ([#9034](https://togithub.com/astral-sh/ruff/pull/9034))
- \[`flake8-self`] Ignore underscore references in type annotations ([#9036](https://togithub.com/astral-sh/ruff/pull/9036))
- \[`pep8-naming`] Allow class names when `apps.get_model` is a non-string ([#9065](https://togithub.com/astral-sh/ruff/pull/9065))
- \[`pycodestyle`] Allow `matplotlib.use` calls to intersperse imports ([#9094](https://togithub.com/astral-sh/ruff/pull/9094))
- \[`pyflakes`] Support fixing unused assignments in tuples by renaming variables (`F841`) ([#9107](https://togithub.com/astral-sh/ruff/pull/9107))
- \[`pylint`] Add fix for `subprocess-run-without-check` (`PLW1510`) ([#6708](https://togithub.com/astral-sh/ruff/pull/6708))
##### Formatter
- Add `docstring-code-format` knob to enable docstring snippet formatting ([#8854](https://togithub.com/astral-sh/ruff/pull/8854))
- Use double quotes for all docstrings, including single-quoted docstrings ([#9020](https://togithub.com/astral-sh/ruff/pull/9020))
- Implement "dynamic" line width mode for docstring code formatting ([#9098](https://togithub.com/astral-sh/ruff/pull/9098))
- Support reformatting Markdown code blocks ([#9030](https://togithub.com/astral-sh/ruff/pull/9030))
- add support for formatting reStructuredText code snippets ([#9003](https://togithub.com/astral-sh/ruff/pull/9003))
- Avoid trailing comma for single-argument with positional separator ([#9076](https://togithub.com/astral-sh/ruff/pull/9076))
- Fix handling of trailing target comment ([#9051](https://togithub.com/astral-sh/ruff/pull/9051))
##### CLI
- Hide unsafe fix suggestions when explicitly disabled ([#9095](https://togithub.com/astral-sh/ruff/pull/9095))
- Add SARIF support to `--output-format` ([#9078](https://togithub.com/astral-sh/ruff/pull/9078))
##### Bug fixes
- Apply unnecessary index rule prior to enumerate rewrite ([#9012](https://togithub.com/astral-sh/ruff/pull/9012))
- \[`flake8-err-msg`] Allow `EM` fixes even if `msg` variable is defined ([#9059](https://togithub.com/astral-sh/ruff/pull/9059))
- \[`flake8-pie`] Prevent keyword arguments duplication ([#8450](https://togithub.com/astral-sh/ruff/pull/8450))
- \[`flake8-pie`] Respect trailing comma in `unnecessary-dict-kwargs` (`PIE804`) ([#9015](https://togithub.com/astral-sh/ruff/pull/9015))
- \[`flake8-raise`] Avoid removing parentheses on ctypes.WinError ([#9027](https://togithub.com/astral-sh/ruff/pull/9027))
- \[`isort`] Avoid invalid combination of `force-sort-within-types` and `lines-between-types` ([#9041](https://togithub.com/astral-sh/ruff/pull/9041))
- \[`isort`] Ensure that from-style imports are always ordered first in `__future__` ([#9039](https://togithub.com/astral-sh/ruff/pull/9039))
- \[`pycodestyle`] Allow tab indentation before keyword ([#9099](https://togithub.com/astral-sh/ruff/pull/9099))
- \[`pylint`] Ignore `@overrides` and `@overloads` for `too-many-positional` ([#9000](https://togithub.com/astral-sh/ruff/pull/9000))
- \[`pyupgrade`] Enable `printf-string-formatting` fix with comments on right-hand side ([#9037](https://togithub.com/astral-sh/ruff/pull/9037))
- \[`refurb`] Make `math-constant` (`FURB152`) rule more targeted ([#9054](https://togithub.com/astral-sh/ruff/pull/9054))
- \[`refurb`] Support floating-point base in `redundant-log-base` (`FURB163`) ([#9100](https://togithub.com/astral-sh/ruff/pull/9100))
- \[`ruff`] Detect `unused-asyncio-dangling-task` (`RUF006`) on unused assignments ([#9060](https://togithub.com/astral-sh/ruff/pull/9060))
### [`v0.1.7`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#017)
[Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.6...v0.1.7)
##### Preview features
- Implement multiline dictionary and list hugging for preview style ([#8293](https://togithub.com/astral-sh/ruff/pull/8293))
- Implement the `fix_power_op_line_length` preview style ([#8947](https://togithub.com/astral-sh/ruff/pull/8947))
- Use Python version to determine typing rewrite safety ([#8919](https://togithub.com/astral-sh/ruff/pull/8919))
- \[`flake8-annotations`] Enable auto-return-type involving `Optional` and `Union` annotations ([#8885](https://togithub.com/astral-sh/ruff/pull/8885))
- \[`flake8-bandit`] Implement `django-raw-sql` (`S611`) ([#8651](https://togithub.com/astral-sh/ruff/pull/8651))
- \[`flake8-bandit`] Implement `tarfile-unsafe-members` (`S202`) ([#8829](https://togithub.com/astral-sh/ruff/pull/8829))
- \[`flake8-pyi`] Implement fix for `unnecessary-literal-union` (`PYI030`) ([#7934](https://togithub.com/astral-sh/ruff/pull/7934))
- \[`flake8-simplify`] Extend `dict-get-with-none-default` (`SIM910`) to non-literals ([#8762](https://togithub.com/astral-sh/ruff/pull/8762))
- \[`pylint`] - add `unnecessary-list-index-lookup` (`PLR1736`) + autofix ([#7999](https://togithub.com/astral-sh/ruff/pull/7999))
- \[`pylint`] - implement R0202 and R0203 with autofixes ([#8335](https://togithub.com/astral-sh/ruff/pull/8335))
- \[`pylint`] Implement `repeated-keyword` (`PLe1132`) ([#8706](https://togithub.com/astral-sh/ruff/pull/8706))
- \[`pylint`] Implement `too-many-positional` (`PLR0917`) ([#8995](https://togithub.com/astral-sh/ruff/pull/8995))
- \[`pylint`] Implement `unnecessary-dict-index-lookup` (`PLR1733`) ([#8036](https://togithub.com/astral-sh/ruff/pull/8036))
- \[`refurb`] Implement `redundant-log-base` (`FURB163`) ([#8842](https://togithub.com/astral-sh/ruff/pull/8842))
##### Rule changes
- \[`flake8-boolean-trap`] Allow booleans in `@override` methods ([#8882](https://togithub.com/astral-sh/ruff/pull/8882))
- \[`flake8-bugbear`] Avoid `B015`,`B018` for last expression in a cell ([#8815](https://togithub.com/astral-sh/ruff/pull/8815))
- \[`flake8-pie`] Allow ellipses for enum values in stub files ([#8825](https://togithub.com/astral-sh/ruff/pull/8825))
- \[`flake8-pyi`] Check PEP 695 type aliases for `snake-case-type-alias` and `t-suffixed-type-alias` ([#8966](https://togithub.com/astral-sh/ruff/pull/8966))
- \[`flake8-pyi`] Check for kwarg and vararg `NoReturn` type annotations ([#8948](https://togithub.com/astral-sh/ruff/pull/8948))
- \[`flake8-simplify`] Omit select context managers from `SIM117` ([#8801](https://togithub.com/astral-sh/ruff/pull/8801))
- \[`pep8-naming`] Allow Django model loads in `non-lowercase-variable-in-function` (`N806`) ([#8917](https://togithub.com/astral-sh/ruff/pull/8917))
- \[`pycodestyle`] Avoid `E703` for last expression in a cell ([#8821](https://togithub.com/astral-sh/ruff/pull/8821))
- \[`pycodestyle`] Update `E402` to work at cell level for notebooks ([#8872](https://togithub.com/astral-sh/ruff/pull/8872))
- \[`pydocstyle`] Avoid `D100` for Jupyter Notebooks ([#8816](https://togithub.com/astral-sh/ruff/pull/8816))
- \[`pylint`] Implement fix for `unspecified-encoding` (`PLW1514`) ([#8928](https://togithub.com/astral-sh/ruff/pull/8928))
##### Formatter
- Avoid unstable formatting in ellipsis-only body with trailing comment ([#8984](https://togithub.com/astral-sh/ruff/pull/8984))
- Inline trailing comments for type alias similar to assignments ([#8941](https://togithub.com/astral-sh/ruff/pull/8941))
- Insert trailing comma when function breaks with single argument ([#8921](https://togithub.com/astral-sh/ruff/pull/8921))
##### CLI
- Update `ruff check` and `ruff format` to default to the current directory ([#8791](https://togithub.com/astral-sh/ruff/pull/8791))
- Stop at the first resolved parent configuration ([#8864](https://togithub.com/astral-sh/ruff/pull/8864))
##### Configuration
- \[`pylint`] Default `max-positional-args` to `max-args` ([#8998](https://togithub.com/astral-sh/ruff/pull/8998))
- \[`pylint`] Add `allow-dunder-method-names` setting for `bad-dunder-method-name` (`PLW3201`) ([#8812](https://togithub.com/astral-sh/ruff/pull/8812))
- \[`isort`] Add support for `from-first` setting ([#8663](https://togithub.com/astral-sh/ruff/pull/8663))
- \[`isort`] Add support for `length-sort` settings ([#8841](https://togithub.com/astral-sh/ruff/pull/8841))
##### Bug fixes
- Add support for `@functools.singledispatch` ([#8934](https://togithub.com/astral-sh/ruff/pull/8934))
- Avoid off-by-one error in stripping noqa following multi-byte char ([#8979](https://togithub.com/astral-sh/ruff/pull/8979))
- Avoid off-by-one error in with-item named expressions ([#8915](https://togithub.com/astral-sh/ruff/pull/8915))
- Avoid syntax error via invalid ur string prefix ([#8971](https://togithub.com/astral-sh/ruff/pull/8971))
- Avoid underflow in `get_model` matching ([#8965](https://togithub.com/astral-sh/ruff/pull/8965))
- Avoid unnecessary index diagnostics when value is modified ([#8970](https://togithub.com/astral-sh/ruff/pull/8970))
- Convert over-indentation rule to use number of characters ([#8983](https://togithub.com/astral-sh/ruff/pull/8983))
- Detect implicit returns in auto-return-types ([#8952](https://togithub.com/astral-sh/ruff/pull/8952))
- Fix start >= end error in over-indentation ([#8982](https://togithub.com/astral-sh/ruff/pull/8982))
- Ignore `@overload` and `@override` methods for too-many-arguments checks ([#8954](https://togithub.com/astral-sh/ruff/pull/8954))
- Lexer start of line is false only for `Mode::Expression` ([#8880](https://togithub.com/astral-sh/ruff/pull/8880))
- Mark `pydantic_settings.BaseSettings` as having default copy semantics ([#8793](https://togithub.com/astral-sh/ruff/pull/8793))
- Respect dictionary unpacking in `NamedTuple` assignments ([#8810](https://togithub.com/astral-sh/ruff/pull/8810))
- Respect local subclasses in `flake8-type-checking` ([#8768](https://togithub.com/astral-sh/ruff/pull/8768))
- Support type alias statements in simple statement positions ([#8916](https://togithub.com/astral-sh/ruff/pull/8916))
- \[`flake8-annotations`] Avoid filtering out un-representable types in return annotation ([#8881](https://togithub.com/astral-sh/ruff/pull/8881))
- \[`flake8-pie`] Retain extra ellipses in protocols and abstract methods ([#8769](https://togithub.com/astral-sh/ruff/pull/8769))
- \[`flake8-pyi`] Respect local enum subclasses in `simple-defaults` (`PYI052`) ([#8767](https://togithub.com/astral-sh/ruff/pull/8767))
- \[`flake8-trio`] Use correct range for `TRIO115` fix ([#8933](https://togithub.com/astral-sh/ruff/pull/8933))
- \[`flake8-trio`] Use full arguments range for zero-sleep-call ([#8936](https://togithub.com/astral-sh/ruff/pull/8936))
- \[`isort`] fix: mark `__main__` as first-party import ([#8805](https://togithub.com/astral-sh/ruff/pull/8805))
- \[`pep8-naming`] Avoid `N806` errors for type alias statements ([#8785](https://togithub.com/astral-sh/ruff/pull/8785))
- \[`perflint`] Avoid `PERF101` if there's an append in loop body ([#8809](https://togithub.com/astral-sh/ruff/pull/8809))
- \[`pycodestyle`] Allow space-before-colon after end-of-slice ([#8838](https://togithub.com/astral-sh/ruff/pull/8838))
- \[`pydocstyle`] Avoid non-character breaks in `over-indentation` (`D208`) ([#8866](https://togithub.com/astral-sh/ruff/pull/8866))
- \[`pydocstyle`] Ignore underlines when determining docstring logical lines ([#8929](https://togithub.com/astral-sh/ruff/pull/8929))
- \[`pylint`] Extend `self-assigning-variable` to multi-target assignments ([#8839](https://togithub.com/astral-sh/ruff/pull/8839))
- \[`tryceratops`] Avoid repeated triggers in nested `tryceratops` diagnostics ([#8772](https://togithub.com/astral-sh/ruff/pull/8772))
##### Documentation
- Add advice for fixing RUF008 when mutability is not desired ([#8853](https://togithub.com/astral-sh/ruff/pull/8853))
- Added the command to run ruff using pkgx to the installation.md ([#8955](https://togithub.com/astral-sh/ruff/pull/8955))
- Document fix safety for flake8-comprehensions and some pyupgrade rules ([#8918](https://togithub.com/astral-sh/ruff/pull/8918))
- Fix doc formatting for zero-sleep-call ([#8937](https://togithub.com/astral-sh/ruff/pull/8937))
- Remove duplicate imports from os-stat documentation ([#8930](https://togithub.com/astral-sh/ruff/pull/8930))
- Replace generated reference to MkDocs ([#8806](https://togithub.com/astral-sh/ruff/pull/8806))
- Update Arch Linux package URL in installation.md ([#8802](https://togithub.com/astral-sh/ruff/pull/8802))
- \[`flake8-pyi`] Fix error in `t-suffixed-type-alias` (`PYI043`) example ([#8963](https://togithub.com/astral-sh/ruff/pull/8963))
- \[`flake8-pyi`] Improve motivation for `custom-type-var-return-type` (`PYI019`) ([#8766](https://togithub.com/astral-sh/ruff/pull/8766))
nedbat/coveragepy (pytest/coverage)
### [`v7.3.4`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-734--2023-12-20)
[Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.3.3...7.3.4)
- Fix: the change for multi-line signature exclusions in 7.3.3 broke other
forms of nested clauses being excluded properly. This is now fixed, closing
`issue 1713`\_.
- Fix: in the HTML report, selecting code for copying won't select the line
numbers also. Thanks, `Robert Harris `\_.
.. \_issue 1713:[https://github.com/nedbat/coveragepy/issues/1713](https://togithub.com/nedbat/coveragepy/issues/1713)3
.. \_pull 1717[https://github.com/nedbat/coveragepy/pull/1717](https://togithub.com/nedbat/coveragepy/pull/1717)17
.. \_changes\_7-3-3:
### [`v7.3.3`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-733--2023-12-14)
[Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.3.2...7.3.3)
- Fix: function definitions with multi-line signatures can now be excluded by
matching any of the lines, closing `issue 684`*. Thanks, `Jan Rusak,
Maciej Kowalczyk and Joanna Ejzel `*.
- Fix: XML reports could fail with a TypeError if files had numeric components
that were duplicates except for leading zeroes, like `file1.py` and
`file001.py`. Fixes `issue 1709`\_.
- The `coverage annotate` command used to announce that it would be removed
in a future version. Enough people got in touch to say that they use it, so
it will stay. Don't expect it to keep up with other new features though.
- Added new :ref:`debug options `:
- `pytest` writes the pytest test name into the debug output.
- `dataop2` writes the full data being added to CoverageData objects.
.. \_issue 684:[https://github.com/nedbat/coveragepy/issues/684](https://togithub.com/nedbat/coveragepy/issues/684)4
.. \_pull 1705[https://github.com/nedbat/coveragepy/pull/1705](https://togithub.com/nedbat/coveragepy/pull/1705)05
.. \_issue 170[https://github.com/nedbat/coveragepy/issues/1709](https://togithub.com/nedbat/coveragepy/issues/1709)709
.. \_changes\_7-3-2:
pytest-dev/pytest-asyncio (pytest/pytest-asyncio)
### [`v0.23.2`](https://togithub.com/pytest-dev/pytest-asyncio/releases/tag/v0.23.2): pytest-asyncio 0.23.2
[Compare Source](https://togithub.com/pytest-dev/pytest-asyncio/compare/v0.23.1...v0.23.2)
### 0.23.2 (2023-12-04)
- Fixes a bug that caused an internal pytest error when collecting .txt files [#703](https://togithub.com/pytest-dev/pytest-asyncio/issues/703)
### [`v0.23.1`](https://togithub.com/pytest-dev/pytest-asyncio/releases/tag/v0.23.1): pytest-asyncio 0.23.1
[Compare Source](https://togithub.com/pytest-dev/pytest-asyncio/compare/v0.23.0...v0.23.1)
### 0.23.1 (2023-12-03)
- Fixes a bug that caused an internal pytest error when using module-level skips [#701](https://togithub.com/pytest-dev/pytest-asyncio/issues/701)
### [`v0.23.0`](https://togithub.com/pytest-dev/pytest-asyncio/releases/tag/v0.23.0): pytest-asyncio 0.23.0
[Compare Source](https://togithub.com/pytest-dev/pytest-asyncio/compare/v0.22.0...v0.23.0)
This release is backwards-compatible with v0.21. Changes are
non-breaking, unless you upgrade from v0.22.
- BREAKING: The *asyncio_event_loop* mark has been removed. Event
loops with class, module, package, and session scopes can be
requested via the *scope* keyword argument to the *asyncio*
mark.
- Introduces the *event_loop_policy* fixture which allows testing with
non-default or multiple event loops [#662](https://togithub.com/pytest-dev/pytest-asyncio/pull/662)
- Introduces `pytest_asyncio.is_async_test` which returns whether a
test item is managed by pytest-asyncio [#376](https://togithub.com/pytest-dev/pytest-asyncio/issues/376)
- Removes and *pytest-trio,* *mypy,* and *flaky* from the test
dependencies [#620](https://togithub.com/pytest-dev/pytest-asyncio/pull/620), [#674](https://togithub.com/pytest-dev/pytest-asyncio/pull/674), [#678](https://togithub.com/pytest-dev/pytest-asyncio/pull/678)
### [`v0.22.0`](https://togithub.com/pytest-dev/pytest-asyncio/releases/tag/v0.22.0): pytest-asyncio 0.22.0 (yanked)
[Compare Source](https://togithub.com/pytest-dev/pytest-asyncio/compare/v0.21.1...v0.22.0)
*This release deprecated event loop overrides, but didn't provide adequate replacement functionality for all relevant use cases. As such, the release was yanked from PyPI.*
### 0.22.0 (2023-10-31)
- Class-scoped and module-scoped event loops can be requested
via the *asyncio_event_loop* mark. [#620](https://togithub.com/pytest-dev/pytest-asyncio/pull/620)
- Deprecate redefinition of the *event_loop* fixture. [#587](https://togithub.com/pytest-dev/pytest-asyncio/issues/531)
Users requiring a class-scoped or module-scoped asyncio event loop for their tests
should mark the corresponding class or module with *asyncio_event_loop*.
- Test items based on asynchronous generators always exit with *xfail* status and emit a warning during the collection phase. This behavior is consistent with synchronous yield tests. [#642](https://togithub.com/pytest-dev/pytest-asyncio/issues/642)
- Remove support for Python 3.7
- Declare support for Python 3.12
python/mypy (typecheck/mypy)
### [`v1.8.0`](https://togithub.com/python/mypy/compare/v1.7.1...v1.8.0)
[Compare Source](https://togithub.com/python/mypy/compare/v1.7.1...v1.8.0)
Configuration
š Schedule: Branch creation - "every 3 months on the first day of the month" (UTC), Automerge - At any time (no schedule defined).
š¦ Automerge: Disabled by config. Please merge this manually once you are satisfied.
ā» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
š» Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
==9.4.11
->==9.5.2
==23.11.0
->==23.12.0
==0.1.6
->==0.1.9
==7.3.2
->==7.3.4
==0.21.1
->==0.23.2
==1.7.1
->==1.8.0
Release Notes
squidfunk/mkdocs-material (docs/mkdocs-material)
### [`v9.5.2`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.2): mkdocs-material-9.5.2 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.5.1...9.5.2) - Fixed types for `slugify` settings in blog plugin config - Fixed [#6469](https://togithub.com/squidfunk/mkdocs-material/issues/6469): Horizontal scrollbars on MathJax containers ### [`v9.5.1`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.1): mkdocs-material-9.5.1 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.5.0...9.5.1) - Updated Greek translations - Fixed [#6464](https://togithub.com/squidfunk/mkdocs-material/issues/6464): Privacy plugin cannot be enabled - Fixed [#6461](https://togithub.com/squidfunk/mkdocs-material/issues/6461): Sorting blog posts ignores time component in date ### [`v9.5.0`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.5.0): mkdocs-material-9.5.0 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.4.14...9.5.0) Merged Insiders features of 'Goat's Horn' funding goal - Added privacy plugin: automatic downloading of external assets - Added support for card grids and grid layouts - Added support for improved tooltips - Added support for content tabs anchor links (deep linking) - Added support for automatic dark/light mode - Added support for document contributors ### [`v9.4.14`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.4.14): mkdocs-material-9.4.14 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.4.13...9.4.14) - Added support for linking authors in blog posts ### [`v9.4.13`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.4.13): mkdocs-material-9.4.13 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.4.12...9.4.13) - Fixed [#6365](https://togithub.com/squidfunk/mkdocs-material/issues/6365): Blog plugin pagination links to previous pages broken - Fixed [#5758](https://togithub.com/squidfunk/mkdocs-material/issues/5758): Updated Mermaid.js to version 10.6.1 (latest) ### [`v9.4.12`](https://togithub.com/squidfunk/mkdocs-material/releases/tag/9.4.12): mkdocs-material-9.4.12 [Compare Source](https://togithub.com/squidfunk/mkdocs-material/compare/9.4.11...9.4.12) - Improved blog plugin to generate Unicode-aware slugs by default - Fixed non-deterministic order of categories in blog pluginpsf/black (misc-lint/black)
### [`v23.12.0`](https://togithub.com/psf/black/blob/HEAD/CHANGES.md#23120) [Compare Source](https://togithub.com/psf/black/compare/23.11.0...23.12.0) ##### Highlights It's almost 2024, which means it's time for a new edition of *Black*'s stable style! Together with this release, we'll put out an alpha release 24.1a1 showcasing the draft 2024 stable style, which we'll finalize in the January release. Please try it out and [share your feedback](https://togithub.com/psf/black/issues/4042). This release (23.12.0) will still produce the 2023 style. Most but not all of the changes in `--preview` mode will be in the 2024 stable style. ##### Stable style - Fix bug where `# fmt: off` automatically dedents when used with the `--line-ranges` option, even when it is not within the specified line range. ([#4084](https://togithub.com/psf/black/issues/4084)) - Fix feature detection for parenthesized context managers ([#4104](https://togithub.com/psf/black/issues/4104)) ##### Preview style - Prefer more equal signs before a break when splitting chained assignments ([#4010](https://togithub.com/psf/black/issues/4010)) - Standalone form feed characters at the module level are no longer removed ([#4021](https://togithub.com/psf/black/issues/4021)) - Additional cases of immediately nested tuples, lists, and dictionaries are now indented less ([#4012](https://togithub.com/psf/black/issues/4012)) - Allow empty lines at the beginning of all blocks, except immediately before a docstring ([#4060](https://togithub.com/psf/black/issues/4060)) - Fix crash in preview mode when using a short `--line-length` ([#4086](https://togithub.com/psf/black/issues/4086)) - Keep suites consisting of only an ellipsis on their own lines if they are not functions or class definitions ([#4066](https://togithub.com/psf/black/issues/4066)) ([#4103](https://togithub.com/psf/black/issues/4103)) ##### Configuration - `--line-ranges` now skips *Black*'s internal stability check in `--safe` mode. This avoids a crash on rare inputs that have many unformatted same-content lines. ([#4034](https://togithub.com/psf/black/issues/4034)) ##### Packaging - Upgrade to mypy 1.7.1 ([#4049](https://togithub.com/psf/black/issues/4049)) ([#4069](https://togithub.com/psf/black/issues/4069)) - Faster compiled wheels are now available for CPython 3.12 ([#4070](https://togithub.com/psf/black/issues/4070)) ##### Integrations - Enable 3.12 CI ([#4035](https://togithub.com/psf/black/issues/4035)) - Build docker images in parallel ([#4054](https://togithub.com/psf/black/issues/4054)) - Build docker images with 3.12 ([#4055](https://togithub.com/psf/black/issues/4055))astral-sh/ruff (misc-lint/ruff)
### [`v0.1.9`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#019) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.8...v0.1.9) ##### Breaking changes - Add site-packages to default exclusions ([#9188](https://togithub.com/astral-sh/ruff/pull/9188)) ##### Preview features - Fix: Avoid parenthesizing subscript targets and values ([#9209](https://togithub.com/astral-sh/ruff/pull/9209)) - \[`pylint`] Implement `too-many-locals` (`PLR0914`) ([#9163](https://togithub.com/astral-sh/ruff/pull/9163)) - Implement `reimplemented_operator` (FURB118) ([#9171](https://togithub.com/astral-sh/ruff/pull/9171)) - Add a rule to detect string members in runtime-evaluated unions ([#9143](https://togithub.com/astral-sh/ruff/pull/9143)) - Implement `no_blank_line_before_class_docstring` preview style ([#9154](https://togithub.com/astral-sh/ruff/pull/9154)) ##### Rule changes - `CONSTANT_CASE` variables are improperly flagged for yoda violation (`SIM300`) ([#9164](https://togithub.com/astral-sh/ruff/pull/9164)) - \[`flake8-pyi`] Cover ParamSpecs and TypeVarTuples (`PYI018`) ([#9198](https://togithub.com/astral-sh/ruff/pull/9198)) - \[`flake8-bugbear`] Add fix for `zip-without-explicit-strict` (`B905`) ([#9176](https://togithub.com/astral-sh/ruff/pull/9176)) - Add fix to automatically remove `print` and `pprint` statements (`T201`, `T203`) ([#9208](https://togithub.com/astral-sh/ruff/pull/9208)) - Prefer `Never` to `NoReturn` in auto-typing in Python >= 3.11 (`ANN201`) ([#9213](https://togithub.com/astral-sh/ruff/pull/9213)) ##### Formatter - `can_omit_optional_parentheses`: Exit early for unparenthesized expressions ([#9125](https://togithub.com/astral-sh/ruff/pull/9125)) - Fix `dynamic` mode with doctests so that it doesn't exceed configured line width ([#9129](https://togithub.com/astral-sh/ruff/pull/9129)) - Fix `can_omit_optional_parentheses` for expressions with a right most fstring ([#9124](https://togithub.com/astral-sh/ruff/pull/9124)) - Add `target_version` to formatter options ([#9220](https://togithub.com/astral-sh/ruff/pull/9220)) ##### CLI - Update `ruff format --check` to display message for already formatted files ([#9153](https://togithub.com/astral-sh/ruff/pull/9153)) ##### Bug fixes - Reverse order of arguments for `operator.contains` ([#9192](https://togithub.com/astral-sh/ruff/pull/9192)) - Iterate over lambdas in deferred type annotations ([#9175](https://togithub.com/astral-sh/ruff/pull/9175)) - Fix panic in `D208` with multibyte indent ([#9147](https://togithub.com/astral-sh/ruff/pull/9147)) - Add support for `NoReturn` in auto-return-typing ([#9206](https://togithub.com/astral-sh/ruff/pull/9206)) - Allow removal of `typing` from `exempt-modules` ([#9214](https://togithub.com/astral-sh/ruff/pull/9214)) - Avoid `mutable-class-default` violations for Pydantic subclasses ([#9187](https://togithub.com/astral-sh/ruff/pull/9187)) - Fix dropped union expressions for piped non-types in `PYI055` autofix ([#9161](https://togithub.com/astral-sh/ruff/pull/9161)) - Enable annotation quoting for multi-line expressions ([#9142](https://togithub.com/astral-sh/ruff/pull/9142)) - Deduplicate edits when quoting annotations ([#9140](https://togithub.com/astral-sh/ruff/pull/9140)) - Prevent invalid utf8 indexing in cell magic detection ([#9146](https://togithub.com/astral-sh/ruff/pull/9146)) - Avoid nested quotations in auto-quoting fix ([#9168](https://togithub.com/astral-sh/ruff/pull/9168)) - Add base-class inheritance detection to flake8-django rules ([#9151](https://togithub.com/astral-sh/ruff/pull/9151)) - Avoid `asyncio-dangling-task` violations on shadowed bindings ([#9215](https://togithub.com/astral-sh/ruff/pull/9215)) ##### Documentation - Fix blog post URL in changelog ([#9119](https://togithub.com/astral-sh/ruff/pull/9119)) - Add error suppression hint for multi-line strings ([#9205](https://togithub.com/astral-sh/ruff/pull/9205)) - Fix typo in SemanticModel.parent_expression docstring ([#9167](https://togithub.com/astral-sh/ruff/pull/9167)) - Document link between import sorting and formatter ([#9117](https://togithub.com/astral-sh/ruff/pull/9117)) ### [`v0.1.8`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#018) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.7...v0.1.8) This release includes opt-in support for formatting Python snippets within docstrings via the `docstring-code-format` setting. [Check out the blog post](https://astral.sh/blog/ruff-v0.1.8) for more details! ##### Preview features - Add `"preserve"` quote-style to mimic Black's skip-string-normalization ([#8822](https://togithub.com/astral-sh/ruff/pull/8822)) - Implement `prefer_splitting_right_hand_side_of_assignments` preview style ([#8943](https://togithub.com/astral-sh/ruff/pull/8943)) - \[`pycodestyle`] Add fix for `unexpected-spaces-around-keyword-parameter-equals` ([#9072](https://togithub.com/astral-sh/ruff/pull/9072)) - \[`pycodestyle`] Add fix for comment-related whitespace rules ([#9075](https://togithub.com/astral-sh/ruff/pull/9075)) - \[`pycodestyle`] Allow `sys.path` modifications between imports ([#9047](https://togithub.com/astral-sh/ruff/pull/9047)) - \[`refurb`] Implement `hashlib-digest-hex` (`FURB181`) ([#9077](https://togithub.com/astral-sh/ruff/pull/9077)) ##### Rule changes - Allow `flake8-type-checking` rules to automatically quote runtime-evaluated references ([#6001](https://togithub.com/astral-sh/ruff/pull/6001)) - Allow transparent cell magics in Jupyter Notebooks ([#8911](https://togithub.com/astral-sh/ruff/pull/8911)) - \[`flake8-annotations`] Avoid `ANN2xx` fixes for abstract methods with empty bodies ([#9034](https://togithub.com/astral-sh/ruff/pull/9034)) - \[`flake8-self`] Ignore underscore references in type annotations ([#9036](https://togithub.com/astral-sh/ruff/pull/9036)) - \[`pep8-naming`] Allow class names when `apps.get_model` is a non-string ([#9065](https://togithub.com/astral-sh/ruff/pull/9065)) - \[`pycodestyle`] Allow `matplotlib.use` calls to intersperse imports ([#9094](https://togithub.com/astral-sh/ruff/pull/9094)) - \[`pyflakes`] Support fixing unused assignments in tuples by renaming variables (`F841`) ([#9107](https://togithub.com/astral-sh/ruff/pull/9107)) - \[`pylint`] Add fix for `subprocess-run-without-check` (`PLW1510`) ([#6708](https://togithub.com/astral-sh/ruff/pull/6708)) ##### Formatter - Add `docstring-code-format` knob to enable docstring snippet formatting ([#8854](https://togithub.com/astral-sh/ruff/pull/8854)) - Use double quotes for all docstrings, including single-quoted docstrings ([#9020](https://togithub.com/astral-sh/ruff/pull/9020)) - Implement "dynamic" line width mode for docstring code formatting ([#9098](https://togithub.com/astral-sh/ruff/pull/9098)) - Support reformatting Markdown code blocks ([#9030](https://togithub.com/astral-sh/ruff/pull/9030)) - add support for formatting reStructuredText code snippets ([#9003](https://togithub.com/astral-sh/ruff/pull/9003)) - Avoid trailing comma for single-argument with positional separator ([#9076](https://togithub.com/astral-sh/ruff/pull/9076)) - Fix handling of trailing target comment ([#9051](https://togithub.com/astral-sh/ruff/pull/9051)) ##### CLI - Hide unsafe fix suggestions when explicitly disabled ([#9095](https://togithub.com/astral-sh/ruff/pull/9095)) - Add SARIF support to `--output-format` ([#9078](https://togithub.com/astral-sh/ruff/pull/9078)) ##### Bug fixes - Apply unnecessary index rule prior to enumerate rewrite ([#9012](https://togithub.com/astral-sh/ruff/pull/9012)) - \[`flake8-err-msg`] Allow `EM` fixes even if `msg` variable is defined ([#9059](https://togithub.com/astral-sh/ruff/pull/9059)) - \[`flake8-pie`] Prevent keyword arguments duplication ([#8450](https://togithub.com/astral-sh/ruff/pull/8450)) - \[`flake8-pie`] Respect trailing comma in `unnecessary-dict-kwargs` (`PIE804`) ([#9015](https://togithub.com/astral-sh/ruff/pull/9015)) - \[`flake8-raise`] Avoid removing parentheses on ctypes.WinError ([#9027](https://togithub.com/astral-sh/ruff/pull/9027)) - \[`isort`] Avoid invalid combination of `force-sort-within-types` and `lines-between-types` ([#9041](https://togithub.com/astral-sh/ruff/pull/9041)) - \[`isort`] Ensure that from-style imports are always ordered first in `__future__` ([#9039](https://togithub.com/astral-sh/ruff/pull/9039)) - \[`pycodestyle`] Allow tab indentation before keyword ([#9099](https://togithub.com/astral-sh/ruff/pull/9099)) - \[`pylint`] Ignore `@overrides` and `@overloads` for `too-many-positional` ([#9000](https://togithub.com/astral-sh/ruff/pull/9000)) - \[`pyupgrade`] Enable `printf-string-formatting` fix with comments on right-hand side ([#9037](https://togithub.com/astral-sh/ruff/pull/9037)) - \[`refurb`] Make `math-constant` (`FURB152`) rule more targeted ([#9054](https://togithub.com/astral-sh/ruff/pull/9054)) - \[`refurb`] Support floating-point base in `redundant-log-base` (`FURB163`) ([#9100](https://togithub.com/astral-sh/ruff/pull/9100)) - \[`ruff`] Detect `unused-asyncio-dangling-task` (`RUF006`) on unused assignments ([#9060](https://togithub.com/astral-sh/ruff/pull/9060)) ### [`v0.1.7`](https://togithub.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#017) [Compare Source](https://togithub.com/astral-sh/ruff/compare/v0.1.6...v0.1.7) ##### Preview features - Implement multiline dictionary and list hugging for preview style ([#8293](https://togithub.com/astral-sh/ruff/pull/8293)) - Implement the `fix_power_op_line_length` preview style ([#8947](https://togithub.com/astral-sh/ruff/pull/8947)) - Use Python version to determine typing rewrite safety ([#8919](https://togithub.com/astral-sh/ruff/pull/8919)) - \[`flake8-annotations`] Enable auto-return-type involving `Optional` and `Union` annotations ([#8885](https://togithub.com/astral-sh/ruff/pull/8885)) - \[`flake8-bandit`] Implement `django-raw-sql` (`S611`) ([#8651](https://togithub.com/astral-sh/ruff/pull/8651)) - \[`flake8-bandit`] Implement `tarfile-unsafe-members` (`S202`) ([#8829](https://togithub.com/astral-sh/ruff/pull/8829)) - \[`flake8-pyi`] Implement fix for `unnecessary-literal-union` (`PYI030`) ([#7934](https://togithub.com/astral-sh/ruff/pull/7934)) - \[`flake8-simplify`] Extend `dict-get-with-none-default` (`SIM910`) to non-literals ([#8762](https://togithub.com/astral-sh/ruff/pull/8762)) - \[`pylint`] - add `unnecessary-list-index-lookup` (`PLR1736`) + autofix ([#7999](https://togithub.com/astral-sh/ruff/pull/7999)) - \[`pylint`] - implement R0202 and R0203 with autofixes ([#8335](https://togithub.com/astral-sh/ruff/pull/8335)) - \[`pylint`] Implement `repeated-keyword` (`PLe1132`) ([#8706](https://togithub.com/astral-sh/ruff/pull/8706)) - \[`pylint`] Implement `too-many-positional` (`PLR0917`) ([#8995](https://togithub.com/astral-sh/ruff/pull/8995)) - \[`pylint`] Implement `unnecessary-dict-index-lookup` (`PLR1733`) ([#8036](https://togithub.com/astral-sh/ruff/pull/8036)) - \[`refurb`] Implement `redundant-log-base` (`FURB163`) ([#8842](https://togithub.com/astral-sh/ruff/pull/8842)) ##### Rule changes - \[`flake8-boolean-trap`] Allow booleans in `@override` methods ([#8882](https://togithub.com/astral-sh/ruff/pull/8882)) - \[`flake8-bugbear`] Avoid `B015`,`B018` for last expression in a cell ([#8815](https://togithub.com/astral-sh/ruff/pull/8815)) - \[`flake8-pie`] Allow ellipses for enum values in stub files ([#8825](https://togithub.com/astral-sh/ruff/pull/8825)) - \[`flake8-pyi`] Check PEP 695 type aliases for `snake-case-type-alias` and `t-suffixed-type-alias` ([#8966](https://togithub.com/astral-sh/ruff/pull/8966)) - \[`flake8-pyi`] Check for kwarg and vararg `NoReturn` type annotations ([#8948](https://togithub.com/astral-sh/ruff/pull/8948)) - \[`flake8-simplify`] Omit select context managers from `SIM117` ([#8801](https://togithub.com/astral-sh/ruff/pull/8801)) - \[`pep8-naming`] Allow Django model loads in `non-lowercase-variable-in-function` (`N806`) ([#8917](https://togithub.com/astral-sh/ruff/pull/8917)) - \[`pycodestyle`] Avoid `E703` for last expression in a cell ([#8821](https://togithub.com/astral-sh/ruff/pull/8821)) - \[`pycodestyle`] Update `E402` to work at cell level for notebooks ([#8872](https://togithub.com/astral-sh/ruff/pull/8872)) - \[`pydocstyle`] Avoid `D100` for Jupyter Notebooks ([#8816](https://togithub.com/astral-sh/ruff/pull/8816)) - \[`pylint`] Implement fix for `unspecified-encoding` (`PLW1514`) ([#8928](https://togithub.com/astral-sh/ruff/pull/8928)) ##### Formatter - Avoid unstable formatting in ellipsis-only body with trailing comment ([#8984](https://togithub.com/astral-sh/ruff/pull/8984)) - Inline trailing comments for type alias similar to assignments ([#8941](https://togithub.com/astral-sh/ruff/pull/8941)) - Insert trailing comma when function breaks with single argument ([#8921](https://togithub.com/astral-sh/ruff/pull/8921)) ##### CLI - Update `ruff check` and `ruff format` to default to the current directory ([#8791](https://togithub.com/astral-sh/ruff/pull/8791)) - Stop at the first resolved parent configuration ([#8864](https://togithub.com/astral-sh/ruff/pull/8864)) ##### Configuration - \[`pylint`] Default `max-positional-args` to `max-args` ([#8998](https://togithub.com/astral-sh/ruff/pull/8998)) - \[`pylint`] Add `allow-dunder-method-names` setting for `bad-dunder-method-name` (`PLW3201`) ([#8812](https://togithub.com/astral-sh/ruff/pull/8812)) - \[`isort`] Add support for `from-first` setting ([#8663](https://togithub.com/astral-sh/ruff/pull/8663)) - \[`isort`] Add support for `length-sort` settings ([#8841](https://togithub.com/astral-sh/ruff/pull/8841)) ##### Bug fixes - Add support for `@functools.singledispatch` ([#8934](https://togithub.com/astral-sh/ruff/pull/8934)) - Avoid off-by-one error in stripping noqa following multi-byte char ([#8979](https://togithub.com/astral-sh/ruff/pull/8979)) - Avoid off-by-one error in with-item named expressions ([#8915](https://togithub.com/astral-sh/ruff/pull/8915)) - Avoid syntax error via invalid ur string prefix ([#8971](https://togithub.com/astral-sh/ruff/pull/8971)) - Avoid underflow in `get_model` matching ([#8965](https://togithub.com/astral-sh/ruff/pull/8965)) - Avoid unnecessary index diagnostics when value is modified ([#8970](https://togithub.com/astral-sh/ruff/pull/8970)) - Convert over-indentation rule to use number of characters ([#8983](https://togithub.com/astral-sh/ruff/pull/8983)) - Detect implicit returns in auto-return-types ([#8952](https://togithub.com/astral-sh/ruff/pull/8952)) - Fix start >= end error in over-indentation ([#8982](https://togithub.com/astral-sh/ruff/pull/8982)) - Ignore `@overload` and `@override` methods for too-many-arguments checks ([#8954](https://togithub.com/astral-sh/ruff/pull/8954)) - Lexer start of line is false only for `Mode::Expression` ([#8880](https://togithub.com/astral-sh/ruff/pull/8880)) - Mark `pydantic_settings.BaseSettings` as having default copy semantics ([#8793](https://togithub.com/astral-sh/ruff/pull/8793)) - Respect dictionary unpacking in `NamedTuple` assignments ([#8810](https://togithub.com/astral-sh/ruff/pull/8810)) - Respect local subclasses in `flake8-type-checking` ([#8768](https://togithub.com/astral-sh/ruff/pull/8768)) - Support type alias statements in simple statement positions ([#8916](https://togithub.com/astral-sh/ruff/pull/8916)) - \[`flake8-annotations`] Avoid filtering out un-representable types in return annotation ([#8881](https://togithub.com/astral-sh/ruff/pull/8881)) - \[`flake8-pie`] Retain extra ellipses in protocols and abstract methods ([#8769](https://togithub.com/astral-sh/ruff/pull/8769)) - \[`flake8-pyi`] Respect local enum subclasses in `simple-defaults` (`PYI052`) ([#8767](https://togithub.com/astral-sh/ruff/pull/8767)) - \[`flake8-trio`] Use correct range for `TRIO115` fix ([#8933](https://togithub.com/astral-sh/ruff/pull/8933)) - \[`flake8-trio`] Use full arguments range for zero-sleep-call ([#8936](https://togithub.com/astral-sh/ruff/pull/8936)) - \[`isort`] fix: mark `__main__` as first-party import ([#8805](https://togithub.com/astral-sh/ruff/pull/8805)) - \[`pep8-naming`] Avoid `N806` errors for type alias statements ([#8785](https://togithub.com/astral-sh/ruff/pull/8785)) - \[`perflint`] Avoid `PERF101` if there's an append in loop body ([#8809](https://togithub.com/astral-sh/ruff/pull/8809)) - \[`pycodestyle`] Allow space-before-colon after end-of-slice ([#8838](https://togithub.com/astral-sh/ruff/pull/8838)) - \[`pydocstyle`] Avoid non-character breaks in `over-indentation` (`D208`) ([#8866](https://togithub.com/astral-sh/ruff/pull/8866)) - \[`pydocstyle`] Ignore underlines when determining docstring logical lines ([#8929](https://togithub.com/astral-sh/ruff/pull/8929)) - \[`pylint`] Extend `self-assigning-variable` to multi-target assignments ([#8839](https://togithub.com/astral-sh/ruff/pull/8839)) - \[`tryceratops`] Avoid repeated triggers in nested `tryceratops` diagnostics ([#8772](https://togithub.com/astral-sh/ruff/pull/8772)) ##### Documentation - Add advice for fixing RUF008 when mutability is not desired ([#8853](https://togithub.com/astral-sh/ruff/pull/8853)) - Added the command to run ruff using pkgx to the installation.md ([#8955](https://togithub.com/astral-sh/ruff/pull/8955)) - Document fix safety for flake8-comprehensions and some pyupgrade rules ([#8918](https://togithub.com/astral-sh/ruff/pull/8918)) - Fix doc formatting for zero-sleep-call ([#8937](https://togithub.com/astral-sh/ruff/pull/8937)) - Remove duplicate imports from os-stat documentation ([#8930](https://togithub.com/astral-sh/ruff/pull/8930)) - Replace generated reference to MkDocs ([#8806](https://togithub.com/astral-sh/ruff/pull/8806)) - Update Arch Linux package URL in installation.md ([#8802](https://togithub.com/astral-sh/ruff/pull/8802)) - \[`flake8-pyi`] Fix error in `t-suffixed-type-alias` (`PYI043`) example ([#8963](https://togithub.com/astral-sh/ruff/pull/8963)) - \[`flake8-pyi`] Improve motivation for `custom-type-var-return-type` (`PYI019`) ([#8766](https://togithub.com/astral-sh/ruff/pull/8766))nedbat/coveragepy (pytest/coverage)
### [`v7.3.4`](https://togithub.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-734--2023-12-20) [Compare Source](https://togithub.com/nedbat/coveragepy/compare/7.3.3...7.3.4) - Fix: the change for multi-line signature exclusions in 7.3.3 broke other forms of nested clauses being excluded properly. This is now fixed, closing `issue 1713`\_. - Fix: in the HTML report, selecting code for copying won't select the line numbers also. Thanks, `Robert Harrispytest-dev/pytest-asyncio (pytest/pytest-asyncio)
### [`v0.23.2`](https://togithub.com/pytest-dev/pytest-asyncio/releases/tag/v0.23.2): pytest-asyncio 0.23.2 [Compare Source](https://togithub.com/pytest-dev/pytest-asyncio/compare/v0.23.1...v0.23.2) ### 0.23.2 (2023-12-04) - Fixes a bug that caused an internal pytest error when collecting .txt files [#703](https://togithub.com/pytest-dev/pytest-asyncio/issues/703) ### [`v0.23.1`](https://togithub.com/pytest-dev/pytest-asyncio/releases/tag/v0.23.1): pytest-asyncio 0.23.1 [Compare Source](https://togithub.com/pytest-dev/pytest-asyncio/compare/v0.23.0...v0.23.1) ### 0.23.1 (2023-12-03) - Fixes a bug that caused an internal pytest error when using module-level skips [#701](https://togithub.com/pytest-dev/pytest-asyncio/issues/701) ### [`v0.23.0`](https://togithub.com/pytest-dev/pytest-asyncio/releases/tag/v0.23.0): pytest-asyncio 0.23.0 [Compare Source](https://togithub.com/pytest-dev/pytest-asyncio/compare/v0.22.0...v0.23.0) This release is backwards-compatible with v0.21. Changes are non-breaking, unless you upgrade from v0.22. - BREAKING: The *asyncio_event_loop* mark has been removed. Event loops with class, module, package, and session scopes can be requested via the *scope* keyword argument to the *asyncio* mark. - Introduces the *event_loop_policy* fixture which allows testing with non-default or multiple event loops [#662](https://togithub.com/pytest-dev/pytest-asyncio/pull/662) - Introduces `pytest_asyncio.is_async_test` which returns whether a test item is managed by pytest-asyncio [#376](https://togithub.com/pytest-dev/pytest-asyncio/issues/376) - Removes and *pytest-trio,* *mypy,* and *flaky* from the test dependencies [#620](https://togithub.com/pytest-dev/pytest-asyncio/pull/620), [#674](https://togithub.com/pytest-dev/pytest-asyncio/pull/674), [#678](https://togithub.com/pytest-dev/pytest-asyncio/pull/678) ### [`v0.22.0`](https://togithub.com/pytest-dev/pytest-asyncio/releases/tag/v0.22.0): pytest-asyncio 0.22.0 (yanked) [Compare Source](https://togithub.com/pytest-dev/pytest-asyncio/compare/v0.21.1...v0.22.0) *This release deprecated event loop overrides, but didn't provide adequate replacement functionality for all relevant use cases. As such, the release was yanked from PyPI.* ### 0.22.0 (2023-10-31) - Class-scoped and module-scoped event loops can be requested via the *asyncio_event_loop* mark. [#620](https://togithub.com/pytest-dev/pytest-asyncio/pull/620) - Deprecate redefinition of the *event_loop* fixture. [#587](https://togithub.com/pytest-dev/pytest-asyncio/issues/531) Users requiring a class-scoped or module-scoped asyncio event loop for their tests should mark the corresponding class or module with *asyncio_event_loop*. - Test items based on asynchronous generators always exit with *xfail* status and emit a warning during the collection phase. This behavior is consistent with synchronous yield tests. [#642](https://togithub.com/pytest-dev/pytest-asyncio/issues/642) - Remove support for Python 3.7 - Declare support for Python 3.12python/mypy (typecheck/mypy)
### [`v1.8.0`](https://togithub.com/python/mypy/compare/v1.7.1...v1.8.0) [Compare Source](https://togithub.com/python/mypy/compare/v1.7.1...v1.8.0)Configuration
š Schedule: Branch creation - "every 3 months on the first day of the month" (UTC), Automerge - At any time (no schedule defined).
š¦ Automerge: Disabled by config. Please merge this manually once you are satisfied.
ā» Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
š» Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR has been generated by Mend Renovate. View repository job log here.