Avatar for the PyO3 user
PyO3
pyo3
BlogDocsChangelog

fix type confusion when different `#[pyclass]` types returned from `#[new]`

#6062
Comparing
davidhewitt:pyclass-init-safety
(
c456dcf
) with
main
(
6aadaf2
)
CodSpeed Performance Gauge
0%
Untouched
125
Ignored
21

Benchmarks

146 total
err_new_without_gil
pyo3-benches/benches/bench_err.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+2%
1.2 µs1.2 µs
bytes_new_medium
pyo3-benches/benches/bench_intopyobject.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+2%
1.6 µs1.6 µs
byte_slice_into_pyobject_medium
pyo3-benches/benches/bench_intopyobject.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+2%
1.6 µs1.6 µs
err_new_restore_and_fetch
pyo3-benches/benches/bench_err.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
7.4 µs7.3 µs
test_positional_only_rs
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+1%
10.8 µs10.7 µs
extract_bigint_small
pyo3-benches/benches/bench_bigint.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
2.7 µs2.7 µs
tuple_into_pyobject
pyo3-benches/benches/bench_tuple.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
2.8 µs2.8 µs
extract_bigint_big_positive
pyo3-benches/benches/bench_bigint.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
3.7 µs3.7 µs
extract_bigint_big_negative
pyo3-benches/benches/bench_bigint.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
3.9 µs3.9 µs
test_proto_call_py
pytests/tests/test_pyclasses.py
CodSpeed Performance Gauge
+1%
11.8 µs11.7 µs
bench_pyclass_create
pyo3-benches/benches/bench_pyclass.rs::benches::bench_pyclass
CodSpeed Performance Gauge
+1%
4.1 µs4.1 µs
test_empty_class_init
pytests/tests/test_pyclasses.py
CodSpeed Performance Gauge
+1%
16 µs15.9 µs
test_class_method
pytests/tests/test_pyclasses.py
CodSpeed Performance Gauge
0%
15.7 µs15.6 µs
call_method_0
pyo3-benches/benches/bench_call.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
701.8 µs699.6 µs
test_many_keyword_arguments_rs
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
0%
16.8 µs16.7 µs
test_proto_call
pytests/tests/test_pyclasses.py
CodSpeed Performance Gauge
0%
10.5 µs10.5 µs
test_empty_class_init_py
pytests/tests/test_pyclasses.py
CodSpeed Performance Gauge
0%
10.9 µs10.9 µs
test_class_attribute
pytests/tests/test_pyclasses.py
CodSpeed Performance Gauge
0%
12.6 µs12.6 µs
decimal_via_extract
pyo3-benches/benches/bench_decimal.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
13.8 µs13.7 µs
test_method_call
pytests/tests/test_pyclasses.py
CodSpeed Performance Gauge
0%
14 µs14 µs
extract_hashbrown_set
pyo3-benches/benches/bench_set.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
19.4 ms19.4 ms
drop_many_objects_without_gil
pyo3-benches/benches/bench_py.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
48.1 µs48.1 µs
extract_hashset
pyo3-benches/benches/bench_set.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
23.9 ms23.9 ms
bytes_new_large
pyo3-benches/benches/bench_intopyobject.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
176.4 µs176.4 µs
byte_slice_into_pyobject_large
pyo3-benches/benches/bench_intopyobject.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
176.5 µs176.4 µs

Commits

Click on a commit to change the comparison range
Base
main
6aadaf2
-0.09%
fix type confusion when different `#[pyclass]` types returned from `#[new]`
c456dcf
4 hours ago
by davidhewitt
© 2026 CodSpeed Technology
Home Terms Privacy Docs