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.18.1 #397

Merged
merged 2 commits into from
Feb 19, 2023
Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Feb 19, 2023

Mend Renovate

This PR contains the following updates:

Package Type Update Change
pyo3 dependencies minor 0.17.2 -> 0.18.1

⚠ Dependency Lookup Warnings ⚠

Warnings were logged while processing this repo. Please check the logs for more information.


Release Notes

pyo3/pyo3

v0.18.1

Compare Source

Added
  • Add PyErr::write_unraisable(). #​2889
  • Add Python::Ellipsis() and PyAny::is_ellipsis() methods. #​2911
  • Add PyDict::update() and PyDict::update_if_missing() methods. #​2912
Changed
  • FFI definition PyIter_Check on CPython 3.7 is now implemented as hasattr(type(obj), "__next__"), which works correctly on all platforms and adds support for abi3. #​2914
  • Warn about unknown config keys in PYO3_CONFIG_FILE instead of denying. #​2926
Fixed
  • Send errors returned by __releasebuffer__ to sys.unraisablehook rather than causing SystemError. #​2886
  • Fix downcast to PyIterator succeeding for Python classes which did not implement __next__. #​2914
  • Fix segfault in __traverse__ when visiting None fields of Option<T: AsPyPointer>. #​2921
  • Fix #[pymethods(crate = "...")] option being ignored. #​2923
  • Link against pythonXY_d.dll for debug Python builds on Windows. #​2937

v0.18.0

Compare Source

Packaging
Added
  • Add GILOnceCell::get_or_try_init for fallible GILOnceCell initialization. #​2398
  • Add experimental feature experimental-inspect with type_input() and type_output() helpers to get the Python type of any Python-compatible object. #​2490 #​2882
  • The #[pyclass] macro can now take get_all and set_all to create getters and setters for every field. #​2692
  • Add #[pyo3(signature = (...))] option for #[pyfunction] and #[pymethods]. #​2702
  • pyo3-build-config: rebuild when PYO3_ENVIRONMENT_SIGNATURE environment variable value changes. #​2727
  • Add conversions between non-zero int types in std::num and Python int. #​2730
  • Add Py::downcast() as a companion to PyAny::downcast(), as well as downcast_unchecked() for both types. #​2734
  • Add types for all built-in Warning classes as well as PyErr::warn_explicit. #​2742
  • Add abi3-py311 feature. #​2776
  • Add FFI definition _PyErr_ChainExceptions() for CPython. #​2788
  • Add FFI definitions PyVectorcall_NARGS and PY_VECTORCALL_ARGUMENTS_OFFSET for PyPy 3.8 and up. #​2811
  • Add PyList::get_item_unchecked for PyPy. #​2827
Changed
  • PyO3's macros now emit a much nicer error message if function return values don't implement the required trait(s). #​2664
  • Use a TypeError, rather than a ValueError, when refusing to treat a str as a Vec. #​2685
  • Change PyCFunction::new_closure to take name and doc arguments. #​2686
  • PyType::is_subclass, PyErr::is_instance and PyAny::is_instance now take &PyAny instead of &PyType arguments, so that they work with objects that pretend to be types using __subclasscheck__ and __instancecheck__. #​2695
  • Deprecate #[args] attribute and passing "args" specification directly to #[pyfunction] in favor of the new #[pyo3(signature = (...))] option. #​2702
  • Deprecate required arguments after Option<T> arguments to #[pyfunction] and #[pymethods] without also using #[pyo3(signature)] to specify whether the arguments should be required or have defaults. #​2703
  • Change #[pyfunction] and #[pymethods] to use a common call "trampoline" to slightly reduce generated code size and compile times. #​2705
  • PyAny::cast_as() and Py::cast_as() are now deprecated in favor of PyAny::downcast() and the new Py::downcast(). #​2734
  • Relax lifetime bounds on PyAny::downcast(). #​2734
  • Automatically generate __text_signature__ for all Python functions created using #[pyfunction] and #[pymethods]. #​2784
  • Accept any iterator in PySet::new and PyFrozenSet::new. #​2795
  • Mixing #[cfg(...)] and #[pyo3(...)] attributes on #[pyclass] struct fields will now work. #​2796
  • Re-enable PyFunction on when building for abi3 or PyPy. #​2838
  • Improve derive(FromPyObject) to use intern! when applicable for #[pyo3(item)]. #​2879
Removed
  • Remove the deprecated pyproto feature, #[pyproto] macro, and all accompanying APIs. #​2587
  • Remove all functionality deprecated in PyO3 0.16. #​2843
Fixed
  • Disable PyModule::filename on PyPy. #​2715
  • PyCodeObject is now once again defined with fields on Python 3.7. #​2726
  • Raise a TypeError if #[new] pymethods with no arguments receive arguments when called from Python. #​2749
  • Use the NOARGS argument calling convention for methods that have a single py: Python argument (as a performance optimization). #​2760
  • Fix truncation of isize values to c_long in PySlice::new. #​2769
  • Fix soundness issue with FFI definition PyUnicodeDecodeError_Create on PyPy leading to indeterminate behavior (typically a TypeError). #​2772
  • Allow functions taking **kwargs to accept keyword arguments which share a name with a positional-only argument (as permitted by PEP 570). #​2800
  • Fix unresolved symbol for PyObject_Vectorcall on PyPy 3.9 and up. #​2811
  • Fix memory leak in PyCFunction::new_closure. #​2842

v0.17.3

Compare Source

Packaging
  • Support Python 3.11. (Previous versions of PyO3 0.17 have been tested against Python 3.11 release candidates and are expected to be compatible, this is the first version tested against Python 3.11.0.) #​2708
Added
  • Implemented ExactSizeIterator for PyListIterator, PyDictIterator, PySetIterator and PyFrozenSetIterator. #​2676
Fixed
  • Fix regression of impl FromPyObject for [T; N] no longer accepting types passing PySequence_Check, e.g. NumPy arrays, since version 0.17.0. This the same fix that was applied impl FromPyObject for Vec<T> in version 0.17.1 extended to fixed-size arrays. #​2675
  • Fix UB in FunctionDescription::extract_arguments_fastcall due to creating slices from a null pointer. #​2687

Configuration

📅 Schedule: Branch creation - "every weekend" (UTC), 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.

@renovate renovate bot added the dependencies Pull requests that update a dependency file label Feb 19, 2023
@satreix satreix merged commit 1d320ab into main Feb 19, 2023
@satreix satreix deleted the renovate/pyo3-0.x branch February 19, 2023 16:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant