Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

chore(deps): update development dependencies (non-major) #17

Closed
wants to merge 17 commits into from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Dec 23, 2023

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
dev/coverage ==7.3.3 -> ==7.4.0 age adoption passing confidence
dev/pytest (source, changelog) ==7.4.3 -> ==7.4.4 age adoption passing confidence
lint/black (changelog) ==23.12.0 -> ==23.12.1 age adoption passing confidence
lint/ruff (source, changelog) ==0.1.8 -> ==0.1.9 age adoption passing confidence
types/mypy (source, changelog) ==1.7.1 -> ==1.8.0 age adoption passing confidence
types/pyright ==1.1.341 -> ==1.1.344 age adoption passing confidence

Release Notes

nedbat/coveragepy (dev/coverage)

v7.4.0

Compare Source

  • In Python 3.12 and above, you can try an experimental core based on the new
    :mod:sys.monitoring <python:sys.monitoring> module by defining a
    COVERAGE_CORE=sysmon environment variable. This should be faster for
    line coverage, but not for branch coverage, and plugins and dynamic contexts
    are not yet supported with it. I am very interested to hear how it works (or
    doesn't!) for you.

.. _changes_7-3-4:

v7.3.4

Compare Source

  • 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 <pull 1717_>_.

.. _issue 1713:https://github.com/nedbat/coveragepy/issues/17133
.. _pull 1717https://github.com/nedbat/coveragepy/pull/171717

.. _changes_7-3-3:

pytest-dev/pytest (dev/pytest)

v7.4.4

Compare Source

psf/black (lint/black)

v23.12.1

Compare Source

Packaging
  • Fixed a bug that included dependencies from the d extra by default (#​4108)
astral-sh/ruff (lint/ruff)

v0.1.9

Compare Source

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

v1.8.0

Compare Source

RobertCraigie/pyright-python (types/pyright)

v1.1.344

Compare Source

v1.1.343

Compare Source

v1.1.342

Compare Source


Configuration

📅 Schedule: Branch creation - "every weekend" in timezone Etc/UTC, Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

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.

lengau and others added 16 commits November 9, 2023 15:32
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [dev/pytest](https://docs.pytest.org/en/latest/)
([source](https://github.com/pytest-dev/pytest),
[changelog](https://docs.pytest.org/en/stable/changelog.html)) |
`==7.4.2` -> `==7.4.3` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/dev%2fpytest/7.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/dev%2fpytest/7.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/dev%2fpytest/7.4.2/7.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/dev%2fpytest/7.4.2/7.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [lint/black](https://github.com/psf/black)
([changelog](https://github.com/psf/black/blob/main/CHANGES.md)) |
`==23.10.0` -> `==23.10.1` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/lint%2fblack/23.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/lint%2fblack/23.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/lint%2fblack/23.10.0/23.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/lint%2fblack/23.10.0/23.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [lint/ruff](https://docs.astral.sh/ruff)
([source](https://github.com/astral-sh/ruff),
[changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md))
| `==0.1.1` -> `==0.1.4` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/lint%2fruff/0.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/lint%2fruff/0.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/lint%2fruff/0.1.1/0.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/lint%2fruff/0.1.1/0.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [types/pyright](https://github.com/RobertCraigie/pyright-python) |
`==1.1.332` -> `==1.1.334` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/types%2fpyright/1.1.334?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/types%2fpyright/1.1.334?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/types%2fpyright/1.1.332/1.1.334?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/types%2fpyright/1.1.332/1.1.334?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>pytest-dev/pytest (dev/pytest)</summary>

###
[`v7.4.3`](https://github.com/pytest-dev/pytest/releases/tag/v7.4.3):
pytest 7.4.3 (2023-10-24)

[Compare
Source](https://github.com/pytest-dev/pytest/compare/7.4.2...v7.4.3)

## Bug Fixes

- [#&#8203;10447](https://github.com/pytest-dev/pytest/issues/10447):
Markers are now considered in the reverse mro order to ensure base class
markers are considered first -- this resolves a regression.

- [#&#8203;11239](https://github.com/pytest-dev/pytest/issues/11239):
Fixed `:=` in asserts impacting unrelated test cases.

- [#&#8203;11439](https://github.com/pytest-dev/pytest/issues/11439):
Handled an edge case where :data:`sys.stderr` might already be closed
when :ref:`faulthandler` is tearing down.

</details>

<details>
<summary>psf/black (lint/black)</summary>

###
[`v23.10.1`](https://github.com/psf/black/blob/HEAD/CHANGES.md#23101)

[Compare
Source](https://github.com/psf/black/compare/23.10.0...23.10.1)

##### Highlights

- Maintenance release to get a fix out for GitHub Action edge case
([#&#8203;3957](https://github.com/psf/black/issues/3957))

##### Preview style

- Fix merging implicit multiline strings that have inline comments
([#&#8203;3956](https://github.com/psf/black/issues/3956))
- Allow empty first line after block open before a comment or compound
statement ([#&#8203;3967](https://github.com/psf/black/issues/3967))

##### Packaging

- Change Dockerfile to hatch + compile black
([#&#8203;3965](https://github.com/psf/black/issues/3965))

##### Integrations

- The summary output for GitHub workflows is now suppressible using the
`summary`
parameter. ([#&#8203;3958](https://github.com/psf/black/issues/3958))
- Fix the action failing when Black check doesn't pass
([#&#8203;3957](https://github.com/psf/black/issues/3957))

##### Documentation

-   It is known Windows documentation CI is broken

[https://github.com/psf/black/issues/3968](https://github.com/psf/black/issues/3968)3968

</details>

<details>
<summary>astral-sh/ruff (lint/ruff)</summary>

###
[`v0.1.4`](https://github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#014)

[Compare
Source](https://github.com/astral-sh/ruff/compare/v0.1.3...v0.1.4)

##### Preview features

- \[`flake8-trio`] Implement `timeout-without-await` (`TRIO001`)
([#&#8203;8439](https://github.com/astral-sh/ruff/pull/8439))
- \[`numpy`] Implement NumPy 2.0 migration rule (`NPY200`)
([#&#8203;7702](https://github.com/astral-sh/ruff/pull/7702))
- \[`pylint`] Implement `bad-open-mode` (`W1501`)
([#&#8203;8294](https://github.com/astral-sh/ruff/pull/8294))
- \[`pylint`] Implement `import-outside-toplevel` (`C0415`) rule
([#&#8203;5180](https://github.com/astral-sh/ruff/pull/5180))
- \[`pylint`] Implement `useless-with-lock` (`W2101`)
([#&#8203;8321](https://github.com/astral-sh/ruff/pull/8321))
- \[`pyupgrade`] Implement `timeout-error-alias` (`UP041`)
([#&#8203;8476](https://github.com/astral-sh/ruff/pull/8476))
- \[`refurb`] Implement `isinstance-type-none` (`FURB168`)
([#&#8203;8308](https://github.com/astral-sh/ruff/pull/8308))
- Detect confusable Unicode-to-Unicode units in `RUF001`, `RUF002`, and
`RUF003` ([#&#8203;4430](https://github.com/astral-sh/ruff/pull/4430))
- Add newline after module docstrings in preview style
([#&#8203;8283](https://github.com/astral-sh/ruff/pull/8283))

##### Formatter

- Add a note on line-too-long to the formatter docs
([#&#8203;8314](https://github.com/astral-sh/ruff/pull/8314))
- Preserve trailing statement semicolons when using `fmt: skip`
([#&#8203;8273](https://github.com/astral-sh/ruff/pull/8273))
- Preserve trailing semicolons when using `fmt: off`
([#&#8203;8275](https://github.com/astral-sh/ruff/pull/8275))
- Avoid duplicating linter-formatter compatibility warnings
([#&#8203;8292](https://github.com/astral-sh/ruff/pull/8292))
- Avoid inserting a newline after function docstrings
([#&#8203;8375](https://github.com/astral-sh/ruff/pull/8375))
- Insert newline between docstring and following own line comment
([#&#8203;8216](https://github.com/astral-sh/ruff/pull/8216))
- Split tuples in return positions by comma first
([#&#8203;8280](https://github.com/astral-sh/ruff/pull/8280))
- Avoid treating byte strings as docstrings
([#&#8203;8350](https://github.com/astral-sh/ruff/pull/8350))
- Add `--line-length` option to `format` command
([#&#8203;8363](https://github.com/astral-sh/ruff/pull/8363))
- Avoid parenthesizing unsplittable because of comments
([#&#8203;8431](https://github.com/astral-sh/ruff/pull/8431))

##### CLI

- Add `--output-format` to `ruff rule` and `ruff linter`
([#&#8203;8203](https://github.com/astral-sh/ruff/pull/8203))

##### Bug fixes

- Respect `--force-exclude` in `lint.exclude` and `format.exclude`
([#&#8203;8393](https://github.com/astral-sh/ruff/pull/8393))
- Respect `--extend-per-file-ignores` on the CLI
([#&#8203;8329](https://github.com/astral-sh/ruff/pull/8329))
- Extend `bad-dunder-method-name` to permit `__index__`
([#&#8203;8300](https://github.com/astral-sh/ruff/pull/8300))
- Fix panic with 8 in octal escape
([#&#8203;8356](https://github.com/astral-sh/ruff/pull/8356))
- Avoid raising `D300` when both triple quote styles are present
([#&#8203;8462](https://github.com/astral-sh/ruff/pull/8462))
- Consider unterminated f-strings in `FStringRanges`
([#&#8203;8154](https://github.com/astral-sh/ruff/pull/8154))
- Avoid including literal `shell=True` for truthy, non-`True`
diagnostics
([#&#8203;8359](https://github.com/astral-sh/ruff/pull/8359))
- Avoid triggering single-element test for starred expressions
([#&#8203;8433](https://github.com/astral-sh/ruff/pull/8433))
- Detect and ignore Jupyter automagics
([#&#8203;8398](https://github.com/astral-sh/ruff/pull/8398))
- Fix invalid E231 error with f-strings
([#&#8203;8369](https://github.com/astral-sh/ruff/pull/8369))
- Avoid triggering `NamedTuple` rewrite with starred annotation
([#&#8203;8434](https://github.com/astral-sh/ruff/pull/8434))
- Avoid un-setting bracket flag in logical lines
([#&#8203;8380](https://github.com/astral-sh/ruff/pull/8380))
- Place 'r' prefix before 'f' for raw format strings
([#&#8203;8464](https://github.com/astral-sh/ruff/pull/8464))
- Remove trailing periods from NumPy 2.0 code actions
([#&#8203;8475](https://github.com/astral-sh/ruff/pull/8475))
- Fix bug where `PLE1307` was raised when formatting `%c` with
characters
([#&#8203;8407](https://github.com/astral-sh/ruff/pull/8407))
- Remove unicode flag from comparable
([#&#8203;8440](https://github.com/astral-sh/ruff/pull/8440))
- Improve B015 message
([#&#8203;8295](https://github.com/astral-sh/ruff/pull/8295))
- Use `fixedOverflowWidgets` for playground popover
([#&#8203;8458](https://github.com/astral-sh/ruff/pull/8458))
- Mark `byte_bounds` as a non-backwards-compatible NumPy 2.0 change
([#&#8203;8474](https://github.com/astral-sh/ruff/pull/8474))

##### Internals

- Add a dedicated cache directory per Ruff version
([#&#8203;8333](https://github.com/astral-sh/ruff/pull/8333))
- Allow selective caching for `--fix` and `--diff`
([#&#8203;8316](https://github.com/astral-sh/ruff/pull/8316))
- Improve performance of comment parsing
([#&#8203;8193](https://github.com/astral-sh/ruff/pull/8193))
- Improve performance of string parsing
([#&#8203;8227](https://github.com/astral-sh/ruff/pull/8227))
- Use a dedicated sort key for isort import sorting
([#&#8203;7963](https://github.com/astral-sh/ruff/pull/7963))

###
[`v0.1.3`](https://github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#013)

[Compare
Source](https://github.com/astral-sh/ruff/compare/v0.1.2...v0.1.3)

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

##### Formatter

- Avoid space around pow for `None`, `True` and `False`
([#&#8203;8189](https://github.com/astral-sh/ruff/pull/8189))
- Avoid sorting all paths in the format command
([#&#8203;8181](https://github.com/astral-sh/ruff/pull/8181))
- Insert necessary blank line between class and leading comments
([#&#8203;8224](https://github.com/astral-sh/ruff/pull/8224))
- Avoid introducing new parentheses in annotated assignments
([#&#8203;8233](https://github.com/astral-sh/ruff/pull/8233))
- Refine the warnings about incompatible linter options
([#&#8203;8196](https://github.com/astral-sh/ruff/pull/8196))
- Add test and basic implementation for formatter preview mode
([#&#8203;8044](https://github.com/astral-sh/ruff/pull/8044))
- Refine warning about incompatible `isort` settings
([#&#8203;8192](https://github.com/astral-sh/ruff/pull/8192))
- Only omit optional parentheses for starting or ending with parentheses
([#&#8203;8238](https://github.com/astral-sh/ruff/pull/8238))
- Use source type to determine parser mode for formatting
([#&#8203;8205](https://github.com/astral-sh/ruff/pull/8205))
- Don't warn about magic trailing comma when `isort.force-single-line`
is true ([#&#8203;8244](https://github.com/astral-sh/ruff/pull/8244))
- Use `SourceKind::diff` for formatter
([#&#8203;8240](https://github.com/astral-sh/ruff/pull/8240))
- Fix `fmt:off` with trailing child comment
([#&#8203;8234](https://github.com/astral-sh/ruff/pull/8234))
- Formatter parentheses support for `IpyEscapeCommand`
([#&#8203;8207](https://github.com/astral-sh/ruff/pull/8207))

##### Linter

- \[`pylint`] Add buffer methods to `bad-dunder-method-name` (`PLW3201`)
exclusions
([#&#8203;8190](https://github.com/astral-sh/ruff/pull/8190))
- Match rule prefixes from `external` codes setting in `unused-noqa`
([#&#8203;8177](https://github.com/astral-sh/ruff/pull/8177))
- Use `line-length` setting for isort in lieu of
`pycodestyle.max-line-length`
([#&#8203;8235](https://github.com/astral-sh/ruff/pull/8235))
- Update fix for `unnecessary-paren-on-raise-exception` to unsafe for
unknown types
([#&#8203;8231](https://github.com/astral-sh/ruff/pull/8231))
- Correct quick fix message for `W605`
([#&#8203;8255](https://github.com/astral-sh/ruff/pull/8255))

##### Documentation

- Fix typo in max-doc-length documentation
([#&#8203;8201](https://github.com/astral-sh/ruff/pull/8201))
- Improve documentation around linter-formatter conflicts
([#&#8203;8257](https://github.com/astral-sh/ruff/pull/8257))
- Fix link to error suppression documentation in `unused-noqa`
([#&#8203;8172](https://github.com/astral-sh/ruff/pull/8172))
- Add `external` option to `unused-noqa` documentation
([#&#8203;8171](https://github.com/astral-sh/ruff/pull/8171))
- Add title attribute to icons
([#&#8203;8060](https://github.com/astral-sh/ruff/pull/8060))
- Clarify unsafe case in RSE102
([#&#8203;8256](https://github.com/astral-sh/ruff/pull/8256))
- Fix skipping formatting examples
([#&#8203;8210](https://github.com/astral-sh/ruff/pull/8210))
- docs: fix name of `magic-trailing-comma` option in README
([#&#8203;8200](https://github.com/astral-sh/ruff/pull/8200))
- Add note about scope of rule changing in versioning policy
([#&#8203;8169](https://github.com/astral-sh/ruff/pull/8169))
- Document: Fix default lint rules
([#&#8203;8218](https://github.com/astral-sh/ruff/pull/8218))
- Fix a wrong setting in configuration.md
([#&#8203;8186](https://github.com/astral-sh/ruff/pull/8186))
- Fix misspelled TOML headers in the tutorial
([#&#8203;8209](https://github.com/astral-sh/ruff/pull/8209))

###
[`v0.1.2`](https://github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#012)

[Compare
Source](https://github.com/astral-sh/ruff/compare/v0.1.1...v0.1.2)

This release includes the Beta version of the Ruff formatter — an
extremely fast, Black-compatible Python formatter.
Try it today with `ruff format`! [Check out the blog
post](https://astral.sh/blog/the-ruff-formatter) and [read the
docs](https://docs.astral.sh/ruff/formatter/).

##### Preview features

- \[`pylint`] Implement `non-ascii-module-import` (`C2403`)
([#&#8203;8056](https://github.com/astral-sh/ruff/pull/8056))
- \[`pylint`] implement `non-ascii-name` (`C2401`)
([#&#8203;8038](https://github.com/astral-sh/ruff/pull/8038))
- \[`pylint`] Implement unnecessary-lambda (W0108)
([#&#8203;7953](https://github.com/astral-sh/ruff/pull/7953))
- \[`refurb`] Implement `read-whole-file` (`FURB101`)
([#&#8203;7682](https://github.com/astral-sh/ruff/pull/7682))
- Add fix for `E223`, `E224`, and `E242`
([#&#8203;8143](https://github.com/astral-sh/ruff/pull/8143))
- Add fix for `E225`, `E226`, `E227`, and `E228`
([#&#8203;8136](https://github.com/astral-sh/ruff/pull/8136))
- Add fix for `E252`
([#&#8203;8142](https://github.com/astral-sh/ruff/pull/8142))
- Add fix for `E261`
([#&#8203;8114](https://github.com/astral-sh/ruff/pull/8114))
- Add fix for `E273` and `E274`
([#&#8203;8144](https://github.com/astral-sh/ruff/pull/8144))
- Add fix for `E275`
([#&#8203;8133](https://github.com/astral-sh/ruff/pull/8133))
- Update `SIM401` to catch ternary operations
([#&#8203;7415](https://github.com/astral-sh/ruff/pull/7415))
- Update `E721` to allow `is` and `is` not for direct type comparisons
([#&#8203;7905](https://github.com/astral-sh/ruff/pull/7905))

##### Rule changes

- Add `backports.strenum` to `deprecated-imports`
([#&#8203;8113](https://github.com/astral-sh/ruff/pull/8113))
- Update `SIM112` to ignore `https_proxy`, `http_proxy`, and `no_proxy`
([#&#8203;8140](https://github.com/astral-sh/ruff/pull/8140))
- Update fix for `literal-membership` (`PLR6201`) to be unsafe
([#&#8203;8097](https://github.com/astral-sh/ruff/pull/8097))
- Update fix for `mutable-argument-defaults` (`B006`) to be unsafe
([#&#8203;8108](https://github.com/astral-sh/ruff/pull/8108))

##### Formatter

- Change `line-ending` default to `auto`
([#&#8203;8057](https://github.com/astral-sh/ruff/pull/8057))
- Respect parenthesized generators in `has_own_parentheses`
([#&#8203;8100](https://github.com/astral-sh/ruff/pull/8100))
- Add caching to formatter
([#&#8203;8089](https://github.com/astral-sh/ruff/pull/8089))
- Remove `--line-length` option from `format` command
([#&#8203;8131](https://github.com/astral-sh/ruff/pull/8131))
- Add formatter to `line-length` documentation
([#&#8203;8150](https://github.com/astral-sh/ruff/pull/8150))
- Warn about incompatible formatter options
([#&#8203;8088](https://github.com/astral-sh/ruff/pull/8088))
- Fix range of unparenthesized tuple subject in match statement
([#&#8203;8101](https://github.com/astral-sh/ruff/pull/8101))
- Remove experimental formatter warning
([#&#8203;8148](https://github.com/astral-sh/ruff/pull/8148))
- Don't move type param opening parenthesis comment
([#&#8203;8163](https://github.com/astral-sh/ruff/pull/8163))
- Update versions in format benchmark script
([#&#8203;8110](https://github.com/astral-sh/ruff/pull/8110))
- Avoid loading files for cached format results
([#&#8203;8134](https://github.com/astral-sh/ruff/pull/8134))

##### CLI

- Show the `ruff format` command in help menus
([#&#8203;8167](https://github.com/astral-sh/ruff/pull/8167))
- Add `ruff version` command with long version display
([#&#8203;8034](https://github.com/astral-sh/ruff/pull/8034))

##### Configuration

- New `pycodestyle.max-line-length` option
([#&#8203;8039](https://github.com/astral-sh/ruff/pull/8039))

##### Bug fixes

- Detect `sys.version_info` slices in `outdated-version-block`
([#&#8203;8112](https://github.com/astral-sh/ruff/pull/8112))
- Avoid if-else simplification for `TYPE_CHECKING` blocks
([#&#8203;8072](https://github.com/astral-sh/ruff/pull/8072))
- Avoid false-positive print separator diagnostic with starred argument
([#&#8203;8079](https://github.com/astral-sh/ruff/pull/8079))

##### Documentation

- Fix message for `too-many-arguments` lint
([#&#8203;8092](https://github.com/astral-sh/ruff/pull/8092))
- Fix `extend-unsafe-fixes` and `extend-safe-fixes` example
([#&#8203;8139](https://github.com/astral-sh/ruff/pull/8139))
- Add links to `flake8-import-conventions` options
([#&#8203;8115](https://github.com/astral-sh/ruff/pull/8115))
- Rework the documentation to incorporate the Ruff formatter
([#&#8203;7732](https://github.com/astral-sh/ruff/pull/7732))
- Fix `Options` JSON schema description
([#&#8203;8081](https://github.com/astral-sh/ruff/pull/8081))
- Fix typo (`pytext` -> `pytest`)
([#&#8203;8117](https://github.com/astral-sh/ruff/pull/8117))
- Improve `magic-value-comparison` example in docs
([#&#8203;8111](https://github.com/astral-sh/ruff/pull/8111))

</details>

<details>
<summary>RobertCraigie/pyright-python (types/pyright)</summary>

###
[`v1.1.334`](https://github.com/RobertCraigie/pyright-python/compare/v1.1.333...v1.1.334)

[Compare
Source](https://github.com/RobertCraigie/pyright-python/compare/v1.1.333...v1.1.334)

###
[`v1.1.333`](https://github.com/RobertCraigie/pyright-python/compare/v1.1.332...v1.1.333)

[Compare
Source](https://github.com/RobertCraigie/pyright-python/compare/v1.1.332...v1.1.333)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "every weekend" in timezone Etc/UTC,
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

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

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/canonical/craftcraft).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40Ni4wIiwidXBkYXRlZEluVmVyIjoiMzcuNDYuMCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [docs/sphinx-lint](https://github.com/sphinx-contrib/sphinx-lint)
([changelog](https://github.com/sphinx-contrib/sphinx-lint/releases))
| `==0.8.2` -> `==0.9.1` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/docs%2fsphinx-lint/0.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/docs%2fsphinx-lint/0.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/docs%2fsphinx-lint/0.8.2/0.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/docs%2fsphinx-lint/0.8.2/0.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>sphinx-contrib/sphinx-lint (docs/sphinx-lint)</summary>

###
[`v0.9.1`](https://github.com/sphinx-contrib/sphinx-lint/releases/tag/v0.9.1)

[Compare
Source](https://github.com/sphinx-contrib/sphinx-lint/compare/v0.9.0...v0.9.1)

#### What's Changed

- Add `tool.hatch.build.targets.wheel` to fix `pip install .` with
Hatchling 1.19 by [@&#8203;hugovk](https://github.com/hugovk) in
[https://github.com/sphinx-contrib/sphinx-lint/pull/106](https://github.com/sphinx-contrib/sphinx-lint/pull/106)
This fixes `ValueError: Unable to determine which files to ship inside
the wheel using the following heuristics: [...]` when trying to `pip
install .`, including via pre-commit.
- Add tox for easy testing of multiple Python versions by
[@&#8203;hugovk](https://github.com/hugovk) in
[https://github.com/sphinx-contrib/sphinx-lint/pull/100](https://github.com/sphinx-contrib/sphinx-lint/pull/100)
- Lint on GitHub Actions via pre-commit by
[@&#8203;hugovk](https://github.com/hugovk) in
[https://github.com/sphinx-contrib/sphinx-lint/pull/104](https://github.com/sphinx-contrib/sphinx-lint/pull/104)

**Full Changelog**:
sphinx-contrib/sphinx-lint@v0.9.0...v0.9.1

###
[`v0.9.0`](https://github.com/sphinx-contrib/sphinx-lint/releases/tag/v0.9.0)

[Compare
Source](https://github.com/sphinx-contrib/sphinx-lint/compare/v0.8.2...v0.9.0)

#### What's Changed

- Print error messages to stderr by
[@&#8203;rffontenelle](https://github.com/rffontenelle) in
[https://github.com/sphinx-contrib/sphinx-lint/pull/102](https://github.com/sphinx-contrib/sphinx-lint/pull/102)

#### New Contributors

- [@&#8203;rffontenelle](https://github.com/rffontenelle) made their
first contribution in
[https://github.com/sphinx-contrib/sphinx-lint/pull/102](https://github.com/sphinx-contrib/sphinx-lint/pull/102)

**Full Changelog**:
sphinx-contrib/sphinx-lint@v0.8.2...v0.9.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "every weekend" in timezone Etc/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.

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

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/canonical/craftcraft).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuOTMuMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [dev/coverage](https://github.com/nedbat/coveragepy) | `==7.3.2` ->
`==7.3.3` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/dev%2fcoverage/7.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/dev%2fcoverage/7.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/dev%2fcoverage/7.3.2/7.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/dev%2fcoverage/7.3.2/7.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [lint/black](https://github.com/psf/black)
([changelog](https://github.com/psf/black/blob/main/CHANGES.md)) |
`==23.11.0` -> `==23.12.0` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/lint%2fblack/23.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/lint%2fblack/23.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/lint%2fblack/23.11.0/23.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/lint%2fblack/23.11.0/23.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [lint/ruff](https://docs.astral.sh/ruff)
([source](https://github.com/astral-sh/ruff),
[changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md))
| `==0.1.6` -> `==0.1.8` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/lint%2fruff/0.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/lint%2fruff/0.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/lint%2fruff/0.1.6/0.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/lint%2fruff/0.1.6/0.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [types/pyright](https://github.com/RobertCraigie/pyright-python) |
`==1.1.338` -> `==1.1.341` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/types%2fpyright/1.1.341?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/types%2fpyright/1.1.341?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/types%2fpyright/1.1.338/1.1.341?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/types%2fpyright/1.1.338/1.1.341?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>nedbat/coveragepy (dev/coverage)</summary>

###
[`v7.3.3`](https://github.com/nedbat/coveragepy/blob/HEAD/CHANGES.rst#Version-733--2023-12-14)

[Compare
Source](https://github.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 <pull 1705_>`*.

- 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 <cmd_run_debug>`:

    -   `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://github.com/nedbat/coveragepy/issues/684)4
.. \_pull
1705[https://github.com/nedbat/coveragepy/pull/1705](https://github.com/nedbat/coveragepy/pull/1705)05
.. \_issue
170[https://github.com/nedbat/coveragepy/issues/1709](https://github.com/nedbat/coveragepy/issues/1709)709

.. \_changes\_7-3-2:

</details>

<details>
<summary>psf/black (lint/black)</summary>

###
[`v23.12.0`](https://github.com/psf/black/blob/HEAD/CHANGES.md#23120)

[Compare
Source](https://github.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://github.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.
([#&#8203;4084](https://github.com/psf/black/issues/4084))
- Fix feature detection for parenthesized context managers
([#&#8203;4104](https://github.com/psf/black/issues/4104))

##### Preview style

- Prefer more equal signs before a break when splitting chained
assignments ([#&#8203;4010](https://github.com/psf/black/issues/4010))
- Standalone form feed characters at the module level are no longer
removed ([#&#8203;4021](https://github.com/psf/black/issues/4021))
- Additional cases of immediately nested tuples, lists, and dictionaries
are now
indented less
([#&#8203;4012](https://github.com/psf/black/issues/4012))
- Allow empty lines at the beginning of all blocks, except immediately
before a
docstring ([#&#8203;4060](https://github.com/psf/black/issues/4060))
- Fix crash in preview mode when using a short `--line-length`
([#&#8203;4086](https://github.com/psf/black/issues/4086))
- Keep suites consisting of only an ellipsis on their own lines if they
are not
functions or class definitions
([#&#8203;4066](https://github.com/psf/black/issues/4066))
([#&#8203;4103](https://github.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. ([#&#8203;4034](https://github.com/psf/black/issues/4034))

##### Packaging

- Upgrade to mypy 1.7.1
([#&#8203;4049](https://github.com/psf/black/issues/4049))
([#&#8203;4069](https://github.com/psf/black/issues/4069))
- Faster compiled wheels are now available for CPython 3.12
([#&#8203;4070](https://github.com/psf/black/issues/4070))

##### Integrations

- Enable 3.12 CI
([#&#8203;4035](https://github.com/psf/black/issues/4035))
- Build docker images in parallel
([#&#8203;4054](https://github.com/psf/black/issues/4054))
- Build docker images with 3.12
([#&#8203;4055](https://github.com/psf/black/issues/4055))

</details>

<details>
<summary>astral-sh/ruff (lint/ruff)</summary>

###
[`v0.1.8`](https://github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#018)

[Compare
Source](https://github.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
([#&#8203;8822](https://github.com/astral-sh/ruff/pull/8822))
- Implement `prefer_splitting_right_hand_side_of_assignments` preview
style ([#&#8203;8943](https://github.com/astral-sh/ruff/pull/8943))
- \[`pycodestyle`] Add fix for
`unexpected-spaces-around-keyword-parameter-equals`
([#&#8203;9072](https://github.com/astral-sh/ruff/pull/9072))
- \[`pycodestyle`] Add fix for comment-related whitespace rules
([#&#8203;9075](https://github.com/astral-sh/ruff/pull/9075))
- \[`pycodestyle`] Allow `sys.path` modifications between imports
([#&#8203;9047](https://github.com/astral-sh/ruff/pull/9047))
- \[`refurb`] Implement `hashlib-digest-hex` (`FURB181`)
([#&#8203;9077](https://github.com/astral-sh/ruff/pull/9077))

##### Rule changes

- Allow `flake8-type-checking` rules to automatically quote
runtime-evaluated references
([#&#8203;6001](https://github.com/astral-sh/ruff/pull/6001))
- Allow transparent cell magics in Jupyter Notebooks
([#&#8203;8911](https://github.com/astral-sh/ruff/pull/8911))
- \[`flake8-annotations`] Avoid `ANN2xx` fixes for abstract methods with
empty bodies
([#&#8203;9034](https://github.com/astral-sh/ruff/pull/9034))
- \[`flake8-self`] Ignore underscore references in type annotations
([#&#8203;9036](https://github.com/astral-sh/ruff/pull/9036))
- \[`pep8-naming`] Allow class names when `apps.get_model` is a
non-string
([#&#8203;9065](https://github.com/astral-sh/ruff/pull/9065))
- \[`pycodestyle`] Allow `matplotlib.use` calls to intersperse imports
([#&#8203;9094](https://github.com/astral-sh/ruff/pull/9094))
- \[`pyflakes`] Support fixing unused assignments in tuples by renaming
variables (`F841`)
([#&#8203;9107](https://github.com/astral-sh/ruff/pull/9107))
- \[`pylint`] Add fix for `subprocess-run-without-check` (`PLW1510`)
([#&#8203;6708](https://github.com/astral-sh/ruff/pull/6708))

##### Formatter

- Add `docstring-code-format` knob to enable docstring snippet
formatting
([#&#8203;8854](https://github.com/astral-sh/ruff/pull/8854))
- Use double quotes for all docstrings, including single-quoted
docstrings
([#&#8203;9020](https://github.com/astral-sh/ruff/pull/9020))
- Implement "dynamic" line width mode for docstring code formatting
([#&#8203;9098](https://github.com/astral-sh/ruff/pull/9098))
- Support reformatting Markdown code blocks
([#&#8203;9030](https://github.com/astral-sh/ruff/pull/9030))
- add support for formatting reStructuredText code snippets
([#&#8203;9003](https://github.com/astral-sh/ruff/pull/9003))
- Avoid trailing comma for single-argument with positional separator
([#&#8203;9076](https://github.com/astral-sh/ruff/pull/9076))
- Fix handling of trailing target comment
([#&#8203;9051](https://github.com/astral-sh/ruff/pull/9051))

##### CLI

- Hide unsafe fix suggestions when explicitly disabled
([#&#8203;9095](https://github.com/astral-sh/ruff/pull/9095))
- Add SARIF support to `--output-format`
([#&#8203;9078](https://github.com/astral-sh/ruff/pull/9078))

##### Bug fixes

- Apply unnecessary index rule prior to enumerate rewrite
([#&#8203;9012](https://github.com/astral-sh/ruff/pull/9012))
- \[`flake8-err-msg`] Allow `EM` fixes even if `msg` variable is defined
([#&#8203;9059](https://github.com/astral-sh/ruff/pull/9059))
- \[`flake8-pie`] Prevent keyword arguments duplication
([#&#8203;8450](https://github.com/astral-sh/ruff/pull/8450))
- \[`flake8-pie`] Respect trailing comma in `unnecessary-dict-kwargs`
(`PIE804`)
([#&#8203;9015](https://github.com/astral-sh/ruff/pull/9015))
- \[`flake8-raise`] Avoid removing parentheses on ctypes.WinError
([#&#8203;9027](https://github.com/astral-sh/ruff/pull/9027))
- \[`isort`] Avoid invalid combination of `force-sort-within-types` and
`lines-between-types`
([#&#8203;9041](https://github.com/astral-sh/ruff/pull/9041))
- \[`isort`] Ensure that from-style imports are always ordered first in
`__future__`
([#&#8203;9039](https://github.com/astral-sh/ruff/pull/9039))
- \[`pycodestyle`] Allow tab indentation before keyword
([#&#8203;9099](https://github.com/astral-sh/ruff/pull/9099))
- \[`pylint`] Ignore `@overrides` and `@overloads` for
`too-many-positional`
([#&#8203;9000](https://github.com/astral-sh/ruff/pull/9000))
- \[`pyupgrade`] Enable `printf-string-formatting` fix with comments on
right-hand side
([#&#8203;9037](https://github.com/astral-sh/ruff/pull/9037))
- \[`refurb`] Make `math-constant` (`FURB152`) rule more targeted
([#&#8203;9054](https://github.com/astral-sh/ruff/pull/9054))
- \[`refurb`] Support floating-point base in `redundant-log-base`
(`FURB163`)
([#&#8203;9100](https://github.com/astral-sh/ruff/pull/9100))
- \[`ruff`] Detect `unused-asyncio-dangling-task` (`RUF006`) on unused
assignments
([#&#8203;9060](https://github.com/astral-sh/ruff/pull/9060))

###
[`v0.1.7`](https://github.com/astral-sh/ruff/blob/HEAD/CHANGELOG.md#017)

[Compare
Source](https://github.com/astral-sh/ruff/compare/v0.1.6...v0.1.7)

##### Preview features

- Implement multiline dictionary and list hugging for preview style
([#&#8203;8293](https://github.com/astral-sh/ruff/pull/8293))
- Implement the `fix_power_op_line_length` preview style
([#&#8203;8947](https://github.com/astral-sh/ruff/pull/8947))
- Use Python version to determine typing rewrite safety
([#&#8203;8919](https://github.com/astral-sh/ruff/pull/8919))
- \[`flake8-annotations`] Enable auto-return-type involving `Optional`
and `Union` annotations
([#&#8203;8885](https://github.com/astral-sh/ruff/pull/8885))
- \[`flake8-bandit`] Implement `django-raw-sql` (`S611`)
([#&#8203;8651](https://github.com/astral-sh/ruff/pull/8651))
- \[`flake8-bandit`] Implement `tarfile-unsafe-members` (`S202`)
([#&#8203;8829](https://github.com/astral-sh/ruff/pull/8829))
- \[`flake8-pyi`] Implement fix for `unnecessary-literal-union`
(`PYI030`)
([#&#8203;7934](https://github.com/astral-sh/ruff/pull/7934))
- \[`flake8-simplify`] Extend `dict-get-with-none-default` (`SIM910`) to
non-literals
([#&#8203;8762](https://github.com/astral-sh/ruff/pull/8762))
- \[`pylint`] - add `unnecessary-list-index-lookup` (`PLR1736`) +
autofix ([#&#8203;7999](https://github.com/astral-sh/ruff/pull/7999))
- \[`pylint`] - implement R0202 and R0203 with autofixes
([#&#8203;8335](https://github.com/astral-sh/ruff/pull/8335))
- \[`pylint`] Implement `repeated-keyword` (`PLe1132`)
([#&#8203;8706](https://github.com/astral-sh/ruff/pull/8706))
- \[`pylint`] Implement `too-many-positional` (`PLR0917`)
([#&#8203;8995](https://github.com/astral-sh/ruff/pull/8995))
- \[`pylint`] Implement `unnecessary-dict-index-lookup` (`PLR1733`)
([#&#8203;8036](https://github.com/astral-sh/ruff/pull/8036))
- \[`refurb`] Implement `redundant-log-base` (`FURB163`)
([#&#8203;8842](https://github.com/astral-sh/ruff/pull/8842))

##### Rule changes

- \[`flake8-boolean-trap`] Allow booleans in `@override` methods
([#&#8203;8882](https://github.com/astral-sh/ruff/pull/8882))
- \[`flake8-bugbear`] Avoid `B015`,`B018` for last expression in a cell
([#&#8203;8815](https://github.com/astral-sh/ruff/pull/8815))
- \[`flake8-pie`] Allow ellipses for enum values in stub files
([#&#8203;8825](https://github.com/astral-sh/ruff/pull/8825))
- \[`flake8-pyi`] Check PEP 695 type aliases for `snake-case-type-alias`
and `t-suffixed-type-alias`
([#&#8203;8966](https://github.com/astral-sh/ruff/pull/8966))
- \[`flake8-pyi`] Check for kwarg and vararg `NoReturn` type annotations
([#&#8203;8948](https://github.com/astral-sh/ruff/pull/8948))
- \[`flake8-simplify`] Omit select context managers from `SIM117`
([#&#8203;8801](https://github.com/astral-sh/ruff/pull/8801))
- \[`pep8-naming`] Allow Django model loads in
`non-lowercase-variable-in-function` (`N806`)
([#&#8203;8917](https://github.com/astral-sh/ruff/pull/8917))
- \[`pycodestyle`] Avoid `E703` for last expression in a cell
([#&#8203;8821](https://github.com/astral-sh/ruff/pull/8821))
- \[`pycodestyle`] Update `E402` to work at cell level for notebooks
([#&#8203;8872](https://github.com/astral-sh/ruff/pull/8872))
- \[`pydocstyle`] Avoid `D100` for Jupyter Notebooks
([#&#8203;8816](https://github.com/astral-sh/ruff/pull/8816))
- \[`pylint`] Implement fix for `unspecified-encoding` (`PLW1514`)
([#&#8203;8928](https://github.com/astral-sh/ruff/pull/8928))

##### Formatter

- Avoid unstable formatting in ellipsis-only body with trailing comment
([#&#8203;8984](https://github.com/astral-sh/ruff/pull/8984))
- Inline trailing comments for type alias similar to assignments
([#&#8203;8941](https://github.com/astral-sh/ruff/pull/8941))
- Insert trailing comma when function breaks with single argument
([#&#8203;8921](https://github.com/astral-sh/ruff/pull/8921))

##### CLI

- Update `ruff check` and `ruff format` to default to the current
directory
([#&#8203;8791](https://github.com/astral-sh/ruff/pull/8791))
- Stop at the first resolved parent configuration
([#&#8203;8864](https://github.com/astral-sh/ruff/pull/8864))

##### Configuration

- \[`pylint`] Default `max-positional-args` to `max-args`
([#&#8203;8998](https://github.com/astral-sh/ruff/pull/8998))
- \[`pylint`] Add `allow-dunder-method-names` setting for
`bad-dunder-method-name` (`PLW3201`)
([#&#8203;8812](https://github.com/astral-sh/ruff/pull/8812))
- \[`isort`] Add support for `from-first` setting
([#&#8203;8663](https://github.com/astral-sh/ruff/pull/8663))
- \[`isort`] Add support for `length-sort` settings
([#&#8203;8841](https://github.com/astral-sh/ruff/pull/8841))

##### Bug fixes

- Add support for `@functools.singledispatch`
([#&#8203;8934](https://github.com/astral-sh/ruff/pull/8934))
- Avoid off-by-one error in stripping noqa following multi-byte char
([#&#8203;8979](https://github.com/astral-sh/ruff/pull/8979))
- Avoid off-by-one error in with-item named expressions
([#&#8203;8915](https://github.com/astral-sh/ruff/pull/8915))
- Avoid syntax error via invalid ur string prefix
([#&#8203;8971](https://github.com/astral-sh/ruff/pull/8971))
- Avoid underflow in `get_model` matching
([#&#8203;8965](https://github.com/astral-sh/ruff/pull/8965))
- Avoid unnecessary index diagnostics when value is modified
([#&#8203;8970](https://github.com/astral-sh/ruff/pull/8970))
- Convert over-indentation rule to use number of characters
([#&#8203;8983](https://github.com/astral-sh/ruff/pull/8983))
- Detect implicit returns in auto-return-types
([#&#8203;8952](https://github.com/astral-sh/ruff/pull/8952))
- Fix start >= end error in over-indentation
([#&#8203;8982](https://github.com/astral-sh/ruff/pull/8982))
- Ignore `@overload` and `@override` methods for too-many-arguments
checks ([#&#8203;8954](https://github.com/astral-sh/ruff/pull/8954))
- Lexer start of line is false only for `Mode::Expression`
([#&#8203;8880](https://github.com/astral-sh/ruff/pull/8880))
- Mark `pydantic_settings.BaseSettings` as having default copy semantics
([#&#8203;8793](https://github.com/astral-sh/ruff/pull/8793))
- Respect dictionary unpacking in `NamedTuple` assignments
([#&#8203;8810](https://github.com/astral-sh/ruff/pull/8810))
- Respect local subclasses in `flake8-type-checking`
([#&#8203;8768](https://github.com/astral-sh/ruff/pull/8768))
- Support type alias statements in simple statement positions
([#&#8203;8916](https://github.com/astral-sh/ruff/pull/8916))
- \[`flake8-annotations`] Avoid filtering out un-representable types in
return annotation
([#&#8203;8881](https://github.com/astral-sh/ruff/pull/8881))
- \[`flake8-pie`] Retain extra ellipses in protocols and abstract
methods ([#&#8203;8769](https://github.com/astral-sh/ruff/pull/8769))
- \[`flake8-pyi`] Respect local enum subclasses in `simple-defaults`
(`PYI052`)
([#&#8203;8767](https://github.com/astral-sh/ruff/pull/8767))
- \[`flake8-trio`] Use correct range for `TRIO115` fix
([#&#8203;8933](https://github.com/astral-sh/ruff/pull/8933))
- \[`flake8-trio`] Use full arguments range for zero-sleep-call
([#&#8203;8936](https://github.com/astral-sh/ruff/pull/8936))
- \[`isort`] fix: mark `__main__` as first-party import
([#&#8203;8805](https://github.com/astral-sh/ruff/pull/8805))
- \[`pep8-naming`] Avoid `N806` errors for type alias statements
([#&#8203;8785](https://github.com/astral-sh/ruff/pull/8785))
- \[`perflint`] Avoid `PERF101` if there's an append in loop body
([#&#8203;8809](https://github.com/astral-sh/ruff/pull/8809))
- \[`pycodestyle`] Allow space-before-colon after end-of-slice
([#&#8203;8838](https://github.com/astral-sh/ruff/pull/8838))
- \[`pydocstyle`] Avoid non-character breaks in `over-indentation`
(`D208`) ([#&#8203;8866](https://github.com/astral-sh/ruff/pull/8866))
- \[`pydocstyle`] Ignore underlines when determining docstring logical
lines ([#&#8203;8929](https://github.com/astral-sh/ruff/pull/8929))
- \[`pylint`] Extend `self-assigning-variable` to multi-target
assignments
([#&#8203;8839](https://github.com/astral-sh/ruff/pull/8839))
- \[`tryceratops`] Avoid repeated triggers in nested `tryceratops`
diagnostics
([#&#8203;8772](https://github.com/astral-sh/ruff/pull/8772))

##### Documentation

- Add advice for fixing RUF008 when mutability is not desired
([#&#8203;8853](https://github.com/astral-sh/ruff/pull/8853))
- Added the command to run ruff using pkgx to the installation.md
([#&#8203;8955](https://github.com/astral-sh/ruff/pull/8955))
- Document fix safety for flake8-comprehensions and some pyupgrade rules
([#&#8203;8918](https://github.com/astral-sh/ruff/pull/8918))
- Fix doc formatting for zero-sleep-call
([#&#8203;8937](https://github.com/astral-sh/ruff/pull/8937))
- Remove duplicate imports from os-stat documentation
([#&#8203;8930](https://github.com/astral-sh/ruff/pull/8930))
- Replace generated reference to MkDocs
([#&#8203;8806](https://github.com/astral-sh/ruff/pull/8806))
- Update Arch Linux package URL in installation.md
([#&#8203;8802](https://github.com/astral-sh/ruff/pull/8802))
- \[`flake8-pyi`] Fix error in `t-suffixed-type-alias` (`PYI043`)
example ([#&#8203;8963](https://github.com/astral-sh/ruff/pull/8963))
- \[`flake8-pyi`] Improve motivation for `custom-type-var-return-type`
(`PYI019`)
([#&#8203;8766](https://github.com/astral-sh/ruff/pull/8766))

</details>

<details>
<summary>RobertCraigie/pyright-python (types/pyright)</summary>

###
[`v1.1.341`](https://github.com/RobertCraigie/pyright-python/compare/v1.1.340...v1.1.341)

[Compare
Source](https://github.com/RobertCraigie/pyright-python/compare/v1.1.340...v1.1.341)

###
[`v1.1.340`](https://github.com/RobertCraigie/pyright-python/compare/v1.1.339...v1.1.340)

[Compare
Source](https://github.com/RobertCraigie/pyright-python/compare/v1.1.339...v1.1.340)

###
[`v1.1.339`](https://github.com/RobertCraigie/pyright-python/compare/v1.1.338...v1.1.339)

[Compare
Source](https://github.com/RobertCraigie/pyright-python/compare/v1.1.338...v1.1.339)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "every weekend" in timezone Etc/UTC,
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

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

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://github.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/canonical/craftcraft).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy44Ny4yIiwidXBkYXRlZEluVmVyIjoiMzcuOTMuMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
|
[actions/upload-artifact](https://github.com/actions/upload-artifact)
| action | major | `v3` -> `v4` |

---

### Release Notes

<details>
<summary>actions/upload-artifact (actions/upload-artifact)</summary>

### [`v4`](https://github.com/actions/upload-artifact/compare/v3...v4)

[Compare
Source](https://github.com/actions/upload-artifact/compare/v3...v4)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "every weekend" in timezone Etc/UTC,
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

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

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

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/canonical/craftcraft).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy45My4xIiwidXBkYXRlZEluVmVyIjoiMzcuOTMuMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Copy link

codecov bot commented Dec 23, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (de23b9a) 100.00% compared to head (ec6bdf0) 100.00%.

Additional details and impacted files
@@            Coverage Diff            @@
##              main       #17   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files            1         1           
  Lines           10        10           
  Branches         2         2           
=========================================
  Hits            10        10           

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

@renovate renovate bot force-pushed the renovate/dev-dependencies branch 5 times, most recently from 177b4e5 to c256e01 Compare December 30, 2023 00:19
@renovate renovate bot force-pushed the renovate/dev-dependencies branch from c256e01 to 1f0b634 Compare January 1, 2024 18:01
@renovate renovate bot force-pushed the renovate/dev-dependencies branch from 1f0b634 to ec6bdf0 Compare January 2, 2024 14:03
@lengau lengau closed this Jan 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant