release notes for 0.18.1

This commit is contained in:
David Hewitt 2023-02-03 07:11:01 +00:00
parent 9e5c845dee
commit 92cca896de
24 changed files with 43 additions and 30 deletions

View File

@ -10,6 +10,28 @@ To see unreleased changes, please see the [CHANGELOG on the main branch guide](h
<!-- towncrier release notes start -->
## [0.18.1] - 2023-02-07
### Added
- Add `PyErr::write_unraisable()`. [#2889](https://github.com/PyO3/pyo3/pull/2889)
- Add `Python::Ellipsis()` and `PyAny::is_ellipsis()` methods. [#2911](https://github.com/PyO3/pyo3/pull/2911)
- Add `PyDict::update()` and `PyDict::update_if_missing()` methods. [#2912](https://github.com/PyO3/pyo3/pull/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](https://github.com/PyO3/pyo3/pull/2914)
- Warn about unknown config keys in `PYO3_CONFIG_FILE` instead of denying. [#2926](https://github.com/PyO3/pyo3/pull/2926)
### Fixed
- Send errors returned by `__releasebuffer__` to `sys.unraisablehook` rather than causing `SystemError`. [#2886](https://github.com/PyO3/pyo3/pull/2886)
- Fix downcast to `PyIterator` succeeding for Python classes which did not implement `__next__`. [#2914](https://github.com/PyO3/pyo3/pull/2914)
- Fix segfault in `__traverse__` when visiting `None` fields of `Option<T: AsPyPointer>`. [#2921](https://github.com/PyO3/pyo3/pull/2921)
- Fix `#[pymethods(crate = "...")]` option being ignored. [#2923](https://github.com/PyO3/pyo3/pull/2923)
- Link against `pythonXY_d.dll` for debug Python builds on Windows. [#2937](https://github.com/PyO3/pyo3/pull/2937)
## [0.18.0] - 2023-01-17
### Packaging
@ -1370,7 +1392,8 @@ Yanked
- Initial release
[Unreleased]: https://github.com/pyo3/pyo3/compare/v0.18.0...HEAD
[Unreleased]: https://github.com/pyo3/pyo3/compare/v0.18.1...HEAD
[0.18.1]: https://github.com/pyo3/pyo3/compare/v0.18.0...v0.18.1
[0.18.0]: https://github.com/pyo3/pyo3/compare/v0.17.3...v0.18.0
[0.17.3]: https://github.com/pyo3/pyo3/compare/v0.17.2...v0.17.3
[0.17.2]: https://github.com/pyo3/pyo3/compare/v0.17.1...v0.17.2

View File

@ -1,6 +1,6 @@
[package]
name = "pyo3"
version = "0.18.0"
version = "0.18.1"
description = "Bindings to Python interpreter"
authors = ["PyO3 Project and Contributors <https://github.com/PyO3>"]
readme = "README.md"
@ -20,10 +20,10 @@ parking_lot = ">= 0.11, < 0.13"
memoffset = "0.8"
# ffi bindings to the python interpreter, split into a separate crate so they can be used independently
pyo3-ffi = { path = "pyo3-ffi", version = "=0.18.0" }
pyo3-ffi = { path = "pyo3-ffi", version = "=0.18.1" }
# support crates for macros feature
pyo3-macros = { path = "pyo3-macros", version = "=0.18.0", optional = true }
pyo3-macros = { path = "pyo3-macros", version = "=0.18.1", optional = true }
indoc = { version = "1.0.3", optional = true }
unindent = { version = "0.1.4", optional = true }
@ -56,7 +56,7 @@ rayon = "1.0.2"
widestring = "0.5.1"
[build-dependencies]
pyo3-build-config = { path = "pyo3-build-config", version = "0.18.0", features = ["resolve-config"] }
pyo3-build-config = { path = "pyo3-build-config", version = "0.18.1", features = ["resolve-config"] }
[features]
default = ["macros"]

View File

@ -68,7 +68,7 @@ name = "string_sum"
crate-type = ["cdylib"]
[dependencies]
pyo3 = { version = "0.18.0", features = ["extension-module"] }
pyo3 = { version = "0.18.1", features = ["extension-module"] }
```
**`src/lib.rs`**
@ -137,7 +137,7 @@ Start a new project with `cargo new` and add `pyo3` to the `Cargo.toml` like th
```toml
[dependencies.pyo3]
version = "0.18.0"
version = "0.18.1"
features = ["auto-initialize"]
```

View File

@ -5,7 +5,7 @@ publish = false
edition = "2018"
[dev-dependencies]
pyo3 = { version = "0.18.0", path = "..", features = ["auto-initialize", "extension-module"] }
pyo3 = { version = "0.18.1", path = "..", features = ["auto-initialize", "extension-module"] }
[[example]]
name = "decorator"

View File

@ -1,4 +1,4 @@
variable::set("PYO3_VERSION", "0.18.0");
variable::set("PYO3_VERSION", "0.18.1");
file::rename(".template/Cargo.toml", "Cargo.toml");
file::rename(".template/pyproject.toml", "pyproject.toml");
file::rename(".template/tox.ini", "tox.ini");

View File

@ -1,4 +1,4 @@
variable::set("PYO3_VERSION", "0.18.0");
variable::set("PYO3_VERSION", "0.18.1");
file::rename(".template/Cargo.toml", "Cargo.toml");
file::rename(".template/pyproject.toml", "pyproject.toml");
file::rename(".template/tox.ini", "tox.ini");

View File

@ -1,4 +1,4 @@
variable::set("PYO3_VERSION", "0.18.0");
variable::set("PYO3_VERSION", "0.18.1");
file::rename(".template/Cargo.toml", "Cargo.toml");
file::rename(".template/plugin_api/Cargo.toml", "plugin_api/Cargo.toml");
file::delete(".template");

View File

@ -1,4 +1,4 @@
variable::set("PYO3_VERSION", "0.18.0");
variable::set("PYO3_VERSION", "0.18.1");
file::rename(".template/Cargo.toml", "Cargo.toml");
file::rename(".template/setup.cfg", "setup.cfg");
file::rename(".template/tox.ini", "tox.ini");

View File

@ -1,4 +1,4 @@
variable::set("PYO3_VERSION", "0.18.0");
variable::set("PYO3_VERSION", "0.18.1");
file::rename(".template/Cargo.toml", "Cargo.toml");
file::rename(".template/tox.ini", "tox.ini");
file::delete(".template");

View File

@ -1 +0,0 @@
Send errors returned by `__releasebuffer__` to `sys.unraisablehook` rather than causing `SystemError`.

View File

@ -1 +0,0 @@
Added `PyErr::write_unraisable()` to report an unraisable exception to Python.

View File

@ -1 +0,0 @@
Add `py.Ellipsis()` and `py_any.is_ellipsis()` methods.

View File

@ -1 +0,0 @@
Add `PyDict.update()` and `PyDict.update_if_missing()` methods.

View File

@ -1 +0,0 @@
FFI definition `PyIter_Check` on CPython 3.7 now does the equivalent for `hasattr(type(obj), "__next__")`, which works correctly on all platforms and adds support for `abi3`.

View File

@ -1 +0,0 @@
Fix downcast to `PyIterator` succeeding for Python classes which did not implement `__next__`.

View File

@ -1 +0,0 @@
Traversal visit calls to `Option<T: AsPyPointer>` no longer segfaults when `None`.

View File

@ -1 +0,0 @@
Fix `#[pymethods(crate = "...")]` option being ignored.

View File

@ -1 +0,0 @@
Warn about unknown config keys in `PYO3_CONFIG_FILE` instead of denying.

View File

@ -1 +0,0 @@
Link against `pythonXY_d.dll` for debug Python builds on Windows.

View File

@ -1,6 +1,6 @@
[package]
name = "pyo3-build-config"
version = "0.18.0"
version = "0.18.1"
description = "Build configuration for the PyO3 ecosystem"
authors = ["PyO3 Project and Contributors <https://github.com/PyO3>"]
keywords = ["pyo3", "python", "cpython", "ffi"]

View File

@ -1,6 +1,6 @@
[package]
name = "pyo3-ffi"
version = "0.18.0"
version = "0.18.1"
description = "Python-API bindings for the PyO3 ecosystem"
authors = ["PyO3 Project and Contributors <https://github.com/PyO3>"]
keywords = ["pyo3", "python", "cpython", "ffi"]
@ -38,4 +38,4 @@ generate-import-lib = ["pyo3-build-config/python3-dll-a"]
[build-dependencies]
pyo3-build-config = { path = "../pyo3-build-config", version = "0.18.0", features = ["resolve-config"] }
pyo3-build-config = { path = "../pyo3-build-config", version = "0.18.1", features = ["resolve-config"] }

View File

@ -1,6 +1,6 @@
[package]
name = "pyo3-macros-backend"
version = "0.18.0"
version = "0.18.1"
description = "Code generation for PyO3 package"
authors = ["PyO3 Project and Contributors <https://github.com/PyO3>"]
keywords = ["pyo3", "python", "cpython", "ffi"]

View File

@ -1,6 +1,6 @@
[package]
name = "pyo3-macros"
version = "0.18.0"
version = "0.18.1"
description = "Proc macros for PyO3 package"
authors = ["PyO3 Project and Contributors <https://github.com/PyO3>"]
keywords = ["pyo3", "python", "cpython", "ffi"]
@ -22,4 +22,4 @@ abi3 = ["pyo3-macros-backend/abi3"]
proc-macro2 = { version = "1", default-features = false }
quote = "1"
syn = { version = "1.0.56", features = ["full", "extra-traits"] }
pyo3-macros-backend = { path = "../pyo3-macros-backend", version = "=0.18.0" }
pyo3-macros-backend = { path = "../pyo3-macros-backend", version = "=0.18.1" }

View File

@ -20,7 +20,7 @@ exclude = '''
[tool.towncrier]
filename = "CHANGELOG.md"
version = "0.18.0"
version = "0.18.1"
start_string = "<!-- towncrier release notes start -->\n"
template = ".towncrier.template.md"
title_format = "## [{version}] - {project_date}"