1Revision history for Perl core module Data::Dumper 2 32.183 2021-07-05 NWCLARK 4 - No changes from previous dev release. 5 6 72.182_51 2021-07-03 NWCLARK 8 - For the optional array of names for the values, Dumpxs now handles names 9 that are now plain strings (eg references with string overloading). 10 The pure Perl implementation had always handled these correctly. 11 12 132.182_50 2021-07-01 NWCLARK 14 - Output qr'$foo' correctly (using a suggestion from Eirik Berg Hanssen) 15 16 172.182 2021-06-30 NWCLARK 18 - Reformatted Data-Dumper Changes as per CPAN::Changes::Spec (GH #18952) 19 20 212.181_50 2021-06-29 NWCLARK 22 - Set bugtracker metadata to https://github.com/Perl/perl5/issues 23 24 252.181 2021-05-26 NWCLARK 26 - No changes from previous dev release. 27 28 292.180_53 2021-05-25 NWCLARK 30 - Fix Makefile.PL to install to "perl" for 5.10.x and earlier (CPAN #12282) 31 32 332.180_52 2021-05-24 NWCLARK 34 - Remove no longer needed compatibility shims, 35 and use ppport.h whenever possible. 36 37 382.180_51 2021-05-23 NWCLARK 39 - Convert dumper.t to Test::More and 40 eliminate a lot of test code duplication. 41 42 432.180_50 2021-05-22 NWCLARK 44 - Data::Dumper now requires Perl v5.8.1 or later. 45 46 472.180 2021-05-17 NWCLARK 48 - No changes from previous dev release. 49 50 512.179_50 2021-05-14 NWCLARK 52 - Data::Dumper handles Unicode regex corner cases (GH #18614, GH #18764) 53 54 552.179 2021-05-13 NWCLARK 56 - Revert the changes of 2.177 for the v5.34.0 release to avoid a regression. 57 58 592.178 2021-04-07 JKEENAN 60 - Correct documentation of indent Style 2. 61 62 632.177 2021-03-03 ARC 64 - Make Data::Dumper mark regex output as UTF-8 if needed. (GH #18614) 65 66 672.176 2020-09-30 TODDR 68 - Make Data::Dumper strict and warnings compliant. 69 70 712.175 2020-08-13 TONYC 72 - Avoid some leaks if we call get magic and that throws an exception. 73 74 752.174 2019-04-03 DAPM 76 - Avoid leaking if we croak due to excessive recursion. 77 78 792.173 2018-11-10 XSAWYERX 80 - perl #133624: Reinstate support for 5.8.8 and older. 81 82 832.172 2018-09-19 XSAWYERX 84 - Prepare recent changes for CPAN release 85 86 872.171 2018-04-21 ARC 88 - Restore deparsing support in the XS dumper, on Perl 5.18 and earlier 89 - Test fixes on older Perl versions (notably, skip tests for Unicode glob 90 names on Perl 5.14 and earlier, which had incomplete support for Unicode 91 in globs) 92 93 942.170 2018-01-10 ZEFRAM 95 - Fix bug when dumping globs with quoting (which now happens for 96 all Unicode glob names) 97 - Internal change: use strlcpy(), for safety 98 99 1002.169 2017-12-12 ZEFRAM 101 - Behavior change: $dumper->Useqq(undef) is now treated as setting the 102 "useqq" option, not getting it (and similarly for other options) 103 [perl #113090] 104 105 1062.168 2017-12-01 ZEFRAM 107 - perl #119831: Quote glob names better; notably, Unicode globs are 108 now handled correctly 109 110 1112.167_02 2017-08-04 SMUELLER 112 - Attempt to work around XS deparse issues on old perls. 113 According to the few old perls at my disposure, this now repairs, 114 for example 5.18, but 5.8.9 still barfs. My debugging hasn't 115 really come up with much since all changes other than the deparse 116 change look benign to me. 117 Can someone who uses ancient perls please step up and take a look? 118 --Steffen 119 120 1212.167_01 2017-07-31 SMUELLER 122 - CPAN dev release with the accumulated changes from core perl. 123 124 1252.166 2016-11-29 BDRACO 126 - Reduce memory usage by not importing from Carp 127 - Reduce memory usage by removing unused overload require. 128 129 1302.165 2016-11-20 KHW 131 - Remove impediment to compiling under C++11. 132 133 1342.164 2016-11-12 ARC 135 - The XS implementation now handles the C<Deparse> option, so using it no 136 longer forces use of the pure-Perl version. 137 138 1392.161 2016-07-11 SMUELLER 140 - Perl 5.12 fix/workaround until fixed PPPort release. 141 - Pre-5.12 fixes for test dependency. 142 143 1442.160 2016-07-03 SMUELLER 145 - Now handles huge inputs on 64bit perls. 146 - Add Trailingcomma option. This is as suggested in RT#126813. 147 - Significant refactoring of XS implementation. 148 - Pure Perl implementation fixes in corner cases ("\n" dumped raw"). 149 150 1512.154 2014-09-18 SMUELLER 152 - Most notably, this release fixes CVE-2014-4330: 153 Don't recurse infinitely in Data::Dumper 154 Add a configuration variable/option to limit recursion when dumping 155 deep data structures. 156 [...] 157 This patch addresses CVE-2014-4330. This bug was found and 158 reported by: LSE Leading Security Experts GmbH employee Markus 159 Vervier. 160 - On top of that, there are several minor big fixes and improvements, 161 see "git log" if the core perl distribution for details. 162 163 1642.151 2014-03-07 SMUELLER 165 - A "useqq" implementation for the XS version of Data::Dumper. 166 - Better compatibility wrt. hash key quoting between PP and XS 167 versions of Data::Dumper. 168 - EBCDIC fixes. 169 - 64bit safety fixes (for very large arrays). 170 - Build fixes for threaded perls. 171 - clang warning fixes. 172 - Warning fixes in tests on older perls. 173 - Typo fixes in documentation. 174 175 1762.145 2013-03-15 SMUELLER 177 - Test refactoring and fixing wide and far. 178 - Various old-perl compat fixes. 179 180 1812.143 2013-02-26 SMUELLER 182 - Address vstring related test failures on 5.8: Skip tests for 183 obscure case. 184 - Major improvements to test coverage and significant refactoring. 185 - Make Data::Dumper XS ignore Freezer return value. Fixes RT #116364. 186 - Change call of isALNUM to equivalent but more clearly named isWORDCHAR 187 188 1892.139 2012-12-12 SMUELLER 190 - Supply an explicit dynamic_config => 0 in META 191 - Properly list BUILD_REQUIRES prereqs (P5-RT#116028) 192 - Some optimizations. Removed useless "register" declarations. 193 194 1952.136 2012-10-04 SMUELLER 196 - Promote to stable release. 197 - Drop some "register" declarations. 198 199 2002.135_07 2012-08-07 SMUELLER 201 - Use the new utf8 to code point functions - fixing a potential 202 reading buffer overrun. 203 - Data::Dumper: Sparseseen option to avoid building much of the seen 204 hash: This has been measured to, in some cases, provide a 50% speed-up 205 - Dumper.xs: Avoid scan_vstring on 5.17.3 and up 206 - Avoid a warning from clang when compiling Data::Dumper 207 - Fix DD's dumping of qr|\/| 208 - Data::Dumper's Perl implementation was not working with overloaded 209 blessed globs, which it thought were strings. 210 - Allow Data::Dumper to load on miniperl 211 212 2132.135_02 2011-12-29 SMUELLER 214 - Makes DD dump *{''} properly. 215 - [perl #101162] DD support for vstrings: 216 Support for vstrings to Data::Dumper, in both Perl and XS 217 implementations. 218 219 2202.135_01 2011-12-19 SMUELLER 221 - Make Data::Dumper UTF8- and null-clean with GVs. 222 - In Dumper.xs, use sv_newmortal() instead of sv_mortalcopy(&PL_sv_undef) 223 for efficiency. 224 - Suppress compiler warning 225 - Keep verbatim pod in Data::Dumper within 80 cols 226 227 2282.131 2011-05-27 SMUELLER 229 - Essentially the same as version 2.130_02, but a production release. 230 231 2322.130_03 2011-05-20 SMUELLER 233 - Essentially the same as version 2.130_02, but a CPAN release 234 for the eventual 2.131. 235 236 2372.130_02 238 - This was only shipped with the perl core, never released to CPAN. 239 - Convert overload.t to Test::More 240 - Fix some spelling errors 241 - Fix some compiler warnings 242 - Fix an out of bounds write in Data-Dumper with malformed utf8 input 243 244 2452.130 2010-11-20 246 - C<Dumpxs> can now handle malformed UTF-8. 247 248 2492.129 2010-10-20 250 - C<Dumpxs> no longer crashes with globs returned by C<*$io_ref> 251 [perl #72332]. 252 253 2542.128 2010-09-10 SMUELLER 255 - Promote previous release to stable version with the correct version. 256 257 2582.127 2010-09-10 SMUELLER 259 - Promote previous release to stable version. 260 261 2622.126_01 2010-09-06 SMUELLER 263 - Port core perl changes e3ec2293dc, fe642606b19. 264 Fixes core perl RT #74170 (handle the stack changing in the 265 custom sort functions) and adds a test. 266 267 2682.126 2010-04-15 SMUELLER 269 - Fix Data::Dumper's Fix Terse(1) + Indent(2): 270 perl-RT #73604: When $Data::Dumper::Terse is true, 271 the indentation is thrown off. 272 It appears to be acting as if the $VAR1 = is still there. 273 274 2752.125 2009-08-08 SMUELLER 276 - CPAN distribution fixes (meta information for META.yml). 277 278 2792.124 2009-06-13 SMUELLER 280 - Add three missing test files. 281 282 2832.123 2009-06-11 SMUELLER 284 - Re-add the INSTALLDIRS => 'perl' directive to Makefile.PL 285 of the CPAN release. 286 287 2882.122 2009-06-09 SMUELLER 289 - Promote previous developer release to stable release. 290 291 2922.121_20 2009-06-06 SMUELLER 293 - A host of bug fixes and improvements that have 294 accumulated in the perl core 295 - Updated backport to 5.6.1 by Steffen Mueller <smueller@cpan.org>. 296 297 2982.121 2003-08-25 ILYAM 299 - Backport to 5.6.1 by Ilya Martynov <ilya@martynov.org>. 300 301 3022.11 (unreleased) 303 - C<0> is now dumped as such, not as C<'0'>. 304 - qr// objects are now dumped correctly (provided a post-5.005_58) 305 overload.pm exists). 306 - Implemented $Data::Dumper::Maxdepth, which was on the Todo list. 307 Thanks to John Nolan <jpnolan@Op.Net>. 308 309 3102.101 1999-05-01 GSAR 311 - Minor release to sync with version in 5.005_03. Fixes dump of 312 dummy coderefs. 313 314 3152.10 1998-10-31 GSAR 316 - Bugfixes for dumping related undef values, globs, and better double 317 quoting: three patches suggested by Gisle Aas <gisle@aas.no>. 318 - Escaping of single quotes in the XS version could get tripped up 319 by the presence of nulls in the string. Fix suggested by 320 Slaven Rezic <eserte@cs.tu-berlin.de>. 321 - Rather large scale reworking of the logic in how seen values 322 are stashed. Anonymous scalars that may be encountered while 323 traversing the structure are properly tracked, in case they become 324 used in data dumped in a later pass. There used to be a problem 325 with the previous logic that prevented such structures from being 326 dumped correctly. 327 - Various additions to the testsuite. 328 329 3302.09 1998-07-17 GSAR 331 - Implement $Data::Dumper::Bless, suggested by Mark Daku <daku@nortel.ca>. 332 333 3342.081 1998-01-15 GSAR 335 - Minor release to fix Makefile.PL not accepting MakeMaker args. 336 337 3382.08 1997-12-07 GSAR 339 - Glob dumps don't output superflous 'undef' anymore. 340 - Fixes from Gisle Aas <gisle@aas.no> to make Dumper() work with 341 overloaded strings in recent perls, and his new testsuite. 342 - require 5.004. 343 - A separate flag to always quote hash keys (on by default). 344 - Recreating known CODE refs is now better supported. 345 - Changed flawed constant SCALAR bless workaround. 346 347 3482.07 1996-12-07 GSAR 349 - Dumpxs output is now exactly the same as Dump. 350 It still doesn't honor C<Useqq> though. 351 - Regression tests test for identical output and C<eval>-ability. 352 - Bug in *GLOB{THING} output fixed. 353 - Other small enhancements. 354 355 3562.06 1996-12-02 GSAR 357 - Bugfix that was serious enough for new release--the bug cripples 358 MLDBM. Problem was "Attempt to modify readonly value..." failures 359 that stemmed for a misguided SvPV_force() instead of a SvPV().) 360 361 3622.05 1996-12-02 GSAR 363 - Fixed the type mismatch that was causing Dumpxs test to fail 364 on 64-bit platforms. 365 - GLOB elements are dumped now when C<Purity> is set (using the 366 *GLOB{THING} syntax). 367 - The C<Freezer> option can be set to a method name to call 368 before probing objects for dumping. Some applications: objects with 369 external data, can re-bless themselves into a transitional package; 370 Objects the maintain ephemeral state (like open files) can put 371 additional information in the object to facilitate persistence. 372 - The corresponding C<Toaster> option, if set, specifies 373 the method call that will revive the frozen object. 374 - The C<Deepcopy> flag has been added to do just that. 375 - Dumper does more aggressive cataloging of SCALARs encountered 376 within ARRAY/HASH structures. Thanks to Norman Gaywood 377 <norm@godel.une.edu.au> for reporting the problem. 378 - Objects that C<overload> the '""' operator are now handled 379 properly by the C<Dump> method. 380 - Significant additions to the testsuite. 381 - More documentation. 382 383 3842.04b 1996-08-28 GSAR 385 - Made dump of glob names respect C<Useqq> setting. 386 - [@$%] are now escaped now when in double quotes. 387 388 3892.03b 1996-08-26 GSAR 390 - Fixed Dumpxs. It was appending trailing nulls to globnames. 391 (reported by Randal Schwartz <merlyn@teleport.com>). 392 - Calling the C<Indent()> method on a dumper object now correctly 393 resets the internal separator (reported by Curt Tilmes 394 <curt@ltpmail.gsfc.nasa.gov>). 395 - New C<Terse> option to suppress the 'C<VARI<n> = >' prefix 396 introduced. If the option is set, they are output only when 397 absolutely essential. 398 - The C<Useqq> flag is supported (but not by the XSUB version yet). 399 - Embedded nulls in keys are now handled properly by Dumpxs. 400 - Dumper.xs now use various integer types in perl.h (should 401 make it compile without noises on 64 bit platforms, although 402 I haven't been able to test this). 403 - All the dump methods now return a list of strings in a list context. 404 405 4062.02b 1996-04-13 GSAR 407 - Non portable sprintf usage in XS code fixed (thanks to 408 Ulrich Pfeifer <pfeifer@charly.informatik.uni-dortmund.de>). 409 410 4112.01b 1996-04-10 GSAR 412 - Minor bugfix (single digit numbers were always getting quoted). 413 414 4152.00b 1996-04-09 GSAR 416 - C<Dumpxs> is now the exact XSUB equivalent of C<Dump>. 417 The XS version is 4-5 times faster. 418 - C<require 5.002>. 419 - MLDBM example removed (as its own module, it has a separate CPAN 420 reality now). 421 - Fixed bugs in handling keys with wierd characters. Perl can be 422 tripped up in its implicit quoting of the word before '=>'. The 423 fix: C<Data::Dumper::Purity>, when set, always triggers quotes 424 around hash keys. 425 - Andreas Koenig <k@anna.in-berlin.de> pointed out that handling octals 426 is busted. His patch added. 427 - Dead code removed, other minor documentation fixes. 428 429 4301.23 1995-12-04 GSAR 431 - MLDBM example added. 432 - Several folks pointed out that quoting of ticks and backslashes 433 in strings is missing. Added. 434 - Ian Phillipps <ian@pipex.net> pointed out that numerics may lose 435 precision without quotes. Fixed. 436 437 4381.21 1995-11-19 GSAR 439 - Last stable version I can remember. 440 441