diff --git a/CHANGES.txt b/CHANGES.txt new file mode 100644 index 0000000..048bd9f --- /dev/null +++ b/CHANGES.txt @@ -0,0 +1,19 @@ +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. diff --git a/README.html b/README.html index 255bb10..5c0d14a 100644 --- a/README.html +++ b/README.html @@ -4,7 +4,7 @@ -D:YAML 0.1 +D:YAML 0.2 -
-

D:YAML 0.1

+
+

D:YAML 0.2

Introduction

-

D:YAML is an open source YAML parser library for the D programming language. -It is +

D:YAML is an open source YAML parser and emitter library for the D programming +language. It is (almost) compliant to the YAML 1.1 specification. Much of D:YAML code is based on PyYAML 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.

-

At the moment, D:YAML can only read, not write YAML files. This will change in -the following releases. 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 as easy to use as possible while supporting the full +feature set of YAML. To start using it in your project, see the Getting Started tutorial.

D:YAML is still a work in progress. Its API is still not stable and there might @@ -341,7 +339,7 @@ to be rewritten in future and D:YAML will change accordingly.

  • No external dependencies.
  • Supports all YAML 1.1 constructs. All examples from the YAML 1.1 specification are parsed correctly.
  • -
  • Read from YAML files as well as from memory or user defined streams.
  • +
  • Read and write from/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 @@ -349,11 +347,10 @@ are parsed correctly.
  • Support for YAML anchors and aliases.
  • Support for default values in mappings.
  • Support for custom tags (data types), and implicit tag resolution for custom -tags.
  • +scalar tags.
  • 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.
  • -
  • Cannot write YAML at the moment. This will change in the future.
  • There is no support for recursive data structures. There are no plans to implement this at the moment.
  • @@ -445,11 +442,6 @@ DEALINGS IN THE SOFTWARE.

    D:YAML was created using Vim and DMD on Debian and Ubuntu Linux as a YAML parsing library for the D programming language.

    -
    - diff --git a/README.rst b/README.rst index f63a7f8..9a14336 100644 --- a/README.rst +++ b/README.rst @@ -1,23 +1,21 @@ ========== -D:YAML 0.1 +D:YAML 0.2 ========== ------------ Introduction ------------ -D:YAML is an open source YAML parser library for the D programming language. -It is +D:YAML is an open source YAML parser and emitter library for the D programming +language. It is (`almost `_) compliant to the YAML 1.1 specification. Much of D:YAML code is based on `PyYAML `_ 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. -At the moment, D:YAML can only read, not write YAML files. This will change in -the following releases. 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 as easy to use as possible while supporting the full +feature set of YAML. To start using it in your project, see the `Getting Started `_ tutorial. @@ -36,7 +34,7 @@ Features * No external dependencies. * Supports all YAML 1.1 constructs. All examples from the YAML 1.1 specification are parsed correctly. -* Read from YAML files as well as from memory or user defined streams. +* Read and write from/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 @@ -44,11 +42,10 @@ Features * Support for YAML anchors and aliases. * Support for default values in mappings. * Support for custom tags (data types), and implicit tag resolution for custom - tags. + scalar tags. * 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. -* Cannot write YAML at the moment. This will change in the future. * There is no support for recursive data structures. There are no plans to implement this at the moment. @@ -57,16 +54,16 @@ Features Directory structure ------------------- -=============== ====================================================================== +=============== ======================================================================= Directory Contents -=============== ====================================================================== +=============== ======================================================================= ``./`` This README file, utility scripts, D:YAML sources outside any packages. ``./doc`` Documentation. ``./docsrc`` Documentation sources. ``./dyaml`` D:YAML source code. ``./examples/`` Example D:YAML code. ``./test`` Unittest code and inputs. -=============== ====================================================================== +=============== ======================================================================= ----------------------- diff --git a/doc/doctrees/environment.pickle b/doc/doctrees/environment.pickle index e329ca1..b0bf010 100644 Binary files a/doc/doctrees/environment.pickle and b/doc/doctrees/environment.pickle differ diff --git a/doc/html/.buildinfo b/doc/html/.buildinfo index ff4d13d..6366e2a 100644 --- a/doc/html/.buildinfo +++ b/doc/html/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: bc848a1b422611af46aa082001644165 +config: 3b89228da749be7cd7bc0e0980432c5f tags: fbb0d17656682115ca4d033fb2f83ba1 diff --git a/doc/html/articles/spec_differences.html b/doc/html/articles/spec_differences.html index cff7ce6..e0b8e1f 100644 --- a/doc/html/articles/spec_differences.html +++ b/doc/html/articles/spec_differences.html @@ -7,13 +7,13 @@ - Differences between D:YAML and the YAML specification — D:YAML v0.1 documentation + Differences between D:YAML and the YAML specification — D:YAML v0.2 documentation - + @@ -32,7 +32,7 @@
  • previous
  • -
  • D:YAML v0.1 documentation »
  • +
  • D:YAML v0.2 documentation »
  • @@ -133,7 +133,7 @@ struct appears in Phobos.

  • previous
  • -
  • D:YAML v0.1 documentation »
  • +
  • D:YAML v0.2 documentation »
  • @@ -99,7 +99,7 @@
  • next
  • -
  • D:YAML v0.1 documentation »
  • +
  • D:YAML v0.2 documentation »
  • @@ -232,7 +232,7 @@ example in the example/getting_st
  • previous |
  • -
  • D:YAML v0.1 documentation »
  • +
  • D:YAML v0.2 documentation »
  • @@ -325,7 +325,7 @@ Some of these might change in the future (especially !!map and !!set).

  • previous |
  • -
  • D:YAML v0.1 documentation »
  • +
  • D:YAML v0.2 documentation »