diff --git a/CHANGELOG.md b/CHANGELOG.md index 97ce9a00537..6f7708ce05b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,24 @@ To see unreleased changes, please see the [CHANGELOG on the main branch guide](h +## [0.20.1] - 2023-12-30 + +### Added + +- Add optional `either` feature to add conversions for `either::Either` sum type. [#3456](https://github.com/PyO3/pyo3/pull/3456) +- Add optional `smallvec` feature to add conversions for `smallvec::SmallVec`. [#3507](https://github.com/PyO3/pyo3/pull/3507) +- Add `take` and `into_inner` methods to `GILOnceCell` [#3556](https://github.com/PyO3/pyo3/pull/3556) +- `#[classmethod]` methods can now also receive `Py` as their first argument. [#3587](https://github.com/PyO3/pyo3/pull/3587) +- `#[pyfunction(pass_module)]` can now also receive `Py` as their first argument. [#3587](https://github.com/PyO3/pyo3/pull/3587) +- Add `traverse` method to `GILProtected`. [#3616](https://github.com/PyO3/pyo3/pull/3616) +- Added `abi3-py312` feature [#3687](https://github.com/PyO3/pyo3/pull/3687) + +### Fixed + +- Fix minimum version specification for optional `chrono` dependency. [#3512](https://github.com/PyO3/pyo3/pull/3512) +- Silenced new `clippy::unnecessary_fallible_conversions` warning when using a `Py` `self` receiver. [#3564](https://github.com/PyO3/pyo3/pull/3564) + + ## [0.20.0] - 2023-10-11 ### Packaging @@ -1599,7 +1617,8 @@ Yanked - Initial release -[Unreleased]: https://github.com/pyo3/pyo3/compare/v0.20.0...HEAD +[Unreleased]: https://github.com/pyo3/pyo3/compare/v0.20.1...HEAD +[0.20.1]: https://github.com/pyo3/pyo3/compare/v0.20.0...v0.20.1 [0.20.0]: https://github.com/pyo3/pyo3/compare/v0.19.2...v0.20.0 [0.19.2]: https://github.com/pyo3/pyo3/compare/v0.19.1...v0.19.2 [0.19.1]: https://github.com/pyo3/pyo3/compare/v0.19.0...v0.19.1 diff --git a/Cargo.toml b/Cargo.toml index dbbcbec640e..5bd9855f825 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pyo3" -version = "0.20.0" +version = "0.20.1" description = "Bindings to Python interpreter" authors = ["PyO3 Project and Contributors "] readme = "README.md" @@ -21,10 +21,10 @@ parking_lot = ">= 0.11, < 0.13" memoffset = "0.9" # ffi bindings to the python interpreter, split into a separate crate so they can be used independently -pyo3-ffi = { path = "pyo3-ffi", version = "=0.20.0" } +pyo3-ffi = { path = "pyo3-ffi", version = "=0.20.1" } # support crates for macros feature -pyo3-macros = { path = "pyo3-macros", version = "=0.20.0", optional = true } +pyo3-macros = { path = "pyo3-macros", version = "=0.20.1", optional = true } indoc = { version = "2.0.1", optional = true } unindent = { version = "0.2.1", optional = true } @@ -57,7 +57,7 @@ rayon = "1.6.1" widestring = "0.5.1" [build-dependencies] -pyo3-build-config = { path = "pyo3-build-config", version = "0.20.0", features = ["resolve-config"] } +pyo3-build-config = { path = "pyo3-build-config", version = "0.20.1", features = ["resolve-config"] } [features] default = ["macros"] diff --git a/README.md b/README.md index 9f53285359e..ca2ac180e0f 100644 --- a/README.md +++ b/README.md @@ -68,7 +68,7 @@ name = "string_sum" crate-type = ["cdylib"] [dependencies] -pyo3 = { version = "0.20.0", features = ["extension-module"] } +pyo3 = { version = "0.20.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.20.0" +version = "0.20.1" features = ["auto-initialize"] ``` diff --git a/examples/Cargo.toml b/examples/Cargo.toml index b210f0ee9a6..a7213e469dd 100644 --- a/examples/Cargo.toml +++ b/examples/Cargo.toml @@ -5,7 +5,7 @@ publish = false edition = "2021" [dev-dependencies] -pyo3 = { version = "0.20.0", path = "..", features = ["auto-initialize", "extension-module"] } +pyo3 = { version = "0.20.1", path = "..", features = ["auto-initialize", "extension-module"] } [[example]] name = "decorator" diff --git a/examples/decorator/.template/pre-script.rhai b/examples/decorator/.template/pre-script.rhai index 5ba02b12ffd..c7199a5303e 100644 --- a/examples/decorator/.template/pre-script.rhai +++ b/examples/decorator/.template/pre-script.rhai @@ -1,4 +1,4 @@ -variable::set("PYO3_VERSION", "0.20.0"); +variable::set("PYO3_VERSION", "0.20.1"); file::rename(".template/Cargo.toml", "Cargo.toml"); file::rename(".template/pyproject.toml", "pyproject.toml"); file::delete(".template"); diff --git a/examples/maturin-starter/.template/pre-script.rhai b/examples/maturin-starter/.template/pre-script.rhai index 5ba02b12ffd..c7199a5303e 100644 --- a/examples/maturin-starter/.template/pre-script.rhai +++ b/examples/maturin-starter/.template/pre-script.rhai @@ -1,4 +1,4 @@ -variable::set("PYO3_VERSION", "0.20.0"); +variable::set("PYO3_VERSION", "0.20.1"); file::rename(".template/Cargo.toml", "Cargo.toml"); file::rename(".template/pyproject.toml", "pyproject.toml"); file::delete(".template"); diff --git a/examples/plugin/.template/pre-script.rhai b/examples/plugin/.template/pre-script.rhai index 94a61826dc2..d325aca0eef 100644 --- a/examples/plugin/.template/pre-script.rhai +++ b/examples/plugin/.template/pre-script.rhai @@ -1,4 +1,4 @@ -variable::set("PYO3_VERSION", "0.20.0"); +variable::set("PYO3_VERSION", "0.20.1"); file::rename(".template/Cargo.toml", "Cargo.toml"); file::rename(".template/plugin_api/Cargo.toml", "plugin_api/Cargo.toml"); file::delete(".template"); diff --git a/examples/setuptools-rust-starter/.template/pre-script.rhai b/examples/setuptools-rust-starter/.template/pre-script.rhai index e4ede9b7aff..91eee121a7b 100644 --- a/examples/setuptools-rust-starter/.template/pre-script.rhai +++ b/examples/setuptools-rust-starter/.template/pre-script.rhai @@ -1,4 +1,4 @@ -variable::set("PYO3_VERSION", "0.20.0"); +variable::set("PYO3_VERSION", "0.20.1"); file::rename(".template/Cargo.toml", "Cargo.toml"); file::rename(".template/setup.cfg", "setup.cfg"); file::delete(".template"); diff --git a/examples/word-count/.template/pre-script.rhai b/examples/word-count/.template/pre-script.rhai index 5ba02b12ffd..c7199a5303e 100644 --- a/examples/word-count/.template/pre-script.rhai +++ b/examples/word-count/.template/pre-script.rhai @@ -1,4 +1,4 @@ -variable::set("PYO3_VERSION", "0.20.0"); +variable::set("PYO3_VERSION", "0.20.1"); file::rename(".template/Cargo.toml", "Cargo.toml"); file::rename(".template/pyproject.toml", "pyproject.toml"); file::delete(".template"); diff --git a/newsfragments/3456.added.md b/newsfragments/3456.added.md deleted file mode 100644 index 6e9376ba65d..00000000000 --- a/newsfragments/3456.added.md +++ /dev/null @@ -1 +0,0 @@ -Add optional conversion support for `either::Either` sum type (under "either" feature). diff --git a/newsfragments/3507.added.md b/newsfragments/3507.added.md deleted file mode 100644 index 2068ab4c3f7..00000000000 --- a/newsfragments/3507.added.md +++ /dev/null @@ -1 +0,0 @@ -Add `smallvec` feature to add `ToPyObject`, `IntoPy` and `FromPyObject` implementations for `smallvec::SmallVec`. diff --git a/newsfragments/3512.fixed.md b/newsfragments/3512.fixed.md deleted file mode 100644 index 39b8087669e..00000000000 --- a/newsfragments/3512.fixed.md +++ /dev/null @@ -1 +0,0 @@ -Fix minimum version specification for optional `chrono` dependency diff --git a/newsfragments/3556.added.md b/newsfragments/3556.added.md deleted file mode 100644 index 014908a1bf5..00000000000 --- a/newsfragments/3556.added.md +++ /dev/null @@ -1 +0,0 @@ -Add `take` and `into_inner` methods to `GILOnceCell` \ No newline at end of file diff --git a/newsfragments/3564.fixed.md b/newsfragments/3564.fixed.md deleted file mode 100644 index 83e4dba05bb..00000000000 --- a/newsfragments/3564.fixed.md +++ /dev/null @@ -1 +0,0 @@ -Silenced new `clippy::unnecessary_fallible_conversions` warning when using a `Py` `self` receiver diff --git a/newsfragments/3587.added.md b/newsfragments/3587.added.md deleted file mode 100644 index f8ea280dd25..00000000000 --- a/newsfragments/3587.added.md +++ /dev/null @@ -1,2 +0,0 @@ -- Classmethods can now receive `Py` as their first argument -- Function annotated with `pass_module` can now receive `Py` as their first argument \ No newline at end of file diff --git a/newsfragments/3616.added.md b/newsfragments/3616.added.md deleted file mode 100644 index 532dc6e56c1..00000000000 --- a/newsfragments/3616.added.md +++ /dev/null @@ -1 +0,0 @@ -Add `traverse` method to `GILProtected` diff --git a/newsfragments/3687.added.md b/newsfragments/3687.added.md deleted file mode 100644 index a6df28d939f..00000000000 --- a/newsfragments/3687.added.md +++ /dev/null @@ -1 +0,0 @@ -Added `abi3-py312` feature diff --git a/pyo3-build-config/Cargo.toml b/pyo3-build-config/Cargo.toml index 2a78583cd6a..37cd3e7e94c 100644 --- a/pyo3-build-config/Cargo.toml +++ b/pyo3-build-config/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pyo3-build-config" -version = "0.20.0" +version = "0.20.1" description = "Build configuration for the PyO3 ecosystem" authors = ["PyO3 Project and Contributors "] keywords = ["pyo3", "python", "cpython", "ffi"] diff --git a/pyo3-ffi/Cargo.toml b/pyo3-ffi/Cargo.toml index c1ebbbf1a63..b2dbe4245ca 100644 --- a/pyo3-ffi/Cargo.toml +++ b/pyo3-ffi/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pyo3-ffi" -version = "0.20.0" +version = "0.20.1" description = "Python-API bindings for the PyO3 ecosystem" authors = ["PyO3 Project and Contributors "] keywords = ["pyo3", "python", "cpython", "ffi"] @@ -38,7 +38,7 @@ abi3-py312 = ["abi3", "pyo3-build-config/abi3-py312"] generate-import-lib = ["pyo3-build-config/python3-dll-a"] [build-dependencies] -pyo3-build-config = { path = "../pyo3-build-config", version = "0.20.0", features = ["resolve-config"] } +pyo3-build-config = { path = "../pyo3-build-config", version = "0.20.1", features = ["resolve-config"] } [lints] workspace = true diff --git a/pyo3-macros-backend/Cargo.toml b/pyo3-macros-backend/Cargo.toml index 5e9520d3e9c..3bd9e7bdcc2 100644 --- a/pyo3-macros-backend/Cargo.toml +++ b/pyo3-macros-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pyo3-macros-backend" -version = "0.20.0" +version = "0.20.1" description = "Code generation for PyO3 package" authors = ["PyO3 Project and Contributors "] keywords = ["pyo3", "python", "cpython", "ffi"] diff --git a/pyo3-macros/Cargo.toml b/pyo3-macros/Cargo.toml index 0e8f499fa0c..7dd5debde97 100644 --- a/pyo3-macros/Cargo.toml +++ b/pyo3-macros/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pyo3-macros" -version = "0.20.0" +version = "0.20.1" description = "Proc macros for PyO3 package" authors = ["PyO3 Project and Contributors "] keywords = ["pyo3", "python", "cpython", "ffi"] @@ -22,7 +22,7 @@ abi3 = ["pyo3-macros-backend/abi3"] proc-macro2 = { version = "1", default-features = false } quote = "1" syn = { version = "2", features = ["full", "extra-traits"] } -pyo3-macros-backend = { path = "../pyo3-macros-backend", version = "=0.20.0" } +pyo3-macros-backend = { path = "../pyo3-macros-backend", version = "=0.20.1" } [lints] workspace = true diff --git a/pyproject.toml b/pyproject.toml index 29626e970a4..f027db81d2b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,7 +3,7 @@ [tool.towncrier] filename = "CHANGELOG.md" -version = "0.20.0" +version = "0.20.1" start_string = "\n" template = ".towncrier.template.md" title_format = "## [{version}] - {project_date}"