astral-sh
ruff
Blog
Docs
Changelog
Blog
Docs
Changelog
Overview
Branches
Benchmarks
Runs
Perf: Skip string normalization when possible
#10116
Merged
Comparing
perf-string-normalization
(
f7a3f92
) with
main
(
15b87ea
)
CodSpeed Performance Gauge
+13%
Improvements
1
Regressions
0
Untouched
29
New
0
Dropped
0
Ignored
0
Benchmarks
Improved
formatter[numpy/globals.py]
crates/ruff_benchmark/benches/formatter.rs::formatter::benchmark_formatter::formatter[numpy/globals.py]
CodSpeed Performance Gauge
+13%
273.6 µs
242.7 µs
Passed
formatter[numpy/ctypeslib.py]
crates/ruff_benchmark/benches/formatter.rs::formatter::benchmark_formatter::formatter[numpy/ctypeslib.py]
CodSpeed Performance Gauge
+4%
2 ms
1.9 ms
formatter[unicode/pypinyin.py]
crates/ruff_benchmark/benches/formatter.rs::formatter::benchmark_formatter::formatter[unicode/pypinyin.py]
CodSpeed Performance Gauge
+3%
678.1 µs
660.8 µs
formatter[pydantic/types.py]
crates/ruff_benchmark/benches/formatter.rs::formatter::benchmark_formatter::formatter[pydantic/types.py]
CodSpeed Performance Gauge
+1%
3.6 ms
3.6 ms
linter/all-with-preview-rules[numpy/ctypeslib.py]
crates/ruff_benchmark/benches/linter.rs::preview_rules::benchmark_preview_rules::linter/all-with-preview-rules[numpy/ctypeslib.py]
CodSpeed Performance Gauge
+1%
4.6 ms
4.5 ms
formatter[large/dataset.py]
crates/ruff_benchmark/benches/formatter.rs::formatter::benchmark_formatter::formatter[large/dataset.py]
CodSpeed Performance Gauge
+1%
9.5 ms
9.5 ms
linter/all-rules[large/dataset.py]
crates/ruff_benchmark/benches/linter.rs::all_rules::benchmark_all_rules::linter/all-rules[large/dataset.py]
CodSpeed Performance Gauge
+1%
15.9 ms
15.8 ms
linter/all-rules[pydantic/types.py]
crates/ruff_benchmark/benches/linter.rs::all_rules::benchmark_all_rules::linter/all-rules[pydantic/types.py]
CodSpeed Performance Gauge
0%
7.8 ms
7.8 ms
linter/all-with-preview-rules[large/dataset.py]
crates/ruff_benchmark/benches/linter.rs::preview_rules::benchmark_preview_rules::linter/all-with-preview-rules[large/dataset.py]
CodSpeed Performance Gauge
0%
18.5 ms
18.4 ms
linter/default-rules[large/dataset.py]
crates/ruff_benchmark/benches/linter.rs::default_rules::benchmark_default_rules::linter/default-rules[large/dataset.py]
CodSpeed Performance Gauge
0%
4 ms
4 ms
parser[large/dataset.py]
crates/ruff_benchmark/benches/parser.rs::parser::benchmark_parser::parser[large/dataset.py]
CodSpeed Performance Gauge
0%
11.4 ms
11.4 ms
linter/all-rules[numpy/ctypeslib.py]
crates/ruff_benchmark/benches/linter.rs::all_rules::benchmark_all_rules::linter/all-rules[numpy/ctypeslib.py]
CodSpeed Performance Gauge
0%
3.9 ms
3.9 ms
linter/all-rules[numpy/globals.py]
crates/ruff_benchmark/benches/linter.rs::all_rules::benchmark_all_rules::linter/all-rules[numpy/globals.py]
CodSpeed Performance Gauge
0%
682.4 µs
682.3 µs
parser[numpy/globals.py]
crates/ruff_benchmark/benches/parser.rs::parser::benchmark_parser::parser[numpy/globals.py]
CodSpeed Performance Gauge
0%
229.5 µs
229.4 µs
lexer[pydantic/types.py]
crates/ruff_benchmark/benches/lexer.rs::lexer::benchmark_lexer::lexer[pydantic/types.py]
CodSpeed Performance Gauge
0%
643.8 µs
643.8 µs
linter/all-rules[unicode/pypinyin.py]
crates/ruff_benchmark/benches/linter.rs::all_rules::benchmark_all_rules::linter/all-rules[unicode/pypinyin.py]
CodSpeed Performance Gauge
0%
2.2 ms
2.2 ms
parser[unicode/pypinyin.py]
crates/ruff_benchmark/benches/parser.rs::parser::benchmark_parser::parser[unicode/pypinyin.py]
CodSpeed Performance Gauge
0%
740.5 µs
740.5 µs
linter/default-rules[numpy/globals.py]
crates/ruff_benchmark/benches/linter.rs::default_rules::benchmark_default_rules::linter/default-rules[numpy/globals.py]
CodSpeed Performance Gauge
0%
187.2 µs
187.2 µs
linter/default-rules[unicode/pypinyin.py]
crates/ruff_benchmark/benches/linter.rs::default_rules::benchmark_default_rules::linter/default-rules[unicode/pypinyin.py]
CodSpeed Performance Gauge
0%
377.4 µs
377.4 µs
lexer[numpy/ctypeslib.py]
crates/ruff_benchmark/benches/lexer.rs::lexer::benchmark_lexer::lexer[numpy/ctypeslib.py]
CodSpeed Performance Gauge
0%
285.7 µs
285.7 µs
lexer[numpy/globals.py]
crates/ruff_benchmark/benches/lexer.rs::lexer::benchmark_lexer::lexer[numpy/globals.py]
CodSpeed Performance Gauge
0%
36.2 µs
36.2 µs
lexer[unicode/pypinyin.py]
crates/ruff_benchmark/benches/lexer.rs::lexer::benchmark_lexer::lexer[unicode/pypinyin.py]
CodSpeed Performance Gauge
0%
97.8 µs
97.8 µs
parser[numpy/ctypeslib.py]
crates/ruff_benchmark/benches/parser.rs::parser::benchmark_parser::parser[numpy/ctypeslib.py]
CodSpeed Performance Gauge
0%
2 ms
2 ms
linter/default-rules[pydantic/types.py]
crates/ruff_benchmark/benches/linter.rs::default_rules::benchmark_default_rules::linter/default-rules[pydantic/types.py]
CodSpeed Performance Gauge
0%
1.9 ms
1.9 ms
lexer[large/dataset.py]
crates/ruff_benchmark/benches/lexer.rs::lexer::benchmark_lexer::lexer[large/dataset.py]
CodSpeed Performance Gauge
0%
1.4 ms
1.4 ms
parser[pydantic/types.py]
crates/ruff_benchmark/benches/parser.rs::parser::benchmark_parser::parser[pydantic/types.py]
CodSpeed Performance Gauge
0%
4.5 ms
4.5 ms
linter/default-rules[numpy/ctypeslib.py]
crates/ruff_benchmark/benches/linter.rs::default_rules::benchmark_default_rules::linter/default-rules[numpy/ctypeslib.py]
CodSpeed Performance Gauge
0%
965.5 µs
965.8 µs
linter/all-with-preview-rules[numpy/globals.py]
crates/ruff_benchmark/benches/linter.rs::preview_rules::benchmark_preview_rules::linter/all-with-preview-rules[numpy/globals.py]
CodSpeed Performance Gauge
0%
767.9 µs
768.2 µs
linter/all-with-preview-rules[pydantic/types.py]
crates/ruff_benchmark/benches/linter.rs::preview_rules::benchmark_preview_rules::linter/all-with-preview-rules[pydantic/types.py]
CodSpeed Performance Gauge
0%
9.3 ms
9.3 ms
linter/all-with-preview-rules[unicode/pypinyin.py]
crates/ruff_benchmark/benches/linter.rs::preview_rules::benchmark_preview_rules::linter/all-with-preview-rules[unicode/pypinyin.py]
CodSpeed Performance Gauge
-1%
2.4 ms
2.4 ms
Commits
Click on a commit to change the comparison range
Base
main
15b87ea
+13%
Perf: Skip string normalization when possible
f7a3f92
1 year ago
by MichaReiser
© 2025 CodSpeed Technology
Home
Terms
Privacy
Docs