Merge branch 'TINKERPOP-1676-master'
Conflicts:
CHANGELOG.asciidoc
docs/src/upgrade/release-3.2.x-incubating.asciidoc
Project: http://git-wip-us.apache.org/repos/asf/tinkerpop/repo
Commit: http://git-wip-us.apache.org/repos/asf/tinkerpop/commit/df529090
Tree: http://git-wip-us.apache.org/repos/asf/tinkerpop/tree/df529090
Diff: http://git-wip-us.apache.org/repos/asf/tinkerpop/diff/df529090
Branch: refs/heads/master
Commit: df5290906d5ffeca14f1e4fd84c83dbb4e3b2f9b
Parents: 5607acf bb7ff82
Author: Stephen Mallette <[email protected]>
Authored: Wed May 31 16:04:07 2017 -0400
Committer: Stephen Mallette <[email protected]>
Committed: Wed May 31 16:04:07 2017 -0400
----------------------------------------------------------------------
CHANGELOG.asciidoc | 4 +
docs/src/dev/io/graphson.asciidoc | 121 +----------
.../upgrade/release-3.2.x-incubating.asciidoc | 12 ++
.../io/graphson/AbstractObjectDeserializer.java | 10 +-
.../structure/io/graphson/GraphSONReader.java | 5 +-
.../io/graphson/GraphSONSerializersV2d0.java | 200 +++++++++++++++----
.../io/graphson/GraphSONTypeDeserializer.java | 9 +-
.../io/graphson/JavaTimeSerializersV2d0.java | 5 +
.../io/graphson/TraversalSerializersV2d0.java | 146 +++++++++++---
.../structure/util/detached/DetachedEdge.java | 78 +++++++-
.../util/detached/DetachedElement.java | 4 +-
.../structure/util/detached/DetachedVertex.java | 63 +++++-
.../util/detached/DetachedVertexProperty.java | 49 ++++-
.../GraphSONMapperEmbeddedTypeTest.java | 109 ++++++++--
.../util/detached/DetachedEdgeTest.java | 3 +-
.../io/graphson/_3_3_0/path-v2d0-no-types.json | 59 +-----
.../io/graphson/_3_3_0/path-v2d0-partial.json | 122 +----------
.../io/graphson/_3_3_0/property-v3d0.json | 15 --
.../io/graphson/_3_3_0/standardresult-v3d0.json | 120 ++++++-----
.../io/graphson/_3_3_0/stargraph-v3d0.json | 120 ++++++-----
.../tinkergraph/structure/TinkerIoRegistry.java | 5 +-
.../structure/TinkerIoRegistryV1d0.java | 5 +-
.../structure/TinkerIoRegistryV2d0.java | 5 +
23 files changed, 745 insertions(+), 524 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/df529090/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --cc CHANGELOG.asciidoc
index c4dcb06,7f64ed7..29cb127
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@@ -87,12 -87,12 +87,16 @@@ image::https://raw.githubusercontent.co
TinkerPop 3.2.5 (Release Date: NOT OFFICIALLY RELEASED YET)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+* Fixed a bug in `until(predicate)` where it was actually calling
`emit(predicate)`.
+ * Fixed inconsistency in GraphSON serialization of `Path` where properties of
graph elements were being included when serialized.
+ * Improved performance and memory usage of GraphSON when serializing
`TinkerGraph` and graph elements.
+ * Removed use of `stream()` in `DetachedEdge` and `DetachedVertex`.
+ * Deprecated a constructor in `DetachedEdge` that made use of `Pair` in favor
of a new one that just uses the objects that were in the `Pair`.
* Improved error messaging on the `g.addV(Object...)` when passing an invalid
arguments.
* Reduced memory usage for TinkerGraph deserialization in GraphSON by
streaming vertices and edges.
+* Added the `gremlin-archetype-dsl` to demonstrate how to structure a Maven
project for a DSL.
+* Developed and documented patterns for Domain Specific Language
implementations.
+* Removed the Groovy dependency from `gremlin-python` and used Groovy
Templates and the `gmavenplus-plugin` to generate the python GLV classes.
* Now using Groovy `[...]` map notation in `GroovyTranslator` instead of `new
LinkedHashMap(){{ }}`.
* Maintained type information on `Traversal.promise()`.
* Propagated exception to `Future` instead of calling thread in
`RemoteConnection`.
http://git-wip-us.apache.org/repos/asf/tinkerpop/blob/df529090/docs/src/upgrade/release-3.2.x-incubating.asciidoc
----------------------------------------------------------------------
diff --cc docs/src/upgrade/release-3.2.x-incubating.asciidoc
index ca51afa,0db3512..d1c2f54
--- a/docs/src/upgrade/release-3.2.x-incubating.asciidoc
+++ b/docs/src/upgrade/release-3.2.x-incubating.asciidoc
@@@ -32,27 -32,18 +32,39 @@@ Please see the link:https://github.com/
Upgrading for Users
~~~~~~~~~~~~~~~~~~~
+DSL Support
+^^^^^^^^^^^
+
+It has always been possible to construct Domain Specific Languages (DSLs)
with Gremlin, but the approach has required
+a somewhat deep understanding of the TinkerPop code base and it is not
something that has had a recommeded method
+for implementation. With this release, TinkerPop simplifies DSL development
and provides the best practices for their
+implementation.
+
+[source,java]
+----
+// standard Gremlin
+g.V().hasLabel('person').
+ where(outE("created").count().is(P.gte(2))).count()
+
+// the same traversal as above written as a DSL
+social.persons().where(createdAtLeast(2)).count()
+----
+
+See: link:https://issues.apache.org/jira/browse/TINKERPOP-786[TINKERPOP-786],
+link:http://tinkerpop.apache.org/docs/3.2.5/dev/reference/#dsl[Reference
Documentation]
+
+ GraphSON Path Serialization
+ ^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+ Serialization of `Path` with GraphSON was inconsistent with Gryo in that all
the properties on any elements of
+ the `Path` were being included. With Gryo that, correctly, was not happening
as that could be extraordinarily
+ expensive. GraphSON serialization has now been modified to properly not
include properties. That change can cause
+ breaks in application code if that application code tries to access
properties on elements in a `Path` as they
+ will no longer be there. Applications that require the properties will need
to alter their Gremlin to better
+ restrict the data they want to retrieve.
+
+ See: link:https://issues.apache.org/jira/browse/TINKERPOP-1676[TINKERPOP-1676]
+
Authentication Configuration
^^^^^^^^^^^^^^^^^^^^^^^^^^^^