Repository navigation
This release brings confirmed testing against Python 3.15.0 final. Support for Python 3.8 has been dropped. The minimum supported Rust version has also been increased to 1.85.
The largest sets of improvements come to PyO3 0.29.0's experimental-inspect feature, which has received substantial feedback since 0.29.0 and subsequently has seen many refinements to improve the quality and coverage to the generated stubs. Thank you to everyone who has helped to continue to drive this feature towards completion.
New safe wrappers for PyFrozenDict (3.15+) and PyContext have been added.
PyO3 now contains meson build files, which should make it possible for projects using meson-python to more straightforwardly use Rust and PyO3 for additional components.
Additionally, a number of small optimizations have landed, including:
- simplifications to core implementations of
PyAnyMethods, - reduced overhead from PyO3's internal "reference pool" used to dispose of
Py<T>values dropped when not attached to the interpreter, - optimizations to
num-bigintconversions, and - better generated code from
IntoPyObjectandIntoPyObjectRefderives.
There are also many other incremental improvements, bug fixes and smaller features; full detail can be found in the CHANGELOG.
Please consult the migration guide for help upgrading.
Thank you to everyone who contributed code, documentation, design ideas, bug reports, and feedback. The following contributors' commits are included in this release:
@adamgerhant-ai
@alex
@bschoenmaeckers
@charliermarsh
@chirizxc
@clin1234
@davidhewitt
@dependabot[bot]
@dylanpulver
@elbaro
@exg
@florentinl
@FranciscoTGouveia
@Icxolu
@imfeh2
@IvanIsCoding
@JMak-Security
@jonasdedden
@jorenham
@konstin
@latent-9
@MatthieuDartiailh
@mattip
@mejrs
@msimacek
@musicinmybrain
@ngoldbaum
@overcat
@Person-93
@PeterFaiman
@ratazzi
@rewitt94
@scott-griffiths
@ShaharNaveh
@ShiroKSH
@sneakers-the-rat
@tobni
@Tpt
@vasiliy-poverennov-dd
@WaterWhisperer
@xavierforge