dependabot[bot] opened a new pull request, #5556:
URL: https://github.com/apache/arrow-rs/pull/5556

   Updates the requirements on [pyo3](https://github.com/pyo3/pyo3) to permit 
the latest version.
   <details>
   <summary>Release notes</summary>
   <p><em>Sourced from <a href="https://github.com/pyo3/pyo3/releases";>pyo3's 
releases</a>.</em></p>
   <blockquote>
   <h2>PyO3 0.21.0</h2>
   <p>This release introduces a substantial new direction for PyO3's API. The 
<code>Bound&lt;'py, T&gt;</code> smart pointer type has been added that 
replaces &quot;GIL Refs&quot; such as <code>&amp;'py PyAny</code> and 
<code>&amp;'py PyList</code> with smart-pointer forms <code>Bound&lt;'py, 
PyAny&gt;</code> and <code>Bound&lt;'py, PyList&gt;</code>. This new smart 
pointer brings ownership out of PyO3's internals and into user control. This 
has been done for sake of both performance and soundness.</p>
   <p>The <a href="https://pyo3.rs/v0.21.0/migration.html";>migration guide</a> 
extensively details the intended transition to the new API. To allow users a 
more graceful upgrade path, PyO3 0.21 and 0.22 will maintain backwards 
compatibility support for the existing &quot;GIL Refs&quot; API.</p>
   <p>As well as the Bound API, highlights of PyO3 0.21 include:</p>
   <ul>
   <li>Support for compiling for GraalPy</li>
   <li>Extended <code>chrono</code> / datetime conversions, including support 
for the <code>abi3</code> feature and the <code>chrono-tz</code> crate</li>
   <li>Simplifications to <code>__next__</code> and <code>__anext__</code> 
methods</li>
   </ul>
   <p>PyO3 0.21 also includes two new experimental features:</p>
   <ul>
   <li><code>experimental-async</code> for a simple <code>async fn</code> 
integration between Rust and Python.</li>
   <li><code>experimental-declarative-modules</code> for a new simpler 
<code>#[pymodule]</code> syntax.</li>
   </ul>
   <p>There have been numerous other smaller improvements, changes and fixes. 
For full details see the <a 
href="https://pyo3.rs/v0.21.0/changelog.html";>CHANGELOG</a>.</p>
   <p>Please consult the <a 
href="https://pyo3.rs/v0.21.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 users' commits are included in this 
release:</p>
   <p><a href="https://github.com/acceptacross";><code>@​acceptacross</code></a>
   <a href="https://github.com/adamreichold";><code>@​adamreichold</code></a>
   <a href="https://github.com/aldanor";><code>@​aldanor</code></a>
   <a href="https://github.com/alex";><code>@​alex</code></a>
   <a href="https://github.com/alonme";><code>@​alonme</code></a>
   <a href="https://github.com/alxhill";><code>@​alxhill</code></a>
   <a href="https://github.com/birkenfeld";><code>@​birkenfeld</code></a>
   <a href="https://github.com/btel";><code>@​btel</code></a>
   <a href="https://github.com/daemontus";><code>@​daemontus</code></a>
   <a href="https://github.com/davidhewitt";><code>@​davidhewitt</code></a>
   <a href="https://github.com/dmatos2012";><code>@​dmatos2012</code></a>
   <a href="https://github.com/Hamatti";><code>@​Hamatti</code></a>
   <a href="https://github.com/Icxolu";><code>@​Icxolu</code></a>
   <a href="https://github.com/jadedpasta";><code>@​jadedpasta</code></a>
   <a href="https://github.com/Jerry-Master";><code>@​Jerry-Master</code></a>
   <a href="https://github.com/jessekrubin";><code>@​jessekrubin</code></a>
   <a href="https://github.com/Jgfrausing";><code>@​Jgfrausing</code></a>
   <a href="https://github.com/juntyr";><code>@​juntyr</code></a>
   <a href="https://github.com/kushaldas";><code>@​kushaldas</code></a>
   <a href="https://github.com/LilyFoote";><code>@​LilyFoote</code></a>
   <a href="https://github.com/maffoo";><code>@​maffoo</code></a>
   <a href="https://github.com/mejrs";><code>@​mejrs</code></a>
   <a href="https://github.com/messense";><code>@​messense</code></a>
   <a href="https://github.com/mkovaxx";><code>@​mkovaxx</code></a>
   <a href="https://github.com/neachdainn";><code>@​neachdainn</code></a>
   <a href="https://github.com/orhun";><code>@​orhun</code></a>
   <a href="https://github.com/samuelcolvin";><code>@​samuelcolvin</code></a>
   <a href="https://github.com/snuderl";><code>@​snuderl</code></a>
   <a href="https://github.com/suriya-ganesh";><code>@​suriya-ganesh</code></a>
   <a href="https://github.com/timfel";><code>@​timfel</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/main/CHANGELOG.md";>pyo3's 
changelog</a>.</em></p>
   <blockquote>
   <h2>[0.21.0] - 2024-03-25</h2>
   <h3>Added</h3>
   <ul>
   <li>Add support for GraalPy (24.0 and up). <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3247";>#3247</a></li>
   <li>Add <code>PyMemoryView</code> type. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3514";>#3514</a></li>
   <li>Allow <code>async fn</code> in for <code>#[pyfunction]</code> and 
<code>#[pymethods]</code>, with the <code>experimental-async</code> feature. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3540";>#3540</a> <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3588";>#3588</a> <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3599";>#3599</a> <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3931";>#3931</a></li>
   <li>Implement <code>PyTypeInfo</code> for <code>PyEllipsis</code>, 
<code>PyNone</code> and <code>PyNotImplemented</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3577";>#3577</a></li>
   <li>Support <code>#[pyclass]</code> on enums that have non-unit variants. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3582";>#3582</a></li>
   <li>Support <code>chrono</code> feature with <code>abi3</code> feature. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3664";>#3664</a></li>
   <li><code>FromPyObject</code>, <code>IntoPy&lt;PyObject&gt;</code> and 
<code>ToPyObject</code> are implemented on <code>std::duration::Duration</code> 
<a href="https://redirect.github.com/PyO3/pyo3/pull/3670";>#3670</a></li>
   <li>Add <code>PyString::to_cow</code>. Add 
<code>Py&lt;PyString&gt;::to_str</code>, 
<code>Py&lt;PyString&gt;::to_cow</code>, and 
<code>Py&lt;PyString&gt;::to_string_lossy</code>, as ways to access Python 
string data safely beyond the GIL lifetime. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3677";>#3677</a></li>
   <li>Add <code>Bound&lt;T&gt;</code> and <code>Borrowed&lt;T&gt;</code> smart 
pointers as a new API for accessing Python objects. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3686";>#3686</a></li>
   <li>Add <code>PyNativeType::as_borrowed</code> to convert &quot;GIL 
refs&quot; to the new <code>Bound</code> smart pointer. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3692";>#3692</a></li>
   <li>Add <code>FromPyObject::extract_bound</code> method, to migrate 
<code>FromPyObject</code> implementations to the Bound API. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3706";>#3706</a></li>
   <li>Add <code>gil-refs</code> feature to allow continued use of the 
deprecated GIL Refs APIs. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3707";>#3707</a></li>
   <li>Add methods to <code>PyAnyMethods</code> for binary operators 
(<code>add</code>, <code>sub</code>, etc.) <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3712";>#3712</a></li>
   <li>Add <code>chrono-tz</code> feature allowing conversion between 
<code>chrono_tz::Tz</code> and <code>zoneinfo.ZoneInfo</code> <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3730";>#3730</a></li>
   <li>Add FFI definition <code>PyType_GetModuleByDef</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3734";>#3734</a></li>
   <li>Conversion between <code>std::time::SystemTime</code> and 
<code>datetime.datetime</code> <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3736";>#3736</a></li>
   <li>Add <code>Py::as_any</code> and <code>Py::into_any</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3785";>#3785</a></li>
   <li>Add <code>PyStringMethods::encode_utf8</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3801";>#3801</a></li>
   <li>Add <code>PyBackedStr</code> and <code>PyBackedBytes</code>, as 
alternatives to <code>&amp;str</code> and <code>&amp;bytes</code> where a 
Python object owns the data. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3802";>#3802</a> <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3991";>#3991</a></li>
   <li>Allow <code>#[pymodule]</code> macro on Rust <code>mod</code> blocks, 
with the <code>experimental-declarative-modules</code> feature. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3815";>#3815</a></li>
   <li>Implement <code>ExactSizeIterator</code> for <code>set</code> and 
<code>frozenset</code> iterators on <code>abi3</code> feature. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3849";>#3849</a></li>
   <li>Add <code>Py::drop_ref</code> to explicitly drop a `Py`` and immediately 
decrease the Python reference count if the GIL is already held. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3871";>#3871</a></li>
   <li>Allow <code>#[pymodule]</code> macro on single argument functions that 
take <code>&amp;Bound&lt;'_, PyModule&gt;</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3905";>#3905</a></li>
   <li>Implement <code>FromPyObject</code> for <code>Cow&lt;str&gt;</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3928";>#3928</a></li>
   <li>Implement <code>Default</code> for <code>GILOnceCell</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3971";>#3971</a></li>
   <li>Add <code>PyDictMethods::into_mapping</code>, 
<code>PyListMethods::into_sequence</code> and 
<code>PyTupleMethods::into_sequence</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3982";>#3982</a></li>
   </ul>
   <h3>Changed</h3>
   <ul>
   <li><code>PyDict::from_sequence</code> now takes a single argument of type 
<code>&amp;PyAny</code> (previously took two arguments <code>Python</code> and 
<code>PyObject</code>). <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3532";>#3532</a></li>
   <li>Deprecate <code>Py::is_ellipsis</code> and 
<code>PyAny::is_ellipsis</code> in favour of 
<code>any.is(py.Ellipsis())</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3577";>#3577</a></li>
   <li>Split some <code>PyTypeInfo</code> functionality into new traits 
<code>HasPyGilRef</code> and <code>PyTypeCheck</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3600";>#3600</a></li>
   <li>Deprecate <code>PyTryFrom</code> and <code>PyTryInto</code> traits in 
favor of <code>any.downcast()</code> via the <code>PyTypeCheck</code> and 
<code>PyTypeInfo</code> traits. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3601";>#3601</a></li>
   <li>Allow async methods to accept <code>&amp;self</code>/<code>&amp;mut 
self</code> <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3609";>#3609</a></li>
   <li><code>FromPyObject</code> for set types now also accept 
<code>frozenset</code> objects as input. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3632";>#3632</a></li>
   <li><code>FromPyObject</code> for <code>bool</code> now also accepts NumPy's 
<code>bool_</code> as input. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3638";>#3638</a></li>
   <li>Add <code>AsRefSource</code> associated type to 
<code>PyNativeType</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3653";>#3653</a></li>
   <li>Rename <code>.is_true</code> to <code>.is_truthy</code> on 
<code>PyAny</code> and <code>Py&lt;PyAny&gt;</code> to clarify that the test is 
not based on identity with or equality to the True singleton. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3657";>#3657</a></li>
   <li><code>PyType::name</code> is now <code>PyType::qualname</code> whereas 
<code>PyType::name</code> efficiently accesses the full name which includes the 
module name. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3660";>#3660</a></li>
   <li>The <code>Iter(A)NextOutput</code> types are now deprecated and 
<code>__(a)next__</code> can directly return anything which can be converted 
into Python objects, i.e. awaitables do not need to be wrapped into 
<code>IterANextOutput</code> or <code>Option</code> any more. 
<code>Option</code> can still be used as well and returning <code>None</code> 
will trigger the fast path for <code>__next__</code>, stopping iteration 
without having to raise a <code>StopIteration</code> exception. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3661";>#3661</a></li>
   <li>Implement <code>FromPyObject</code> on 
<code>chrono::DateTime&lt;Tz&gt;</code> for all <code>Tz</code>, not just 
<code>FixedOffset</code> and <code>Utc</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3663";>#3663</a></li>
   <li>Add lifetime parameter to <code>PyTzInfoAccess</code> trait. For the 
deprecated gil-ref API, the trait is now implemented for <code>&amp;'py 
PyTime</code> and <code>&amp;'py PyDateTime</code> instead of 
<code>PyTime</code> and <code>PyDate</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3679";>#3679</a></li>
   <li>Calls to <code>__traverse__</code> become no-ops for unsendable 
pyclasses if on the wrong thread, thereby avoiding hard aborts at the cost of 
potential leakage. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3689";>#3689</a></li>
   <li>Include <code>PyNativeType</code> in <code>pyo3::prelude</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3692";>#3692</a></li>
   <li>Improve performance of <code>extract::&lt;i64&gt;</code> (and other 
integer types) by avoiding call to <code>__index__()</code> converting the 
value to an integer for 3.10+. Gives performance improvement of around 30% for 
successful extraction. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3742";>#3742</a></li>
   <li>Relax bound of <code>FromPyObject</code> for <code>Py&lt;T&gt;</code> to 
just <code>T: PyTypeCheck</code>. <a 
href="https://redirect.github.com/PyO3/pyo3/pull/3776";>#3776</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/d854ea05461da540541c670678db4be991b6c721";><code>d854ea0</code></a>
 release: 0.21.0</li>
   <li><a 
href="https://github.com/PyO3/pyo3/commit/9a38e709bb43bdd8e43aa7c2fce603ed30ed469f";><code>9a38e70</code></a>
 Basic GraalPy Support (<a 
href="https://redirect.github.com/pyo3/pyo3/issues/3247";>#3247</a>)</li>
   <li><a 
href="https://github.com/PyO3/pyo3/commit/54ffaecd65a746e702e8ec904d2af4f3a8aeaee9";><code>54ffaec</code></a>
 add <code>AsRef</code> impls for <code>PyBackedStr</code> and 
<code>PyBackedBytes</code> (<a 
href="https://redirect.github.com/pyo3/pyo3/issues/3991";>#3991</a>)</li>
   <li><a 
href="https://github.com/PyO3/pyo3/commit/7d319a906e3a5173b2db1fddf239c21921297895";><code>7d319a9</code></a>
 ci: tidy up benchmarks a little (<a 
href="https://redirect.github.com/pyo3/pyo3/issues/3986";>#3986</a>)</li>
   <li><a 
href="https://github.com/PyO3/pyo3/commit/aeb74c7093a0979c2ff7436150b85d8849c5bd1c";><code>aeb74c7</code></a>
 ci: use macos-14 runners (<a 
href="https://redirect.github.com/pyo3/pyo3/issues/3985";>#3985</a>)</li>
   <li><a 
href="https://github.com/PyO3/pyo3/commit/009cd32a444ceacd6142f8a5195d9b38ccfa5883";><code>009cd32</code></a>
 Add into_mapping and into_sequence methods to Bound types (<a 
href="https://redirect.github.com/pyo3/pyo3/issues/3982";>#3982</a>)</li>
   <li><a 
href="https://github.com/PyO3/pyo3/commit/9808f7111c5ec11725cb02a963475f6cf352eed8";><code>9808f71</code></a>
 ci: add <code>update-ui-tests</code> nox session (<a 
href="https://redirect.github.com/pyo3/pyo3/issues/3979";>#3979</a>)</li>
   <li><a 
href="https://github.com/PyO3/pyo3/commit/20e477a7cd19c5bfeec1ebe813d2df2cea0f8a2b";><code>20e477a</code></a>
 avoid reference count cycle in tuple extraction (<a 
href="https://redirect.github.com/pyo3/pyo3/issues/3976";>#3976</a>)</li>
   <li><a 
href="https://github.com/PyO3/pyo3/commit/990886efdad1bad0e772ea5f9439fb95c7335961";><code>990886e</code></a>
 docs: better document <code>FromPyObject</code> for <code>&amp;str</code> 
changes in migration guide (#...</li>
   <li><a 
href="https://github.com/PyO3/pyo3/commit/d0f5b6af465374e125cae56f12e6d798a83180ef";><code>d0f5b6a</code></a>
 ci: updates for Rust 1.77 (<a 
href="https://redirect.github.com/pyo3/pyo3/issues/3978";>#3978</a>)</li>
   <li>Additional commits viewable in <a 
href="https://github.com/pyo3/pyo3/compare/v0.20.0...v0.21.0";>compare 
view</a></li>
   </ul>
   </details>
   <br />
   
   
   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 merge` will merge this PR after your CI passes on it
   - `@dependabot squash and merge` will squash and merge this PR after your CI 
passes on it
   - `@dependabot cancel merge` will cancel a previously requested merge and 
block automerging
   - `@dependabot reopen` will reopen this PR if it is closed
   - `@dependabot close` will close this PR and stop Dependabot recreating it. 
You can achieve the same result by closing it manually
   - `@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]

Reply via email to