Skip to content

chore(deps-dev): bump ruff from 0.15.21 to 0.16.0 in the python-minor-patch group across 1 directory - #720

Merged
igerber merged 2 commits into
mainfrom
dependabot/pip/python-minor-patch-d6405df956
Jul 30, 2026
Merged

chore(deps-dev): bump ruff from 0.15.21 to 0.16.0 in the python-minor-patch group across 1 directory#720
igerber merged 2 commits into
mainfrom
dependabot/pip/python-minor-patch-d6405df956

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jul 20, 2026

Copy link
Copy Markdown
Contributor

Bumps the python-minor-patch group with 1 update in the / directory: ruff.

Updates ruff from 0.15.21 to 0.16.0

Release notes

Sourced from ruff's releases.

0.16.0

Release Notes

Released on 2026-07-23.

Check out the blog post for a migration guide and overview of the changes!

Breaking changes

  • Ruff now enables a much larger set of rules by default (413, up from 59). See the blog post for more details and the new Default Rules page for a full listing of the enabled rules. Note that this is primarily an expansion, but 18 of the more opinionated pycodestyle (E) and pyflakes (F) rules have been removed from the default set: E401, E402, E701, E702, E703, E711, E712, E713, E714, E721, E731, E741, E742, E743, F403, F405, F406, and F722.

  • Ruff can now format Python code blocks in Markdown files and will do this by default. See the documentation for more details.

  • Ruff now supports ruff: ignore comments at the ends of lines, like noqa comments, or on the line preceding a diagnostic. For example, these both suppress an unused-import (F401) diagnostic:

    import math  # ruff: ignore[F401]
    ruff: ignore[F401]
    import os

  • Fixes are now shown in check and format --check output:

    ruff format --check .
    unformatted: File would be reformatted
     --> try.md:1:1
      |
    1 | ```python
      - import   math
    2 + import math
    3 | ```
      |
    1 file would be reformatted

    This example also shows off the Markdown formatting.

  • format --check now supports the same output formats as the linter, including the github and gitlab outputs for rendering annotations in CI:

    ruff format --check --output-format github .
    ::error title=ruff (unformatted),file=try.md,line=2,col=8,endLine=2,endColumn=10::try.md:2:8: unformatted: File would be reformatted

    See the CLI help or documentation for the full list of supported formats.

  • The filename, location, end_location, fix.edits[].location, and fix.edits[].end_location fields in the JSON output format may now be null rather than defaulting to the empty string and row 1, column 1, respectively.

... (truncated)

Changelog

Sourced from ruff's changelog.

0.16.0

Released on 2026-07-23.

Check out the blog post for a migration guide and overview of the changes!

Breaking changes

  • Ruff now enables a much larger set of rules by default (413, up from 59). See the blog post for more details and the new Default Rules page for a full listing of the enabled rules. Note that this is primarily an expansion, but 18 of the more opinionated pycodestyle (E) and pyflakes (F) rules have been removed from the default set: E401, E402, E701, E702, E703, E711, E712, E713, E714, E721, E731, E741, E742, E743, F403, F405, F406, and F722.

  • Ruff can now format Python code blocks in Markdown files and will do this by default. See the documentation for more details.

  • Ruff now supports ruff: ignore comments at the ends of lines, like noqa comments, or on the line preceding a diagnostic. For example, these both suppress an unused-import (F401) diagnostic:

    import math  # ruff: ignore[F401]
    ruff: ignore[F401]
    import os

  • Fixes are now shown in check and format --check output:

    ruff format --check .
    unformatted: File would be reformatted
     --> try.md:1:1
      |
    1 | ```python
      - import   math
    2 + import math
    3 | ```
      |
    1 file would be reformatted

    This example also shows off the Markdown formatting.

  • format --check now supports the same output formats as the linter, including the github and gitlab outputs for rendering annotations in CI:

... (truncated)

Commits
  • a2635fd Bump 0.16.0 (#27136)
  • 3433449 [ty] Reuse full call diagnostics for implicit setter calls (#27115)
  • 2240070 Reflect ruff: ignore and --add-ignore stabilization in documentation (#27...
  • 17ef711 Stabilize --add-ignore (#27125)
  • ef912bb Add newly stabilized rules to defaults (#27055)
  • b30f040 Stabilize new default rules (#27035)
  • bcd70c5 Exclude Markdown files from format-dev runs (#27052)
  • 87e51e2 Fix format --check spans for syntax errors (#27045)
  • afe2723 [flake8-gettext] Stabilize qualified-name and built-in binding resolution (...
  • a9702d8 [flake8-bandit] Stabilize string literal binding resolution (S310) (#26944)
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Dependency updates python Python dependency updates labels Jul 20, 2026
@dependabot
dependabot Bot requested a review from igerber as a code owner July 20, 2026 18:45
@dependabot dependabot Bot added the python Python dependency updates label Jul 20, 2026
@dependabot dependabot Bot changed the title chore(deps-dev): bump ruff from 0.15.21 to 0.15.22 in the python-minor-patch group chore(deps-dev): bump ruff from 0.15.21 to 0.16.0 in the python-minor-patch group across 1 directory Jul 27, 2026
@dependabot
dependabot Bot force-pushed the dependabot/pip/python-minor-patch-d6405df956 branch from acd7a40 to 6f03ac4 Compare July 27, 2026 18:45
Bumps the python-minor-patch group with 1 update in the / directory: [ruff](https://github.com/astral-sh/ruff).


Updates `ruff` from 0.15.21 to 0.16.0
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](astral-sh/ruff@0.15.21...0.16.0)

---
updated-dependencies:
- dependency-name: ruff
  dependency-version: 0.15.22
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: python-minor-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
@igerber
igerber force-pushed the dependabot/pip/python-minor-patch-d6405df956 branch from 6f03ac4 to 400b615 Compare July 30, 2026 11:44
@github-actions

Copy link
Copy Markdown

🔁 AI review rerun (requested by @igerber)

Head SHA: 400b6153e7a2dfc3e3e34d217a086fd1e78e4fb1


Overall Assessment: ✅ Looks good

Executive Summary

  • No estimator, statistical, or methodology behavior changed.
  • Ruff pins are synchronized between CI and development dependencies.
  • Explicit Ruff rule selection avoids the 0.16 default-rule expansion.
  • No P0–P3 findings identified.

Methodology

No findings. The PR changes development tooling only; no registry method or paper requires cross-checking.

Code Quality

No findings. Pins match at .github/workflows/lint.yml:L42 and pyproject.toml:L68.

Performance

No findings. Runtime performance is unaffected.

Maintainability

No findings. Explicit rules at pyproject.toml:L131-L137 preserve lint behavior across the upgrade.

Tech Debt

No findings. No new limitation or deferred work is introduced.

Security

No findings. Ruff remains an exact development-only pin.

Documentation/Tests

No findings. CHANGELOG.md:L59-L64 documents the upgrade and compatibility rationale. Existing lint CI directly exercises the updated version. Ruff was unavailable in the review environment, so the clean-lint claim was not independently rerun.

Dependabot bumps only the `dev` extra in pyproject.toml, but the Lint Gate
installs ruff by explicit pin from lint.yml. Left unsynced the two surfaces
diverge (TestLintWorkflowPinSync fails) and, worse, the Ruff check would go
green while still running 0.15.21 - proving nothing about the new pin.

The bump's real content is a default-selection expansion: ruff 0.16.0 enables
413 rules across 38 linter families by default, up from 59 across 2. This repo
is insulated only because `[tool.ruff.lint] select` is explicit - the resolved
set is the same 68 rules under both pins (17 E, 43 F, 2 I, 6 W, per
`ruff check --show-settings`), and the three preview-to-stable promotions
(FURB164, FURB192, ISC004) fall outside those families. `ruff check diff_diff
tests` and `black --check` are clean on both pins.

Records that in CHANGELOG.md and adds a CONTRIBUTING.md note, since dropping
the explicit `select` to inherit defaults is now a ~7x rule-set change.
@igerber
igerber force-pushed the dependabot/pip/python-minor-patch-d6405df956 branch from 400b615 to ce574e6 Compare July 30, 2026 11:49
@github-actions

Copy link
Copy Markdown

🔁 AI review rerun (requested by @igerber)

Head SHA: ce574e6dc3a2792b1bcff496eb3e05869fc2531e


Overall Assessment: ✅ Looks good

Executive Summary

  • No estimator, inference, variance, weighting, assumptions, or defaults changed.
  • Ruff 0.16.0 pins match across CI and development dependencies.
  • Explicit rule selection preserves the prior lint scope despite Ruff’s expanded defaults.
  • No P0–P3 findings; the previous clean review remains valid.
  • Ruff, Black, and pytest were unavailable locally, so checks could not be independently rerun.

Methodology

No findings.

  • Severity: None
  • Impact: The PR only changes development tooling; no Methodology Registry entry or cited estimator paper is affected.
  • Concrete fix: None.

Code Quality

No findings.

  • Severity: None
  • Impact: CI and development pins agree at .github/workflows/lint.yml:L41-L44 and pyproject.toml:L63-L69.
  • Concrete fix: None.

Performance

No findings.

  • Severity: None
  • Impact: Runtime library performance is unaffected.
  • Concrete fix: None.

Maintainability

No findings.

  • Severity: None
  • Impact: The explicit selector at pyproject.toml:L135-L137 protects the repository from Ruff’s expanded defaults, with rationale documented at CONTRIBUTING.md:L22-L27.
  • Concrete fix: None.

Tech Debt

No findings.

  • Severity: None
  • Impact: No limitation or deferred work is introduced.
  • Concrete fix: None.

Security

No findings.

  • Severity: None
  • Impact: Ruff remains an exact, development-only dependency.
  • Concrete fix: None.

Documentation/Tests

No findings.

  • Severity: None
  • Impact: CHANGELOG.md:L59-L69 documents the upgrade and compatibility rationale. Existing pin-sync coverage verifies the CI/dev dependency contract.
  • Concrete fix: None.

@igerber igerber added the ready-for-ci Triggers CI test workflows label Jul 30, 2026
@igerber
igerber merged commit a9dbbb4 into main Jul 30, 2026
45 of 46 checks passed
@igerber
igerber deleted the dependabot/pip/python-minor-patch-d6405df956 branch July 30, 2026 14:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Dependency updates python Python dependency updates ready-for-ci Triggers CI test workflows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant