3 # a simple php yaml class
7 # >> $changes = Spyc::YAMLLoad('CHANGES');
10 title: Spyc -- a Simple PHP YAML Class
13 - [Chris Wanstrath, chris@ozmm.org]
14 - [Vlad Andersen, vlad@oneiros.ru]
15 websites: [http://www.yaml.org, http://spyc.sourceforge.net/]
16 license: [MIT License, http://www.opensource.org/licenses/mit-license.php]
17 copyright: (c) 2005-2009 Chris Wanstrath, Vlad Andersen
22 - Spyc parsing engine is rewritten from scratch (one-pass parsing). It runs now _much_ faster.
23 - A bug with colons in comments is fixed (thanks to Neil Galvin)
24 - Fixed: a bug when the source ends with a literal block, the scripts loops for ever, with an error message (index out of bound). Thanks to Pascal Diethelm.
25 - Some more bugs in the engine are fixed.
26 - Only alphanumeric characters are now allowed in reference names.
27 - Fixed a bug with inline arrays (thanks Tobiah for pointing it out).
28 - Fixed a bug with ">" symbol (thanks to Pierre Tardy).
29 - Numerous bugs also fixed (thanks to fellow programmers and bug reporters)
32 - All .yml file extensions changed to .yaml (see recommendation: http://yaml.org/faq.html)
33 - Compartibility fix for PHP < 4.2.0 (no need to compile PHP with --enable-ctype)
34 - PHP5 version is not failing self-tests now (one of the fixes for 0.2.4 was buggy)
37 - Sped up overall performance by a hundred times or so by using different node id generation algorithm.
38 - Implemented Tobias Gruetzmacher's changes:
39 - Explicit boolean dumping.
40 - Fixed a bug causing "arr1: [a, ['1', "2"], b]" to not parse correctly. Some important changes in _inlineEscape().
41 - Fixed a bug for PHP5 version (YAMLDump and YAMLLoad should be declared static).
42 - Fixed a bug with malformed YAML resulting in E_NOTICE level errors.
43 - Fixed a bug in YAMLDump that caused structures like "array ('key': 'colon: colon')" to be dumped in non-literal style.
44 - Sped up overall performance by 10% or so by using different child selection algorithm in _gatherChildren
45 - Another change for speed: optimized the behaviour of _array_kmerge
48 - Fixed a bug causing "- {name: "Foo, Bar's", age: 20}" to not parse
49 correctly. Related to _inlineEscape() changes in 0.2.2, I believe.
52 - Implemented Mustafa Kumas' changes:
53 - Improved regex in _inlineEscape() method.
54 - Improved handling of escaped single and double quotes within strings.
57 - Implemented Fabien Potencier's changes:
58 - Fixed warnings reported by E_STRICT
59 - More complete YAML boolean support (on/off yes/no y/n)
60 - Produce error when someone tries to use tabs instead of spaces.
61 - Moved array_kmerge function into a private method.
62 - Added PHP5 strict version of class (spyc.php5).
63 - Added line break preservation in dump()
64 - Added some string checking sanity before calling file_exists()
67 - Hashes (#) can now be used in strings, and comments work better.
68 - Fixed warning about non-object.
69 - Numeric keys are now allowed.
70 - '"key" : value' is now allowed (space after quoted key name)
71 - Underscore (_) and other crazy characters now allowed in key names of
73 - Added options/parameters to change indent and wordwrap length in dump()
74 - Added a really primitive, lo-fi output test script.
77 - Fixed notices that were being generated when set to E_ALL.
78 - Defined some private properties like a good OOPer.