From 594e78fe747669593fb0c6cd6903adf4ddcb7129 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 30 Dec 2025 23:50:51 +0000 Subject: [PATCH 1/2] Initial plan From e3a8b08fce435dce9e9c602c9e6b971170b844b3 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Tue, 30 Dec 2025 23:54:32 +0000 Subject: [PATCH 2/2] Update version to 0.25.0 and add release notes Co-authored-by: timosachsenberg <5803621+timosachsenberg@users.noreply.github.com> --- CHANGELOG.md | 22 +++++++++++++++++++++- autowrap/version.py | 4 ++-- 2 files changed, 23 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5411d52..27ddc85 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1 +1,21 @@ -autowrap 0.24.1 +autowrap 0.25.0 + +NumPy Integration: + +- Added buffer protocol wrappers for numpy integration with zero-copy + support for const reference and value returns +- Added `libcpp_vector_as_np` conversion provider for fast numpy array + interop using memcpy instead of element-by-element conversion +- ArrayWrapper classes now support additional integer array types + (Int8-64, UInt8-64) with extra methods (`__init__(size)`, `resize()`, `size()`) + +New Features: + +- Added `wrap-len` annotation for automatic `__len__()` method generation + on C++ container classes. Supports `size()`, `length()`, `count()`, and + `getSize()` method names +- Added `wrap-hash: std` directive to use C++ `std::hash` specializations + directly for Python `__hash__()` generation +- Fixed ArrayWrapper inlining to place wrappers only in `.pyx` files, + preventing conflicts with user-defined ArrayWrappers in `.pxd` files + diff --git a/autowrap/version.py b/autowrap/version.py index 814b1d9..70b90eb 100644 --- a/autowrap/version.py +++ b/autowrap/version.py @@ -30,10 +30,10 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. """ -__version__ = "0.24.1" +__version__ = "0.25.0" # For backward compatibility with older code expecting tuple format -__version_tuple__ = (0, 24, 1) +__version_tuple__ = (0, 25, 0) # for compatibility with older version: version = __version_tuple__