This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add Changelog to Tie::File to make CPAN updates easier.
[perl5.git] / dist / Data-Dumper / Changes
CommitLineData
823edd99
GS
1=head1 NAME
2
40f316a7 3Changes - public release history for Data::Dumper
823edd99
GS
4
5=head1 DESCRIPTION
6
7=over 8
8
402defd6
S
9=item 2.173
10
11perl #133624: Reinstate support for 5.8.8 and older.
12
a9fcae09
S
13=item 2.172
14
cd3c8097 15Prepare recent changes for CPAN release
a9fcae09
S
16
17=item 2.171 (Apr 21 2018)
18
cd3c8097
S
19Restore deparsing support in the XS dumper, on Perl 5.18 and earlier
20
21Test fixes on older Perl versions (notably, skip tests for Unicode glob
22names on Perl 5.14 and earlier, which had incomplete support for Unicode
23in globs)
a9fcae09
S
24
25=item 2.170 (Jan 10 2018)
26
cd3c8097
S
27Fix bug when dumping globs with quoting (which now happens for
28all Unicode glob names)
a9fcae09 29
cd3c8097 30Internal change: use strlcpy(), for safety
a9fcae09
S
31
32=item 2.169 (Dec 12 2017)
33
cd3c8097
S
34Behavior change: $dumper->Useqq(undef) is now treated as setting the
35"useqq" option, not getting it (and similarly for other options)
36[perl #113090]
a9fcae09
S
37
38=item 2.168 (Dec 1, 2017)
39
cd3c8097
S
40perl #119831: Quote glob names better; notably, Unicode globs are
41now handled correctly
a9fcae09 42
e1416070
S
43=item 2.167_02 (Aug 4 2017)
44
45Attempt to work around XS deparse issues on old perls.
46According to the few old perls at my disposure, this now repairs,
47for example 5.18, but 5.8.9 still barfs. My debugging hasn't
48really come up with much since all changes other than the deparse
49change look benign to me.
50Can someone who uses ancient perls please step up and take a look?
51--Steffen
52
e1b4c605
S
53=item 2.167_01 (Jul 31 2017)
54
55CPAN dev release with the accumulated changes from core perl.
56
57=item 2.166 (Nov 29 2016)
a261571f
NK
58
59Reduce memory usage by not importing from Carp
60Reduce memory usage by removing unused overload require.
61
efd435cf
TC
62=item 2.165 (Nov 20 2016)
63
64Remove impediment to compiling under C++11.
65
66=item 2.164 (Nov 12 2016)
67
68The XS implementation now handles the C<Deparse> option, so using it no
69longer forces use of the pure-Perl version.
70
d8cc0e43
S
71=item 2.161 (Jul 11 2016)
72
73Perl 5.12 fix/workaround until fixed PPPort release.
74
75Pre-5.12 fixes for test dependency.
76
5e890864
SH
77=item 2.160 (Jul 3 2016)
78
79Now handles huge inputs on 64bit perls.
80
81Add Trailingcomma option. This is as suggested in RT#126813.
82
83Significant refactoring of XS implementation.
84
85Pure Perl implementation fixes in corner cases ("\n" dumped raw").
86
87=item 2.154 (Sep 18 2014)
88
89Most notably, this release fixes CVE-2014-4330:
90
91 Don't recurse infinitely in Data::Dumper
92
93 Add a configuration variable/option to limit recursion when dumping
94 deep data structures.
95 [...]
96 This patch addresses CVE-2014-4330. This bug was found and
97 reported by: LSE Leading Security Experts GmbH employee Markus
98 Vervier.
99
100On top of that, there are several minor big fixes and improvements,
101see "git log" if the core perl distribution for details.
102
fbfb8de6
S
103=item 2.151 (Mar 7 2014)
104
105A "useqq" implementation for the XS version of Data::Dumper.
106
107Better compatibility wrt. hash key quoting between PP and XS
108versions of Data::Dumper.
109
110EBCDIC fixes.
111
11264bit safety fixes (for very large arrays).
113
114Build fixes for threaded perls.
115
116clang warning fixes.
117
118Warning fixes in tests on older perls.
119
120Typo fixes in documentation.
121
6e138f13
S
122=item 2.145 (Mar 15 2013)
123
124Test refactoring and fixing wide and far.
125
126Various old-perl compat fixes.
127
ecac6521 128=item 2.143 (Feb 26 2013)
0be733f0
S
129
130Address vstring related test failures on 5.8: Skip tests for
131obscure case.
132
133Major improvements to test coverage and significant refactoring.
134
135Make Data::Dumper XS ignore Freezer return value. Fixes RT #116364.
0eb30aeb
KW
136
137Change call of isALNUM to equivalent but more clearly named isWORDCHAR
138
c8c262e3
S
139=item 2.139 (Dec 12 2012)
140
141Supply an explicit dynamic_config => 0 in META
142
143Properly list BUILD_REQUIRES prereqs (P5-RT#116028)
144
145Some optimizations. Removed useless "register" declarations.
146
40f316a7
S
147=item 2.136 (Oct 04 2012)
148
149Promote to stable release.
150
151Drop some "register" declarations.
152
b795c6e9
S
153=item 2.135_07 (Aug 06 2012)
154
155Use the new utf8 to code point functions - fixing a potential
156reading buffer overrun.
157
158Data::Dumper: Sparseseen option to avoid building much of the seen
159hash: This has been measured to, in some cases, provide a 50% speed-up
160
161Dumper.xs: Avoid scan_vstring on 5.17.3 and up
162
163Avoid a warning from clang when compiling Data::Dumper
164
165Fix DD's dumping of qr|\/|
166
167Data::Dumper's Perl implementation was not working with overloaded
168blessed globs, which it thought were strings.
169
170Allow Data::Dumper to load on miniperl
171
ad7c79f5
S
172=item 2.135_02 (Dec 29 2011)
173
174Makes DD dump *{''} properly.
175
176[perl #101162] DD support for vstrings:
177Support for vstrings to Data::Dumper, in both Perl and XS
178implementations.
179
9eabe476
S
180=item 2.135_01 (Dec 19 2011)
181
182Make Data::Dumper UTF8- and null-clean with GVs.
183
184In Dumper.xs, use sv_newmortal() instead of sv_mortalcopy(&PL_sv_undef)
185for efficiency.
186
187Suppress compiler warning
188
189Keep verbatim pod in Data::Dumper within 80 cols
190
1f180a7b
S
191=item 2.131 (May 27 2011)
192
193Essentially the same as version 2.130_02, but a production release.
194
195=item 2.130_03 (May 20 2011)
196
197Essentially the same as version 2.130_02, but a CPAN release
198for the eventual 2.131.
199
200=item 2.130_02
201
202This was only shipped with the perl core, never released to CPAN.
203
204Convert overload.t to Test::More
205
206Fix some spelling errors
207
208Fix some compiler warnings
209
210Fix an out of bounds write in Data-Dumper with malformed utf8 input
211
212=item 2.130 (Nov 20 2010)
9bd6d075
FC
213
214C<Dumpxs> can now handle malformed UTF-8.
215
216=item 2.129 (Oct 20 2010)
e2941eb0
FC
217
218C<Dumpxs> no longer crashes with globs returned by C<*$io_ref>
219[perl #72332].
220
34a37ff2
S
221=item 2.128 (Sep 10 2010)
222
223Promote previous release to stable version with the correct version.
224
225=item 2.127 (Sep 10 2010)
226
227Promote previous release to stable version.
228
229=item 2.126_01 (Sep 6 2010)
230
231Port core perl changes e3ec2293dc, fe642606b19.
232Fixes core perl RT #74170 (handle the stack changing in the
233custom sort functions) and adds a test.
234
88ac1adb
S
235=item 2.126 (Apr 15 2010)
236
237Fix Data::Dumper's Fix Terse(1) + Indent(2):
238perl-RT #73604: When $Data::Dumper::Terse is true, the indentation is thrown
239off. It appears to be acting as if the $VAR1 = is still there.
240
4d0a2500
S
241=item 2.125 (Aug 8 2009)
242
243CPAN distribution fixes (meta information for META.yml).
244
20fc1041
S
245=item 2.124 (Jun 13 2009)
246
247Add three missing test files.
248
cc650b8b
S
249=item 2.123 (Jun 11 2009)
250
251Re-add the INSTALLDIRS => 'perl' directive to Makefile.PL
252of the CPAN release.
253
f6085ff7
S
254=item 2.122 (Jun 9 2009)
255
256Promote previous developer release to stable release.
257
04fe7e43
S
258=item 2.121_20 (Jun 6 2009)
259
cc650b8b 260A host of bug fixes and improvements that have
04fe7e43
S
261accumulated in the perl core
262
cc650b8b 263Updated backport to 5.6.1 by Steffen Mueller <smueller@cpan.org>.
04fe7e43 264
fec5e1eb
IM
265=item 2.121 (Aug 24 2003)
266
267Backport to 5.6.1 by Ilya Martynov <ilya@martynov.org>.
268
a2126434
JN
269=item 2.11 (unreleased)
270
271C<0> is now dumped as such, not as C<'0'>.
272
273qr// objects are now dumped correctly (provided a post-5.005_58)
274overload.pm exists).
275
276Implemented $Data::Dumper::Maxdepth, which was on the Todo list.
277Thanks to John Nolan <jpnolan@Op.Net>.
278
279=item 2.101 (30 Apr 1999)
280
281Minor release to sync with version in 5.005_03. Fixes dump of
282dummy coderefs.
283
7820172a
GS
284=item 2.10 (31 Oct 1998)
285
286Bugfixes for dumping related undef values, globs, and better double
287quoting: three patches suggested by Gisle Aas <gisle@aas.no>.
288
289Escaping of single quotes in the XS version could get tripped up
290by the presence of nulls in the string. Fix suggested by
291Slaven Rezic <eserte@cs.tu-berlin.de>.
292
293Rather large scale reworking of the logic in how seen values
294are stashed. Anonymous scalars that may be encountered while
295traversing the structure are properly tracked, in case they become
296used in data dumped in a later pass. There used to be a problem
297with the previous logic that prevented such structures from being
298dumped correctly.
299
300Various additions to the testsuite.
301
823edd99
GS
302=item 2.09 (9 July 1998)
303
304Implement $Data::Dumper::Bless, suggested by Mark Daku <daku@nortel.ca>.
305
306=item 2.081 (15 January 1998)
307
308Minor release to fix Makefile.PL not accepting MakeMaker args.
309
310=item 2.08 (7 December 1997)
311
1f180a7b 312Glob dumps don't output superflous 'undef' anymore.
823edd99
GS
313
314Fixes from Gisle Aas <gisle@aas.no> to make Dumper() work with
315overloaded strings in recent perls, and his new testsuite.
316
317require 5.004.
318
319A separate flag to always quote hash keys (on by default).
320
321Recreating known CODE refs is now better supported.
322
323Changed flawed constant SCALAR bless workaround.
324
325=item 2.07 (7 December 1996)
326
327Dumpxs output is now exactly the same as Dump. It still doesn't
328honor C<Useqq> though.
329
330Regression tests test for identical output and C<eval>-ability.
331
332Bug in *GLOB{THING} output fixed.
333
334Other small enhancements.
335
336=item 2.06 (2 December 1996)
337
338Bugfix that was serious enough for new release--the bug cripples
339MLDBM. Problem was "Attempt to modify readonly value..." failures
340that stemmed for a misguided SvPV_force() instead of a SvPV().)
341
342=item 2.05 (2 December 1996)
343
344Fixed the type mismatch that was causing Dumpxs test to fail
345on 64-bit platforms.
346
347GLOB elements are dumped now when C<Purity> is set (using the
348*GLOB{THING} syntax).
349
350The C<Freezer> option can be set to a method name to call
351before probing objects for dumping. Some applications: objects with
352external data, can re-bless themselves into a transitional package;
353Objects the maintain ephemeral state (like open files) can put
354additional information in the object to facilitate persistence.
355
356The corresponding C<Toaster> option, if set, specifies
357the method call that will revive the frozen object.
358
359The C<Deepcopy> flag has been added to do just that.
360
361Dumper does more aggressive cataloging of SCALARs encountered
362within ARRAY/HASH structures. Thanks to Norman Gaywood
363<norm@godel.une.edu.au> for reporting the problem.
364
365Objects that C<overload> the '""' operator are now handled
366properly by the C<Dump> method.
367
368Significant additions to the testsuite.
369
370More documentation.
371
372=item 2.04beta (28 August 1996)
373
374Made dump of glob names respect C<Useqq> setting.
375
376[@$%] are now escaped now when in double quotes.
377
378=item 2.03beta (26 August 1996)
379
380Fixed Dumpxs. It was appending trailing nulls to globnames.
381(reported by Randal Schwartz <merlyn@teleport.com>).
382
383Calling the C<Indent()> method on a dumper object now correctly
384resets the internal separator (reported by Curt Tilmes
385<curt@ltpmail.gsfc.nasa.gov>).
386
387New C<Terse> option to suppress the 'C<VARI<n> = >' prefix
388introduced. If the option is set, they are output only when
389absolutely essential.
390
391The C<Useqq> flag is supported (but not by the XSUB version
392yet).
393
394Embedded nulls in keys are now handled properly by Dumpxs.
395
396Dumper.xs now use various integer types in perl.h (should
397make it compile without noises on 64 bit platforms, although
398I haven't been able to test this).
399
400All the dump methods now return a list of strings in a list
401context.
402
403
404=item 2.02beta (13 April 1996)
405
406Non portable sprintf usage in XS code fixed (thanks to
407Ulrich Pfeifer <pfeifer@charly.informatik.uni-dortmund.de>).
408
409
410=item 2.01beta (10 April 1996)
411
412Minor bugfix (single digit numbers were always getting quoted).
413
414
415=item 2.00beta (9 April 1996)
416
417C<Dumpxs> is now the exact XSUB equivalent of C<Dump>. The XS version
418is 4-5 times faster.
419
420C<require 5.002>.
421
422MLDBM example removed (as its own module, it has a separate CPAN
423reality now).
424
5e890864 425Fixed bugs in handling keys with wierd characters. Perl can be
823edd99
GS
426tripped up in its implicit quoting of the word before '=>'. The
427fix: C<Data::Dumper::Purity>, when set, always triggers quotes
428around hash keys.
429
430Andreas Koenig <k@anna.in-berlin.de> pointed out that handling octals
431is busted. His patch added.
432
433Dead code removed, other minor documentation fixes.
434
435
436=item 1.23 (3 Dec 1995)
437
438MLDBM example added.
439
440Several folks pointed out that quoting of ticks and backslashes
441in strings is missing. Added.
442
7e6e257f 443Ian Phillipps <ian@pipex.net> pointed out that numerics may lose
823edd99
GS
444precision without quotes. Fixed.
445
446
447=item 1.21 (20 Nov 1995)
448
449Last stable version I can remember.
450
451=back
452
453=cut