github PyO3/pyo3 v0.30.0
PyO3 0.30.0

4 hours ago

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-bigint conversions, and
  • better generated code from IntoPyObject and IntoPyObjectRef derives.

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

Don't miss a new pyo3 release

NewReleases is sending notifications on new releases.