Change8

Migrating to Ruff 0.11.0

Version 0.11.0 introduces 1 breaking change. This guide details how to update your code.

Released: 3/14/2025

1
Breaking Changes
2
Migration Steps
0
Affected Symbols

Breaking Changes

Issue #1

Changes to how the Python version is inferred when a `target-version` is not specified. Ruff now respects the `requires-python` field from the nearest `pyproject.toml` (even without a `[tool.ruff]` section) and gives it precedence over defaults. Update your configuration if you relied on the previous default behavior.

Migration Steps

  1. 1
    If you previously relied on Ruff defaulting to Python 3.9 when no `target-version` was set, verify that your `pyproject.toml` `requires-python` field is correctly set, or explicitly add a `target-version` in `ruff.toml` or `[tool.ruff]`.
  2. 2
    Review any custom config discovery logic to ensure it aligns with the new precedence rules.

Release Summary

Ruff 0.11.0 introduces updated Python version inference based on `requires-python`, stabilizes PGH004 detection, and adds a preview syntax-errors feature for tuple unpacking before Python 3.9.

Need More Details?

View the full release notes and all changes for Ruff 0.11.0.

View Full Changelog