Avatar for the PyO3 user
PyO3
pyo3
BlogDocsChangelog

implement `PyTypeMethods`

#3705Merged
Comparing
davidhewitt:type2
(
410133d
) with
main
(
0dd568d
)
CodSpeed Performance Gauge
+26%
Improvement
1
Untouched
61
Ignored
17

Benchmarks

79 total
f64_from_pyobject
pyo3-benches/benches/bench_frompyobject.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+26%
425 ns337.5 ns
getattr_intern
pyo3-benches/benches/bench_intern.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+2%
3.2 µs3.1 µs
test_args_kwargs_py
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+2%
20.8 µs20.5 µs
test_simple_args_rs
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+1%
20.3 µs20.1 µs
tuple_into_py
pyo3-benches/benches/bench_tuple.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
2.9 µs2.9 µs
enum_from_pyobject
pyo3-benches/benches/bench_frompyobject.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
18.9 µs18.8 µs
test_none_rs
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+1%
12.3 µs12.2 µs
dirty_acquire_gil
pyo3-benches/benches/bench_gil.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
4.5 µs4.5 µs
test_simple_rs
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+1%
19.3 µs19.1 µs
test_none_py
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
0%
12 µs11.9 µs
test_simple_kwargs_rs
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
0%
22 µs21.9 µs
identify_object_type
pyo3-benches/benches/bench_any.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
15.4 µs15.3 µs
extract_int_extract_fail
pyo3-benches/benches/bench_extract.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
11.4 µs11.4 µs
extract_bigint_extract_fail
pyo3-benches/benches/bench_bigint.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
11.5 µs11.5 µs
not_a_list_via_extract_enum
pyo3-benches/benches/bench_frompyobject.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
13.1 µs13.1 µs
test_empty_class_init
pytests/tests/test_pyclasses.py
CodSpeed Performance Gauge
0%
21.7 µs21.6 µs
test_simple_args_kwargs_rs
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
0%
22.2 µs22.2 µs
call_0
pyo3-benches/benches/bench_call.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
213.9 µs213.8 µs
first_time_init
pyo3-benches/benches/bench_pyclass.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
38.1 µs38.1 µs
call_method_0
pyo3-benches/benches/bench_call.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
618.1 µs618 µs
extract_hashset
pyo3-benches/benches/bench_set.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
20.6 ms20.6 ms
extract_bigint_huge_positive
pyo3-benches/benches/bench_bigint.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
12.3 µs12.3 µs
extract_hashmap
pyo3-benches/benches/bench_dict.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
19.7 ms19.7 ms
extract_btreeset
pyo3-benches/benches/bench_set.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
15.2 ms15.2 ms
collect_generic_iterator
pyo3-benches/benches/bench_any.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
106.2 ms106.2 ms

Commits

Click on a commit to change the comparison range
Base
main
0dd568d
-0.28%
`from_type_ptr_bound` instead of `from_type_ptr_borrowed`
09e3180
2 years ago
by davidhewitt
-10.26%
correct conditional code
f8c6810
2 years ago
by davidhewitt
+45.11%
Merge branch 'main' into type2
c24267d
2 years ago
by davidhewitt
-19.83%
just make `from_type_ptr_bound` create an owned `Bound`
5e90880
2 years ago
by davidhewitt
0%
correct docstrings
4a6b26b
2 years ago
by davidhewitt
+19.83%
Rework as `PyType::from_borrowed_type_ptr`
2a8b9d0
2 years ago
by davidhewitt
0%
correct doc link to `from_borrowed_type_ptr`
7c1f259
2 years ago
by davidhewitt
-19.83%
remove unneeded lifetime name
276d4df
2 years ago
by davidhewitt
+11.19%
Merge branch 'main' into type2
410133d
2 years ago
by davidhewitt
© 2026 CodSpeed Technology
Home Terms Privacy Docs