Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(deps): update rust crate pyo3 to 0.20.0 #27

Merged
merged 1 commit into from
Oct 12, 2023
Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Oct 12, 2023

Mend Renovate

This PR contains the following updates:

Package Type Update Change
pyo3 dependencies minor 0.19.2 -> 0.20.0

Release Notes

pyo3/pyo3 (pyo3)

v0.20.0

Compare Source

Packaging
  • Dual-license PyO3 under either the Apache 2.0 OR the MIT license. This makes the project GPLv2 compatible. #​3108
  • Update MSRV to Rust 1.56. #​3208
  • Bump indoc dependency to 2.0 and unindent dependency to 0.2. #​3237
  • Bump syn dependency to 2.0. #​3239
  • Drop support for debug builds of Python 3.7. #​3387
  • Bump chrono optional dependency to require 0.4.25 or newer. #​3427
  • Support Python 3.12. #​3488
Added
  • Support __lt__, __le__, __eq__, __ne__, __gt__ and __ge__ in #[pymethods]. #​3203
  • Add FFI definition Py_GETENV. #​3336
  • Add as_ptr and into_ptr inherent methods for Py, PyAny, PyRef, and PyRefMut. #​3359
  • Implement DoubleEndedIterator for PyTupleIterator and PyListIterator. #​3366
  • Add #[pyclass(rename_all = "...")] option: this allows renaming all getters and setters of a struct, or all variants of an enum. Available renaming rules are: "camelCase", "kebab-case", "lowercase", "PascalCase", "SCREAMING-KEBAB-CASE", "SCREAMING_SNAKE_CASE", "snake_case", "UPPERCASE". #​3384
  • Add FFI definitions PyObject_GC_IsTracked and PyObject_GC_IsFinalized on Python 3.9 and up (PyPy 3.10 and up). #​3403
  • Add types for None, Ellipsis, and NotImplemented. #​3408
  • Add FFI definitions for the Py_mod_multiple_interpreters constant and its possible values. #​3494
  • Add FFI definitions for PyInterpreterConfig struct, its constants and Py_NewInterpreterFromConfig. #​3502
Changed
  • Change PySet::discard to return PyResult<bool> (previously returned nothing). #​3281
  • Optimize implmentation of IntoPy for Rust tuples to Python tuples. #​3321
  • Change PyDict::get_item to no longer suppress arbitrary exceptions (the return type is now PyResult<Option<&PyAny>> instead of Option<&PyAny>), and deprecate PyDict::get_item_with_error. #​3330
  • Deprecate FFI definitions which are deprecated in Python 3.12. #​3336
  • AsPyPointer is now an unsafe trait. #​3358
  • Accept all os.PathLike values in implementation of FromPyObject for PathBuf. #​3374
  • Add __builtins__ to globals in py.run() and py.eval() if they're missing. #​3378
  • Optimize implementation of FromPyObject for BigInt and BigUint. #​3379
  • PyIterator::from_object and PyByteArray::from now take a single argument of type &PyAny (previously took two arguments Python and AsPyPointer). #​3389
  • Replace AsPyPointer with AsRef<PyAny> as a bound in the blanket implementation of From<&T> for PyObject. #​3391
  • Replace blanket impl IntoPy<PyObject> for &T where T: AsPyPointer with implementations of impl IntoPy<PyObject> for &PyAny, &T where T: AsRef<PyAny>, and &Py<T>. #​3393
  • Preserve std::io::Error kind in implementation of From<std::io::IntoInnerError> for PyErr #​3396
  • Try to select a relevant ErrorKind in implementation of From<PyErr> for OSError subclass. #​3397
  • Retrieve the original PyErr in implementation of From<std::io::Error> for PyErr if the std::io::Error has been built using a Python exception (previously would create a new exception wrapping the std::io::Error). #​3402
  • #[pymodule] will now return the same module object on repeated import by the same Python interpreter, on Python 3.9 and up. #​3446
  • Truncate leap-seconds and warn when converting chrono types to Python datetime types (datetime cannot represent leap-seconds). #​3458
  • Err returned from #[pyfunction] will now have a non-None __context__ if called from inside a catch block. #​3455
  • Deprecate undocumented #[__new__] form of #[new] attribute. #​3505
Removed
  • Remove all functionality deprecated in PyO3 0.18, including #[args] attribute for #[pymethods]. #​3232
  • Remove IntoPyPointer trait in favour of into_ptr inherent methods. #​3385
Fixed
  • Handle exceptions properly in PySet::discard. #​3281
  • The PyTupleIterator type returned by PyTuple::iter is now public and hence can be named by downstream crates. #​3366
  • Linking of PyOS_FSPath on PyPy. #​3374
  • Fix memory leak in PyTypeBuilder::build. #​3401
  • Disable removed FFI definitions _Py_GetAllocatedBlocks, _PyObject_GC_Malloc, and _PyObject_GC_Calloc on Python 3.11 and up. #​3403
  • Fix ResourceWarning and crashes related to GC when running with debug builds of CPython. #​3404
  • Some-wrapping of Option<T> default arguments will no longer re-wrap Some(T) or expressions evaluating to None. #​3461
  • Fix IterNextOutput::Return not returning a value on PyPy. #​3471
  • Emit compile errors instead of ignoring macro invocations inside #[pymethods] blocks. #​3491
  • Emit error on invalid arguments to #[new], #[classmethod], #[staticmethod], and #[classattr]. #​3484
  • Disable PyMarshal_WriteObjectToString from PyMarshal_ReadObjectFromString with the abi3 feature. #​3490
  • Fix FFI definitions for _PyFrameEvalFunction on Python 3.11 and up (it now receives a _PyInterpreterFrame opaque struct). #​3500

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@tuna2134 tuna2134 merged commit 6cdba94 into main Oct 12, 2023
15 checks passed
@renovate renovate bot deleted the renovate/pyo3-0.x branch October 12, 2023 02:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant