119 lines
3.3 KiB
Plaintext
119 lines
3.3 KiB
Plaintext
0.4.0:
|
|
|
|
|
|
- FEATURES/IMPROVEMENTS:
|
|
|
|
- API BREAKING: All structs and classes stored directly in YAML nodes
|
|
(aka custom YAML data types) now need to define the opCmp operator.
|
|
This is used for duplicate detection instead of AAs (which are broken)
|
|
and will allow efficient access to data in unordered maps.
|
|
|
|
- API BREAKING: Simplified the Constructor API. Constructor functions now
|
|
don't need to get Marks through parameters - any exceptions thrown by
|
|
the constructor functions are caught and wrapped along with Mark info.
|
|
|
|
- Various small improvements in the API documentation.
|
|
|
|
- Updated API documentation, tutorials and examples to match the changes.
|
|
|
|
- Small CDC (build script) improvements.
|
|
|
|
|
|
- BUGFIXES:
|
|
|
|
- Fixed compilation with DMD 2.057.
|
|
|
|
- Fixed a bug caused by std.regex changes that broke null value parsing.
|
|
|
|
- Fixed compilation on 32bit.
|
|
|
|
- Various small bugfixes.
|
|
|
|
|
|
|
|
0.3.0:
|
|
|
|
|
|
- FEATURES/IMPROVEMENTS:
|
|
|
|
- API BREAKING: Removed Node.getToVar as it turned out to be a premature
|
|
optimization.
|
|
|
|
- API BREAKING: Constructor API for constructing custom YAML data types has
|
|
been improved to make it easier to load custom classes/structs. See the
|
|
custom types tutorial and Constructor API documentation.
|
|
|
|
- Node.opIndex now returns a reference to a node.
|
|
|
|
- Added a shortcut alias Node.as for Node.get . Node.as might eventually
|
|
replace Node.get (in a 1.0 release).
|
|
|
|
- User can now access a string representation of tag of a node.
|
|
|
|
- Nodes now remember their scalar and collection styles between loading and
|
|
dumping. These are not accessible to user. User can set output styles in
|
|
Representer.
|
|
|
|
- Updated API documentation to reflect the new changes, added more examples
|
|
and overall made the documentation more readable.
|
|
|
|
- Improved error messages of exceptions.
|
|
|
|
- Drastically optimized scanning and parsing, decreasing parsing time to about
|
|
10% (no precise benchmark comparison with 0.2 at the moment).
|
|
|
|
- Eliminated most GC usage, improving speed and memory usage.
|
|
|
|
- Optimized Dumper for speed, especially when dumping many small files.
|
|
|
|
- Reader has been reimplemented to improve performance.
|
|
|
|
- Many other speed and memory optimizations.
|
|
|
|
- Added a profiling build target and a parsing/dumping benchmark.
|
|
|
|
- Added a random YAML file generator and a YAML file analyzer, as example
|
|
applications and for benchmarking.
|
|
|
|
- Added a "clean" target to example Makefiles.
|
|
|
|
- Got rid of all global state.
|
|
|
|
|
|
- BUGFIXES:
|
|
|
|
- Fixed compatibility issues with DMD 2.056.
|
|
|
|
- Fixed an Emitter bug which caused tags to always be emitted in full format.
|
|
|
|
- Fixed a bug that caused errors when loading documents with YAML version
|
|
directives.
|
|
|
|
- Fixed many const-correctness bugs.
|
|
|
|
- Minor bugfixes all over the code.
|
|
|
|
- Fixed many documentation bugs.
|
|
|
|
|
|
|
|
0.2.0:
|
|
|
|
|
|
- FEATURES/IMPROVEMENTS:
|
|
|
|
- Implemented YAML emitter, and related unittests/documentation.
|
|
|
|
- Tags are now stored in nodes, allowing D:YAML to be closer to the
|
|
specification.
|
|
|
|
- Loader API has been broken to make it more extensible in future -
|
|
Representer and Constructor are no more specified in the constructor,
|
|
and the load() shortcut functions have been removed, as all that's needed to
|
|
load a YAML document now is Loader("file.yaml").load() .
|
|
|
|
|
|
- BUGFIXES:
|
|
|
|
- Fixed many bugs in the parser, scanner, composer and constructor.
|