This is 0.81 - update META.yml, and META.json
[p5sagit/Devel-Size.git] / CHANGES
1 Revision history for Perl extension Devel::Size.
2
3 0.81 2015-08-05 nicholas
4  [no changes]
5
6 0.80_50 2017-06-21 nicholas
7   * Attempt to fix strange 1 == 1 failures on some older threaded perls.
8
9 0.80 2015-03-31 nicholas
10  [no changes]
11
12 0.79_54 2015-03-27 nicholas
13   * Fix the definition of padlist_size() for post-5.20 perls.
14   * Avoid tests failing because Test::More lazy-loading changes the size of %::
15   * Fix the build under 5005 threads. [Not that anyone is using them :-)]
16
17 0.79_53 2015-03-25 nicholas
18   * Avoid t/recurse.t failing on earlier versions on 32 bit platforms
19     (subroutines are smaller than it assumes)
20   * Count the size of padlist names in CVs (for v5.18 and later - earlier TODO)
21   * Handle PADNAMELIST/PADNAME introduced in v5.21.7
22     two patches from Zefram:
23   * Add handling of children of METHOP and UNOP_AUX ops [CPAN #102911]
24   * More complete handling of padlists for XSUBs [CPAN #102909]
25
26 0.79_52 2015-03-20 nicholas
27     two patches from Zefram:
28   * handle the new METHOP. [CPAN #101071]
29   * handle the multideref op, and to a limited extent the UNOP_AUX op class in
30     general. [CPAN #102911]
31
32   * As of eacbb37937698a03 (v5.21.6), can't call CvPADLIST on an XSUB.
33     More usefully, the slot is now used for XS versioning protection, which
34     means that we can be confident that nothing out there is using it for data.
35     Reported as [CPAN #102909].
36   * Avoid t/recurse.t failing because Test::More::is() has been refactored and
37     is now larger than it was. [CPAN #102910].
38
39 0.79_51 2015-02-28 nicholas
40   * as of 5.20.0, s/// is no longer a reliable test for OOK [CPAN #95493]
41
42 0.79_50 2015-02-28 nicholas
43     patches from Zefram:
44   * wrong test for magicalness [CPAN #88180]
45   * reading tied scalar shrinks it [CPAN #88182]
46
47 0.79 2013-05-12 nicholas
48  [no changes]
49
50 0.78_52 2013-05-10 nicholas
51  * Fix the bug in the previous fix. Oops :-)
52
53 0.78_51 2013-05-10 nicholas
54  * v5.17.1 and later handle CopSTASH differently under ithreads
55
56 0.78_50 2013-05-10 nicholas
57  * Alternative test for CvOUTSIDE, and one for CvPADLIST
58  * v5.17 changes the type of PADLIST [CPAN #83904]
59  * stubbed subs no longer have CvOUTSIDE set [CPAN #77913]
60  * Fix for v5.17.2's OP slab allocator [CPAN #83903]
61  * Spelling fix to docs from gregor herrmann [CPAN #78766]
62
63 0.78 2012-07-26 nicholas
64  [no changes]
65
66 0.77_51 2012-07-17 nicholas
67  * Fix for MSVC builds from bulk 88 [CPAN #77589]
68
69 0.77_50 2012-02-10 nicholas
70  * t/globs.t was failing on 5.15.6 and later due to side effects of a change
71    to strict.pm [CPAN #73998]
72  * skip tests in t/magic.t that use formline on 5.8.1 and 5.8.2, as those
73    versions have a buggy formline that can trigger an assertion failure.
74
75 0.77 2011-05-16 nicholas
76  [no changes]
77
78 0.76_50 2011-05-12 nicholas
79  * Split out HEK size calculation into hek_size(). Add the shared HE overhead.
80  * Handle shared hash key scalars correctly.
81  * GvNAME() is shared from 5.10 onwards.
82  * Count HvNAME(), the HV "aux" struct, the mro_meta struct, and ENAMEs.
83
84 0.76 2011-05-11 nicholas
85  * Just fix the version number in the line below.
86
87 0.75_52 2011-05-09 nicholas
88  * Use a table for SV body sizes. These incorporate the space saving post 5.8.x
89  * Correctly handle SvOOK scalars. 5.12 and later don't use SvIVX().
90  * Magic vtables aren't freed when magic is freed, so don't count them.
91    (They are static structures. Anything that assumes otherwise is buggy.)
92  * Reinstate 5.6.x "support". (i.e. it compiles and passes tests.)
93  * Reinstate 5.005_xx "support". (i.e. it compiles and passes tests.)
94
95 0.75_51 2011-05-05 nicholas
96  * Only use a static array of vtables on gcc.
97
98 0.75_50 2011-05-04 nicholas
99  * The core's magic vtables are global constants, so aren't part of the size.
100  * Follow mg_obj and mg_ptr.
101
102 0.75 2011-05-04 nicholas
103  [no changes]
104
105 0.74_53 2011-05-01 nicholas
106  * Fix typo error in bit-vector tracking mechanism. On 64 bit platforms which
107    allocate on 8 byte alignment (rather than 16), a low pointer bit could get
108    lost, resulting in new pointers being considered already "seen".
109    "Found" by BinGOs' smoker, fixed on spectre.mongueurs.net. Thanks.
110
111 0.74_52 2011-04-23 nicholas
112  * Fix potential SEGVs for OP_AELEMFAST on a lexical (eg $foo[3])
113  * Fix likely SEGVs for PVOPs (missing break)
114  * Fix potential SEGVs for PVBMs on 5.10 and later
115  * Move hash and array traversal from total_size() to sv_size()
116    - this allows total_size() and size() to be XS ALIASes.
117
118 0.74_51 2011-04-22 nicholas
119  * Don't count PL_sv_{undef,no,yes} in the size returned
120  * total_size() was double-counting entries in typeglobs
121  * sv_size() was double-counting the PVGV size if GvEGV() looped back
122  * fix classic off-by-one error - the answer is strlen() + 1, not just strlen()
123
124 0.74_50 2011-04-19 nicholas
125  * Ensure that size() doesn't add the referent's size for non SVt_RV references
126
127 0.74 2011-04-19 nicholas
128  * Correct the Makefile.PL - LICENSE was added to ExtUtils::MakeMaker in 6.31
129
130 0.73_51 2011-04-17 nicholas
131  * Refactor the C code to accumulate the size inside the tracking structure
132    - this means that the C *_size() functions now return void
133    - The XS functions size() and total_size() now return UV, not IV
134
135 0.73_50 2011-04-17 nicholas
136  * Avoid using assert() on ithreaded 5.8.8 and earlier, as it needs my_perl
137  * Fix the test added in 0.73, as it tripped over a combination of bugs
138
139 0.73 2011-04-16 nicholas
140  * Revert a bad assertion introduced in 0.72_50, which was logically wrong.
141    - and a test to demonstrate one case that would trigger it
142
143 0.72_52 2011-04-15 nicholas
144  * Add a test for the non-exceptional warnings.
145
146 0.72_51 2011-04-15 nicholas
147  * Add PERL_NO_GET_CONTEXT to improve performance under multiplicity
148
149 0.72_50 2011-04-14 nicholas
150  * Exception handling is totally MSVC specific, so only use it there
151    - this means that we don't need to use a C++ compiler anywhere
152  * Rework bit-vector tracking mechanism to use a 256-way tree. This avoids
153    making assumptions about 64-bit platforms' memory layouts, and eliminates
154    the fatal error introduced in 0.72 when the assumption was violated.
155  * Convert to XSLoader
156  * Resolve CPAN #49437 (Devel::Size adds magic in Perl 5.10)
157  * Resolve CPAN #58484 and #58485 (related to CVs that are XSUBs)
158
159 0.72 2008-10-14 BrowserUk 70 tests
160  * Added bit-vector pointer tracking mechanism.
161    - new fatal error (64-bit platforms only)
162  * Added exception handling
163     - 4 new warnings (disabled by default)
164  * Updated POD to reflect above
165  * Added basic.t test 13 
166  * replaced Module::Install with hand crafted EU::MM Makefile.pl
167    (With many thanks to Sisyphus)
168    because we couldn't work out how to add C++ options to allow 
169    exception handling.
170
171 0.71 2008-08-24 Tels 69 tests
172   * adapt patch from Reini Urban to fix failing RV under 5.10 and 5.11. AV
173     and HV were pushed directly onto the pending_array, and not the RV,
174     which caused #33530. So he rewrote the logic to deref the RV inside
175     the array traversal. Applied this with one small omission, which
176     caused test faiures.
177   * Fixed 5.11 RV/IV logic. (Thanx Reini Urban!)
178   * Removed one duplicate total_size arrayref test. (Thanx Reini Urban!)
179   * changed //printf to dbg_printf() (Thanx Reini again!)
180
181 0.70 2008-08-23 Tels 69 tests
182   * fix SEGFAULTS under v5.10 (Thanx Reini Urban!)
183   * fix compilation under blead (Thanx Reini Urban!)
184   * require Perl 5.006 (to stop CPANTESTERS sending bogus reports
185     about failed compiling on ancient Perls)
186   * update the bundles Module::Install to v0.77
187
188 0.69 2007-08-11 Tels 69 tests
189   * fix compilation under Perl v5.9.5 and v5.10 (Thanx Steve Peters!)
190   * clarify the license by specifying Perl v5.8.8's license
191   * small doc fixes, add a README file
192
193 0.68 2007-06-12 Tels 69 tests
194   * remove a bit of duplicate code in op_size, the second instance
195     was a no-op anyway
196   * fix the failing tests by rewriting the test logic to be sane
197   * the count of array slots was off by one
198
199 0.67 2007-03-15 Tels 20 tests
200   * rip out Build.PL since it doesn't actually work
201   * fix bug #1653: All SVPV subtype may contain an RV instead of a PV
202     (Thanx a lot Jan, and sorry for the truly horrible long delay!)
203   * fix bug #24846: Does not correctly recurse into references in PVNV
204     (Thanx STEVIEO)
205   * add t/recurse.t that tests the two bugfixes in combination
206
207 0.66 2007-03-02 Tels 15 tests
208   * fix the failing test (the code was right, but the test wrong)
209
210 0.65 2007-02-24 Tels 15 tests
211   * fix the test failings under 64 bit (bugs #21037, #18596, #21404)
212   * fix wrong size for strings (bug #17586)
213   * reverse Changelog (bug #16636)
214   * Size.xs: remove unused variable "count"
215   * Size.xs: fix warnings about missing ()
216   * Size.xs: fix size of array refs when AvALLOC == 0
217   * Modernize package:
218     + maintained by me, signed with my key
219     + bundle Module::Install and use it
220     + add POD tests
221     + rewrite tests to use Test::More; add more tests
222
223 0.64  Mon Dec 19 18:46:00 2005
224         - Patch to make Devel::Size compile on bleadperl (Courtesy of
225       Nick Clark)
226     - Fix up the PVIV string size calcs (Courtesy of Andrew Shirrayev)
227
228 0.63  Thu Jun 30 14:29:43 2005
229         - Turns out that OP_TRANS is a basic op, not a loop op. This
230       is a bug in versions of perl 5.8.x before 5.8.7. Work around
231       it.
232
233 0.62  Tue Jun 28 11:59:00 2005
234         - Took out // comments
235     - Added in copyright notice
236     - Some small amount of regex parsing
237     - Suppress multiple copies of each warning on each call
238
239 0.61  Mon Jun 27 16:19:00 2005
240         - Added more checks for formats
241     - Got CVs sizing right
242
243 0.59  Sat Nov 27 16:42:42 2004
244         - Applied documentation and sane warning patch from Nigel Sandever
245         - Taught Devel::Size how to size up IO and globs properly
246
247 0.58  Fri Jul 18 11:42:32 2003
248         - Fix for problems triggered by perl 5.8.0 and up, more tests, and
249       removal of an "our" for better backwards compatibility. (Courtesy
250       of Marcus Holland-Moritz <mhx-perl@gmx.net>)
251
252 0.57  Thu Mar 20 13:21:14 2003
253         - setting $Devel::Size::warn to 0 disables not complete warnings
254
255 0.56  Mon Feb 24 12:10:13 2003
256         - Chopped out some C++ comments. D'oh! Version incremented for CPAN
257
258 0.55  Sat Feb 22 17:21:00 2003
259         - Fixed a bad size calculation (we were overestimating by one byte)
260     - Updated the docs to show some of the places that there might be 'dark'
261       memory that Devel::Size can't see.
262     - Added in tests from Ken Williams
263
264 0.54  Sat Oct 12 14:11:00 2002
265     - Applied a patch to get it working on 5.8.0 under Tru64
266
267 0.53  Thu Oct 10 12:30:00 2002
268         - Finally started updating Changes file
269     - Applied doc patch from Ann Barcomb
270     - Got globs sizing right
271
272 0.01  Mon Oct  7 01:05:32 2002
273     - original version; created by h2xs 1.2 with options
274         -A -n Devel::Size
275