You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tinkerpop.apache.org by sp...@apache.org on 2017/10/14 10:25:33 UTC

[6/8] tinkerpop git commit: Added 3.2.6 test files to gremlin-io-test

Added 3.2.6 test files to gremlin-io-test

Fixed build problems on master around testing within this module. Not sure why they didn't fail on the last commit. Updated release documents with more notes around gremlin-io-test and how it should be managed. Improved data generation scripts so that future release managers won't have the same typically hassles we usually have with "back generation" of test data. This again looks like a large commit, but it is mostly just data files created from automation. CTR


Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/2743f4d4
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/2743f4d4
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/2743f4d4

Branch: refs/heads/TINKERPOP-1799
Commit: 2743f4d474e3702e4ccf2f60a444fce0576af996
Parents: ec8992d
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Oct 13 16:10:59 2017 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Oct 13 16:10:59 2017 -0400

----------------------------------------------------------------------
 docs/src/dev/developer/release.asciidoc         |  43 +-
 docs/src/dev/io/graphson.asciidoc               | 344 +++++---
 docs/src/dev/io/gryo.asciidoc                   |  96 +++
 .../scripts/generate-gryo-resources.groovy      |   2 +-
 .../tinkerpop/gremlin/structure/io/Model.java   |   2 +-
 .../structure/io/gryo/GryoCompatibility.java    |   1 -
 .../structure/io/CompatibilitiesTest.java       |  23 +-
 .../GraphSONTypedCompatibilityTest.java         |   1 +
 .../GraphSONUntypedCompatibilityTest.java       |   2 +
 .../io/gryo/GryoCompatibilityTest.java          |   1 +
 .../_3_2_6/authenticationchallenge-v1d0.json    |  12 +
 .../authenticationchallenge-v2d0-no-types.json  |  12 +
 .../authenticationchallenge-v2d0-partial.json   |  12 +
 .../_3_2_6/authenticationresponse-v1d0.json     |   9 +
 .../authenticationresponse-v2d0-no-types.json   |   9 +
 .../authenticationresponse-v2d0-partial.json    |   9 +
 .../graphson/_3_2_6/barrier-v2d0-no-types.json  |   1 +
 .../graphson/_3_2_6/barrier-v2d0-partial.json   |   4 +
 .../_3_2_6/bigdecimal-v2d0-no-types.json        |   1 +
 .../_3_2_6/bigdecimal-v2d0-partial.json         |   1 +
 .../_3_2_6/biginteger-v2d0-no-types.json        |   1 +
 .../_3_2_6/biginteger-v2d0-partial.json         |   1 +
 .../graphson/_3_2_6/binding-v2d0-no-types.json  |   4 +
 .../graphson/_3_2_6/binding-v2d0-partial.json   |  10 +
 .../io/graphson/_3_2_6/byte-v2d0-no-types.json  |   1 +
 .../io/graphson/_3_2_6/byte-v2d0-partial.json   |   1 +
 .../_3_2_6/bytebuffer-v2d0-no-types.json        |   1 +
 .../_3_2_6/bytebuffer-v2d0-partial.json         |   1 +
 .../graphson/_3_2_6/bytecode-v2d0-no-types.json |   3 +
 .../graphson/_3_2_6/bytecode-v2d0-partial.json  |   6 +
 .../_3_2_6/cardinality-v2d0-no-types.json       |   1 +
 .../_3_2_6/cardinality-v2d0-partial.json        |   4 +
 .../io/graphson/_3_2_6/char-v2d0-no-types.json  |   1 +
 .../io/graphson/_3_2_6/char-v2d0-partial.json   |   1 +
 .../io/graphson/_3_2_6/class-v2d0-no-types.json |   1 +
 .../io/graphson/_3_2_6/class-v2d0-partial.json  |   4 +
 .../graphson/_3_2_6/column-v2d0-no-types.json   |   1 +
 .../io/graphson/_3_2_6/column-v2d0-partial.json |   4 +
 .../io/graphson/_3_2_6/date-v2d0-no-types.json  |   1 +
 .../io/graphson/_3_2_6/date-v2d0-partial.json   |   4 +
 .../_3_2_6/direction-v2d0-no-types.json         |   1 +
 .../graphson/_3_2_6/direction-v2d0-partial.json |   4 +
 .../graphson/_3_2_6/double-v2d0-no-types.json   |   1 +
 .../io/graphson/_3_2_6/double-v2d0-partial.json |   4 +
 .../graphson/_3_2_6/duration-v2d0-no-types.json |   1 +
 .../graphson/_3_2_6/duration-v2d0-partial.json  |   1 +
 .../structure/io/graphson/_3_2_6/edge-v1d0.json |  12 +
 .../io/graphson/_3_2_6/edge-v2d0-no-types.json  |  14 +
 .../io/graphson/_3_2_6/edge-v2d0-partial.json   |  32 +
 .../io/graphson/_3_2_6/float-v2d0-no-types.json |   1 +
 .../io/graphson/_3_2_6/float-v2d0-partial.json  |   4 +
 .../_3_2_6/inetaddress-v2d0-no-types.json       |   1 +
 .../_3_2_6/inetaddress-v2d0-partial.json        |   1 +
 .../graphson/_3_2_6/instant-v2d0-no-types.json  |   1 +
 .../graphson/_3_2_6/instant-v2d0-partial.json   |   1 +
 .../graphson/_3_2_6/integer-v2d0-no-types.json  |   1 +
 .../graphson/_3_2_6/integer-v2d0-partial.json   |   4 +
 .../graphson/_3_2_6/lambda-v2d0-no-types.json   |   5 +
 .../io/graphson/_3_2_6/lambda-v2d0-partial.json |   8 +
 .../_3_2_6/localdate-v2d0-no-types.json         |   1 +
 .../graphson/_3_2_6/localdate-v2d0-partial.json |   1 +
 .../_3_2_6/localdatetime-v2d0-no-types.json     |   1 +
 .../_3_2_6/localdatetime-v2d0-partial.json      |   1 +
 .../_3_2_6/localtime-v2d0-no-types.json         |   1 +
 .../graphson/_3_2_6/localtime-v2d0-partial.json |   1 +
 .../io/graphson/_3_2_6/long-v2d0-no-types.json  |   1 +
 .../io/graphson/_3_2_6/long-v2d0-partial.json   |   4 +
 .../graphson/_3_2_6/metrics-v2d0-no-types.json  |  24 +
 .../graphson/_3_2_6/metrics-v2d0-partial.json   |  54 ++
 .../graphson/_3_2_6/monthday-v2d0-no-types.json |   1 +
 .../graphson/_3_2_6/monthday-v2d0-partial.json  |   1 +
 .../_3_2_6/offsetdatetime-v2d0-no-types.json    |   1 +
 .../_3_2_6/offsetdatetime-v2d0-partial.json     |   1 +
 .../_3_2_6/offsettime-v2d0-no-types.json        |   1 +
 .../_3_2_6/offsettime-v2d0-partial.json         |   1 +
 .../graphson/_3_2_6/operator-v2d0-no-types.json |   1 +
 .../graphson/_3_2_6/operator-v2d0-partial.json  |   4 +
 .../io/graphson/_3_2_6/order-v2d0-no-types.json |   1 +
 .../io/graphson/_3_2_6/order-v2d0-partial.json  |   4 +
 .../io/graphson/_3_2_6/p-v2d0-no-types.json     |   4 +
 .../io/graphson/_3_2_6/p-v2d0-partial.json      |  10 +
 .../io/graphson/_3_2_6/pand-v2d0-no-types.json  |  10 +
 .../io/graphson/_3_2_6/pand-v2d0-partial.json   |  25 +
 .../structure/io/graphson/_3_2_6/path-v1d0.json |  62 ++
 .../io/graphson/_3_2_6/path-v2d0-no-types.json  |  13 +
 .../io/graphson/_3_2_6/path-v2d0-partial.json   |  34 +
 .../graphson/_3_2_6/period-v2d0-no-types.json   |   1 +
 .../io/graphson/_3_2_6/period-v2d0-partial.json |   1 +
 .../io/graphson/_3_2_6/pick-v2d0-no-types.json  |   1 +
 .../io/graphson/_3_2_6/pick-v2d0-partial.json   |   4 +
 .../io/graphson/_3_2_6/pop-v2d0-no-types.json   |   1 +
 .../io/graphson/_3_2_6/pop-v2d0-partial.json    |   4 +
 .../io/graphson/_3_2_6/por-v2d0-no-types.json   |  10 +
 .../io/graphson/_3_2_6/por-v2d0-partial.json    |  31 +
 .../io/graphson/_3_2_6/property-v1d0.json       |   4 +
 .../graphson/_3_2_6/property-v2d0-no-types.json |   4 +
 .../graphson/_3_2_6/property-v2d0-partial.json  |  10 +
 .../io/graphson/_3_2_6/scope-v2d0-no-types.json |   1 +
 .../io/graphson/_3_2_6/scope-v2d0-partial.json  |   4 +
 .../io/graphson/_3_2_6/sessionclose-v1d0.json   |   8 +
 .../_3_2_6/sessionclose-v2d0-no-types.json      |   8 +
 .../_3_2_6/sessionclose-v2d0-partial.json       |  11 +
 .../io/graphson/_3_2_6/sessioneval-v1d0.json    |  13 +
 .../_3_2_6/sessioneval-v2d0-no-types.json       |  13 +
 .../_3_2_6/sessioneval-v2d0-partial.json        |  19 +
 .../_3_2_6/sessionevalaliased-v1d0.json         |  16 +
 .../sessionevalaliased-v2d0-no-types.json       |  16 +
 .../_3_2_6/sessionevalaliased-v2d0-partial.json |  22 +
 .../graphson/_3_2_6/sessionlesseval-v1d0.json   |  12 +
 .../_3_2_6/sessionlesseval-v2d0-no-types.json   |  12 +
 .../_3_2_6/sessionlesseval-v2d0-partial.json    |  15 +
 .../_3_2_6/sessionlessevalaliased-v1d0.json     |  15 +
 .../sessionlessevalaliased-v2d0-no-types.json   |  15 +
 .../sessionlessevalaliased-v2d0-partial.json    |  18 +
 .../io/graphson/_3_2_6/short-v2d0-no-types.json |   1 +
 .../io/graphson/_3_2_6/short-v2d0-partial.json  |   1 +
 .../io/graphson/_3_2_6/standardresult-v1d0.json |  50 ++
 .../_3_2_6/standardresult-v2d0-no-types.json    |  54 ++
 .../_3_2_6/standardresult-v2d0-partial.json     | 111 +++
 .../io/graphson/_3_2_6/stargraph-v1d0.json      |  66 ++
 .../_3_2_6/stargraph-v2d0-no-types.json         |  66 ++
 .../graphson/_3_2_6/stargraph-v2d0-partial.json | 141 ++++
 .../io/graphson/_3_2_6/t-v2d0-no-types.json     |   1 +
 .../io/graphson/_3_2_6/t-v2d0-partial.json      |   4 +
 .../_3_2_6/timestamp-v2d0-no-types.json         |   1 +
 .../graphson/_3_2_6/timestamp-v2d0-partial.json |   4 +
 .../io/graphson/_3_2_6/tinkergraph-v1d0.json    | 313 +++++++
 .../_3_2_6/tinkergraph-v2d0-no-types.json       | 352 ++++++++
 .../_3_2_6/tinkergraph-v2d0-partial.json        | 829 +++++++++++++++++++
 .../_3_2_6/traversalmetrics-v2d0-no-types.json  |  48 ++
 .../_3_2_6/traversalmetrics-v2d0-partial.json   | 114 +++
 .../_3_2_6/traverser-v2d0-no-types.json         |  46 +
 .../graphson/_3_2_6/traverser-v2d0-partial.json | 109 +++
 .../structure/io/graphson/_3_2_6/tree-v1d0.json | 276 ++++++
 .../io/graphson/_3_2_6/tree-v2d0-no-types.json  | 269 ++++++
 .../io/graphson/_3_2_6/tree-v2d0-partial.json   | 608 ++++++++++++++
 .../io/graphson/_3_2_6/uuid-v2d0-no-types.json  |   1 +
 .../io/graphson/_3_2_6/uuid-v2d0-partial.json   |   4 +
 .../io/graphson/_3_2_6/vertex-v1d0.json         |  39 +
 .../graphson/_3_2_6/vertex-v2d0-no-types.json   |  43 +
 .../io/graphson/_3_2_6/vertex-v2d0-partial.json | 100 +++
 .../io/graphson/_3_2_6/vertexproperty-v1d0.json |   5 +
 .../_3_2_6/vertexproperty-v2d0-no-types.json    |   5 +
 .../_3_2_6/vertexproperty-v2d0-partial.json     |  11 +
 .../io/graphson/_3_2_6/year-v2d0-no-types.json  |   1 +
 .../io/graphson/_3_2_6/year-v2d0-partial.json   |   1 +
 .../_3_2_6/yearmonth-v2d0-no-types.json         |   1 +
 .../graphson/_3_2_6/yearmonth-v2d0-partial.json |   1 +
 .../_3_2_6/zoneddatetime-v2d0-no-types.json     |   1 +
 .../_3_2_6/zoneddatetime-v2d0-partial.json      |   1 +
 .../_3_2_6/zoneoffset-v2d0-no-types.json        |   1 +
 .../_3_2_6/zoneoffset-v2d0-partial.json         |   1 +
 .../structure/io/gryo/_3_2_6/barrier-v1d0.kryo  |   1 +
 .../io/gryo/_3_2_6/bigdecimal-v1d0.kryo         | Bin 0 -> 18 bytes
 .../io/gryo/_3_2_6/biginteger-v1d0.kryo         |   1 +
 .../structure/io/gryo/_3_2_6/binding-v1d0.kryo  |   1 +
 .../structure/io/gryo/_3_2_6/byte-v1d0.kryo     |   1 +
 .../io/gryo/_3_2_6/bytebuffer-v1d0.kryo         | Bin 0 -> 23 bytes
 .../structure/io/gryo/_3_2_6/bytecode-v1d0.kryo | Bin 0 -> 43 bytes
 .../io/gryo/_3_2_6/cardinality-v1d0.kryo        |   1 +
 .../structure/io/gryo/_3_2_6/char-v1d0.kryo     | Bin 0 -> 2 bytes
 .../structure/io/gryo/_3_2_6/class-v1d0.kryo    |   1 +
 .../structure/io/gryo/_3_2_6/column-v1d0.kryo   |   1 +
 .../structure/io/gryo/_3_2_6/date-v1d0.kryo     |   1 +
 .../io/gryo/_3_2_6/direction-v1d0.kryo          |   1 +
 .../structure/io/gryo/_3_2_6/double-v1d0.kryo   | Bin 0 -> 8 bytes
 .../structure/io/gryo/_3_2_6/duration-v1d0.kryo | Bin 0 -> 9 bytes
 .../structure/io/gryo/_3_2_6/edge-v1d0.kryo     | Bin 0 -> 57 bytes
 .../structure/io/gryo/_3_2_6/float-v1d0.kryo    | Bin 0 -> 4 bytes
 .../io/gryo/_3_2_6/inetaddress-v1d0.kryo        |   1 +
 .../structure/io/gryo/_3_2_6/instant-v1d0.kryo  | Bin 0 -> 13 bytes
 .../structure/io/gryo/_3_2_6/integer-v1d0.kryo  |   1 +
 .../structure/io/gryo/_3_2_6/lambda-v1d0.kryo   | Bin 0 -> 31 bytes
 .../io/gryo/_3_2_6/localdate-v1d0.kryo          | Bin 0 -> 9 bytes
 .../io/gryo/_3_2_6/localdatetime-v1d0.kryo      | Bin 0 -> 29 bytes
 .../io/gryo/_3_2_6/localtime-v1d0.kryo          | Bin 0 -> 9 bytes
 .../structure/io/gryo/_3_2_6/long-v1d0.kryo     |   1 +
 .../structure/io/gryo/_3_2_6/metrics-v1d0.kryo  | Bin 0 -> 185 bytes
 .../structure/io/gryo/_3_2_6/monthday-v1d0.kryo | Bin 0 -> 9 bytes
 .../io/gryo/_3_2_6/offsetdatetime-v1d0.kryo     | Bin 0 -> 37 bytes
 .../io/gryo/_3_2_6/offsettime-v1d0.kryo         | Bin 0 -> 17 bytes
 .../structure/io/gryo/_3_2_6/operator-v1d0.kryo |   1 +
 .../structure/io/gryo/_3_2_6/order-v1d0.kryo    |   1 +
 .../structure/io/gryo/_3_2_6/p-v1d0.kryo        | Bin 0 -> 6 bytes
 .../structure/io/gryo/_3_2_6/pand-v1d0.kryo     | Bin 0 -> 23 bytes
 .../structure/io/gryo/_3_2_6/path-v1d0.kryo     | Bin 0 -> 50 bytes
 .../structure/io/gryo/_3_2_6/period-v1d0.kryo   | Bin 0 -> 13 bytes
 .../structure/io/gryo/_3_2_6/pick-v1d0.kryo     |   1 +
 .../structure/io/gryo/_3_2_6/pop-v1d0.kryo      |   1 +
 .../structure/io/gryo/_3_2_6/por-v1d0.kryo      | Bin 0 -> 35 bytes
 .../structure/io/gryo/_3_2_6/property-v1d0.kryo |   1 +
 .../structure/io/gryo/_3_2_6/scope-v1d0.kryo    |   1 +
 .../structure/io/gryo/_3_2_6/short-v1d0.kryo    | Bin 0 -> 2 bytes
 .../io/gryo/_3_2_6/stargraph-v1d0.kryo          | Bin 0 -> 247 bytes
 .../structure/io/gryo/_3_2_6/t-v1d0.kryo        |   1 +
 .../io/gryo/_3_2_6/timestamp-v1d0.kryo          |   1 +
 .../io/gryo/_3_2_6/tinkergraph-v1d0.kryo        | Bin 0 -> 1117 bytes
 .../io/gryo/_3_2_6/traversalmetrics-v1d0.kryo   | Bin 0 -> 429 bytes
 .../io/gryo/_3_2_6/traverser-v1d0.kryo          | Bin 0 -> 211 bytes
 .../structure/io/gryo/_3_2_6/tree-v1d0.kryo     | Bin 0 -> 284 bytes
 .../structure/io/gryo/_3_2_6/uuid-v1d0.kryo     |   1 +
 .../structure/io/gryo/_3_2_6/vertex-v1d0.kryo   | Bin 0 -> 202 bytes
 .../io/gryo/_3_2_6/vertexproperty-v1d0.kryo     | Bin 0 -> 18 bytes
 .../structure/io/gryo/_3_2_6/year-v1d0.kryo     | Bin 0 -> 5 bytes
 .../io/gryo/_3_2_6/yearmonth-v1d0.kryo          | Bin 0 -> 9 bytes
 .../io/gryo/_3_2_6/zoneddatetime-v1d0.kryo      | Bin 0 -> 38 bytes
 .../io/gryo/_3_2_6/zoneoffset-v1d0.kryo         |   1 +
 207 files changed, 4851 insertions(+), 136 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/docs/src/dev/developer/release.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/dev/developer/release.asciidoc b/docs/src/dev/developer/release.asciidoc
index 1e33001..cbddfe5 100644
--- a/docs/src/dev/developer/release.asciidoc
+++ b/docs/src/dev/developer/release.asciidoc
@@ -127,6 +127,14 @@ during this period.
 ... All tickets not marked "Fixed", "Done", or "Implemented" for their Resolution should not have a Fix Version
 assigned (use common sense when reviewing these tickets before removing the Fix Version as it is possible the incorrect
 Resolution may have been assigned).
+.. Update `gremlin-io-test` (from 3.3.0 on - this module was not available prior to the 3.3.x line):
+... Build new test files with `mvn clean install -pl gremlin-tools/gremlin-io-test -Dio`
+... If necessary copy relevant portions of IO dev documentation from `target/dev-docs` to the actual asciidoc file at `docs/src/dev/io` (this is basically just for GraphSON).
+... Generate test files for other lines of TinkerPop releases that don't have `gremlin-io-test` to automate that process (refers to the 3.2.x line):
+.... Scripts to "back generate" test data files can be found in the comments of `docs/src/dev/io/graphson.asciidoc`and `docs/src/dev/io/gryo.asciidoc` and can be pasted into a Gremlin Console instance that matches the target version expected of the test files. Once generated these files can be copied to the branch that requires them.
+.... It is worth double checking the output file counts against past versions as the number of files should match. Obviously, if new test types were added to the model then those would have to be accounted for. Update the scripts as necessary.
+.... The `CompatibilitiesTest` will need to be updated - it is a troublesome test which needs to be adjusted on each release (doesn't appear to be a good way to test all of its features without this hassle).
+... Commit and push all files to the repository after doing a build with `mvn clean install` to verify that there are no problems.
 . When all documentation changes are in place, use `bin/publish-docs.sh` to deploy a final `SNAPSHOT` representation
 of the docs and thus validate that there are no issues with the documentation generation process. Request review
 of the published documentation on the dev mailing list.
@@ -212,20 +220,6 @@ for generating javadoc and without that the binary distributions won't contain t
 .. `cd ..; svn add xx.yy.zz/; svn ci -m "TinkerPop xx.yy.zz release"`
 . Execute `bin/validate-distribution.sh` and any other relevant testing.
 . `git tag -a -m "TinkerPop xx.yy.zz release" xx.yy.zz` and `git push --tags`
-. Perform JIRA administration tasks:
-.. "Release" the current version and set the "release date"
-.. If there is to be a follow on release in the current line of code, create that new version specifying the "start date"
-. Prepare Git administration tasks. Note that this work can be performed at the release manager's discretion. It may be wise to wait until a successful VOTE is eminent before reopening development. Apply the following steps as needed per release branch:
-.. Make the appropriate branching changes as required by the release and bump the version to `SNAPSHOT` with
-`mvn versions:set -DnewVersion=xx.yy.zz-SNAPSHOT -DgenerateBackupPoms=false`.
-.. `pushd gremlin-console/bin; ln -fs ../target/apache-tinkerpop-gremlin-console-xx.yy.zz-SNAPSHOT-standalone/bin/gremlin.sh gremlin.sh; popd`
-.. Update CHANGELOG and upgrade docs to have the appropriate headers for the next version.
-.. `mvn clean install -DskipTests` - need to build first so that the right version of the console is used with `bin/publish-docs.sh`
-.. `mvn deploy -DskipTests` - deploy the new `SNAPSHOT`
-.. `bin/process-docs.sh` and validate the generated `SNAPSHOT` documentation locally and then `bin/publish-docs.sh <username>`
-.. Commit and push the `SNAPSHOT` changes to git
-.. Send email to advise that code freeze is lifted.
-.. Generate a list of dead branches that will be automatically deleted and post them as a DISCUSS thread for review, then once consensus is reached removed those branches.
 . Submit for `[VOTE]` at `dev@tinkerpop.apache.org` (see email template below)
 . *Wait for vote acceptance* (72 hours)
 
@@ -252,6 +246,27 @@ if `3.2.0` is present and `3.2.1` is released then remove `3.2.0`.  However, if
 code is still under potential development, it may stay.
 . Announce release on `dev@`/`gremlin-users@` mailing lists and tweet from `@apachetinkerpop`
 
+== Post-release Tasks
+
+A number of administration tasks should be taken care of after release is public. Some of these items can be performed
+during the VOTE period at the release manager's discretion, though it may be wise to wait until a successful VOTE is
+eminent before reopening development:
+
+. Perform JIRA administration tasks:
+.. "Release" the current version and set the "release date"
+.. If there is to be a follow on release in the current line of code, create that new version specifying the "start date"
+. Prepare Git administration tasks. Apply the following steps as needed per release branch:
+.. Make the appropriate branching changes as required by the release and bump the version to `SNAPSHOT` with
+`mvn versions:set -DnewVersion=xx.yy.zz-SNAPSHOT -DgenerateBackupPoms=false`.
+.. `pushd gremlin-console/bin; ln -fs ../target/apache-tinkerpop-gremlin-console-xx.yy.zz-SNAPSHOT-standalone/bin/gremlin.sh gremlin.sh; popd`
+.. Update CHANGELOG and upgrade docs to have the appropriate headers for the next version.
+.. `mvn clean install -DskipTests` - need to build first so that the right version of the console is used with `bin/publish-docs.sh`
+.. `mvn deploy -DskipTests` - deploy the new `SNAPSHOT`
+.. `bin/process-docs.sh` and validate the generated `SNAPSHOT` documentation locally and then `bin/publish-docs.sh <username>`
+.. Commit and push the `SNAPSHOT` changes to git
+.. Send email to advise that code freeze is lifted.
+.. Generate a list of dead branches that will be automatically deleted and post them as a DISCUSS thread for review, then once consensus is reached removed those branches.
+
 == Email Templates
 
 === Release VOTE

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/docs/src/dev/io/graphson.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/dev/io/graphson.asciidoc b/docs/src/dev/io/graphson.asciidoc
index b00cd3f..7e03cc5 100644
--- a/docs/src/dev/io/graphson.asciidoc
+++ b/docs/src/dev/io/graphson.asciidoc
@@ -25,23 +25,33 @@ mapper = GraphSONMapper.build().
 graph = TinkerFactory.createTheCrew()
 g = graph.traversal()
 
-toJson = { o, type, comment = "" ->
+new File("io-output/test-case-data/graphson/").mkdirs()
+
+toJson = { o, type, comment = "", suffix = "v1d0" ->
   println "Writing ${type}"
-  "${type}\n" +
-  "^".multiply(type.length()) + "\n\n" +
+
+  def jsonSample = mapper.writerWithDefaultPrettyPrinter().writeValueAsString(o)
+
+  def fileToWriteTo = new File("io-output/test-case-data/graphson/" + type.toLowerCase().replace(" ","") + "-" + suffix + ".json")
+  if (fileToWriteTo.exists())
+    fileToWriteTo.delete()
+
+  fileToWriteTo.withWriter{ it.write(jsonSample) }
+
+  "==== ${type}\n\n" +
   (comment.isEmpty() ? "" : comment + "\n\n") +
   "[source,json]\n" +
   "----\n" +
-  mapper.writerWithDefaultPrettyPrinter().writeValueAsString(o) + "\n" +
+  jsonSample + "\n" +
   "----\n" +
   "\n"
 }
 
-file = new File("out-graphson-1d0.txt")
+
+file = new File("io-output/out-graphson-1d0.txt")
 file.withWriter { writer ->
 
-  writer.write("Graph Structure\n")
-  writer.write("~~~~~~~~~~~~~~~\n\n")
+  writer.write("=== Graph Structure\n\n")
   writer.write(toJson(graph.edges().next(), "Edge"))
   writer.write(toJson(g.V().out().out().path().next(), "Path"))
   writer.write(toJson(graph.edges().next().properties().next(), "Property"))
@@ -52,31 +62,35 @@ file.withWriter { writer ->
   writer.write(toJson(graph.vertices().next().properties().next(), "VertexProperty"))
 
   writer.write("\n")
-  writer.write("RequestMessage\n")
-  writer.write("~~~~~~~~~~~~~~\n\n")
+  writer.write("=== RequestMessage\n\n")
   def msg = null
   msg = RequestMessage.build("authentication").
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
                        add("saslMechanism", "PLAIN", "sasl", "AHN0ZXBocGhlbgBwYXNzd29yZA==").create()
   writer.write(toJson(msg, "Authentication Response", "The following `RequestMessage` is an example of the response that should be made to a SASL-based authentication challenge."))
   msg = RequestMessage.build("eval").processor("session").
-                           add("gremlin", "g.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
+                       add("gremlin", "g.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
   writer.write(toJson(msg, "Session Eval", "The following `RequestMessage` is an example of a simple session request for a script evaluation with parameters."))
   msg = RequestMessage.build("eval").processor("session").
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
                        add("gremlin", "social.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "aliases", [g: "social"], "session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
-  writer.write(toJson(msg, "Session Eval", "The following `RequestMessage` is an example of a session request for a script evaluation with an alias that binds the `TraversalSource` of \"g\" to \"social\"."))
+  writer.write(toJson(msg, "Session Eval Aliased", "The following `RequestMessage` is an example of a session request for a script evaluation with an alias that binds the `TraversalSource` of \"g\" to \"social\"."))
   msg = RequestMessage.build("close").processor("session").
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
                        add("session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
   writer.write(toJson(msg, "Session Close", "The following `RequestMessage` is an example of a request to close a session."))
   msg = RequestMessage.build("eval").
-                           add("gremlin", "g.V(x)", "bindings", [x: 1], "language", "gremlin-groovy").create()
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
+                       add("gremlin", "g.V(x)", "bindings", [x: 1], "language", "gremlin-groovy").create()
   writer.write(toJson(msg, "Sessionless Eval", "The following `RequestMessage` is an example of a simple sessionless request for a script evaluation with parameters."))
   msg = RequestMessage.build("eval").
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
                        add("gremlin", "social.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "aliases", [g: "social"]).create()
-  writer.write(toJson(msg, "Sessionless Eval", "The following `RequestMessage` is an example of a sessionless request for a script evaluation with an alias that binds the `TraversalSource` of \"g\" to \"social\"."))
+  writer.write(toJson(msg, "Sessionless Eval Aliased", "The following `RequestMessage` is an example of a sessionless request for a script evaluation with an alias that binds the `TraversalSource` of \"g\" to \"social\"."))
 
   writer.write("\n")
-  writer.write("ResponseMessage\n")
-  writer.write("~~~~~~~~~~~~~~~\n\n")
+  writer.write("=== ResponseMessage\n\n")
   msg = ResponseMessage.build(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).
                         code(org.apache.tinkerpop.gremlin.driver.message.ResponseStatusCode.AUTHENTICATE).create()
   writer.write(toJson(msg, "Authentication Challenge", "When authentication is enabled, an initial request to the server will result in an authentication challenge. The typical response message will appear as follows, but handling it could be different dependending on the SASL implementation (e.g. multiple challenges maybe requested in some cases, but no in the default provided by Gremlin Server)."))
@@ -85,150 +99,258 @@ file.withWriter { writer ->
                         result(Arrays.asList(graph.vertices().next())).create()
   writer.write(toJson(msg, "Standard Result", "The following `ResponseMessage` is a typical example of the typical successful response Gremlin Server will return when returning results from a script."))
 
+}
+
+mapper = GraphSONMapper.build().
+                        addRegistry(TinkerIoRegistryV2d0.instance()).
+                        typeInfo(TypeInfo.PARTIAL_TYPES).
+                        addCustomModule(GraphSONXModuleV2d0.build().create(false)).
+                        addCustomModule(new org.apache.tinkerpop.gremlin.driver.ser.AbstractGraphSONMessageSerializerV2d0.GremlinServerModule()).
+                        version(GraphSONVersion.V2_0).create().createMapper()
+
+file = new File("io-output/out-graphson-2d0-partial.txt")
+file.withWriter { writer ->
+
+  writer.write("=== Core\n\n")
+  writer.write(toJson(File, "Class", "", "v2d0-partial"))
+  writer.write(toJson(new Date(1481750076295L), "Date", "", "v2d0-partial"))
+  writer.write(toJson(100.00d, "Double", "", "v2d0-partial"))
+  writer.write(toJson(100.00f, "Float", "", "v2d0-partial"))
+  writer.write(toJson(100, "Integer", "", "v2d0-partial"))
+  writer.write(toJson(100L, "Long", "", "v2d0-partial"))
+  writer.write(toJson(new java.sql.Timestamp(1481750076295L), "Timestamp", "", "v2d0-partial"))
+  writer.write(toJson(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786"), "UUID", "", "v2d0-partial"))
+
+  writer.write("\n")
+  writer.write("=== Graph Structure\n\n")
+  writer.write(toJson(graph.edges().next(), "Edge", "", "v2d0-partial"))
+  writer.write(toJson(g.V().out().out().path().next(), "Path", "", "v2d0-partial"))
+  writer.write(toJson(graph.edges().next().properties().next(), "Property", "", "v2d0-partial"))
+  writer.write(toJson(new org.apache.tinkerpop.gremlin.structure.util.star.DirectionalStarGraph(org.apache.tinkerpop.gremlin.structure.util.star.StarGraph.of(graph.vertices().next()), Direction.BOTH), "StarGraph", "", "v2d0-partial"))
+  writer.write(toJson(graph, "TinkerGraph", "`TinkerGraph` has a custom serializer that is registered as part of the `TinkerIoRegistry`.", "v2d0-partial"))
+  writer.write(toJson(g.V().out().out().tree().next(), "Tree", "", "v2d0-partial"))
+  writer.write(toJson(graph.vertices().next(), "Vertex", "", "v2d0-partial"))
+  writer.write(toJson(graph.vertices().next().properties().next(), "VertexProperty", "", "v2d0-partial"))
+
+  writer.write("\n")
+  writer.write("=== Graph Process\n\n")
+  writer.write(toJson(SackFunctions.Barrier.normSack, "Barrier", "", "v2d0-partial"))
+  writer.write(toJson(new Bytecode.Binding("x", 1), "Binding", "A \"Binding\" refers to a `Bytecode.Binding`.", "v2d0-partial"))
+  writer.write(toJson(g.V().hasLabel('person').out().in().tree(), "Bytecode", "The following `Bytecode` example represents the traversal of `g.V().hasLabel('person').out().in().tree()`. Obviously the serialized `Bytecode` would be quite different for the endless variations of commands that could be used together in the Gremlin language.", "v2d0-partial"))
+  writer.write(toJson(VertexProperty.Cardinality.list, "Cardinality", "", "v2d0-partial"))
+  writer.write(toJson(Column.keys, "Column", "", "v2d0-partial"))
+  writer.write(toJson(Direction.OUT, "Direction", "", "v2d0-partial"))
+  writer.write(toJson(Operator.sum, "Operator", "", "v2d0-partial"))
+  writer.write(toJson(Order.incr, "Order", "", "v2d0-partial"))
+  writer.write(toJson(org.apache.tinkerpop.gremlin.process.traversal.step.TraversalOptionParent.Pick.any, "Pick", "", "v2d0-partial"))
+  writer.write(toJson(Pop.all, "Pop", "", "v2d0-partial"))
+  writer.write(toJson(org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ it.get() }"), "Lambda", "", "v2d0-partial"))
+  tm = g.V().hasLabel('person').out().out().tree().profile().next()
+  metrics = new org.apache.tinkerpop.gremlin.process.traversal.util.MutableMetrics(tm.getMetrics(0));
+  metrics.addNested(new org.apache.tinkerpop.gremlin.process.traversal.util.MutableMetrics(tm.getMetrics(1)));
+  writer.write(toJson(metrics, "Metrics", "", "v2d0-partial"))
+  writer.write(toJson(P.gt(0), "P", "", "v2d0-partial"))
+  writer.write(toJson(P.gt(0).and(P.lt(10)), "P and", "", "v2d0-partial"))
+  writer.write(toJson(P.gt(0).or(P.within(-1, -10, -100)), "P or", "", "v2d0-partial"))
+  writer.write(toJson(Scope.local, "Scope", "", "v2d0-partial"))
+  writer.write(toJson(T.label, "T", "", "v2d0-partial"))
+  writer.write(toJson(g.V().hasLabel('person').out().out().tree().profile().next(), "TraversalMetrics", "", "v2d0-partial"))
+  writer.write(toJson(g.V().hasLabel('person').nextTraverser(), "Traverser", "", "v2d0-partial"))
+
+  writer.write("\n")
+  writer.write("=== RequestMessage\n\n")
+  msg = RequestMessage.build("authentication").
+                overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
+                add("saslMechanism", "PLAIN", "sasl", "AHN0ZXBocGhlbgBwYXNzd29yZA==").create()
+  writer.write(toJson(msg, "Authentication Response", "The following `RequestMessage` is an example of the response that should be made to a SASL-based authentication challenge.", "v2d0-partial"))
+  msg = RequestMessage.build("eval").processor("session").
+                overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
+                add("gremlin", "g.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
+  writer.write(toJson(msg, "Session Eval", "The following `RequestMessage` is an example of a simple session request for a script evaluation with parameters.", "v2d0-partial"))
+  msg = RequestMessage.build("eval").processor("session").
+                overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
+                add("gremlin", "social.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "aliases", [g: "social"], "session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
+  writer.write(toJson(msg, "Session Eval Aliased", "The following `RequestMessage` is an example of a session request for a script evaluation with an alias that binds the `TraversalSource` of \"g\" to \"social\".", "v2d0-partial"))
+  msg = RequestMessage.build("close").processor("session").
+                overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
+                add("session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
+  writer.write(toJson(msg, "Session Close", "The following `RequestMessage` is an example of a request to close a session.", "v2d0-partial"))
+  msg = RequestMessage.build("eval").
+                overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
+                add("gremlin", "g.V(x)", "bindings", [x: 1], "language", "gremlin-groovy").create()
+  writer.write(toJson(msg, "Sessionless Eval", "The following `RequestMessage` is an example of a simple sessionless request for a script evaluation with parameters.", "v2d0-partial"))
+  msg = RequestMessage.build("eval").
+                overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
+                add("gremlin", "social.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "aliases", [g: "social"]).create()
+  writer.write(toJson(msg, "Sessionless Eval Aliased", "The following `RequestMessage` is an example of a sessionless request for a script evaluation with an alias that binds the `TraversalSource` of \"g\" to \"social\".", "v2d0-partial"))
+
   writer.write("\n")
-  writer.write("Time\n")
-  writer.write("~~~~\n\n")
-  writer.write(toJson(Duration.ofDays(5), "Duration", "The following example is a `Duration` of five days."))
-  writer.write(toJson(Instant.now(), "Instant"))
-  writer.write(toJson(LocalDate.of(2016, 1, 1), "LocalDate"))
-  writer.write(toJson(LocalDateTime.of(2016, 1, 1, 12, 30), "LocalDateTime"))
-  writer.write(toJson(LocalTime.of(12, 30, 45), "LocalTime"))
-  writer.write(toJson(MonthDay.of(1, 1), "MonthDay"))
-  writer.write(toJson(OffsetDateTime.now(), "OffsetDateTime"))
-  writer.write(toJson(OffsetTime.now(), "OffsetTime"))
-  writer.write(toJson(Period.of(1, 6, 15), "Period", "The following example is a `Period` of one year, six months and fifteen days."))
-  writer.write(toJson(Year.of(2016), "Year", "The following example is of the `Year` \"2016\"."))
-  writer.write(toJson(YearMonth.of(2016, 6), "YearMonth", "The following example is a `YearMonth` of \"June 2016\""))
-  writer.write(toJson(ZonedDateTime.now(), "ZonedDateTime"))
-  writer.write(toJson(ZoneOffset.ofHoursMinutesSeconds(3, 6, 9), "ZoneOffset", "The following example is a `ZoneOffset` of three hours, six minutes, and nine seconds."))
+  writer.write("=== ResponseMessage\n\n")
+  msg = ResponseMessage.build(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).
+                        code(org.apache.tinkerpop.gremlin.driver.message.ResponseStatusCode.AUTHENTICATE).create()
+  writer.write(toJson(msg, "Authentication Challenge", "When authentication is enabled, an initial request to the server will result in an authentication challenge. The typical response message will appear as follows, but handling it could be different dependending on the SASL implementation (e.g. multiple challenges maybe requested in some cases, but no in the default provided by Gremlin Server).", "v2d0-partial"))
+  msg = ResponseMessage.build(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).
+                        code(org.apache.tinkerpop.gremlin.driver.message.ResponseStatusCode.SUCCESS).
+                        result(Arrays.asList(graph.vertices().next())).create()
+  writer.write(toJson(msg, "Standard Result", "The following `ResponseMessage` is a typical example of the typical successful response Gremlin Server will return when returning results from a script.", "v2d0-partial"))
+
+  writer.write("\n")
+  writer.write("=== Extended\n\n")
+  writer.write("""Note that the "extended" types require the addition of the separate `GraphSONXModuleV2d0` module as follows:\n
+[source,java]
+----
+mapper = GraphSONMapper.build().
+                        typeInfo(TypeInfo.PARTIAL_TYPES).
+                        addCustomModule(GraphSONXModuleV2d0.build().create(false)).
+                        version(GraphSONVersion.V2_0).create().createMapper()
+----\n
+""")
+  writer.write(toJson(new java.math.BigDecimal(new java.math.BigInteger("123456789987654321123456789987654321")), "BigDecimal", "", "v2d0-partial"))
+  writer.write(toJson(new java.math.BigInteger("123456789987654321123456789987654321"), "BigInteger", "", "v2d0-partial"))
+  writer.write(toJson(new Byte("1"), "Byte", "", "v2d0-partial"))
+  writer.write(toJson(java.nio.ByteBuffer.wrap("some bytes for you".getBytes()), "ByteBuffer", "", "v2d0-partial"))
+  writer.write(toJson("x".charAt(0), "Char", "", "v2d0-partial"))
+  writer.write(toJson(Duration.ofDays(5), "Duration", "The following example is a `Duration` of five days.", "v2d0-partial"))
+  writer.write(toJson(java.net.InetAddress.getByName("localhost"), "InetAddress", "", "v2d0-partial"))
+  writer.write(toJson(Instant.parse("2016-12-14T16:39:19.349Z"), "Instant", "", "v2d0-partial"))
+  writer.write(toJson(LocalDate.of(2016, 1, 1), "LocalDate", "", "v2d0-partial"))
+  writer.write(toJson(LocalDateTime.of(2016, 1, 1, 12, 30), "LocalDateTime", "", "v2d0-partial"))
+  writer.write(toJson(LocalTime.of(12, 30, 45), "LocalTime", "", "v2d0-partial"))
+  writer.write(toJson(MonthDay.of(1, 1), "MonthDay", "", "v2d0-partial"))
+  writer.write(toJson(OffsetDateTime.parse("2007-12-03T10:15:30+01:00"), "OffsetDateTime", "", "v2d0-partial"))
+  writer.write(toJson(OffsetTime.parse("10:15:30+01:00"), "OffsetTime", "", "v2d0-partial"))
+  writer.write(toJson(Period.of(1, 6, 15), "Period", "The following example is a `Period` of one year, six months and fifteen days.", "v2d0-partial"))
+  writer.write(toJson(new Short("100"), "Short", "", "v2d0-partial"))
+  writer.write(toJson(Year.of(2016), "Year", "The following example is of the `Year` \"2016\".", "v2d0-partial"))
+  writer.write(toJson(YearMonth.of(2016, 6), "YearMonth", "The following example is a `YearMonth` of \"June 2016\"", "v2d0-partial"))
+  writer.write(toJson(ZonedDateTime.of(2016, 12, 23, 12, 12, 24, 36, ZoneId.of("GMT+2")), "ZonedDateTime", "", "v2d0-partial"))
+  writer.write(toJson(ZoneOffset.ofHoursMinutesSeconds(3, 6, 9), "ZoneOffset", "The following example is a `ZoneOffset` of three hours, six minutes, and nine seconds.", "v2d0-partial"))
 
 }
 
 mapper = GraphSONMapper.build().
                         addRegistry(TinkerIoRegistryV2d0.instance()).
-                        typeInfo(TypeInfo.PARTIAL_TYPES).
+                        typeInfo(TypeInfo.NO_TYPES).
                         addCustomModule(GraphSONXModuleV2d0.build().create(false)).
                         addCustomModule(new org.apache.tinkerpop.gremlin.driver.ser.AbstractGraphSONMessageSerializerV2d0.GremlinServerModule()).
                         version(GraphSONVersion.V2_0).create().createMapper()
 
-file = new File("out-graphson-2d0.txt")
+file = new File("io-output/out-graphson-2d0-no-types.txt")
 file.withWriter { writer ->
 
-  writer.write("Core\n")
-  writer.write("~~~~\n\n")
-  writer.write(toJson(File, "Class"))
-  writer.write(toJson(new Date(), "Date"))
-  writer.write(toJson(100.00d, "Double"))
-  writer.write(toJson(100.00f, "Float"))
-  writer.write(toJson(100, "Integer"))
-  writer.write(toJson(100L, "Long"))
-  writer.write(toJson(new java.sql.Timestamp(System.currentTimeMillis()), "Timestamp"))
-  writer.write(toJson(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786"), "UUID"))
+  writer.write("=== Core\n\n")
+  writer.write(toJson(File, "Class", "", "v2d0-no-types"))
+  writer.write(toJson(new Date(1481750076295L), "Date", "", "v2d0-no-types"))
+  writer.write(toJson(100.00d, "Double", "", "v2d0-no-types"))
+  writer.write(toJson(100.00f, "Float", "", "v2d0-no-types"))
+  writer.write(toJson(100, "Integer", "", "v2d0-no-types"))
+  writer.write(toJson(100L, "Long", "", "v2d0-no-types"))
+  writer.write(toJson(new java.sql.Timestamp(1481750076295L), "Timestamp", "", "v2d0-no-types"))
+  writer.write(toJson(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786"), "UUID", "", "v2d0-no-types"))
 
   writer.write("\n")
-  writer.write("Graph Structure\n")
-  writer.write("~~~~~~~~~~~~~~~\n\n")
-  writer.write(toJson(graph.edges().next(), "Edge"))
-  writer.write(toJson(g.V().out().out().path().next(), "Path"))
-  writer.write(toJson(graph.edges().next().properties().next(), "Property"))
-  writer.write(toJson(new org.apache.tinkerpop.gremlin.structure.util.star.DirectionalStarGraph(org.apache.tinkerpop.gremlin.structure.util.star.StarGraph.of(graph.vertices().next()), Direction.BOTH), "StarGraph"))
-  writer.write(toJson(graph, "TinkerGraph", "`TinkerGraph` has a custom serializer that is registered as part of the `TinkerIoRegistry`."))
-  writer.write(toJson(g.V().out().out().tree().next(), "Tree"))
-  writer.write(toJson(graph.vertices().next(), "Vertex"))
-  writer.write(toJson(graph.vertices().next().properties().next(), "VertexProperty"))
+  writer.write("=== Graph Structure\n\n")
+  writer.write(toJson(graph.edges().next(), "Edge", "", "v2d0-no-types"))
+  writer.write(toJson(graph.edges().next().properties().next(), "Property", "", "v2d0-no-types"))
+  writer.write(toJson(new org.apache.tinkerpop.gremlin.structure.util.star.DirectionalStarGraph(org.apache.tinkerpop.gremlin.structure.util.star.StarGraph.of(graph.vertices().next()), Direction.BOTH), "StarGraph", "", "v2d0-no-types"))
+  writer.write(toJson(graph, "TinkerGraph", "`TinkerGraph` has a custom serializer that is registered as part of the `TinkerIoRegistry`.", "v2d0-no-types"))
+  writer.write(toJson(g.V().out().out().tree().next(), "Tree", "", "v2d0-no-types"))
+  writer.write(toJson(graph.vertices().next(), "Vertex", "", "v2d0-no-types"))
+  writer.write(toJson(graph.vertices().next().properties().next(), "VertexProperty", "", "v2d0-no-types"))
 
   writer.write("\n")
-  writer.write("Graph Process\n")
-  writer.write("~~~~~~~~~~~~~\n\n")
-  writer.write(toJson(SackFunctions.Barrier.normSack, "Barrier"))
-  writer.write(toJson(new Bytecode.Binding("x", 1), "Binding", "A \"Binding\" refers to a `Bytecode.Binding`."))
-  writer.write(toJson(g.V().hasLabel('person').out().in().tree(), "Bytecode", "The following `Bytecode` example represents the traversal of `g.V().hasLabel('person').out().in().tree()`. Obviously the serialized `Bytecode` woudl be quite different for the endless variations of commands that could be used together in the Gremlin language."))
-  writer.write(toJson(VertexProperty.Cardinality.list, "Cardinality"))
-  writer.write(toJson(Column.keys, "Column"))
-  writer.write(toJson(Direction.OUT, "Direction"))
-  writer.write(toJson(Operator.sum, "Operator"))
-  writer.write(toJson(Order.incr, "Order"))
-  writer.write(toJson(Pop.all, "Pop"))
-  writer.write(toJson(org.apache.tinkerpop.gremlin.process.traversal.step.TraversalOptionParent.Pick.any, "Pick"))
-  writer.write(toJson(org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ it.get() }"), "Lambda"))
+  writer.write("=== Graph Process\n\n")
+  writer.write(toJson(SackFunctions.Barrier.normSack, "Barrier", "", "v2d0-no-types"))
+  writer.write(toJson(new Bytecode.Binding("x", 1), "Binding", "A \"Binding\" refers to a `Bytecode.Binding`.", "v2d0-no-types"))
+  writer.write(toJson(g.V().hasLabel('person').out().in().tree(), "Bytecode", "The following `Bytecode` example represents the traversal of `g.V().hasLabel('person').out().in().tree()`. Obviously the serialized `Bytecode` would be quite different for the endless variations of commands that could be used together in the Gremlin language.", "v2d0-no-types"))
+  writer.write(toJson(VertexProperty.Cardinality.list, "Cardinality", "", "v2d0-no-types"))
+  writer.write(toJson(Column.keys, "Column", "", "v2d0-no-types"))
+  writer.write(toJson(Direction.OUT, "Direction", "", "v2d0-no-types"))
+  writer.write(toJson(Operator.sum, "Operator", "", "v2d0-no-types"))
+  writer.write(toJson(Order.incr, "Order", "", "v2d0-no-types"))
+  writer.write(toJson(Pop.all, "Pop", "", "v2d0-no-types"))
+  writer.write(toJson(org.apache.tinkerpop.gremlin.process.traversal.step.TraversalOptionParent.Pick.any, "Pick", "", "v2d0-no-types"))
+  writer.write(toJson(org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ it.get() }"), "Lambda", "", "v2d0-no-types"))
   tm = g.V().hasLabel('person').out().out().tree().profile().next()
   metrics = new org.apache.tinkerpop.gremlin.process.traversal.util.MutableMetrics(tm.getMetrics(0));
   metrics.addNested(new org.apache.tinkerpop.gremlin.process.traversal.util.MutableMetrics(tm.getMetrics(1)));
-  writer.write(toJson(metrics, "Metrics"))
-  writer.write(toJson(P.gt(0), "P"))
-  writer.write(toJson(P.gt(0).and(P.lt(10)), "P and"))
-  writer.write(toJson(P.gt(0).or(P.within(-1, -10, -100)), "P or"))
-  writer.write(toJson(Scope.local, "Scope"))
-  writer.write(toJson(T.label, "T"))
-  writer.write(toJson(g.V().hasLabel('person').out().out().tree().profile().next(), "TraversalMetrics"))
-  writer.write(toJson(g.V().hasLabel('person').nextTraverser(), "Traverser"))
+  writer.write(toJson(metrics, "Metrics", "", "v2d0-no-types"))
+  writer.write(toJson(P.gt(0), "P", "", "v2d0-no-types"))
+  writer.write(toJson(P.gt(0).and(P.lt(10)), "P and", "", "v2d0-no-types"))
+  writer.write(toJson(P.gt(0).or(P.within(-1, -10, -100)), "P or", "", "v2d0-no-types"))
+  writer.write(toJson(Scope.local, "Scope", "", "v2d0-no-types"))
+  writer.write(toJson(T.label, "T", "", "v2d0-no-types"))
+  writer.write(toJson(g.V().hasLabel('person').out().out().tree().profile().next(), "TraversalMetrics", "", "v2d0-no-types"))
+  writer.write(toJson(g.V().hasLabel('person').nextTraverser(), "Traverser", "", "v2d0-no-types"))
 
   writer.write("\n")
-  writer.write("RequestMessage\n")
-  writer.write("~~~~~~~~~~~~~~\n\n")
-  def msg = null
+  writer.write("=== RequestMessage\n\n")
   msg = RequestMessage.build("authentication").
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
                        add("saslMechanism", "PLAIN", "sasl", "AHN0ZXBocGhlbgBwYXNzd29yZA==").create()
-  writer.write(toJson(msg, "Authentication Response", "The following `RequestMessage` is an example of the response that should be made to a SASL-based authentication challenge."))
+  writer.write(toJson(msg, "Authentication Response", "The following `RequestMessage` is an example of the response that should be made to a SASL-based authentication challenge.", "v2d0-no-types"))
   msg = RequestMessage.build("eval").processor("session").
-                           add("gremlin", "g.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
-  writer.write(toJson(msg, "Session Eval", "The following `RequestMessage` is an example of a simple session request for a script evaluation with parameters."))
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
+                       add("gremlin", "g.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
+  writer.write(toJson(msg, "Session Eval", "The following `RequestMessage` is an example of a simple session request for a script evaluation with parameters.", "v2d0-no-types"))
   msg = RequestMessage.build("eval").processor("session").
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
                        add("gremlin", "social.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "aliases", [g: "social"], "session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
-  writer.write(toJson(msg, "Session Eval", "The following `RequestMessage` is an example of a session request for a script evaluation with an alias that binds the `TraversalSource` of \"g\" to \"social\"."))
+  writer.write(toJson(msg, "Session Eval Aliased", "The following `RequestMessage` is an example of a session request for a script evaluation with an alias that binds the `TraversalSource` of \"g\" to \"social\".", "v2d0-no-types"))
   msg = RequestMessage.build("close").processor("session").
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
                        add("session", UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).create()
-  writer.write(toJson(msg, "Session Close", "The following `RequestMessage` is an example of a request to close a session."))
+  writer.write(toJson(msg, "Session Close", "The following `RequestMessage` is an example of a request to close a session.", "v2d0-no-types"))
   msg = RequestMessage.build("eval").
-                           add("gremlin", "g.V(x)", "bindings", [x: 1], "language", "gremlin-groovy").create()
-  writer.write(toJson(msg, "Sessionless Eval", "The following `RequestMessage` is an example of a simple sessionless request for a script evaluation with parameters."))
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
+                       add("gremlin", "g.V(x)", "bindings", [x: 1], "language", "gremlin-groovy").create()
+  writer.write(toJson(msg, "Sessionless Eval", "The following `RequestMessage` is an example of a simple sessionless request for a script evaluation with parameters.", "v2d0-no-types"))
   msg = RequestMessage.build("eval").
+                       overrideRequestId(UUID.fromString("cb682578-9d92-4499-9ebc-5c6aa73c5397")).
                        add("gremlin", "social.V(x)", "bindings", [x: 1], "language", "gremlin-groovy", "aliases", [g: "social"]).create()
-  writer.write(toJson(msg, "Sessionless Eval", "The following `RequestMessage` is an example of a sessionless request for a script evaluation with an alias that binds the `TraversalSource` of \"g\" to \"social\"."))
+  writer.write(toJson(msg, "Sessionless Eval Aliased", "The following `RequestMessage` is an example of a sessionless request for a script evaluation with an alias that binds the `TraversalSource` of \"g\" to \"social\".", "v2d0-no-types"))
 
   writer.write("\n")
-  writer.write("ResponseMessage\n")
-  writer.write("~~~~~~~~~~~~~~~\n\n")
+  writer.write("=== ResponseMessage\n\n")
   msg = ResponseMessage.build(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).
                         code(org.apache.tinkerpop.gremlin.driver.message.ResponseStatusCode.AUTHENTICATE).create()
-  writer.write(toJson(msg, "Authentication Challenge", "When authentication is enabled, an initial request to the server will result in an authentication challenge. The typical response message will appear as follows, but handling it could be different dependending on the SASL implementation (e.g. multiple challenges maybe requested in some cases, but no in the default provided by Gremlin Server)."))
+  writer.write(toJson(msg, "Authentication Challenge", "When authentication is enabled, an initial request to the server will result in an authentication challenge. The typical response message will appear as follows, but handling it could be different dependending on the SASL implementation (e.g. multiple challenges maybe requested in some cases, but no in the default provided by Gremlin Server).", "v2d0-no-types"))
   msg = ResponseMessage.build(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786")).
                         code(org.apache.tinkerpop.gremlin.driver.message.ResponseStatusCode.SUCCESS).
                         result(Arrays.asList(graph.vertices().next())).create()
-  writer.write(toJson(msg, "Standard Result", "The following `ResponseMessage` is a typical example of the typical successful response Gremlin Server will return when returning results from a script."))
+  writer.write(toJson(msg, "Standard Result", "The following `ResponseMessage` is a typical example of the typical successful response Gremlin Server will return when returning results from a script.", "v2d0-no-types"))
 
   writer.write("\n")
-  writer.write("Extended\n")
-  writer.write("~~~~~~~~\n\n")
+  writer.write("=== Extended\n\n")
   writer.write("""Note that the "extended" types require the addition of the separate `GraphSONXModuleV2d0` module as follows:\n
 [source,java]
 ----
 mapper = GraphSONMapper.build().
-                        typeInfo(TypeInfo.PARTIAL_TYPES).
+                        typeInfo(TypeInfo.NO_TYPES).
                         addCustomModule(GraphSONXModuleV2d0.build().create(false)).
                         version(GraphSONVersion.V2_0).create().createMapper()
 ----\n
 """)
-  writer.write(toJson(new java.math.BigDecimal(new java.math.BigInteger("123456789987654321123456789987654321")), "BigDecimal"))
-  writer.write(toJson(new java.math.BigInteger("123456789987654321123456789987654321"), "BigInteger"))
-  writer.write(toJson(new Byte("1"), "Byte"))
-  writer.write(toJson(java.nio.ByteBuffer.wrap([1,2,3,4,5] as byte[]), "ByteBuffer"))
-  writer.write(toJson("x".charAt(0), "Char"))
-  writer.write(toJson(Duration.ofDays(5), "Duration", "The following example is a `Duration` of five days."))
-  writer.write(toJson(java.net.InetAddress.getByName("localhost"), "InetAddress"))
-  writer.write(toJson(Instant.now(), "Instant"))
-  writer.write(toJson(LocalDate.of(2016, 1, 1), "LocalDate"))
-  writer.write(toJson(LocalDateTime.of(2016, 1, 1, 12, 30), "LocalDateTime"))
-  writer.write(toJson(LocalTime.of(12, 30, 45), "LocalTime"))
-  writer.write(toJson(MonthDay.of(1, 1), "MonthDay"))
-  writer.write(toJson(OffsetDateTime.now(), "OffsetDateTime"))
-  writer.write(toJson(OffsetTime.now(), "OffsetTime"))
-  writer.write(toJson(Period.of(1, 6, 15), "Period", "The following example is a `Period` of one year, six months and fifteen days."))
-  writer.write(toJson(new Short("100"), "Short"))
-  writer.write(toJson(Year.of(2016), "Year", "The following example is of the `Year` \"2016\"."))
-  writer.write(toJson(YearMonth.of(2016, 6), "YearMonth", "The following example is a `YearMonth` of \"June 2016\""))
-  writer.write(toJson(ZonedDateTime.now(), "ZonedDateTime"))
-  writer.write(toJson(ZoneOffset.ofHoursMinutesSeconds(3, 6, 9), "ZoneOffset", "The following example is a `ZoneOffset` of three hours, six minutes, and nine seconds."))
+  writer.write(toJson(new java.math.BigDecimal(new java.math.BigInteger("123456789987654321123456789987654321")), "BigDecimal", "", "v2d0-partial"))
+  writer.write(toJson(new java.math.BigInteger("123456789987654321123456789987654321"), "BigInteger", "", "v2d0-partial"))
+  writer.write(toJson(new Byte("1"), "Byte", "", "v2d0-partial"))
+  writer.write(toJson(java.nio.ByteBuffer.wrap("some bytes for you".getBytes()), "ByteBuffer", "", "v2d0-partial"))
+  writer.write(toJson("x".charAt(0), "Char", "", "v2d0-partial"))
+  writer.write(toJson(Duration.ofDays(5), "Duration", "The following example is a `Duration` of five days.", "v2d0-partial"))
+  writer.write(toJson(java.net.InetAddress.getByName("localhost"), "InetAddress", "", "v2d0-partial"))
+  writer.write(toJson(Instant.parse("2016-12-14T16:39:19.349Z"), "Instant", "", "v2d0-partial"))
+  writer.write(toJson(LocalDate.of(2016, 1, 1), "LocalDate", "", "v2d0-partial"))
+  writer.write(toJson(LocalDateTime.of(2016, 1, 1, 12, 30), "LocalDateTime", "", "v2d0-partial"))
+  writer.write(toJson(LocalTime.of(12, 30, 45), "LocalTime", "", "v2d0-partial"))
+  writer.write(toJson(MonthDay.of(1, 1), "MonthDay", "", "v2d0-partial"))
+  writer.write(toJson(OffsetDateTime.parse("2007-12-03T10:15:30+01:00"), "OffsetDateTime", "", "v2d0-partial"))
+  writer.write(toJson(OffsetTime.parse("10:15:30+01:00"), "OffsetTime", "", "v2d0-partial"))
+  writer.write(toJson(Period.of(1, 6, 15), "Period", "The following example is a `Period` of one year, six months and fifteen days.", "v2d0-partial"))
+  writer.write(toJson(new Short("100"), "Short", "", "v2d0-partial"))
+  writer.write(toJson(Year.of(2016), "Year", "The following example is of the `Year` \"2016\".", "v2d0-partial"))
+  writer.write(toJson(YearMonth.of(2016, 6), "YearMonth", "The following example is a `YearMonth` of \"June 2016\"", "v2d0-partial"))
+  writer.write(toJson(ZonedDateTime.of(2016, 12, 23, 12, 12, 24, 36, ZoneId.of("GMT+2")), "ZonedDateTime", "", "v2d0-partial"))
+  writer.write(toJson(ZoneOffset.ofHoursMinutesSeconds(3, 6, 9), "ZoneOffset", "The following example is a `ZoneOffset` of three hours, six minutes, and nine seconds.", "v2d0-partial"))
 
 }
 *******************************************************************************

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/docs/src/dev/io/gryo.asciidoc
----------------------------------------------------------------------
diff --git a/docs/src/dev/io/gryo.asciidoc b/docs/src/dev/io/gryo.asciidoc
index 9f407b0..a26a880 100644
--- a/docs/src/dev/io/gryo.asciidoc
+++ b/docs/src/dev/io/gryo.asciidoc
@@ -13,6 +13,102 @@ distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
+
+
+*******************************************************************************
+* The following groovy script generates the data samples for Gryo.
+*******************************************************************************
+import org.apache.tinkerpop.shaded.kryo.io.Output
+import org.apache.tinkerpop.gremlin.tinkergraph.structure.*
+import org.apache.tinkerpop.gremlin.structure.*
+import org.apache.tinkerpop.gremlin.structure.io.gryo.*
+import org.apache.tinkerpop.gremlin.structure.io.*
+import org.apache.commons.configuration.BaseConfiguration
+
+new File("io-output/dev-docs/").mkdirs()
+new File("io-output/test-case-data/gryo").mkdirs()
+
+conf = new BaseConfiguration()
+conf.setProperty(TinkerGraph.GREMLIN_TINKERGRAPH_DEFAULT_VERTEX_PROPERTY_CARDINALITY, VertexProperty.Cardinality.list.name())
+graph = TinkerGraph.open(conf)
+TinkerFactory.generateTheCrew(graph)
+g = graph.traversal()
+
+toGryo = { o, type, mapper, suffix = "" ->
+    def fileToWriteTo = new File("io-output/test-case-data/gryo/" + type.toLowerCase().replace(" ","") + "-" + suffix + ".kryo")
+    if (fileToWriteTo.exists()) fileToWriteTo.delete()
+    out = new Output(new FileOutputStream(fileToWriteTo))
+    mapper.writeObject(out, o)
+    out.close()
+}
+
+mapper = GryoMapper.build().
+        version(GryoVersion.V1_0).
+        addRegistry(TinkerIoRegistryV2d0.instance()).
+        create().createMapper()
+
+toGryo(File, "Class", mapper, "v1d0")
+toGryo(new Date(1481750076295L), "Date", mapper, "v1d0")
+toGryo(100.00d, "Double", mapper, "v1d0")
+toGryo(100.00f, "Float", mapper, "v1d0")
+toGryo(100, "Integer", mapper, "v1d0")
+toGryo(100L, "Long", mapper, "v1d0")
+toGryo(new java.sql.Timestamp(1481750076295L), "Timestamp", mapper, "v1d0")
+toGryo(UUID.fromString("41d2e28a-20a4-4ab0-b379-d810dede3786"), "UUID", mapper, "v1d0")
+
+toGryo(graph.edges().next(), "Edge", mapper, "v1d0")
+toGryo(g.V().out().out().path().next(), "Path", mapper, "v1d0")
+toGryo(graph.edges().next().properties().next(), "Property", mapper, "v1d0")
+toGryo(new org.apache.tinkerpop.gremlin.structure.util.star.DirectionalStarGraph(org.apache.tinkerpop.gremlin.structure.util.star.StarGraph.of(graph.vertices().next()), Direction.BOTH).getStarGraphToSerialize(), "StarGraph", mapper, "v1d0")
+toGryo(graph, "TinkerGraph", mapper, "v1d0")
+toGryo(g.V(1).out().out().tree().next(), "Tree", mapper, "v1d0")
+toGryo(graph.vertices().next(), "Vertex", mapper, "v1d0")
+toGryo(graph.vertices().next().properties().next(), "VertexProperty", mapper, "v1d0")
+
+toGryo(SackFunctions.Barrier.normSack, "Barrier", mapper, "v1d0")
+toGryo(new Bytecode.Binding("x", 1), "Binding", mapper, "v1d0")
+toGryo(g.V().hasLabel('person').out().in().tree().asAdmin().getBytecode(), "Bytecode", mapper, "v1d0")
+toGryo(VertexProperty.Cardinality.list, "Cardinality", mapper, "v1d0")
+toGryo(Column.keys, "Column", mapper, "v1d0")
+toGryo(Direction.OUT, "Direction", mapper, "v1d0")
+toGryo(Operator.sum, "Operator", mapper, "v1d0")
+toGryo(Order.incr, "Order", mapper, "v1d0")
+toGryo(Pop.all, "Pop", mapper, "v1d0")
+toGryo(org.apache.tinkerpop.gremlin.process.traversal.step.TraversalOptionParent.Pick.any, "Pick", mapper, "v1d0")
+toGryo(org.apache.tinkerpop.gremlin.util.function.Lambda.function("{ it.get() }"), "Lambda", mapper, "v1d0")
+tm = g.V().hasLabel('person').out().out().tree().profile().next()
+metrics = new org.apache.tinkerpop.gremlin.process.traversal.util.MutableMetrics(tm.getMetrics(0));
+metrics.addNested(new org.apache.tinkerpop.gremlin.process.traversal.util.MutableMetrics(tm.getMetrics(1)));
+toGryo(metrics, "Metrics", mapper, "v1d0")
+toGryo(P.gt(0), "P", mapper, "v1d0")
+toGryo(P.gt(0).and(P.lt(10)), "P and", mapper, "v1d0")
+toGryo(P.gt(0).or(P.within(-1, -10, -100)), "P or", mapper, "v1d0")
+toGryo(Scope.local, "Scope", mapper, "v1d0")
+toGryo(T.label, "T", mapper, "v1d0")
+toGryo(g.V().hasLabel('person').out().out().tree().profile().next(), "TraversalMetrics", mapper, "v1d0")
+toGryo(g.V().hasLabel('person').nextTraverser(), "Traverser", mapper, "v1d0")
+
+toGryo(new java.math.BigDecimal(new java.math.BigInteger("123456789987654321123456789987654321")), "BigDecimal", mapper, "v1d0")
+toGryo(new java.math.BigInteger("123456789987654321123456789987654321"), "BigInteger", mapper, "v1d0")
+toGryo(new Byte("1"), "Byte", mapper, "v1d0")
+toGryo(java.nio.ByteBuffer.wrap("some bytes for you".getBytes()), "ByteBuffer", mapper, "v1d0")
+toGryo("x".charAt(0), "Char", mapper, "v1d0")
+toGryo(Duration.ofDays(5), "Duration", mapper, "v1d0")
+toGryo(java.net.InetAddress.getByName("localhost"), "InetAddress", mapper, "v1d0")
+toGryo(Instant.parse("2016-12-14T16:39:19.349Z"), "Instant", mapper, "v1d0")
+toGryo(LocalDate.of(2016, 1, 1), "LocalDate", mapper, "v1d0")
+toGryo(LocalDateTime.of(2016, 1, 1, 12, 30), "LocalDateTime", mapper, "v1d0")
+toGryo(LocalTime.of(12, 30, 45), "LocalTime", mapper, "v1d0")
+toGryo(MonthDay.of(1, 1), "MonthDay", mapper, "v1d0")
+toGryo(OffsetDateTime.parse("2007-12-03T10:15:30+01:00"), "OffsetDateTime", mapper, "v1d0")
+toGryo(OffsetTime.parse("10:15:30+01:00"), "OffsetTime", mapper, "v1d0")
+toGryo(Period.of(1, 6, 15), "Period", mapper, "v1d0")
+toGryo(new Short("100"), "Short", mapper, "v1d0")
+toGryo(Year.of(2016), "Year", mapper, "v1d0")
+toGryo(YearMonth.of(2016, 6), "YearMonth", mapper, "v1d0")
+toGryo(ZonedDateTime.of(2016, 12, 23, 12, 12, 24, 36, ZoneId.of("GMT+2")), "ZonedDateTime", mapper, "v1d0")
+toGryo(ZoneOffset.ofHoursMinutesSeconds(3, 6, 9), "ZoneOffset", mapper, "v1d0")
+*******************************************************************************
 ////
 [[gryo]]
 = Gryo

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/scripts/generate-gryo-resources.groovy
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/scripts/generate-gryo-resources.groovy b/gremlin-tools/gremlin-io-test/scripts/generate-gryo-resources.groovy
index 124e67f..3f4cf54 100644
--- a/gremlin-tools/gremlin-io-test/scripts/generate-gryo-resources.groovy
+++ b/gremlin-tools/gremlin-io-test/scripts/generate-gryo-resources.groovy
@@ -39,7 +39,7 @@ toGryo = { o, type, mapper, suffix = "" ->
     def fileToWriteTo = new File("${projectBuildDir}/test-case-data/io/gryo/" + type.title.toLowerCase().replace(" ","") + "-" + suffix + ".kryo")
     if (fileToWriteTo.exists()) fileToWriteTo.delete()
     try {
-        final Output out = new Output(new FileOutputStream(fileToWriteTo))
+        out = new Output(new FileOutputStream(fileToWriteTo))
         mapper.writeObject(out, o)
         out.close()
     } catch (Exception ex) {

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java
index f740176..5070e19 100644
--- a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java
+++ b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/Model.java
@@ -105,7 +105,7 @@ public class Model {
 
         final Compatibility[] noTypeGraphSONPlusGryo3_2_3 = Compatibilities.with(GryoCompatibility.class).beforeRelease("3.2.4").join(Compatibilities.UNTYPED_GRAPHSON).matchToArray();
         final Compatibility[] noTypeGraphSONPlusGryo3_3_0 = Compatibilities.with(GryoCompatibility.class).beforeRelease("3.3.0").join(Compatibilities.UNTYPED_GRAPHSON).matchToArray();
-        final Compatibility[] noGraphSONBeforeV3 = Compatibilities.with(GraphSONCompatibility.class).configuredAs(".*v2d0-partial|v1d0|v2d0-no-types").matchToArray();
+        final Compatibility[] noGraphSONBeforeV3 = Compatibilities.with(GraphSONCompatibility.class).configuredAs(".*v2d0-partial|v1d0|v2d0-no-types").join(Compatibilities.GRYO_ONLY).matchToArray();
 
         // IMPORTANT - the "title" or name of the Entry needs to be unique
 

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibility.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibility.java b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibility.java
index 2ae2cd4..bccbcf4 100644
--- a/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibility.java
+++ b/gremlin-tools/gremlin-io-test/src/main/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibility.java
@@ -48,7 +48,6 @@ public enum GryoCompatibility implements Compatibility {
     V1D0_3_2_4("3.2.4", "1.0", "v1d0"),
     V1D0_3_2_5("3.2.5", "1.0", "v1d0"),
     V1D0_3_2_6("3.2.6", "1.0", "v1d0"),
-    V1D0_3_2_7("3.2.7", "1.0", "v1d0"),
     V1D0_3_3_0("3.3.0", "1.0", "v1d0"),
     V3D0_3_3_0("3.3.0", "3.0", "v3d0"),
     V1D0_3_3_1("3.3.0", "1.0", "v1d0"),

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/CompatibilitiesTest.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/CompatibilitiesTest.java b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/CompatibilitiesTest.java
index a88cd62..a9a9b17 100644
--- a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/CompatibilitiesTest.java
+++ b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/CompatibilitiesTest.java
@@ -34,7 +34,7 @@ public class CompatibilitiesTest {
     /**
      * Need to bump this each time we get a new release on the 3.2.x line.
      */
-    private static final String LAST_OF_3_2_x = "3.2.5";
+    private static final String LAST_OF_3_2_x = "3.2.6";
 
     @Test
     public void shouldFindGryoVersionsBeforeRelease3_2_4() {
@@ -47,7 +47,9 @@ public class CompatibilitiesTest {
     public void shouldFindGryoVersionsAfterRelease3_2_x() {
         final List<Compatibility> compatibilityList = Compatibilities.with(GryoCompatibility.class)
                 .afterRelease(LAST_OF_3_2_x).match();
-        assertThat(compatibilityList, containsInAnyOrder(GryoCompatibility.V1D0_3_3_0, GryoCompatibility.V3D0_3_3_0));
+        assertThat(compatibilityList, containsInAnyOrder(
+                GryoCompatibility.V1D0_3_3_0, GryoCompatibility.V1D0_3_3_1,
+                GryoCompatibility.V3D0_3_3_0, GryoCompatibility.V3D0_3_3_1));
     }
 
     @Test
@@ -62,14 +64,15 @@ public class CompatibilitiesTest {
         final List<Compatibility> compatibilityList = Compatibilities.with(GryoCompatibility.class)
                 .before("3.0").match();
         assertThat(compatibilityList, containsInAnyOrder(GryoCompatibility.V1D0_3_2_3,
-                GryoCompatibility.V1D0_3_2_4, GryoCompatibility.V1D0_3_2_5, GryoCompatibility.V1D0_3_3_0));
+                GryoCompatibility.V1D0_3_2_4, GryoCompatibility.V1D0_3_2_5,
+                GryoCompatibility.V1D0_3_2_6, GryoCompatibility.V1D0_3_3_0, GryoCompatibility.V1D0_3_3_1));
     }
 
     @Test
     public void shouldFindGryoVersionsAfter1_0() {
         final List<Compatibility> compatibilityList = Compatibilities.with(GryoCompatibility.class)
                 .after("1.0").match();
-        assertThat(compatibilityList, containsInAnyOrder(GryoCompatibility.V3D0_3_3_0));
+        assertThat(compatibilityList, containsInAnyOrder(GryoCompatibility.V3D0_3_3_0, GryoCompatibility.V3D0_3_3_1));
     }
 
     @Test
@@ -78,7 +81,7 @@ public class CompatibilitiesTest {
                 .afterRelease(LAST_OF_3_2_x)
                 .after("1.0")
                 .match();
-        assertThat(compatibilityList, containsInAnyOrder(GryoCompatibility.V3D0_3_3_0));
+        assertThat(compatibilityList, containsInAnyOrder(GryoCompatibility.V3D0_3_3_0, GryoCompatibility.V3D0_3_3_1));
     }
 
     @Test
@@ -87,7 +90,8 @@ public class CompatibilitiesTest {
                 .configuredAs(".*partial.*").match();
         assertThat(compatibilityList, containsInAnyOrder(GraphSONCompatibility.V2D0_PARTIAL_3_2_3,
                 GraphSONCompatibility.V2D0_PARTIAL_3_2_4, GraphSONCompatibility.V2D0_PARTIAL_3_2_5,
-                GraphSONCompatibility.V2D0_PARTIAL_3_3_0));
+                GraphSONCompatibility.V2D0_PARTIAL_3_2_6, GraphSONCompatibility.V2D0_PARTIAL_3_3_0,
+                GraphSONCompatibility.V2D0_PARTIAL_3_3_1));
     }
 
     @Test
@@ -95,7 +99,8 @@ public class CompatibilitiesTest {
         final List<Compatibility> compatibilityList = Compatibilities.with(GraphSONCompatibility.class)
                 .afterRelease(LAST_OF_3_2_x)
                 .configuredAs(".*partial.*").match();
-        assertThat(compatibilityList, containsInAnyOrder(GraphSONCompatibility.V2D0_PARTIAL_3_3_0));
+        assertThat(compatibilityList, containsInAnyOrder(GraphSONCompatibility.V2D0_PARTIAL_3_3_0,
+                GraphSONCompatibility.V2D0_PARTIAL_3_3_1));
     }
 
     @Test
@@ -107,7 +112,9 @@ public class CompatibilitiesTest {
                         .configuredAs(".*partial.*"))
                 .match();
         assertThat(compatibilityList, containsInAnyOrder(GryoCompatibility.V3D0_3_3_0,
+                GryoCompatibility.V3D0_3_3_1, 
                 GraphSONCompatibility.V2D0_PARTIAL_3_2_3, GraphSONCompatibility.V2D0_PARTIAL_3_2_4,
-                GraphSONCompatibility.V2D0_PARTIAL_3_2_5, GraphSONCompatibility.V2D0_PARTIAL_3_3_0));
+                GraphSONCompatibility.V2D0_PARTIAL_3_2_5,GraphSONCompatibility.V2D0_PARTIAL_3_2_6,
+                GraphSONCompatibility.V2D0_PARTIAL_3_3_0, GraphSONCompatibility.V2D0_PARTIAL_3_3_1));
     }
 }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONTypedCompatibilityTest.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONTypedCompatibilityTest.java b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONTypedCompatibilityTest.java
index e73793f..59e369a 100644
--- a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONTypedCompatibilityTest.java
+++ b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONTypedCompatibilityTest.java
@@ -53,6 +53,7 @@ public class GraphSONTypedCompatibilityTest extends AbstractTypedCompatibilityTe
                 {GraphSONCompatibility.V2D0_PARTIAL_3_2_3, mapperV2 },
                 {GraphSONCompatibility.V2D0_PARTIAL_3_2_4, mapperV2 },
                 {GraphSONCompatibility.V2D0_PARTIAL_3_2_5, mapperV2 },
+                {GraphSONCompatibility.V2D0_PARTIAL_3_2_6, mapperV2 },
                 {GraphSONCompatibility.V2D0_PARTIAL_3_3_0, mapperV2 },
                 {GraphSONCompatibility.V3D0_PARTIAL_3_3_0, mapperV3 },
                 {GraphSONCompatibility.V2D0_PARTIAL_3_3_1, mapperV2 },

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONUntypedCompatibilityTest.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONUntypedCompatibilityTest.java b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONUntypedCompatibilityTest.java
index 61c2857..1234486 100644
--- a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONUntypedCompatibilityTest.java
+++ b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/graphson/GraphSONUntypedCompatibilityTest.java
@@ -56,6 +56,8 @@ public class GraphSONUntypedCompatibilityTest extends AbstractUntypedCompatibili
                 {GraphSONCompatibility.V2D0_NO_TYPE_3_2_4, mapperV2 },
                 {GraphSONCompatibility.V1D0_3_2_5, mapperV1 },
                 {GraphSONCompatibility.V2D0_NO_TYPE_3_2_5, mapperV2 },
+                {GraphSONCompatibility.V1D0_3_2_6, mapperV1 },
+                {GraphSONCompatibility.V2D0_NO_TYPE_3_2_6, mapperV2 },
                 {GraphSONCompatibility.V1D0_3_3_0, mapperV1 },
                 {GraphSONCompatibility.V2D0_NO_TYPE_3_3_0, mapperV2 }
         });

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibilityTest.java
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibilityTest.java b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibilityTest.java
index 626ae90..6317df1 100644
--- a/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibilityTest.java
+++ b/gremlin-tools/gremlin-io-test/src/test/java/org/apache/tinkerpop/gremlin/structure/io/gryo/GryoCompatibilityTest.java
@@ -50,6 +50,7 @@ public class GryoCompatibilityTest extends AbstractTypedCompatibilityTest {
                 {GryoCompatibility.V1D0_3_2_3, mapperV1 },
                 {GryoCompatibility.V1D0_3_2_4, mapperV1 },
                 {GryoCompatibility.V1D0_3_2_5, mapperV1 },
+                {GryoCompatibility.V1D0_3_2_6, mapperV1 },
                 {GryoCompatibility.V1D0_3_3_0, mapperV1 },
                 {GryoCompatibility.V3D0_3_3_0, mapperV3 }});
     }

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v1d0.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v1d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v1d0.json
new file mode 100644
index 0000000..8c5b82c
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v1d0.json
@@ -0,0 +1,12 @@
+{
+  "requestId" : "41d2e28a-20a4-4ab0-b379-d810dede3786",
+  "status" : {
+    "message" : "",
+    "code" : 407,
+    "attributes" : { }
+  },
+  "result" : {
+    "data" : null,
+    "meta" : { }
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v2d0-no-types.json
new file mode 100644
index 0000000..8c5b82c
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v2d0-no-types.json
@@ -0,0 +1,12 @@
+{
+  "requestId" : "41d2e28a-20a4-4ab0-b379-d810dede3786",
+  "status" : {
+    "message" : "",
+    "code" : 407,
+    "attributes" : { }
+  },
+  "result" : {
+    "data" : null,
+    "meta" : { }
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v2d0-partial.json
new file mode 100644
index 0000000..8c5b82c
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationchallenge-v2d0-partial.json
@@ -0,0 +1,12 @@
+{
+  "requestId" : "41d2e28a-20a4-4ab0-b379-d810dede3786",
+  "status" : {
+    "message" : "",
+    "code" : 407,
+    "attributes" : { }
+  },
+  "result" : {
+    "data" : null,
+    "meta" : { }
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v1d0.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v1d0.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v1d0.json
new file mode 100644
index 0000000..838e1fd
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v1d0.json
@@ -0,0 +1,9 @@
+{
+  "requestId" : "cb682578-9d92-4499-9ebc-5c6aa73c5397",
+  "op" : "authentication",
+  "processor" : "",
+  "args" : {
+    "saslMechanism" : "PLAIN",
+    "sasl" : "AHN0ZXBocGhlbgBwYXNzd29yZA=="
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v2d0-no-types.json
new file mode 100644
index 0000000..838e1fd
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v2d0-no-types.json
@@ -0,0 +1,9 @@
+{
+  "requestId" : "cb682578-9d92-4499-9ebc-5c6aa73c5397",
+  "op" : "authentication",
+  "processor" : "",
+  "args" : {
+    "saslMechanism" : "PLAIN",
+    "sasl" : "AHN0ZXBocGhlbgBwYXNzd29yZA=="
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v2d0-partial.json
new file mode 100644
index 0000000..838e1fd
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/authenticationresponse-v2d0-partial.json
@@ -0,0 +1,9 @@
+{
+  "requestId" : "cb682578-9d92-4499-9ebc-5c6aa73c5397",
+  "op" : "authentication",
+  "processor" : "",
+  "args" : {
+    "saslMechanism" : "PLAIN",
+    "sasl" : "AHN0ZXBocGhlbgBwYXNzd29yZA=="
+  }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/barrier-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/barrier-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/barrier-v2d0-no-types.json
new file mode 100644
index 0000000..7dd6c03
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/barrier-v2d0-no-types.json
@@ -0,0 +1 @@
+"normSack"
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/barrier-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/barrier-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/barrier-v2d0-partial.json
new file mode 100644
index 0000000..7ddccdd
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/barrier-v2d0-partial.json
@@ -0,0 +1,4 @@
+{
+  "@type" : "g:Barrier",
+  "@value" : "normSack"
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/bigdecimal-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/bigdecimal-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/bigdecimal-v2d0-no-types.json
new file mode 100644
index 0000000..7914536
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/bigdecimal-v2d0-no-types.json
@@ -0,0 +1 @@
+123456789987654321123456789987654321
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/bigdecimal-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/bigdecimal-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/bigdecimal-v2d0-partial.json
new file mode 100644
index 0000000..7914536
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/bigdecimal-v2d0-partial.json
@@ -0,0 +1 @@
+123456789987654321123456789987654321
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/biginteger-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/biginteger-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/biginteger-v2d0-no-types.json
new file mode 100644
index 0000000..7914536
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/biginteger-v2d0-no-types.json
@@ -0,0 +1 @@
+123456789987654321123456789987654321
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/biginteger-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/biginteger-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/biginteger-v2d0-partial.json
new file mode 100644
index 0000000..7914536
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/biginteger-v2d0-partial.json
@@ -0,0 +1 @@
+123456789987654321123456789987654321
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/binding-v2d0-no-types.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/binding-v2d0-no-types.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/binding-v2d0-no-types.json
new file mode 100644
index 0000000..661b153
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/binding-v2d0-no-types.json
@@ -0,0 +1,4 @@
+{
+  "key" : "x",
+  "value" : 1
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/2743f4d4/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/binding-v2d0-partial.json
----------------------------------------------------------------------
diff --git a/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/binding-v2d0-partial.json b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/binding-v2d0-partial.json
new file mode 100644
index 0000000..579b8c7
--- /dev/null
+++ b/gremlin-tools/gremlin-io-test/src/test/resources/org/apache/tinkerpop/gremlin/structure/io/graphson/_3_2_6/binding-v2d0-partial.json
@@ -0,0 +1,10 @@
+{
+  "@type" : "g:Binding",
+  "@value" : {
+    "key" : "x",
+    "value" : {
+      "@type" : "g:Int32",
+      "@value" : 1
+    }
+  }
+}
\ No newline at end of file