ermakov-oleg / serpyco-rs

Fast Python dataclasses serialization
MIT License
30 stars 2 forks source link

Bump pyo3-build-config from 0.17.2 to 0.18.2 #48

Closed dependabot[bot] closed 1 year ago

dependabot[bot] commented 1 year ago

Bumps pyo3-build-config from 0.17.2 to 0.18.2.

Release notes

Sourced from pyo3-build-config's releases.

PyO3 0.18.2

This release fixes a rare ref-counting race condition when a PyObject is cloned inside of closure passed to Python::allow_threads. It is advised to update to this release if possible.

Conversions for Cell<T> and Cow<[u8]> have been added, as well as PyList::to_tuple and PyTuple::to_list as the most efficient way to convert between those types.

This release also contains some other minor performance optimisations and bugfixes.

Thank you to the following users for the improvements:

@​adamreichold @​AdilZouitine @​adriangb @​AntoineRR @​davidhewitt @​Enyium @​iajoiner @​kngwyu @​lycantropos @​mattip @​mejrs @​messense @​OliverBalfour @​samuelcolvin

PyO3 0.18.1

This release fixes several bugs identified since PyO3 0.18.0, including a segfault and a Windows-specific issue with the PyIterator type, which would incorrectly accept any Python class regardless of whether it defined __next__ or not.

Some new APIs have been added such as PyErr::write_unraisable(), PyAny::is_ellipsis() and PyDict::update.

Thank you to the following users for the improvements:

@​adamreichold @​alexpyattaev @​davidhewitt @​jjerphan @​jmhodges @​mejrs @​messense @​mitsuhiko @​neachdainn @​qbx2 @​samuelcolvin

PyO3 0.18.0

This release contains a number of new features for PyO3's macros which should make maintaining PyO3 projects easier.

#[pyfunction] and #[pymethods] have a new #[pyo3(signature = (...))] option which allows specifying the Python signature. This replaces the #[args] option already present for #[pymethods]; the new option is better-validated and offers a syntax much more intuitive to users familiar with writing pure-Python functions.

#[pyclass] has new get_all and set_all options for cases where all fields of a type should be readable or writable from Python.

... (truncated)

Changelog

Sourced from pyo3-build-config's changelog.

[0.18.2] - 2023-03-24

Packaging

  • Disable default features of chrono to avoid depending on time v0.1.x. #2939

Added

  • Implement IntoPy<PyObject>, ToPyObject and FromPyObject for Cow<[u8]> to efficiently handle both bytes and bytearray objects. #2899
  • Implement IntoPy<PyObject>, ToPyObject and FromPyObject for Cell<T>. #3014
  • Add PyList::to_tuple(), as a convenient and efficient conversion from lists to tuples. #3042
  • Add PyTuple::to_list(), as a convenient and efficient conversion from tuples to lists. #3044

Changed

  • Optimize PySequence conversion for list and tuple inputs. #2944
  • Improve exception raised when creating #[pyclass] type object fails during module import. #2947
  • Optimize PyMapping conversion for dict inputs. #2954
  • Allow create_exception! to take a dotted.module to place the exception in a submodule. #2979

Fixed

  • Fix a reference counting race condition affecting PyObjects cloned in allow_threads blocks. #2952
  • Fix clippy::redundant_closure lint on default arguments in #[pyo3(signature = (...))] annotations. #2990
  • Fix non_snake_case lint on generated code in #[pyfunction] macro. #2993
  • Fix some FFI definitions for the upcoming PyPy 3.10 release. #3031

[0.18.1] - 2023-02-07

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

[0.18.0] - 2023-01-17

... (truncated)

Commits
  • 13779d2 release: 0.18.2
  • cf94106 restore TryFromPyCell for 0.18 branch
  • 37e5f54 Add PyTuple::to_list
  • df4fb07 ci: pin syn to 1.0 for MSRV
  • cc41315 Update README.md
  • 2055698 Conditionally mangle the function name
  • 3da3d5f mangle exported functions for PyPy
  • ba364e1 Add note about garbage collection on PyPy
  • 189b69e PyList::as_tuple() -> PyList::to_tuple()
  • ab2f499 revert .gitignore change
  • Additional commits viewable in compare view


Dependabot compatibility score

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 commands and options
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 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)