File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -5,6 +5,26 @@ All notable changes to this extension will be documented in this file.
55The format is based on [ Keep a Changelog] ( https://keepachangelog.com/en/1.1.0/ ) ,
66and 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
Original file line number Diff line number Diff line change 44extern 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
You can’t perform that action at this time.
0 commit comments