Skip to content
This repository has been archived by the owner on Oct 26, 2024. It is now read-only.

⬆️ deps: Bump ruff from 0.3.7 to 0.4.1 #285

Merged
merged 1 commit into from
Apr 19, 2024
Merged

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Apr 19, 2024

Bumps ruff from 0.3.7 to 0.4.1.

Release notes

Sourced from ruff's releases.

v0.4.1

Changes

Preview features

  • [pylint] Implement invalid-hash-returned (PLE0309) (#10961)
  • [pylint] Implement invalid-index-returned (PLE0305) (#10962)

Bug fixes

  • [pylint] Allow NoReturn-like functions for __str__, __len__, etc. (PLE0307) (#11017)
  • Parser: Use empty range when there's "gap" in token source (#11032)
  • [ruff] Ignore stub functions in unused-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 by rust-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, and ruff.applyOrganizeImports
  • Supports source.fixAll and source.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 trigger E3 rules on defs following a function/method with a dummy body (#10704)
  • [pylint] Implement invalid-bytes-returned (E0308) (#10959)

... (truncated)

Changelog

Sourced from ruff's changelog.

0.4.1

Preview features

  • [pylint] Implement invalid-hash-returned (PLE0309) (#10961)
  • [pylint] Implement invalid-index-returned (PLE0305) (#10962)

Bug fixes

  • [pylint] Allow NoReturn-like functions for __str__, __len__, etc. (PLE0307) (#11017)
  • Parser: Use empty range when there's "gap" in token source (#11032)
  • [ruff] Ignore stub functions in unused-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 by rust-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, and ruff.applyOrganizeImports
  • Supports source.fixAll and source.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 trigger E3 rules on defs following a function/method with a dummy body (#10704)
  • [pylint] Implement invalid-bytes-returned (E0308) (#10959)
  • [pylint] Implement invalid-length-returned (E0303) (#10963)
  • [pylint] Implement self-cls-assignment (W0642) (#9267)
  • [pylint] Omit stubs from invalid-bool and invalid-str-return-type (#11008)
  • [ruff] New rule unused-async (RUF029) to detect unneeded async keywords on functions (#9966)

... (truncated)

Commits
  • 0ff25a5 Bump version to 0.4.1 (#11035)
  • 34873ec Add a script to fuzz the parser (courtesy of pysource-codegen) (#11015)
  • d3cd61f Use empty range when there's "gap" in token source (#11032)
  • 9b80cc0 Select fewer ruff rules when linting Python files in scripts/ (#11034)
  • 9bb23b0 Expect indented case block instead of match stmt (#11033)
  • 06c248a [ruff] Ignore stub functions in unused-async (RUF029) (#11026)
  • 27902b7 [pylint] Implement invalid-index-returned (PLE0305) (#10962)
  • 97acf1d ENH: Bump ruff dependency versions to support the latest release of `v0.4.0...
  • adf63d9 [pylint] Implement invalid-hash-returned (PLE0309) (#10961)
  • 5d3c9f2 ruff server: fix Neovim setup guide command (#11021)
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [ruff](https://github.com/astral-sh/ruff) from 0.3.7 to 0.4.1.
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](astral-sh/ruff@v0.3.7...v0.4.1)

---
updated-dependencies:
- dependency-name: ruff
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file python Pull requests that update Python code labels Apr 19, 2024
@SigureMo SigureMo enabled auto-merge April 19, 2024 13:15
@SigureMo SigureMo added this pull request to the merge queue Apr 19, 2024
Merged via the queue into main with commit a07e267 Apr 19, 2024
12 checks passed
@SigureMo SigureMo deleted the dependabot/pip/ruff-0.4.1 branch April 19, 2024 13:18
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
dependencies Pull requests that update a dependency file python Pull requests that update Python code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant