0.9.8
📦 ruffView on GitHub →
✨ 9 features🐛 7 fixes🔧 11 symbols
Summary
Ruff 0.9.8 introduces preview syntax‑error detection, several new lint rules, expanded server configuration options, a per‑file target version setting, and numerous bug fixes and documentation updates.
Migration Steps
- If you relied on project indexing with configurationPreference set to a value other than editorOnly, review your settings as indexing will now be skipped when it is editorOnly.
✨ New Features
- Preview feature: parser now detects version‑related syntax errors.
- New pylint rule PLW1507 to mark fix unsafe.
- New pylint rule PLW0177 to catch case np.nan / case math.nan in match statements.
- Ruff rule RUF012 adds more Pydantic model variants to default copy semantics.
- Server: skip indexing when configurationPreference is editorOnly.
- Server: reduce log noise at non‑trace levels.
- Server: ruff.configuration now supports inline configuration.
- Server: notify users of invalid client settings.
- Configuration: added per-file-target-version option.
🐛 Bug Fixes
- refurb: FURB156 no longer considers docstrings.
- flake8-self: SLF001 now ignores attribute accesses on instance‑like variables.
- pylint: PLE0302 fixed false positives, added missing methods, and added support for positional‑only parameters.
- flake8-pyi: PYI030 now marks fix unsafe when comments are deleted.
- Documentation: corrected example for S611.
- Documentation: normalized inconsistent markdown headings in docstrings.
- Documentation: added documentation for MSRV policy.
🔧 Affected Symbols
PLW1507PLW0177RUF012configurationPreferenceruff.configurationper-file-target-versionFURB156SLF001PLE0302PYI030S611