dependabot[bot] opened a new pull request, #11712: URL: https://github.com/apache/arrow-rs/pull/11712
Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.29.3 to 0.30.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/pyo3/pyo3/releases">pyo3's releases</a>.</em></p> <blockquote> <p>PyO3 0.30.1 is a re-release of PyO3 0.30.0 after investments in CI security unfortunately led to a failed crates.io publish. Rather than delete the failed tag, this new tag comes after the CI issues have (hopefully) been corrected.</p> <p>Thanks to <a href="https://github.com/davidhewitt"><code>@davidhewitt</code></a> <a href="https://github.com/Tpt"><code>@Tpt</code></a> and <a href="https://github.com/viicos"><code>@viicos</code></a> for the investigation and fixes.</p> <h2>PyO3 0.30.0</h2> <p>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.</p> <p>The largest sets of improvements come to PyO3 0.29.0's <code>experimental-inspect</code> 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.</p> <p>New safe wrappers for <code>PyFrozenDict</code> (3.15+) and <code>PyContext</code> have been added.</p> <p>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.</p> <p>Additionally, a number of small optimizations have landed, including:</p> <ul> <li>simplifications to core implementations of <code>PyAnyMethods</code>,</li> <li>reduced overhead from PyO3's internal "reference pool" used to dispose of <code>Py<T></code> values dropped when not attached to the interpreter,</li> <li>optimizations to <code>num-bigint</code> conversions, and</li> <li>better generated code from <code>IntoPyObject</code> and <code>IntoPyObjectRef</code> derives.</li> </ul> <p>There are also many other incremental improvements, bug fixes and smaller features; full detail can be found in the <a href="https://pyo3.rs/v0.30.0/changelog.html">CHANGELOG</a>.</p> <p>Please consult the <a href="https://pyo3.rs/v0.30.0/migration.html">migration guide</a> for help upgrading.</p> <p>Thank you to everyone who contributed code, documentation, design ideas, bug reports, and feedback. The following contributors' commits are included in this release:</p> <p><a href="https://github.com/adamgerhant-ai"><code>@adamgerhant-ai</code></a> <a href="https://github.com/alex"><code>@alex</code></a> <a href="https://github.com/bschoenmaeckers"><code>@bschoenmaeckers</code></a> <a href="https://github.com/charliermarsh"><code>@charliermarsh</code></a> <a href="https://github.com/chirizxc"><code>@chirizxc</code></a> <a href="https://github.com/clin1234"><code>@clin1234</code></a> <a href="https://github.com/davidhewitt"><code>@davidhewitt</code></a> <a href="https://github.com/dependabot"><code>@dependabot</code></a>[bot] <a href="https://github.com/dylanpulver"><code>@dylanpulver</code></a> <a href="https://github.com/elbaro"><code>@elbaro</code></a> <a href="https://github.com/exg"><code>@exg</code></a> <a href="https://github.com/florentinl"><code>@florentinl</code></a> <a href="https://github.com/FranciscoTGouveia"><code>@FranciscoTGouveia</code></a> <a href="https://github.com/Icxolu"><code>@Icxolu</code></a> <a href="https://github.com/imfeh2"><code>@imfeh2</code></a> <a href="https://github.com/IvanIsCoding"><code>@IvanIsCoding</code></a> <a href="https://github.com/JMak-Security"><code>@JMak-Security</code></a> <a href="https://github.com/jonasdedden"><code>@jonasdedden</code></a> <a href="https://github.com/jorenham"><code>@jorenham</code></a> <a href="https://github.com/konstin"><code>@konstin</code></a> <a href="https://github.com/latent-9"><code>@latent-9</code></a> <a href="https://github.com/MatthieuDartiailh"><code>@MatthieuDartiailh</code></a> <a href="https://github.com/mattip"><code>@mattip</code></a> <a href="https://github.com/mejrs"><code>@mejrs</code></a> <a href="https://github.com/msimacek"><code>@msimacek</code></a></p> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/PyO3/pyo3/blob/v0.30.1/CHANGELOG.md">pyo3's changelog</a>.</em></p> <blockquote> <h2>[0.30.1] - 2026-10-14</h2> <h3>Packaging</h3> <ul> <li>Support PyPy 3.12. <a href="https://redirect.github.com/PyO3/pyo3/pull/6448">#6448</a></li> </ul> <h2>[0.30.0] - 2026-10-13</h2> <p>NB PyO3 0.30.0 failed to push to crates.io due to a CI issue, so 0.30.1 was prepared and pushed with minimal other changes other than confirming support for PyPy 3.12.</p> <h3>Packaging</h3> <ul> <li>Drop support for Python 3.8. <a href="https://redirect.github.com/PyO3/pyo3/pull/6128">#6128</a></li> <li>Bump MSRV to 1.85. <a href="https://redirect.github.com/PyO3/pyo3/pull/6459">#6459</a></li> <li>Support <code>meson-python</code> as a build backend. <a href="https://redirect.github.com/PyO3/pyo3/pull/6483">#6483</a></li> <li>Bump minimum supported GraalPy version to 25.4. <a href="https://redirect.github.com/PyO3/pyo3/pull/6491">#6491</a></li> <li>Support Python 3.15.0 final. <a href="https://redirect.github.com/PyO3/pyo3/pull/6517">#6517</a></li> </ul> <h3>Added</h3> <ul> <li>Add support for <code>PyFrozenDict</code> on 3.15+ <a href="https://redirect.github.com/PyO3/pyo3/pull/6174">#6174</a></li> <li>Add <code>PyContext</code> type. <a href="https://redirect.github.com/PyO3/pyo3/pull/6227">#6227</a></li> <li><code>experimental-inspect</code>: classes which extend their base's instance layout are now decorated with <code>disjoint_base</code> in the generated stubs, as per PEP 800. <a href="https://redirect.github.com/PyO3/pyo3/pull/6362">#6362</a></li> <li>Add methods <code>PyBuffer::as_slice_ptr</code> and <code>PyBuffer::as_fortran_slice_ptr</code>. <a href="https://redirect.github.com/PyO3/pyo3/pull/6382">#6382</a></li> <li>Implement <code>Copy</code> for <code>PyVisit</code>. <a href="https://redirect.github.com/PyO3/pyo3/pull/6412">#6412</a></li> <li>Add non-poisoning variant of <code>PyMutex</code> <a href="https://redirect.github.com/PyO3/pyo3/pull/6437">#6437</a></li> <li>Add <code>PyStringMethods::code_point_len</code>. <a href="https://redirect.github.com/PyO3/pyo3/pull/6455">#6455</a></li> <li>FFI Definitions: <ul> <li>Add FFI definition <code>PyThread_get_thread_ident</code>. <a href="https://redirect.github.com/PyO3/pyo3/pull/6056">#6056</a></li> <li>Add FFI definitions for PEP 731 (<code>PyInitConfig</code>). <a href="https://redirect.github.com/PyO3/pyo3/pull/6152">#6152</a></li> <li>Add FFI definitions <code>PyContext_AddWatcher</code> and <code>PyContext_ClearWatcher</code> on Python 3.14+. <a href="https://redirect.github.com/PyO3/pyo3/pull/6204">#6204</a></li> <li>Add FFI definitions for PEP 539 ("Thread-Specific Storage" API). <a href="https://redirect.github.com/PyO3/pyo3/pull/6262">#6262</a></li> <li>Enable FFI definitions <code>PyObject_GC_Track</code> and <code>PyObject_GC_UnTrack</code> on PyPy. <a href="https://redirect.github.com/PyO3/pyo3/pull/6299">#6299</a></li> <li>Add FFI definitions <code>PyUnicode_DecodeMBCS</code>, <code>PyUnicode_DecodeMBCSStateful</code>, <code>PyUnicode_DecodeCodePagetateful</code>, <code>PyUnicode_AsMBCSString</code>, <code>PyUnicode_EncodeCodePage</code>, and <code>PyUnicode_Equal</code>. <a href="https://redirect.github.com/PyO3/pyo3/pull/6349">#6349</a></li> <li>Add FFI definitions <code>PyFloat_Pack{2,4,8}</code> and <code>PyFloat_Unpack{2,4,8}</code>. <a href="https://redirect.github.com/PyO3/pyo3/pull/6350">#6350</a></li> <li>Add FFI definitions <code>PyFunction_GET_CODE</code>, <code>PyFunction_GET_GLOBALS</code>, <code>PyFunction_GET_MODULE</code>, <code>PyFunction_GET_DEFAULTS</code>, <code>PyFunction_GET_KW_DEFAULTS</code>, <code>PyFunction_GET_CLOSURE</code>, <code>PyFunction_GET_ANNOTATIONS</code>, <code>PyClassMethod_Type</code>, <code>PyStaticMethod_Type</code>, <code>PyClassMethod_New</code>, and <code>PyStaticMethod_New</code>. <a href="https://redirect.github.com/PyO3/pyo3/pull/6351">#6351</a></li> </ul> </li> </ul> <h3>Changed</h3> <ul> <li>Optimized <code>num-bigint</code> conversions on Python 3.14 and newer. <a href="https://redirect.github.com/PyO3/pyo3/pull/6144">#6144</a></li> <li>Change <code>#[pyclass]</code> to not emit <code>FromPyObject</code> implementation by default (this was previously deprecated). <a href="https://redirect.github.com/PyO3/pyo3/pull/6188">#6188</a></li> <li>Deprecate <code>#[pyclass(skip_from_py_object)]</code> option (as it is now the default). <a href="https://redirect.github.com/PyO3/pyo3/pull/6188">#6188</a></li> <li>Deprecate <code>pyo3_build_config::PythonAbi::from_build_env</code> in favor of <code>pyo3_build_config::PythonAbi::from_stable_abi</code>. <a href="https://redirect.github.com/PyO3/pyo3/pull/6192">#6192</a></li> <li>Change <code>pyo3_build_config::InterpreterConfig::from_sysconfigdata</code> to no longer select a target ABI based on the content of abi3 or abi3t cargo features (it will now always select a version-specific ABI). <a href="https://redirect.github.com/PyO3/pyo3/pull/6192">#6192</a></li> <li>Optimize PyO3's internal reference pool used for disposal of <code>Py<T></code> values dropped when not attached to the Python interpreter. <a href="https://redirect.github.com/PyO3/pyo3/pull/6200">#6200</a></li> <li><code>experimental-inspect</code>: Emit <code>__all__</code> for complete modules in the type stubs. <a href="https://redirect.github.com/PyO3/pyo3/pull/6242">#6242</a></li> <li>Change <code>PyBytes::new_with_writer</code> to take <code>&mut PyBytesWriter</code> instead of <code>&mut dyn Write</code>. <a href="https://redirect.github.com/PyO3/pyo3/pull/6251">#6251</a></li> <li>Change <code>#[pymodule_init]</code> to allow functions which do not take a module argument (for <code>experimental-inspect</code>, such modules are not marked <code>Incomplete</code>). <a href="https://redirect.github.com/PyO3/pyo3/pull/6271">#6271</a></li> <li>Change <code>#[pymodule_init]</code> to optionally allow functions to take a <code>Python<'_></code> marker. <a href="https://redirect.github.com/PyO3/pyo3/pull/6271">#6271</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/PyO3/pyo3/commit/f168538672f2c32e32f7c1b702a502ee92de1edf"><code>f168538</code></a> release: 0.30.1</li> <li><a href="https://github.com/PyO3/pyo3/commit/b3c73619cbb6e3c7f3e6a0ad78c85814dbe4d854"><code>b3c7361</code></a> pyo3-introspection sdist: skip maturin license lookup (<a href="https://redirect.github.com/pyo3/pyo3/issues/6528">#6528</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/b564d8cfbacf801583b9c03647e4b575a16d4528"><code>b564d8c</code></a> ci: require <code>Cargo.lock</code> to be up to date during testing (<a href="https://redirect.github.com/pyo3/pyo3/issues/6522">#6522</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/bbd862c5a0177b4aa564c3d0e81091fe73f5bb43"><code>bbd862c</code></a> support PyPy 3.12 (<a href="https://redirect.github.com/pyo3/pyo3/issues/6448">#6448</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/196ca358aa86d59f0957db99fb304dc8d806121b"><code>196ca35</code></a> release: 0.30.0 (<a href="https://redirect.github.com/pyo3/pyo3/issues/6493">#6493</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/d3befaaa14288c4d743eab80369391268eaba721"><code>d3befaa</code></a> remove all functionality deprecated in PyO3 0.28 (<a href="https://redirect.github.com/pyo3/pyo3/issues/6519">#6519</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/3ee4e5658a5e7a3f95c90968646a5916bb8b0d5e"><code>3ee4e56</code></a> <code>experimental-inspect</code>: emit <code>__all__</code> in the generated stubs (<a href="https://redirect.github.com/pyo3/pyo3/issues/6242">#6242</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/071edecda46b6bcf3448e469b8392e289802e445"><code>071edec</code></a> test against 3.15 final (<a href="https://redirect.github.com/pyo3/pyo3/issues/6517">#6517</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/4c68d9cbed8ba67ebc98e19e7669aa340e37c265"><code>4c68d9c</code></a> internal: remove no longer needed <code>non_local_definitions</code> allows (<a href="https://redirect.github.com/pyo3/pyo3/issues/6508">#6508</a>)</li> <li><a href="https://github.com/PyO3/pyo3/commit/65c8c7da61bd119c88ed7e394d8bef071ee37baa"><code>65c8c7d</code></a> Add example building with <code>meson-python</code> (<a href="https://redirect.github.com/pyo3/pyo3/issues/6483">#6483</a>)</li> <li>Additional commits viewable in <a href="https://github.com/pyo3/pyo3/compare/v0.29.3...v0.30.1">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
