Skip to content

build(deps): bump https://github.com/astral-sh/ruff-pre-commit from v0.16.10 to 0.17.0 - #9225

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pre_commit/https-/github.com/astral-sh/ruff-pre-commit-0.17.0
Open

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/pre_commit/https-/github.com/astral-sh/ruff-pre-commit-0.17.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 19, 2026

Copy link
Copy Markdown
Contributor

Bumps https://github.com/astral-sh/ruff-pre-commit from v0.16.10 to 0.17.0.

Release notes

Sourced from https://github.com/astral-sh/ruff-pre-commit's releases.

v0.17.0

See: https://github.com/astral-sh/ruff/releases/tag/0.17.0

Commits

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 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 [https://github.com/astral-sh/ruff-pre-commit](https://github.com/astral-sh/ruff-pre-commit) from v0.16.10 to 0.17.0.
- [Release notes](https://github.com/astral-sh/ruff-pre-commit/releases)
- [Commits](astral-sh/ruff-pre-commit@v0.16.10...v0.17.0)

---
updated-dependencies:
- dependency-name: https://github.com/astral-sh/ruff-pre-commit
  dependency-version: 0.17.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file pre_commit Pull requests that update pre_commit code labels Oct 19, 2026
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 19, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-19T15:51:33.999407Z 8ebc561 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@coderabbitai

coderabbitai Bot commented Oct 19, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: Repository: RustPython/RustPython/.coderabbit.yml
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 08cebbd4-f645-4566-aa87-2b9bf56f887a

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codspeed

codspeed Bot commented Oct 19, 2026 •

Copy link
Copy Markdown
Contributor

Merging this PR will not alter performance

✅ 62 untouched benchmarks
⏩ 4 skipped benchmarks1


Comparing dependabot/pre_commit/https-/github.com/astral-sh/ruff-pre-commit-0.17.0 (8ebc561) with main (eb2ffc6)

Open in CodSpeed

Footnotes

  1. 4 benchmarks were skipped, so the baseline results were used instead. If they were deleted from the codebase, click here and archive them to remove them from the performance reports. ↩

@fanninpm

Copy link
Copy Markdown
Contributor

@codspeedbot explain regression

@codspeed

codspeed Bot commented Oct 19, 2026

Copy link
Copy Markdown
Contributor

@codspeedbot explain regression

The regression isn't real. This PR doesn't touch any code that runs in the benchmark, and the extra time comes from a single glibc allocator cleanup pass.

This PR only changes config. The diff is one line in .pre-commit-config.yaml, bumping the ruff pre-commit hook. None of that is compiled into the benchmark binaries, so the RustPython code measured here is the same on main (eb2ffc6) and this branch (8ebc561).

Where the extra ~55 µs goes. I compared the flamegraphs of rustpython[frozenset.py] on both runs:

main (358.4 µs) this PR (413.6 µs)
malloc_consolidate (glibc) not in the top functions 35.2 µs self
unlink_chunk (glibc, called from malloc_consolidate) not in the top functions 16.4 µs self
free total 42.1 µs 76.8 µs
default_dealloc<PyInt> self 35.4 µs 36.3 µs
PySetInner::hash total 26.7 µs 26.8 µs
Bytecode execution (run_until) 54.6 µs 54.2 µs

RustPython's own functions cost the same on both runs. The whole difference is one malloc_consolidate pass in glibc, triggered while the frozensets and ints are freed when the module dict is torn down. Whether that pass lands inside the measured iteration depends on the heap's state beforehand. That state varies between runs because each benchmark process gets a random string hash seed (hash_seed = None in benches/microbenchmarks.rs). This benchmark has switched between about 357 µs and 411 µs this way before, including on PRs #8979 and #9011.

The "different runtime environments" warning also applies to this benchmark, since the two runs linked different system libraries. That is another reason not to trust a 13% move on its own here.

What to do: you can acknowledge the regression on CodSpeed and merge the bump. If you want this flake gone for good, setting a fixed hash_seed (for example Some(0)) in the microbenchmark harness would make heap layout repeatable from run to run.

Comment @codspeedbot pin the hash seed in the microbenchmark harness and I'll open a PR for it.

Summary
  • Warming up the performance wizard...
  • Handling comment — Comment handling finished successfully

Was this response helpful? React with 👍 or 👎 to help us improve CodSpeedBot.

@fanninpm

Copy link
Copy Markdown
Contributor

@codspeedbot is the hash seed already pinned in the microbenchmark harness?

@codspeed

codspeed Bot commented Oct 19, 2026

Copy link
Copy Markdown
Contributor

@codspeedbot is the hash seed already pinned in the microbenchmark harness?

Yes, it's already pinned, and my earlier comment was wrong about that. Sorry for the bad suggestion.

benches/microbenchmarks.rs has set settings.hash_seed = Some(0) since #9126 (ba54cce, merged 2026-10-15). Both main (eb2ffc6) and this PR (8ebc561) include that commit. The hash secret is process-wide and the first interpreter sets it, so every microbenchmark interpreter uses seed 0. Also, frozenset.py only hashes ints, and int hashes don't use the string hash secret at all. So the hash seed can't explain this result, and you don't need a PR to pin it.

What still holds:

  • This PR doesn't change any benchmarked code. It only edits .pre-commit-config.yaml.
  • main is stable on this benchmark. rustpython[frozenset.py] measured 358.4, 358.1, 358.0 and 357.8 µs on the last four main runs (c08375b, eb2ffc6, 58b54c4, 073136a). This PR's 413.6 µs is a single outlier.
  • The extra ~55 µs is all in glibc. It comes from a malloc_consolidate / unlink_chunk pass during teardown. RustPython's own functions cost the same on both runs.
  • The two runs used different environments. CodSpeed's comparison flags different linked libraries for this benchmark between the base and head runs, which is a likely cause of the allocator-state difference.

The conclusion is the same as before: this is noise, not a regression. You can acknowledge it on CodSpeed and merge the bump.

Comment @codspeedbot rerun the comparison after a rebase if you'd like me to check whether the outlier repeats.

Summary
  • Warming up the performance wizard...
  • Handling comment — Comment handling finished successfully

Learnings updated. See what CodSpeed remembers about this repository.

Was this response helpful? React with 👍 or 👎 to help us improve CodSpeedBot.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file pre_commit Pull requests that update pre_commit code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant