Final commit before tha 0.3 release.
This commit is contained in:
parent
2c9d464389
commit
ab154480fb
66
CHANGES.txt
66
CHANGES.txt
|
@ -1,3 +1,69 @@
|
|||
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:
|
||||
|
||||
|
||||
|
|
28
README.html
28
README.html
|
@ -4,7 +4,7 @@
|
|||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<meta name="generator" content="Docutils 0.7: http://docutils.sourceforge.net/" />
|
||||
<title>D:YAML 0.2</title>
|
||||
<title>D:YAML 0.3</title>
|
||||
<style type="text/css">
|
||||
|
||||
/*
|
||||
|
@ -310,36 +310,37 @@ ul.auto-toc {
|
|||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<div class="document" id="d-yaml-0-2">
|
||||
<h1 class="title">D:YAML 0.2</h1>
|
||||
<div class="document" id="d-yaml-0-3">
|
||||
<h1 class="title">D:YAML 0.3</h1>
|
||||
|
||||
<div class="section" id="introduction">
|
||||
<h1>Introduction</h1>
|
||||
<p>D:YAML is an open source YAML parser and emitter library for the D programming
|
||||
language. It is
|
||||
(<a class="reference external" href="https://github.com/kiith-sa/D-YAML/wiki/Differences-between-D:YAML-and-the-YAML-specification">almost</a>)
|
||||
compliant to the YAML 1.1 specification. Much of D:YAML code is based on
|
||||
<a class="reference external" href="http://www.pyyaml.org">PyYAML</a> created by Kirill Simonov. D:YAML has no
|
||||
external dependencies, all it needs is a D compiler and Phobos (standard
|
||||
library). It is written in D2 and there are no plans for D1 or Tango support.</p>
|
||||
<p>D:YAML is designed to be as easy to use as possible while supporting the full
|
||||
feature set of YAML. To start using it in your project, see the
|
||||
compliant to the YAML 1.1 specification. D:YAML is based on
|
||||
<a class="reference external" href="http://www.pyyaml.org">PyYAML</a> created by Kirill Simonov. It has no external
|
||||
dependencies, it only needs a D compiler and Phobos (standard library). It is
|
||||
written in D2 and there are no plans for D1 support.</p>
|
||||
<p>D:YAML is designed to be easy to use while supporting the full feature set of
|
||||
YAML. To start using it in your project, see the
|
||||
<a class="reference external" href="https://github.com/kiith-sa/D-YAML/wiki/Getting-Started">Getting Started</a>
|
||||
tutorial.</p>
|
||||
<p>D:YAML is still a work in progress. Its API is still not stable and there might
|
||||
be compatibility breaking changes. For instance, currently some D:YAML API
|
||||
<p>D:YAML is still a work in progress. Its API is not stable and there might be
|
||||
compatibility breaking changes. For instance, currently some D:YAML API
|
||||
functions depend on the <tt class="docutils literal">std.stream</tt> module in Phobos. This module is expected
|
||||
to be rewritten in future and D:YAML will change accordingly.</p>
|
||||
</div>
|
||||
<div class="section" id="features">
|
||||
<h1>Features</h1>
|
||||
<ul class="simple">
|
||||
<li>Easy to use, high-level API and detailed debugging messages.</li>
|
||||
<li>Easy to use, high level API and detailed debugging messages.</li>
|
||||
<li>Detailed API documentation and tutorials.</li>
|
||||
<li>Code examples.</li>
|
||||
<li>No external dependencies.</li>
|
||||
<li>Supports all YAML 1.1 constructs. All examples from the YAML 1.1 specification
|
||||
are parsed correctly.</li>
|
||||
<li>Read and write from/to YAML files as well as memory or user defined streams.</li>
|
||||
<li>Reads from and writes to YAML files as well as memory or user defined streams.</li>
|
||||
<li>UTF-8, UTF-16 and UTF-32 encodings are supported, both big and little endian
|
||||
(plain ASCII also works as it is a subset of UTF-8).</li>
|
||||
<li>Support for both block (Python-like, based on indentation) and flow
|
||||
|
@ -351,6 +352,7 @@ scalar tags.</li>
|
|||
<li>All tags (data types) described at <a class="reference external" href="http://yaml.org/type/">http://yaml.org/type/</a> are supported, with
|
||||
the exception of <tt class="docutils literal">tag:yaml.org,2002:yaml</tt>, which is used to represent YAML
|
||||
code in YAML.</li>
|
||||
<li>Remembers YAML style information between loading and dumping if possible.</li>
|
||||
<li>There is no support for recursive data structures.
|
||||
There are no plans to implement this at the moment.</li>
|
||||
</ul>
|
||||
|
|
24
README.rst
24
README.rst
|
@ -1,5 +1,5 @@
|
|||
==========
|
||||
D:YAML 0.2
|
||||
D:YAML 0.3
|
||||
==========
|
||||
|
||||
------------
|
||||
|
@ -9,18 +9,18 @@ Introduction
|
|||
D:YAML is an open source YAML parser and emitter library for the D programming
|
||||
language. It is
|
||||
(`almost <https://github.com/kiith-sa/D-YAML/wiki/Differences-between-D:YAML-and-the-YAML-specification>`_)
|
||||
compliant to the YAML 1.1 specification. Much of D:YAML code is based on
|
||||
`PyYAML <http://www.pyyaml.org>`_ created by Kirill Simonov. D:YAML has no
|
||||
external dependencies, all it needs is a D compiler and Phobos (standard
|
||||
library). It is written in D2 and there are no plans for D1 or Tango support.
|
||||
compliant to the YAML 1.1 specification. D:YAML is based on
|
||||
`PyYAML <http://www.pyyaml.org>`_ created by Kirill Simonov. It has no external
|
||||
dependencies, it only needs a D compiler and Phobos (standard library). It is
|
||||
written in D2 and there are no plans for D1 support.
|
||||
|
||||
D:YAML is designed to be as easy to use as possible while supporting the full
|
||||
feature set of YAML. To start using it in your project, see the
|
||||
D:YAML is designed to be easy to use while supporting the full feature set of
|
||||
YAML. To start using it in your project, see the
|
||||
`Getting Started <https://github.com/kiith-sa/D-YAML/wiki/Getting-Started>`_
|
||||
tutorial.
|
||||
|
||||
D:YAML is still a work in progress. Its API is still not stable and there might
|
||||
be compatibility breaking changes. For instance, currently some D:YAML API
|
||||
D:YAML is still a work in progress. Its API is not stable and there might be
|
||||
compatibility breaking changes. For instance, currently some D:YAML API
|
||||
functions depend on the ``std.stream`` module in Phobos. This module is expected
|
||||
to be rewritten in future and D:YAML will change accordingly.
|
||||
|
||||
|
@ -29,12 +29,13 @@ to be rewritten in future and D:YAML will change accordingly.
|
|||
Features
|
||||
--------
|
||||
|
||||
* Easy to use, high-level API and detailed debugging messages.
|
||||
* Easy to use, high level API and detailed debugging messages.
|
||||
* Detailed API documentation and tutorials.
|
||||
* Code examples.
|
||||
* No external dependencies.
|
||||
* Supports all YAML 1.1 constructs. All examples from the YAML 1.1 specification
|
||||
are parsed correctly.
|
||||
* Read and write from/to YAML files as well as memory or user defined streams.
|
||||
* Reads from and writes to YAML files as well as memory or user defined streams.
|
||||
* UTF-8, UTF-16 and UTF-32 encodings are supported, both big and little endian
|
||||
(plain ASCII also works as it is a subset of UTF-8).
|
||||
* Support for both block (Python-like, based on indentation) and flow
|
||||
|
@ -46,6 +47,7 @@ Features
|
|||
* All tags (data types) described at http://yaml.org/type/ are supported, with
|
||||
the exception of ``tag:yaml.org,2002:yaml``, which is used to represent YAML
|
||||
code in YAML.
|
||||
* Remembers YAML style information between loading and dumping if possible.
|
||||
* There is no support for recursive data structures.
|
||||
There are no plans to implement this at the moment.
|
||||
|
||||
|
|
|
@ -29,7 +29,7 @@ links = ../index.html Documentation home
|
|||
# Source files or patterns to ignore. Supports regexp syntax.
|
||||
# E.g; To ignore main.d and all source files in the test/ directory,
|
||||
# you would use: "main.d test/*"
|
||||
ignore = test/*, examples/*, docsrc/*, autoddoc/*, yaml.d, unittest.d, cdc.d, dyaml/composer.d, dyaml/event.d, dyaml/parser.d, dyaml/reader.d, dyaml/scanner.d, dyaml/token.d, dyaml/util.d, dyaml/anchor.d, dyaml/emitter.d, dyaml/flags.d, dyaml/serializer.d, dyaml/sharedobject.d, dyaml/tag.d, dyaml/tagdirectives.d, dyaml/queue.d, dyaml/escapes.d, dyaml/fastcharsearch.d
|
||||
ignore = test/*, examples/*, docsrc/*, autoddoc/*, yaml.d, unittest.d, cdc.d, dyaml/composer.d, dyaml/event.d, dyaml/parser.d, dyaml/reader.d, dyaml/scanner.d, dyaml/token.d, dyaml/util.d, dyaml/anchor.d, dyaml/emitter.d, dyaml/flags.d, dyaml/serializer.d, dyaml/zerostring.d, dyaml/tag.d, dyaml/tagdirective.d, dyaml/queue.d, dyaml/escapes.d, dyaml/fastcharsearch.d
|
||||
|
||||
[DDOC]
|
||||
# Command to use to generate the documentation.
|
||||
|
|
Binary file not shown.
|
@ -138,7 +138,7 @@ struct appears in Phobos.</p>
|
|||
</div>
|
||||
<div class="footer">
|
||||
© Copyright 2011, Ferdinand Majerech. Based on PyYAML http://www.pyyaml.org by Kirill Simonov.
|
||||
Last updated on Nov 15, 2011.
|
||||
Last updated on Nov 16, 2011.
|
||||
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.7.
|
||||
</div>
|
||||
</body>
|
||||
|
|
|
@ -104,7 +104,7 @@
|
|||
</div>
|
||||
<div class="footer">
|
||||
© Copyright 2011, Ferdinand Majerech. Based on PyYAML http://www.pyyaml.org by Kirill Simonov.
|
||||
Last updated on Nov 15, 2011.
|
||||
Last updated on Nov 16, 2011.
|
||||
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.7.
|
||||
</div>
|
||||
</body>
|
||||
|
|
|
@ -87,7 +87,7 @@
|
|||
</div>
|
||||
<div class="footer">
|
||||
© Copyright 2011, Ferdinand Majerech. Based on PyYAML http://www.pyyaml.org by Kirill Simonov.
|
||||
Last updated on Nov 15, 2011.
|
||||
Last updated on Nov 16, 2011.
|
||||
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.7.
|
||||
</div>
|
||||
</body>
|
||||
|
|
|
@ -368,7 +368,7 @@ directory of the D:YAML package.</p>
|
|||
</div>
|
||||
<div class="footer">
|
||||
© Copyright 2011, Ferdinand Majerech. Based on PyYAML http://www.pyyaml.org by Kirill Simonov.
|
||||
Last updated on Nov 15, 2011.
|
||||
Last updated on Nov 16, 2011.
|
||||
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.7.
|
||||
</div>
|
||||
</body>
|
||||
|
|
|
@ -237,7 +237,7 @@ example in the <tt class="docutils literal"><span class="pre">example/getting_st
|
|||
</div>
|
||||
<div class="footer">
|
||||
© Copyright 2011, Ferdinand Majerech. Based on PyYAML http://www.pyyaml.org by Kirill Simonov.
|
||||
Last updated on Nov 15, 2011.
|
||||
Last updated on Nov 16, 2011.
|
||||
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.7.
|
||||
</div>
|
||||
</body>
|
||||
|
|
|
@ -330,7 +330,7 @@ Some of these might change in the future (especially !!map and !!set).</p>
|
|||
</div>
|
||||
<div class="footer">
|
||||
© Copyright 2011, Ferdinand Majerech. Based on PyYAML http://www.pyyaml.org by Kirill Simonov.
|
||||
Last updated on Nov 15, 2011.
|
||||
Last updated on Nov 16, 2011.
|
||||
Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.0.7.
|
||||
</div>
|
||||
</body>
|
||||
|
|
Loading…
Reference in a new issue