Avatar for the pydantic user
pydantic
monty
BlogDocsChangelog

fix: avoid panic when list.sort() key callback mutates the list

#413Merged
Comparing
SAY-5:fix/list-sort-reentrant-mutation-411
(
2611008
) with
main
(
0cf24c3
)
CodSpeed Performance Gauge
0%
Untouched
17
Skipped
15

Benchmarks

32 total
parse_1k_assigns__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
3.2 ms3.2 ms
end_to_end__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
44.3 µs44.2 µs
list_append_int__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
47.4 ms47.3 ms
empty_tuples__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
29.5 ms29.5 ms
list_append_str__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
128.8 ms128.7 ms
dict_comp__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
572 µs571.6 µs
fib__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
175.6 ms175.6 ms
kitchen_sink__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
65.6 µs65.6 µs
loop_mod_13__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
340.8 µs341 µs
pair_tuples__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
99.2 ms99.3 ms
json_loads__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
49.5 ms49.6 ms
list_comp__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
303.5 µs304.1 µs
add_two__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
12.7 µs12.8 µs
gc_collect__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
54.5 ms54.8 ms
func_call_kwargs__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
-1%
23.6 µs23.8 µs
list_append__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
-2%
18 µs18.3 µs
json_dumps__monty
crates/monty-bench/benches/main.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
-2%
31.8 ms32.4 ms
kitchen_sink__monty
crates/monty/benches/main.rs::benches::criterion_benchmark
Skipped
64.4 µs*
loop_mod_13__monty
crates/monty/benches/main.rs::benches::criterion_benchmark
Skipped
326.5 µs*
list_append__monty
crates/monty/benches/main.rs::benches::criterion_benchmark
Skipped
16.1 µs*
dict_comp__monty
crates/monty/benches/main.rs::benches::criterion_benchmark
Skipped
620.5 µs*
add_two__monty
crates/monty/benches/main.rs::benches::criterion_benchmark
Skipped
11.1 µs*
json_dumps__monty
crates/monty/benches/main.rs::benches::criterion_benchmark
Skipped
34 ms*
list_comp__monty
crates/monty/benches/main.rs::benches::criterion_benchmark
Skipped
290.9 µs*
empty_tuples__monty
crates/monty/benches/main.rs::benches::criterion_benchmark
Skipped
30.3 ms*

Commits

Click on a commit to change the comparison range
Base
main
0cf24c3
+0.15%
address review: apply review comments from @davidhewitt
8cbd26d
24 days ago
by SAY-5
-0.39%
reduce duplication in sorting code
2611008
23 days ago
by davidhewitt
© 2026 CodSpeed Technology
Home Terms Privacy Docs