Skip to content

Commit 288e4b5

Browse files
Release v0.1.1
1 parent 2d750ad commit 288e4b5

2 files changed

Lines changed: 21 additions & 1 deletion

File tree

CHANGELOG.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,26 @@ All notable changes to this extension will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.1.1] - 2026-04-10
9+
10+
### Fixed
11+
12+
- Memory leaks on objects with `__unserialize`: spurious `GC_TRY_ADDREF` on
13+
arrays transferred (not shared) into the states output.
14+
- Assertion failure in debug builds: `dc_mask_cleanup` called
15+
`zend_hash_apply` on a shared (refcount > 1) mask array. Fixed with
16+
`SEPARATE_ARRAY` before iterating.
17+
18+
### Changed
19+
20+
- Replaced `class_list`, `ce_cache`, and `objects` HashTables in
21+
`deepclone_from_array()` with flat C arrays for lower overhead.
22+
- Use `zend_hash_find_known_hash()` for all interned key lookups.
23+
- Use `DC_MASK_IS_NAMED_CLOSURE()` consistently in `dc_mask_has_closure`.
24+
- Added Serializable code path test (`deepclone_serializable.phpt`).
25+
- CI: added PHP debug build job for Zend MM leak detection; enabled
26+
ASAN LeakSanitizer (`detect_leaks=1`).
27+
828
## [0.1.0] - 2026-04-10
929

1030
### Added

php_deepclone.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,6 @@
44
extern zend_module_entry deepclone_module_entry;
55
#define phpext_deepclone_ptr &deepclone_module_entry
66

7-
#define PHP_DEEPCLONE_VERSION "0.1.0"
7+
#define PHP_DEEPCLONE_VERSION "0.1.1"
88

99
#endif

0 commit comments

Comments
 (0)