1[Changes for 1.07 (JSON::Syck 0.30) - 2009-04-25] 2 3* Added the missing Loadfile function to JSON::Syck. 4 Reported by: Dan McCormick 5 6[Changes for 1.05 (JSON::Syck 0.29) - 2008-06-09] 7 8* Loading a YAML stream containing Regexp nodes under -d:DProf should 9 not fail with "panic: Devel::DProf inconsistent subroutine return". 10 Reported by: Richard Jelinek 11 12[Changes for 1.04 (JSON::Syck 0.29) - 2008-02-17] 13 14* The 'Name "YAML::Syck::ImplicitBinary" used only once: possible typo' 15 warnings no longer triggers in Perl 5.10 when running with perl -w. 16 Reported by: Jesse Vincent 17 18[Changes for 1.03 (JSON::Syck 0.29) - 2008-02-16] 19 20* JSON::Syck: When $JSON::Syck::SingleQuote is false, implicit booleans 21 such as "yes" and "no" should be dumped with double quotes, instead of 22 single quotes (which breaks RFC 4627). 23 Reported by: cho45 24 25[Changes for 1.02 (JSON::Syck 0.28) - 2008-02-16] 26 27* JSON::Syck: Colons in single-quoted strings are no longer loaded 28 with an extra space after it. 29 Reported by: Agent Zhang 30 31[Changes for 1.01 (JSON::Syck 0.27) - 2008-01-19] 32 33* JSON::XS is now promoted prominiently in JSON::Syck's documentation. 34 35* Added support for Perl 5.11 and its first-class Regexp objects. 36 Contributed by: Andreas Koenig 37 38* Tests no longer fail incorrectly when JSON.pm 2.00+ is installed. 39 Contributed by: Andreas Koenig 40 41* Removed the unused Syck bytecode modules (yamlbyte.h and yaml2byte.c) 42 to further reduce our memory footprint. 43 44[Changes for 1.00 (JSON::Syck 0.26) - 2007-12-10] 45 46* When $YAML::Syck::SingleQuote is set to true, Dump() now emits newlines 47 in strings correctly. (Previously it would emit extra newlines.) 48 49[Changes for 0.99 (JSON::Syck 0.26) - 2007-10-23] 50 51* TODOify tests as appropriate for Perl 5.005 and Perl 5.6.x. 52 53[Changes for 0.98 (JSON::Syck 0.26) - 2007-10-13] 54 55* Restore support for Perl 5.005 and earlier. 56 57[Changes for 0.97 (JSON::Syck 0.26) - 2007-09-03] 58 59* When loading !!perl/code with $YAML::Syck::LoadCode set to false, 60 YAML::Syck now returns a coderef that does nothing (i.e. sub {}), 61 in accordance with YAML.pm's treatment, instead of returning the 62 actual code of the sub as a string. 63 Contributed by: Florian Ragwitz 64 65[Changes for 0.96 (JSON::Syck 0.26) - 2007-08-08] 66 67* The always-quote rule now applies to all implicit booleans 68 and null values, i.e. strings that match the following regex: 69 70 /y|Y 71 |n|N 72 |yes|Yes|YES 73 |no|No|NO 74 |true|True|TRUE 75 |false|False|FALSE 76 |on|On|ON 77 |off|Off|OFF 78 |null|Null|NULL 79 |~ 80 /x 81 82* Bare literals "Y", "N", "y" and "n" are now recognized as 83 booleans when loading with implicit typing turned on. 84 85* Mixed case strings that does not represent implicit boolean 86 values, such as "yES" and "nO", are no longer always-quoted. 87 Contributed by: Malcolm Studd 88 89[Changes for 0.95 (JSON::Syck 0.26) - 2007-08-04] 90 91* "Yes" and "no" (including all upper/lower case forms) are now 92 always dumped in quoted form to avoid ambiguities when loaded 93 by loaders with ImplicitTyping set to true. 94 Reported by: Malcolm Studd 95 96* lib/YAML/Syck.pod is merged back into lib/YAML/Syck.pm. 97 (No functional changes.) 98 99[Changes for 0.94 (JSON::Syck 0.26) - 2007-07-10] 100 101* Repair broken PAUSE upload, again. (Sigh.) 102 103[Changes for 0.93 (JSON::Syck 0.26) - 2007-07-10] 104 105* Repair broken PAUSE upload. 106 107[Changes for 0.92 (JSON::Syck 0.26) - 2007-07-10] 108 109* Allow for LoadFile(*FH) and DumpFile(*FH), in addition to 110 ($fh) and (\*FH). Also, new tests for LoadFile and DumpFile. 111 Contributed by: Adriano Ferreira 112 113[Changes for 0.91 (JSON::Syck 0.26) - 2007-06-23] 114 115* Corrected loading Regexps with all combinations of quantifiers. 116 Contributed by: Ingy döt Net 117 118[Changes for 0.90 (JSON::Syck 0.26) - 2007-06-22] 119 120* Regexes are now dump/loaded correctly with modifiers, with a new 121 representation: "--- !!perl/regexp:main (?i-xsm:1)", instead of the 122 old mapping with a REGEXP key. The old form still loads correctly; 123 the new form corresponds to YAML.pm 0.63 and later. 124 Requested by: Ingy döt Net 125 126* Loading regexes with modifiers no longer involves an eval"" call. 127 128[Changes for 0.88 (JSON::Syck 0.26) - 2007-06-17] 129 130* New dependency: Scalar::Util, for LoadFile and DumpFile functions. 131 You can safely do without that module if you do not make use of the 132 two functions. 133 134* LoadFile and DumpFile now accept glob values, and reject unopened 135 handles properly instead of silently ignores it. 136 Contributed by: Adriano Ferreira 137 138[Changes for 0.87 (JSON::Syck 0.25) - 2007-06-17] 139 140* New LoadFile and DumpFile functions for JSON::Syck. 141 142* JSON::Syck now actually exports its functions if you ask for it. 143 144* LoadFile and DumpFile now accept IO objects in addition to file names. 145 Requested by: Adriano Ferreira 146 147[Changes for 0.86 (JSON::Syck 0.24) - 2007-06-16] 148 149* Support for dumping and loading regexps created by qr//, including 150 blessed once. Note that loading Regexp values dumped by YAML.pm 151 currently discards modifiers. 152 153[Changes for 0.85 (JSON::Syck 0.24) - 2007-04-20] 154 155* Strings containing both single quotes and newlines were incorrectly 156 quoted with backslash-escaped single quotes. This is a regression 157 introduced in YAML::Syck 0.84. 158 Reported by: Agent Zhang 159 160[Changes for 0.84 (JSON::Syck 0.23) - 2007-04-02] 161 162* New $YAML::Syck::SingleQuote flag: When it is set to true, Dump will 163 always emit quotes instead of bare strings. 164 Requested by: Ingo Bax 165 166* When $JSON::Syck::SingleQuote is set to true, special characters such as 167 \r\n are still escaped as usual, because JavaScript allows the same form 168 of escaping in strings with either quotes. 169 Reported by: Dobrica Pavlinusic 170 171[Changes for 0.83 (JSON::Syck 0.22) - 2007-02-05] 172 173* Under JSON::Syck, as well as YAML::Syck when $ImplicitTyping is set to 174 true, integer numbers larger than an unsigned integer (>=4294967296 on 175 32-bit platforms) was erroneously loaded as 0. 176 Reported by: Markus Wörle 177 178[Changes for 0.82 (JSON::Syck 0.21) - 2007-01-26] 179 180* Bytestrings containing no high bit bytes are no longer dumped as "!binary". 181 182[Changes for 0.81 (JSON::Syck 0.21) - 2007-01-26] 183 184* Support for loading Base64-encoded "!binary" type. 185 186* Support for dumping non-unicode bytes containing high bits as 187 Base64-encoded "!binary" type. 188 189* JSON::Syck now raises an exception, instead of segfaults, 190 when dumping a circular structure. 191 192[Changes for 0.80 (JSON::Syck 0.20) - 2007-01-26] 193 194* LICENSING CHANGE: This compilation and all individual files in it 195 (except for the bundled libsyck code) are now under the permissive 196 "MIT" license. See the COPYRIGHT section in README for the new terms. 197 198* Load("!! []") no longer segfaults due to empty tag names. 199 200* Load("!!Foo []") now blesses into "Foo", not "Foo::\0". 201 202* Load("!!perl/scalar 123") is now \123, not 123. 203 204* Load("!!perl/scalar:Foo ~") is now \"Foo", not undef. 205 206* Dump(bless(\$undef, 'Foo')) is now "!!perl/scalar:Foo ~", not "~". 207 208[Changes for 0.72 (JSON::Syck 0.15) - 2006-11-26] 209 210* $JSON::Syck::SingleQuote did not take effect for Unicode strings. 211 212* Squashed "mentioned only once" warnings for $ImplicitUnicode and $Headless. 213 Reported by: Agent Zhang 214 215[Changes for 0.71 (JSON::Syck 0.14) - 2006-10-03] 216 217* Double-quoted strings in YAML output no longer contains continuation 218 lines, which confused YAML.pm terribly. 219 Reported by: Nelson Elhage 220 221[Changes for 0.70 (JSON::Syck 0.14) - 2006-10-02] 222 223* Load()/Dump()/LoadFile()/DumpFile() in YAML::Syck now support 224 multiple YAML streams -- i.e. dumping multiple Perl values into a 225 string composed of several YAML streams, and loading such a string 226 into several values under list context. 227 228[Changes for 0.66 (JSON::Syck 0.14) - 2006-07-29] 229 230* Further improvements of loading semantics for explicitly 231 tagged nodes. 232 Contributed by: Yuval Kogman 233 234 235[Changes for 0.66 (JSON::Syck 0.14) - 2006-07-29] 236 237* The initialization sequence could cause segfaults on 238 FreeBSD systems. 239 Reported by: Chia-Liang Kao 240 241* Emit '!perl/ref' instead of '!perl/ref:' for consistency with 242 other language's tagging systems. 243 Contributed by: Yuval Kogman 244 245[Changes for 0.65 (JSON::Syck 0.14) - 2006-07-28] 246 247* Delay initialization of B::Deparse objects until the first 248 time UseCode or LoadCode is in active use. 249 Reported by: Chia-Liang Kao 250 251[Changes for 0.64 (JSON::Syck 0.14) - 2006-07-22] 252 253* Deparsing code references was erroneously generating extra 254 NUL bytes on 64-bit platforms. 255 Reported by: Jesse Vincent 256 257[Changes for 0.63 (JSON::Syck 0.14) - 2006-07-20] 258 259* When JSON's SingleQuote mode is set to true, single quotes 260 inside JSON strings is now escaped properly. 261 Reported by: [Changes for 0.70 (JSON::Syck 0.14) - 2006-10-02] 262 263* Load()/Dump()/LoadFile()/DumpFile() in YAML::Syck now support 264 multiple YAML streams -- i.e. dumping multiple Perl values into a 265 string composed of several YAML streams, and loading such a string 266 into several values under list context. 267 268[Changes for 0.66 (JSON::Syck 0.14) - 2006-07-29] 269 270* Further improvements of loading semantics for explicitly 271 tagged nodes. 272 Contributed by: Yuval Kogman 273 274 275[Changes for 0.66 (JSON::Syck 0.14) - 2006-07-29] 276 277* The initialization sequence could cause segfaults on 278 FreeBSD systems. 279 Reported by: Chia-Liang Kao 280 281* Emit '!perl/ref' instead of '!perl/ref:' for consistency with 282 other language's tagging systems. 283 Contributed by: Yuval Kogman 284 285[Changes for 0.65 (JSON::Syck 0.14) - 2006-07-28] 286 287* Delay initialization of B::Deparse objects until the first 288 time UseCode or LoadCode is in active use. 289 Reported by: Chia-Liang Kao 290 291[Changes for 0.64 (JSON::Syck 0.14) - 2006-07-22] 292 293* Deparsing code references was erroneously generating extra 294 NUL bytes on 64-bit platforms. 295 Reported by: Jesse Vincent 296 297[Changes for 0.63 (JSON::Syck 0.14) - 2006-07-20] 298 299* When JSON's SingleQuote mode is set to true, single quotes 300 inside JSON strings is now escaped properly. 301 Reported by: Nelson Elhage 302 303[Changes for 0.62 (JSON::Syck 0.13) - 2006-07-11] 304 305* Fix compilation with Microsoft Visual C++. 306 Reported by: Nilson Santos Figueiredo Junior 307 308[Changes for 0.61 (JSON::Syck 0.13) - 2006-07-01] 309 310* Fix segmentation faults introduced by pre-loading B::Deparse. 311 Reported by: Randal Schwartz, Tatsuhiko Miyagawa 312 313[Changes for 0.60 (JSON::Syck 0.13) - 2006-06-30] 314 315* Completely change the way YAML tagging of references again, this time 316 using !!perl instead of !perl for compatibility with YAML.pm and other 317 YAML 1.1 implementations. 318 319[Changes for 0.46_02 (JSON::Syck 0.13) - 2006-06-29] 320 321* Completely change the way YAML tagging of references and 322 blessed references work: See http://pyyaml.org/wiki/PerlTagScheme 323 for the new specification. 324 325 Note that this means the emitter BREAKS COMPATIBILITY with earlier 326 versions of YAML loaders (both YAML::Syck and YAML.pm), although it 327 will still load YAML streams produced by earlier loaders. 328 329 Contributed by: Yuval Kogman 330 331[Changes for 0.46_01 (JSON::Syck 0.13) - 2006-06-25] 332 333* Add support for code references in YAML 334 Contributed by: Yuval Kogman, based on Storable.xs 335 336[Changes for 0.45 (JSON::Syck 0.13) - 2006-05-27] 337 338* Bogus indentations are no longer emitted for JSON for strings 339 containing newlines. 340 Reported by: Tatsuhiko Miyagawa 341 342* Fix memory leaks on Dump. 343 Contributed by: Andrew Danforth 344 345* Upgrade to upstream Syck 0.56-trunk; no functional changes. 346 347[Changes for 0.44 (JSON::Syck 0.12) - 2006-05-04] 348 349* Fix tests so they work warninglessly on 5.005. 350 351* Fix incorrect indentation level for scalars initialized twice -- 352 once as string and once as references -- such as the ones produced 353 by YAML.pm's Load() function. 354 Reported by: Alex Vandiver 355 356* Multilevel self-recursive structures now no longer generate 357 redundant anchor names. 358 Reported by: Alex Vandiver 359 360* Fix memory leaks when linking child nodes to parent hashes and 361 arrays. Also fix leaks when libsyck parser encounters an error. 362 Contributed by: Andrew Danforth 363 364* Added test cases to validate the memory leak fixes. Devel::Leak 365 is an optional dependency for these tests. 366 Contributed by: Clayton O'Neill 367 368[Changes for 0.43 (JSON::Syck 0.11) - 2006-04-29] 369 370* Loading self-recursive structures no longer trigger an 371 "Use of uninitialized value" warning. 372 373* Tests now pass for real on Perl 5.005. 374 Reported by: Anton Berezin 375 376* Setting $JSON::Syck::SingleQuote to true did not work for strings 377 ending in whitespaces. 378 Contributed by: Alex Vandiver 379 380[Changes for 0.42 (JSON::Syck 0.10) - 2006-04-25] 381 382* Support for loading recursive structures. 383 Reminded by: Adam Kennedy 384 385* Regained support for Perl 5.005. 386 387[Changes for 0.41 (JSON::Syck 0.10) - 2006-04-01] 388 389* Correctly dump circular structures in array and hash references. 390 Reported by: Jesse Vincent 391 392* Support for loading blessed scalar references. 393 Requested by: Dan Kogai 394 395* 0.40 was missing included Test::More, so tests could fail on a 396 freshly installed Perl 5.6.x. 397 Reported by: Uri Guttman 398 399[Changes for 0.40 (JSON::Syck 0.10) - 2006-03-31] 400 401* Merge YAML::Syck and JSON::Syck to a single distribution. Unified 402 our svn repo codebase onto openfoundry[1] as well. 403 [1] http://svn.openfoundry.org/perlsyck 404 405* Fixed JSON null serialization bug [rt:18021], unsigned integer bug 406 [rt:18464]. 407 408* Under JSON, scalar references are dereferenced eplicitly and 409 subroutine refefrences are serialized to null. 410 411* Fixed bug that integer elements in tied hashes were not correctly 412 serialized. Reported by: Dan Kogai 413 414[Changes for 0.38 - 2006-03-14] 415 416* Documentation change: in the POD text, stress the importance of setting 417 $YAML::Syck::ImplicitTyping to true, for interoperability with other 418 language's YAML/Syck bindings is desired. 419 Requested by: "dgaramond2" on Perlmonks. 420 421[Changes for 0.37 - 2006-03-14] 422 423* Fix build on Win32 caused by upstream Syck header changes. 424 Reported by: Nilson Santos F. Jr. 425 426[Changes for 0.36 - 2006-03-10] 427 428* YAML.pm 0.35 or earlier emitted "--- #YAML:1.0" instead of "--- %YAML:1.0" 429 as the version string; work around it to maintain compatibility.. 430 Reported by: Chia-Liang Kao 431 432[Changes for 0.35 - 2006-03-09] 433 434* Under implicit typing, hex and octal integers triggered segfaults. 435 Reported by: Rachwal Waldemar 436 437[Changes for 0.34 - 2006-03-07] 438 439* Upgrade to Module::Install 0.59. 440 441* Corrected copyright notices. 442 443[Changes for 0.33 - 2006-02-14] 444 445* Plain strings beginning with "~" was loaded as undef. 446 Reported by: Stephen Quinney 447 448[Changes for 0.32 - 2006-02-11] 449 450* Synchronize to upstream r231 (Ruby 1.8.4), with improved parsing of block 451 scalars, trailing colons/tabs, and support for complex keys (although not 452 enabled in Perl 5 yet.) 453 454[Changes for 0.31 - 2006-02-10] 455 456* Strings ending in colons, spaces or tabs was not quoted properly. 457 Reported by: Stephen Quinney 458 459[Changes for 0.30 - 2006-02-06] 460 461* When loading anchors pointing to a hash reference, reference count did 462 not increment accordingly. 463 Reported by: Johan Vromans 464 465* After loading hashes or arrays containing null elements, assigning into 466 those elements triggered a "modification of non-creatable value" error. 467 Reported by: Clinton Gormley 468 469* The string '~' is now emitted as a quoted "~" instead of bare ~ 470 (which would be loaded as undef.) 471 Reported by: Stephen Quinney 472 473[Changes for 0.29 - 2006-02-05] 474 475* Proper quoting support (for the JSON branch only). 476 Reported by: Anton Berezin 477 478* Switch to XSLoader on Perl 5.6.0+ for faster loading. 479 480[Changes for 0.28 - 2006-01-16] 481 482* Undef hash values is now emitted as "~" instead of "". 483 Reported by: Tatsuhiko Miyagawa 484 485* FETCH magic of tied variables and loop iterators is now respected. 486 Reported by: Tatsuhiko Miyagawa 487 488[Changes for 0.27 - 2006-01-16] 489 490* $YAML::Syck::SortKeys is now on by default. 491 Requested by: Brian Ingerson 492 493[Changes for 0.26 - 2006-01-16] 494 495* Add a $YAML::Syck::SortKeys flag to enable sorting hash keys. 496 Requested by: Brian Ingerson 497 498[Changes for 0.25 - 2006-01-14] 499 500* Loading foreign objects from YAML tags: 501 For example, "--- !hs/Foo {a: b}" is blessed into hs::Foo. 502 503[Changes for 0.24 - 2006-01-14] 504 505* Silence warnings on 64-bit machines. 506 Reported by: Anton Berezin 507 508[Changes for 0.23 - 2006-01-14] 509 510* Fix build for 5.6.x again. 511 Reported by: Anton Berezin 512 513[Changes for 0.22 - 2006-01-12] 514 515* Dump numbers without quoting even when under Unicode flag. 516 Conversely, a scalar with Unicode bit set is dumped as Unicode even 517 if it had stored a number before. 518 Reported by: Tatsuhiko Miyagawa 519 520[Changes for 0.21 - 2006-01-11] 521 522* Support for loading and dumping unicode strings. 523 Requested by: Tatsuhiko Miyagawa 524 525* Add a $YAML::Syck::ImplicitUnicode flag to control implicit setting 526 of unicode flags. 527 528[Changes for 0.20 - 2006-01-11] 529 530* Support for loading and dumping scalar references. 531 532* Support for dumping self-recursive data structures. 533 534[Changes for 0.19 - 2006-01-11] 535 536* More efficient memory use and allocation for the JSON branch. 537 538* Fix build on Perl 5.6.x again. 539 Reported by: Anton Berezin 540 541[Changes for 0.18 - 2006-01-11] 542 543* Allow installation for people with older Module::Install versions. 544 Reported by: Brian Ingerson 545 546[Changes for 0.17 - 2006-01-11] 547 548* Use the correct style for dual vars and tied scalars. 549 Reported by: Tatsuhiko Miyagawa 550 551[Changes for 0.16 - 2006-01-11] 552 553* Proper Headless/chomping/quoting support for Miyagawa's JSON::Syck 554 branch. JSON::Syck and YAML::Syck now shares a codebase completely. 555 Requested by: Tatsuhiko Miyagawa 556 557[Changes for 0.15 - 2006-01-10] 558 559* Add a $YAML::Syck::Headless flag to control emission of "---\n" 560 headers, for easier JSON interoperability. 561 562* Fix mis-dumping references as strings if the same pad position has 563 stored a previous dump result as string. 564 Reported by: Tatsuhiko Miyagawa 565 566* Fix build on Perl 5.6.x and on platforms without NAN/INF support. 567 Reported by: Anton Berezin 568 569[Changes for 0.14 - 2006-01-09] 570 571* Add a $YAML::Syck::ImplicitTyping flag to control recognition 572 of implicit types. Currently supports null, bool, float, int; 573 if it's turned off (as per default) only null is recognized. 574 Reported by: Brian Ingerson 575 576* Fix potential emission of redundant "--- " headings in large 577 dumped documents. 578 579* We no longer ship Storable.xs with the distribution. 580 581[Changes for 0.13 - 2006-01-09] 582 583* Parsing an empty string no longer causes bus error in threaded Perls. 584 Reported by: Tatsuhiko Miyagawa 585 586[Changes for 0.12 - 2006-01-09] 587 588* Parser errors now raises proper exceptions instead of segfaults. 589 Reported by: Tatsuhiko Miyagawa 590 591[Changes for 0.11 - 2006-01-09] 592 593* Trailing newlines were not outputted by emitters. 594 Reported by: Chia-Liang Kao 595 596[Changes for 0.10 - 2006-01-09] 597 598* Fix emitting of empty strings; they are now always quoted. 599 Reported by: Chia-Liang Kao 600 601[Changes for 0.09 - 2006-01-09] 602 603* Downgrade to the last stable release of libsyck to fix the 604 hash dumping layout problem. 605 Reported by: Gaal Yahas 606 607[Changes for 0.08 - 2006-01-09] 608 609* Fix double-free problem in object dumping. 610 Reported by: Chia-Liang Kao 611 612[Changes for 0.07 - 2006-01-09] 613 614* Loading of blessed hash and array references. 615 616* Do away with Test::More as testing dependency. 617 618[Changes for 0.06 - 2006-01-08] 619 620* Fix building problems on case-insensitive filesystems. 621 Reported by: Chia-Liang Kao 622 623[Changes for 0.05 - 2006-01-08] 624 625* DumpFile() and LoadFile() is exported by default. 626 627* Undef now dumps as '~'; also supports dumping blessed references as 628 'perl/!type'. (Loading them doesn't work at this moment.) 629 Implemented by: Gaal Yahas 630 631* Loading hashes and arrays no longer creates dangling references 632 that caused memory leaks. 633 Reported by: Tatsuhiko Miyagawa 634 635[Changes for 0.04 - 2005-12-28] 636 637* Truly support Perl versions before 5.7.3, thanks to ppport.h. 638 Reported by: Anton Berezin 639 640[Changes for 0.03 - 2005-12-27] 641 642* Make syck.h compile with a Perl built with -DDEBUG. 643 Reported by: Slaven Rezic 644 645[Changes for 0.02 - 2005-12-26] 646 647* Move from SWIG to much lighter-weight native XS implementation. 648 649* Begins bundling Storable.xs to use the same serialization logic. 650 651[Changes for 0.01 - 2005-12-26] 652 653* Initial release to CPAN of this six-hours-old hack. 654