Bump ruff from 0.3.7 to 0.4.1
Bumps ruff from 0.3.7 to 0.4.1.
Release notes
Sourced from ruff's releases.
v0.4.1
Changes
Preview features
- [
pylint
] Implementinvalid-hash-returned
(PLE0309
) (#10961)- [
pylint
] Implementinvalid-index-returned
(PLE0305
) (#10962)Bug fixes
- [
pylint
] AllowNoReturn
-like functions for__str__
,__len__
, etc. (PLE0307
) (#11017)- Parser: Use empty range when there's "gap" in token source (#11032)
- [
ruff
] Ignore stub functions inunused-async
(RUF029
) (#11026)- Parser: Expect indented case block instead of match stmt (#11033)
Contributors
v0.4.0
Changes
A new, hand-written parser
Ruff's new parser is >2x faster, which translates to a 20-40% speedup for all linting and formatting invocations. There's a lot to say about this exciting change, so check out the blog post for more details!
See #10036 for implementation details.
A new language server in Rust
With this release, we also want to highlight our new language server.
ruff server
is a Rust-powered language server that comes built-in with Ruff. It can be used with any editor that supports the Language Server Protocol (LSP). It uses a multi-threaded, lock-free architecture inspired byrust-analyzer
and it will open the door for a lot of exciting features. It’s also faster than our previous Python-based language server -- but you probably guessed that already.
ruff server
is only in alpha, but it has a lot of features that you can try out today:
- Lints Python files automatically and shows quick-fixes when available
- Formats Python files, with support for range formatting
- Comes with commands for quickly performing actions:
ruff.applyAutofix
,ruff.applyFormat
, andruff.applyOrganizeImports
- Supports
source.fixAll
andsource.organizeImports
source actions- Automatically reloads your project configuration when you change it
To setup
ruff server
with your editor, refer to the README.md.Preview features
... (truncated)
Changelog
Sourced from ruff's changelog.
0.4.1
Preview features
- [
pylint
] Implementinvalid-hash-returned
(PLE0309
) (#10961)- [
pylint
] Implementinvalid-index-returned
(PLE0305
) (#10962)Bug fixes
- [
pylint
] AllowNoReturn
-like functions for__str__
,__len__
, etc. (PLE0307
) (#11017)- Parser: Use empty range when there's "gap" in token source (#11032)
- [
ruff
] Ignore stub functions inunused-async
(RUF029
) (#11026)- Parser: Expect indented case block instead of match stmt (#11033)
0.4.0
A new, hand-written parser
Ruff's new parser is >2x faster, which translates to a 20-40% speedup for all linting and formatting invocations. There's a lot to say about this exciting change, so check out the blog post for more details!
See #10036 for implementation details.
A new language server in Rust
With this release, we also want to highlight our new language server.
ruff server
is a Rust-powered language server that comes built-in with Ruff. It can be used with any editor that supports the Language Server Protocol (LSP). It uses a multi-threaded, lock-free architecture inspired byrust-analyzer
and it will open the door for a lot of exciting features. It’s also faster than our previous Python-based language server -- but you probably guessed that already.
ruff server
is only in alpha, but it has a lot of features that you can try out today:
- Lints Python files automatically and shows quick-fixes when available
- Formats Python files, with support for range formatting
- Comes with commands for quickly performing actions:
ruff.applyAutofix
,ruff.applyFormat
, andruff.applyOrganizeImports
- Supports
source.fixAll
andsource.organizeImports
source actions- Automatically reloads your project configuration when you change it
To setup
ruff server
with your editor, refer to the README.md.Preview features
- [
pycodestyle
] Do not triggerE3
rules ondef
s following a function/method with a dummy body (#10704)- [
pylint
] Implementinvalid-bytes-returned
(E0308
) (#10959)- [
pylint
] Implementinvalid-length-returned
(E0303
) (#10963)- [
pylint
] Implementself-cls-assignment
(W0642
) (#9267)- [
pylint
] Omit stubs frominvalid-bool
andinvalid-str-return-type
(#11008)- [
ruff
] New ruleunused-async
(RUF029
) to detect unneededasync
keywords on functions (#9966)
... (truncated)
Commits
-
0ff25a5
Bump version to 0.4.1 (#11035) -
34873ec
Add a script to fuzz the parser (courtesy ofpysource-codegen
) (#11015) -
d3cd61f
Use empty range when there's "gap" in token source (#11032) -
9b80cc0
Select fewer ruff rules when linting Python files inscripts/
(#11034) -
9bb23b0
Expect indented case block instead of match stmt (#11033) -
06c248a
[ruff]
Ignore stub functions inunused-async
(RUF029
) (#11026) -
27902b7
[pylint
] Implementinvalid-index-returned
(PLE0305
) (#10962) -
97acf1d
ENH: Bumpruff
dependency versions to support the latest release of `v0.4.0... -
adf63d9
[pylint
] Implementinvalid-hash-returned
(PLE0309
) (#10961) -
5d3c9f2
ruff server
: fix Neovim setup guide command (#11021) - Additional commits viewable in compare view