You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@daffodil.apache.org by sl...@apache.org on 2018/01/30 01:04:46 UTC

[incubator-daffodil-site] branch master updated: Changes in preparation for the 2.1.0 release

This is an automated email from the ASF dual-hosted git repository.

slawrence pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-daffodil-site.git


The following commit(s) were added to refs/heads/master by this push:
     new a017a26  Changes in preparation for the 2.1.0 release
a017a26 is described below

commit a017a2602de683ed37076b0ed27e9e0defed8e3b
Author: Steve Lawrence <sl...@tresys.com>
AuthorDate: Fri Jan 26 14:33:10 2018 -0500

    Changes in preparation for the 2.1.0 release
    
    - Update the unsupported features page
    - Update the 2.1.0 page to contain actual relase notes data instead of
      dummy data. Updates links to were relase files will go to be voted on.
    - Update the release template to put file downloads, maven, and sbt all
      under separate tables title "Get Release" and to add instructions on
      how to verify download signatures
---
 site/_includes/download-list.html |   6 +-
 site/_layouts/release.html        |  94 ++++++----
 site/_releases/2.1.0.md           | 128 ++++++++++++--
 site/unsupported.md               | 362 +++++++++++++++++++-------------------
 4 files changed, 355 insertions(+), 235 deletions(-)

diff --git a/site/_includes/download-list.html b/site/_includes/download-list.html
index 03c100e..d91184e 100644
--- a/site/_includes/download-list.html
+++ b/site/_includes/download-list.html
@@ -1,15 +1,15 @@
 {% for file in include.artifacts %}
 <div class="row">
-  <div class="col-md-5">
+  <div class="col-md-6">
     <a href="{{ include.artifact-root | append: file }}">{{ file }}</a>
   </div>
-  <div class="col-md-7">
+  <div class="col-md-6 text-right">
     {% if include.checksum-root %}
       {% assign base = include.checksum-root | append: file %}
+      [ <a href="{{ base }}.asc">PGP</a> ]
       [ <a href="{{ base }}.md5">MD5</a> ]
       [ <a href="{{ base }}.sha1">SHA1</a> ]
       [ <a href="{{ base }}.sha256">SHA256</a> ]
-      [ <a href="{{ base }}.asc">PGP</a> ]
     {% endif %}
   </div>
 </div>
diff --git a/site/_layouts/release.html b/site/_layouts/release.html
index 6b4dad4..988066b 100644
--- a/site/_layouts/release.html
+++ b/site/_layouts/release.html
@@ -22,41 +22,54 @@ permalink: /release/release-notes-:title
 {% endunless %}
 
 <div class="row">
-  <div class="col-md-8">
-    {% if page.source-dist %}
-      <h3>Source</h3>
-      {% include download-list.html
-         version=page.title
-         artifacts=page.source-dist
-         checksum-root=page.checksum-root
-         artifact-root=page.artifact-root
-      %}
-    {% endif %}
+  <div class="col-md-9">
+    <h3>Get Release</h3>
+    <ul class="nav nav-tabs">
+      <li class="active"><a data-toggle="tab" href="#download">Download</a></li>
+      <li><a data-toggle="tab" href="#maven">Maven</a></li>
+      <li><a data-toggle="tab" href="#sbt">SBT</a></li>
+    </ul>
+    <div class="tab-content">
+      <div id="download" class="tab-pane fade in active">
+        {% if page.source-dist %}
+          <h4>Source</h4>
+          <p>
+          {% include download-list.html
+             version=page.title
+             artifacts=page.source-dist
+             checksum-root=page.checksum-root
+             artifact-root=page.artifact-root
+          %}
+          </p>
+        {% endif %}
 
-    {% if page.binary-dist %}
-        <h3>Binaries</h3>
-        {% include download-list.html
-         version=page.title
-         artifacts=page.binary-dist
-         checksum-root=page.checksum-root
-         artifact-root=page.artifact-root
-        %}
-    {% endif %}
-  </div>
-  <div class="col-md-4">
-    <h3>Documentation</h3>
-    <a href="/docs/{{ page.title }}/javadoc/">Javadoc</a><br />
-    <a href="/docs/{{ page.title }}/scaladoc/">Scaladoc</a>
-  </div>
-</div>
+        {% if page.binary-dist %}
+          <h4>Binaries</h4>
+          <p>
+          {% include download-list.html
+             version=page.title
+             artifacts=page.binary-dist
+             checksum-root=page.checksum-root
+             artifact-root=page.artifact-root
+          %}
+          </p>
+        {% endif %}
+
+        {% if page.apache %}
+          <p>
+            <i>
+              The above release files should be verified using the PGP signatures and the
+              <a href='{{ page.key-file }}'>project release KEYS</a>. See
+              <a href='https://www.apache.org/dyn/closer.cgi#verify'>verification instructions</a>
+              for a description of using the PGP and KEYS files for
+              verification. Checksums (MD5, SHA1, SHA256) are also provided as
+              alternative verification methods.
+            </i>
+          </p>
+        {% endif page.apache %}
+      </div>
 
-<h3>API Dependency</h3>
-<ul class="nav nav-tabs">
-  <li class="active"><a data-toggle="tab" href="#maven">Maven</a></li>
-  <li><a data-toggle="tab" href="#sbt">SBT</a></li>
-</ul>
-<div class="tab-content">
-  <div id="maven" class="tab-pane fade in active">
+      <div id="maven" class="tab-pane fade">
 {% highlight xml %}
   <dependency>
     <groupId>{% if page.apache %}org.apache.daffodil{% else %}edu.illinois.ncsa{% endif %}</groupId>
@@ -71,15 +84,22 @@ permalink: /release/release-notes-:title
   </repository>
 {% endunless %}
 {% endhighlight %}
-  </div>
-  <div id="sbt" class="tab-pane fade">
+      </div>
+      <div id="sbt" class="tab-pane fade">
 {% highlight scala %}
   libraryDependencies += "{% if page.apache %}org.apache.daffodil{% else %}edu.illinois.ncsa{% endif %}" %% "daffodil-sapi" % "{{ page.title }}"
-{% unless page.apache %} 
+{% unless page.apache %}
   resolvers += "NCSA Sonatype Releases" at "https://opensource.ncsa.illinois.edu/nexus/content/repositories/releases"
 {% endunless %}
 {% endhighlight %}
-  </div> 
+      </div>
+    </div>
+  </div>
+  <div class="col-md-3 text-right">
+    <h3>Documentation</h3>
+    <a href="/docs/{{ page.title }}/javadoc/">Javadoc</a><br />
+    <a href="/docs/{{ page.title }}/scaladoc/">Scaladoc</a>
+  </div>
 </div>
 
 <h3 id="release-notes">Release Notes</h3>
diff --git a/site/_releases/2.1.0.md b/site/_releases/2.1.0.md
index 0183cac..93fa211 100644
--- a/site/_releases/2.1.0.md
+++ b/site/_releases/2.1.0.md
@@ -3,35 +3,135 @@
 released: false
 apache: true
 title: 2.1.0
-date: 2017-09-05
-
+date: 2018-01-26
 summary: >
-    IBM compatability
+    Apache incubation/relicensing, packed decimal support, ambiguous expression
+    support, refactoring for future performance improvements
 
-artifact-root: "http://apache.org/dyn/closer.cgi?action=download&filename="
-checksum-root: "https://www.apache.org/dist/"
+artifact-root: "https://dist.apache.org/repos/dist/dev/incubator/daffodil/2.1.0-rc1/"
+checksum-root: "https://dist.apache.org/repos/dist/dev/incubator/daffodil/2.1.0-rc1/"
+key-file: "https://dist.apache.org/repos/dist/dev/incubator/daffodil/KEYS"
+#artifact-root: "http://www.apache.org/dyn/closer.lua/incubator/daffodil/2.1.0/"
+#checksum-root: "http://www.apache.org/dist/incubator/daffodil/2.1.0/"
+#key-file: "http://www.apache.org/dist/incubator/daffodil/KEYS"
 
 source-dist:
-    - "daffodil-2.1.0-incubating-src.tar.gz"
+    - "daffodil-2.1.0-incubating-src.zip"
 
 binary-dist:
     - "daffodil-2.1.0-bin.tar.gz"
+    - "daffodil-2.1.0-bin.zip"
     - "daffodil-2.1.0-1.noarch.rpm"
 
 scala-version: 2.11
 
 ---
 
-#### Category One
+Daffodil 2.1.0 is the first release of Daffodil as an Apache incubator project.
+This release includes relicensing the source to Apache v2, changing the
+namespace to org.apache.daffodil, and numerous bug fixes and DFDL feature
+additions to support more DFDL schemas.
+
+**This release contains changes which break compatibility with past releases.**
+Please see the deprecation / compatibility notes section for more information.
+
+#### Packed Decimal
+
+Added support for binary packed decimal data types. In addition to ``standard``,
+the ``dfdl:binaryNumberRep`` property now also accepts values of ``bcd``,
+``packed``, and ``ibm4690Packed`` to support Binary Coded Decimal, IBM 390
+Packed Decimal, and IBM 4690 Packed Decimal, respectively. The
+``dfdl:binaryDecimalVirtualPoint`` property applies for the appropriate types.
+Also implemented are ``dfdl:binaryPackedSignCodes`` and
+``dfdl:binaryNumberCheckPolicy`` to configure the valid nibble values when
+``dfdl:binaryNumberRep`` is ``packed``.
+
+* {% jira 1739 %} Implement 'packed' and 'bcd'
+
+#### Apache Incubation Support
+
+Multiple changes were made to support the move to Apache incubation. This
+includes changes to the source directory structure, relicensing files to Apache
+v2, changing the project package to org.apache.daffodil, updating the build
+infrastructure to SBT 1.x, and adding TravisCI continuous integration support.
+
+* {% jira 1856 %} Changes necessary for apache incubation
+* {% jira 1857 %} Update sbt to 1.x, simplifing build config and replacing deprecated syntax
+* {% jira 1870 %} invalid and nonfunctional URLs in source files
+* {% jira 1858 %} Add support for TravisCI
+* {% jira 1873 %} sbt warnings/errors 
+* {% jira 1612 %} sbt - branches without tags cause sbt compile to fail
+
+#### Ambiguous Path Expressions
+
+Previously, ambiguous path expressions (i.e. path expressions that could
+potentially reference multiple non-array elements of the same name) were not
+allowed and caused a schema definition error at schema. As of 2.1.0, such
+ambiguities are detected at runtime but are now only considered schema
+definition warnings. However, if a path expression ever evaluates to more than
+on non-array element at runtime, it will then be considered an error and cause a
+runtime schema definition error. This can allow for schemas that have ambiguous
+path expression, but in practice only ever evaluate to a single element.
+
+* {% jira 1773 %} Choice ambiguous element name results in failed expression
+* {% jira 1869 %} Nato link16 doesn't work on 2.0.0 Daffodil
+* {% jira 1877 %} Slow schema compilation due to unambiguous checks
+* {% jira 1854 %} Remove concept of slots from InfosetImpl.scala
+* {% jira 1860 %} Minimize the number of HashMap allocations/insertions in the Infoset
+
+#### TDML Runner Enhancements
+
+Changes were made to the TDML runner to support embedded defaultConfig option
+and to verify expected schema definition warnings.
+
+* {% jira 1868 %} TDML Runner defaultConfig cannot be embedded. Not checked properly.
+* {% jira 1583 %} TDML Runner - expected warnings feature
+* {% jira 1846 %} TDML Runner - Infoset.contents is stripping off all attributes
+
+#### BitOrder/ByteOrder/Encoding Refactoring
+
+* {% jira 1001 %} Invalid bitOrder and byteOrder combination should produce SDE
+* {% jira 1597 %} Too many ways that encoding, byteOrder, etc. are being setup
+* {% jira 1843 %} Unparser bitOrder change and OVC (outputValueCalc) interaction
+* {% jira 1876 %} Improve performance regression due to FormatInfo changes
+
+#### XML Output
+
+The XML infoset output (via the XMLTextInfosetOutputter) now writes an XML
+declaration ``<?xml version="1.) ... ?>`` at the beginning of output. It also
+ensures output is flushed at the end of writing, which should prevent issues
+users reported of receiving only partial data.
+
+* {% jira 1844 %} XMLTextInfosetOutputter should output an XML declaration
+* {% jira 1871 %} XMLTextInfosetOutputter endDocument should flush the writer
+
+#### Miscellaneous Bug Fixes
+
+* {% jira 1867 %} Memory leak in Register
+* {% jira 1862 %} Better logging/reset mechanism for MarkPool
+* {% jira 1851 %} Unparsing delimited data with escape characters could lead to truncation
+* {% jira 1855 %} Property Resolution - resolve onto ref objects
+* {% jira 1864 %} spurious SDE about all-text schema being non-scannable
+* {% jira 1866 %} Eclipse classpaths need fixing
+* {% jira 1872 %} Eclipse classpaths for daffodil-io module need fixing
+
+#### Deprecation/Compatability
 
-Sentence describing this category of fixes
+As of 2.1.0, the following changes have been made which affect compatibility
+with past releases:
 
-* Sections should be Header level4, i.e. ####
-* {% jira 123 %} - use {% raw %}{% jira 123 %}{% endraw %} to link to Daffodil JIRA issues
+**Namespace Change**
 
-#### Category Two
+Now that Daffodil is an Apache incubator project, its package namespace has been
+changed from ``edu.illinois.ncsa.daffodil`` to ``org.apache.daffodil``.
+Developers using the Daffodil Java and Scala API will need to update their
+source code and SBT/Maven configurations to use the new package namespace.
 
-Sentence describing this category of fixes
+**Daffodil Extension ``daf`` XML Namespace Change**
 
-* Sections should be Header level4, i.e. ####
-* {% jira 123 %} - use {% raw %}{% jira 123 %}{% endraw %} to link to Daffodil JIRA issues
+The Daffodil extension ``daf`` XML namespace has been modified to represent the move to
+Apache, changing from ``urn:ogf:dfdl:2013:imp:opensource.ncsa.illinois.edu:2012:ext``
+to ``urn:ogf:dfdl:2013:imp:daffodil.apache.org:2018:ext``. Backwards
+compatibility is maintained for schemas using the old ``daf`` namespace. All future
+Daffodil extensions will only be supported in the new namespace, so it is
+recommended that one update schemas to use the new namespace.
diff --git a/site/unsupported.md b/site/unsupported.md
index ff7fe36..4782ef9 100644
--- a/site/unsupported.md
+++ b/site/unsupported.md
@@ -49,184 +49,184 @@ The following table lists unsupported features and errata of the DFDL Specificat
 
 {% ok %} = supported &emsp; {% err %} = unsupported &emsp; {% warn %} = partially supported
 
-|  1.0.0   |  1.1.0   |  2.0.0   |Unparsing
-|:--------:|:--------:|:--------:|----------
-|{% err  %}|{% warn %}|{%  ok  %}|unparser
-|{% err  %}|{%  ok  %}|{%  ok  %}|outputNewLine
-|{% err  %}|{% err  %}|{%  ok  %}|fillByte
-|{% err  %}|{%  ok  %}|{%  ok  %}|textPadKind
-|{% err  %}|{% err  %}|{%  ok  %}|textOutputMinLength
-|{% err  %}|{%  ok  %}|{%  ok  %}|generateEscapeBlock
-|{% err  %}|{%  ok  %}|{%  ok  %}|extraEscapedCharacters
-|{% err  %}|{% err  %}|{%  ok  %}|truncateSpecifiedLengthString
-|{% err  %}|{% err  %}|{%  ok  %}|outputValueCalc
-                                  
-                                  
-|  1.0.0   |  1.1.0   |  2.0.0   |Types
-|:--------:|:--------:|:--------:|----------
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|decimal
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|integer
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|nonNegativeInteger
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|hexBinary
-|{% err  %}|{% err  %}|{%  ok  %}|boolean
-|{% err  %}|{% err  %}|{% err  %}|date (binary)
-|{% err  %}|{% err  %}|{% err  %}|time (binary)
-|{% err  %}|{% err  %}|{% err  %}|dateTime (binary)
-                                  
-                                  
-|  1.0.0   |  1.1.0   |  2.0.0   |XML Schema Features
-|:--------:|:--------:|:--------:|----------
-|{% err  %}|{% err  %}|{% err  %}|fixed
-|{% err  %}|{% err  %}|{% err  %}|default
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|elementFormDefault
-                                  
-                                  
-|  1.0.0   |  1.1.0   |  2.0.0   |DFDL Features
-|:--------:|:--------:|:--------:|----------
-|{% err  %}|{% err  %}|{% err  %}|defaulting of values for required elements
-|{% err  %}|{% err  %}|{% err  %}|'packed' binary number representations (packed, bcd, etc.)
-|{% err  %}|{% err  %}|{% err  %}|'zoned' binary number representations
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|advanced text number format properties
-|{% err  %}|{% err  %}|{% err  %}|bi-directional text
-|{% err  %}|{% err  %}|{% err  %}|unordered sequences
-|{% err  %}|{% err  %}|{% err  %}|floating elements in sequences
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|external variables
-|{% err  %}|{% err  %}|{% err  %}|byte-value entities (aka raw-byte entities)
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|validation
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|alignment
-|{% err  %}|{% err  %}|{% err  %}|'type' component of DFDL infoset
-|{% err  %}|{% err  %}|{% err  %}|'unionMemberSchema' component of DFDL infoset
-|{% err  %}|{% err  %}|{% err  %}|'valid' component of DFDL infoset
-|{% err  %}|{% err  %}|{% err  %}|unicodeByteOrderMark
-|{% err  %}|{% err  %}|{%  ok  %}|all runtime-computed format properties
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|runtime-computation for escapeCharacter, escapeEscapeCharacter, byteOrder
-|{% err  %}|{% err  %}|{%  ok  %}|IANA standard encodings other than utf-8, utf-16BE, utf-16LE, utf-32BE, utf-32LE, and ASCII
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|optional qualified names in expression language
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|check for non-portable regular expressions
-|{% err  %}|{% err  %}|{% err  %}|delimited binary
-|{% err  %}|{% err  %}|{% err  %}|extended ICU symbols 'u' and 'I' in calendarPattern
-                                  
-                                  
-|  1.0.0   |  1.1.0   |  2.0.0   |Daffodil Specific
-|:--------:|:--------:|:--------:|----------
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|save/reload parser
-                                  
-                                  
-|  1.0.0   |  1.1.0   |  2.0.0   |Properties and Property Enumerations
-|:--------:|:--------:|:--------:|----------
-|{% err  %}|{% err  %}|{%  ok  %}|ignoreCase="yes"
-|{% err  %}|{% err  %}|{% err  %}|utf16Width="variable"
-|{% err  %}|{% err  %}|{% err  %}|textNumberRep="zoned"
-|{% err  %}|{% err  %}|{% err  %}|binaryNumberRep="packed"
-|{% err  %}|{% err  %}|{% err  %}|binaryNumberRep="bcd"
-|{% err  %}|{% err  %}|{% err  %}|binaryNumberRep="ibm4690Packed"
-|{% err  %}|{% err  %}|{% err  %}|binaryFloatRep="ibm390Hex"
-|{% err  %}|{% err  %}|{% err  %}|nilKind="logicalValue"
-|{% err  %}|{% err  %}|{% err  %}|nilKind="literalCharacter"
-|{% err  %}|{% err  %}|{% err  %}|lengthKind="prefixed"
-|{% err  %}|{% err  %}|{% err  %}|lengthKind="endOfParent"
-|{% err  %}|{% err  %}|{% err  %}|occursCountKind="stopValue"
-|{% err  %}|{% err  %}|{% err  %}|documentFinalTerminatorCanBeMissing="yes"
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textNumberPattern
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textNumberCheckPolicy
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textNumberRounding
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textNumberRoundingMode
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textNumberRoundingIncrement
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardGroupingSeparator
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardDecimalSeparator
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardExponentRep
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardInfinityRep
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardNaNRep
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardZeroRep
-|{% err  %}|{% err  %}|{% err  %}|textStandardBase (behaves as 10)
-|{% err  %}|{% err  %}|{% err  %}|textZonedSignStyle
-|{% err  %}|{% err  %}|{%  ok  %}|decimalSigned
-|{% err  %}|{% err  %}|{%  ok  %}|textBooleanTrueRep
-|{% err  %}|{% err  %}|{%  ok  %}|textBooleanFalseRep
-|{% err  %}|{% err  %}|{%  ok  %}|textBooleanPadCharacter
-|{% err  %}|{% err  %}|{%  ok  %}|textBooleanJustification
-|{% err  %}|{% err  %}|{%  ok  %}|binaryBooleanTrueRep
-|{% err  %}|{% err  %}|{%  ok  %}|binaryBooleanFalseRep
-|{% err  %}|{% err  %}|{% err  %}|textBidi (behaves as "no")
-|{% err  %}|{% err  %}|{% err  %}|textBidiTextOrdering
-|{% err  %}|{% err  %}|{% err  %}|textBidiOrientation
-|{% err  %}|{% err  %}|{% err  %}|textBidiSymmetric
-|{% err  %}|{% err  %}|{% err  %}|textBidiTextShaped
-|{% err  %}|{% err  %}|{% err  %}|textBidiNumeralShapes
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|alignment
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|alignmentUnits
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|leadingSkip
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|trailingSkip
-|{% err  %}|{% err  %}|{% err  %}|prefixIncludesPrefixLength
-|{% err  %}|{% err  %}|{% err  %}|prefixLengthType
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|binaryDecimalVirtualPoint
-|{% err  %}|{% err  %}|{% err  %}|binaryNumberCheckPolicy
-|{% err  %}|{% err  %}|{% err  %}|binaryPackedSignCodes
-|{% err  %}|{% err  %}|{% err  %}|binaryCalendarRep
-|{% err  %}|{% err  %}|{% err  %}|binaryCalendarEpoch
-|{% err  %}|{% err  %}|{% err  %}|useNilForDefault
-|{% err  %}|{% err  %}|{% err  %}|sequenceKind='unordered'
-|{% err  %}|{% err  %}|{% err  %}|floating="yes"
-|{% err  %}|{% err  %}|{% err  %}|choiceLengthKind="explicit"
-|{% err  %}|{% err  %}|{% err  %}|choiceLength
-|{% err  %}|{% err  %}|{% err  %}|occursStopValue
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|seperatorSuppressionPolicy (overrides separatorPolicy)
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|separatorPolicy
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|bitOrder
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|encodingErrorPolicy="replace"
-|{% err  %}|{% err  %}|{% err  %}|encodingErrorPolicy="error"
-|{% err  %}|{% err  %}|{% err  %}|failureType="recoverableError"
-|{% err  %}|{% err  %}|{%  ok  %}|choiceDispatchKey
-|{% err  %}|{% err  %}|{%  ok  %}|choiceBranchKey
-                                  
-|  1.0.0   |  1.1.0   |  2.0.0   |Functions
-|:--------:|:--------:|:--------:|----------
-|{% err  %}|{% err  %}|{%  ok  %}|contentLength
-|{% err  %}|{% err  %}|{%  ok  %}|valueLength
-                                  
-|  1.0.0   |  1.1.0   |  2.0.0   |Annotations
-|:--------:|:--------:|:--------:|----------
-|{% err  %}|{% err  %}|{% err  %}|newVariableInstance
-                                  
-|  1.0.0   |  1.1.0   |  2.0.0   |Miscellaneous
-|:--------:|:--------:|:--------:|----------
-|{% err  %}|{% err  %}|{% err  %}|File sizes greater than 4GB
-|{% err  %}|{% err  %}|{% err  %}|Java version <= 6
-|{%  ok  %}|{%  ok  %}|{% err  %}|Java version 7
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|Java version 8
-|{%  ok  %}|{%  ok  %}|{%  ok  %}|Strict DFDL expressions adherence (i.e. disallow features of XPath not available in DFDL expressions)
-|{% warn %}|{% warn %}|{% warn %}|XPath 2.0 Support (query-style expressions not supported)
-
-|  1.0.0   |  1.1.0   |  2.0.0   |[DFDL v1.0 Spec Errata](https://redmine.ogf.org/dmsf_files/13384?download=) (Minor Technical Fixes)
-|:--------:|:--------:|:--------:|----------
-|{% err  %}|{% err  %}|{% err  %}|Erratum 5.1
-|{% err  %}|{% ok   %}|{% ok   %}|Erratum 5.2
-|{% err  %}|{% err  %}|{% err  %}|Erratum 5.3
-|{% err  %}|{% err  %}|{% ok   %}|Erratum 5.4
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.5
-|{% err  %}|{% err  %}|{% err  %}|Erratum 5.6
-|{% err  %}|{% err  %}|{% ok   %}|Erratum 5.7
-|{% err  %}|{% err  %}|{% ok   %}|Erratum 5.8
-|{% err  %}|{% err  %}|{% ok   %}|Erratum 5.9
-|{% err  %}|{% err  %}|{% ok   %}|Erratum 5.10
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.11
-|{% err  %}|{% err  %}|{% ok   %}|Erratum 5.12
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.13
-|{% err  %}|{% err  %}|{% err  %}|Erratum 5.14
-|{% err  %}|{% err  %}|{% err  %}|Erratum 5.15
-|{% err  %}|{% err  %}|{% err  %}|Erratum 5.16
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.17
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.18
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.19
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.20
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.21
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.22
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.23
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.24
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.25
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.26
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.27
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.28
-|{% err  %}|{% err  %}|{% err  %}|Erratum 5.29
-|{% err  %}|{% err  %}|{% err  %}|Erratum 5.30
-|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.31
+|  1.0.0   |  1.1.0   |  2.0.0   |  2.1.0   |Unparsing
+|:--------:|:--------:|:--------:|:--------:|----------
+|{% err  %}|{% warn %}|{%  ok  %}|{%  ok  %}|unparser
+|{% err  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|outputNewLine
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|fillByte
+|{% err  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textPadKind
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|textOutputMinLength
+|{% err  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|generateEscapeBlock
+|{% err  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|extraEscapedCharacters
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|truncateSpecifiedLengthString
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|outputValueCalc
+                                             
+                                             
+|  1.0.0   |  1.1.0   |  2.0.0   |  2.1.0   |Types
+|:--------:|:--------:|:--------:|:--------:|----------
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|decimal
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|integer
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|nonNegativeInteger
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|hexBinary
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|boolean
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|date (binary)
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|time (binary)
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|dateTime (binary)
+                                             
+                                             
+|  1.0.0   |  1.1.0   |  2.0.0   |  2.1.0   |XML Schema Features
+|:--------:|:--------:|:--------:|:--------:|----------
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|fixed
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|default
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|elementFormDefault
+                                             
+                                             
+|  1.0.0   |  1.1.0   |  2.0.0   |  2.1.0   |DFDL Features
+|:--------:|:--------:|:--------:|:--------:|----------
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|defaulting of values for required elements
+|{% err  %}|{% err  %}|{% err  %}|{%  ok  %}|'packed' binary number representations (packed, bcd, etc.)
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|'zoned' binary number representations
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|advanced text number format properties
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|bi-directional text
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|unordered sequences
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|floating elements in sequences
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|external variables
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|byte-value entities (aka raw-byte entities)
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|validation
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|alignment
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|'type' component of DFDL infoset
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|'unionMemberSchema' component of DFDL infoset
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|'valid' component of DFDL infoset
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|unicodeByteOrderMark
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|all runtime-computed format properties
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|runtime-computation for escapeCharacter, escapeEscapeCharacter, byteOrder
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|IANA standard encodings other than utf-8, utf-16BE, utf-16LE, utf-32BE, utf-32LE, and ASCII
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|optional qualified names in expression language
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|check for non-portable regular expressions
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|delimited binary
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|extended ICU symbols 'u' and 'I' in calendarPattern
+                                             
+                                             
+|  1.0.0   |  1.1.0   |  2.0.0   |  2.1.0   |Daffodil Specific
+|:--------:|:--------:|:--------:|:--------:|----------
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|save/reload parser
+                                             
+                                             
+|  1.0.0   |  1.1.0   |  2.0.0   |  2.1.0   |Properties and Property Enumerations
+|:--------:|:--------:|:--------:|:--------:|----------
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|ignoreCase="yes"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|utf16Width="variable"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|textNumberRep="zoned"
+|{% err  %}|{% err  %}|{% err  %}|{%  ok  %}|binaryNumberRep="packed"
+|{% err  %}|{% err  %}|{% err  %}|{%  ok  %}|binaryNumberRep="bcd"
+|{% err  %}|{% err  %}|{% err  %}|{%  ok  %}|binaryNumberRep="ibm4690Packed"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|binaryFloatRep="ibm390Hex"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|nilKind="logicalValue"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|nilKind="literalCharacter"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|lengthKind="prefixed"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|lengthKind="endOfParent"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|occursCountKind="stopValue"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|documentFinalTerminatorCanBeMissing="yes"
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textNumberPattern
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textNumberCheckPolicy
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textNumberRounding
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textNumberRoundingMode
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textNumberRoundingIncrement
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardGroupingSeparator
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardDecimalSeparator
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardExponentRep
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardInfinityRep
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardNaNRep
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|textStandardZeroRep
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|textStandardBase (behaves as 10)
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|textZonedSignStyle
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|decimalSigned
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|textBooleanTrueRep
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|textBooleanFalseRep
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|textBooleanPadCharacter
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|textBooleanJustification
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|binaryBooleanTrueRep
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|binaryBooleanFalseRep
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|textBidi (behaves as "no")
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|textBidiTextOrdering
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|textBidiOrientation
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|textBidiSymmetric
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|textBidiTextShaped
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|textBidiNumeralShapes
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|alignment
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|alignmentUnits
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|leadingSkip
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|trailingSkip
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|prefixIncludesPrefixLength
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|prefixLengthType
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|binaryDecimalVirtualPoint
+|{% err  %}|{% err  %}|{% err  %}|{%  ok  %}|binaryNumberCheckPolicy
+|{% err  %}|{% err  %}|{% err  %}|{%  ok  %}|binaryPackedSignCodes
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|binaryCalendarRep
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|binaryCalendarEpoch
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|useNilForDefault
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|sequenceKind='unordered'
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|floating="yes"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|choiceLengthKind="explicit"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|choiceLength
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|occursStopValue
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|seperatorSuppressionPolicy (overrides separatorPolicy)
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|separatorPolicy
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|bitOrder
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|encodingErrorPolicy="replace"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|encodingErrorPolicy="error"
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|failureType="recoverableError"
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|choiceDispatchKey
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|choiceBranchKey
+                                             
+|  1.0.0   |  1.1.0   |  2.0.0   |  2.1.0   |Functions
+|:--------:|:--------:|:--------:|:--------:|----------
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|contentLength
+|{% err  %}|{% err  %}|{%  ok  %}|{%  ok  %}|valueLength
+                                             
+|  1.0.0   |  1.1.0   |  2.0.0   |  2.1.0   |Annotations
+|:--------:|:--------:|:--------:|:--------:|----------
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|newVariableInstance
+                                             
+|  1.0.0   |  1.1.0   |  2.0.0   |  2.1.0   |Miscellaneous
+|:--------:|:--------:|:--------:|:--------:|----------
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|File sizes greater than 4GB
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|Java version <= 6
+|{%  ok  %}|{%  ok  %}|{% err  %}|{% err  %}|Java version 7
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|Java version 8
+|{%  ok  %}|{%  ok  %}|{%  ok  %}|{%  ok  %}|Strict DFDL expressions adherence (i.e. disallow features of XPath not available in DFDL expressions)
+|{% warn %}|{% warn %}|{% warn %}|{% warn %}|XPath 2.0 Support (query-style expressions not supported)
+                                             
+|  1.0.0   |  1.1.0   |  2.0.0   |  2.1.0   |[DFDL v1.0 Spec Errata](https://redmine.ogf.org/dmsf_files/13384?download=) (Minor Technical Fixes)
+|:--------:|:--------:|:--------:|:--------:|----------
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|Erratum 5.1
+|{% err  %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.2
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|Erratum 5.3
+|{% err  %}|{% err  %}|{% ok   %}|{% ok   %}|Erratum 5.4
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.5
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|Erratum 5.6
+|{% err  %}|{% err  %}|{% ok   %}|{% ok   %}|Erratum 5.7
+|{% err  %}|{% err  %}|{% ok   %}|{% ok   %}|Erratum 5.8
+|{% err  %}|{% err  %}|{% ok   %}|{% ok   %}|Erratum 5.9
+|{% err  %}|{% err  %}|{% ok   %}|{% ok   %}|Erratum 5.10
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.11
+|{% err  %}|{% err  %}|{% ok   %}|{% ok   %}|Erratum 5.12
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.13
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|Erratum 5.14
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|Erratum 5.15
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|Erratum 5.16
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.17
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.18
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.19
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.20
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.21
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.22
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.23
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.24
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.25
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.26
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.27
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.28
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|Erratum 5.29
+|{% err  %}|{% err  %}|{% err  %}|{% err  %}|Erratum 5.30
+|{% ok   %}|{% ok   %}|{% ok   %}|{% ok   %}|Erratum 5.31

-- 
To stop receiving notification emails like this one, please contact
slawrence@apache.org.