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 2015/08/10 20:26:42 UTC

[01/14] incubator-tinkerpop git commit: Add "For Committers" documentation

Repository: incubator-tinkerpop
Updated Branches:
  refs/heads/master 856daac96 -> da57f3919


Add "For Committers" documentation


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

Branch: refs/heads/master
Commit: 2be03c0acb0bb0b0b94c01f310461cd3366ea56a
Parents: 58b699e
Author: mhfrantz <mf...@redsealnetworks.com>
Authored: Fri Jul 31 07:48:44 2015 -0700
Committer: mhfrantz <mf...@redsealnetworks.com>
Committed: Fri Jul 31 07:49:28 2015 -0700

----------------------------------------------------------------------
 CONTRIBUTING.asciidoc | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/2be03c0a/CONTRIBUTING.asciidoc
----------------------------------------------------------------------
diff --git a/CONTRIBUTING.asciidoc b/CONTRIBUTING.asciidoc
index 705a90a..d27a62c 100644
--- a/CONTRIBUTING.asciidoc
+++ b/CONTRIBUTING.asciidoc
@@ -20,3 +20,45 @@ Contributions via GitHub pull requests are gladly accepted from their original
 author. By submitting any copyrighted material via pull request, email, or other means
 you agree to license the material under the project's open source license and
 warrant that you have the legal authority to do so.
+
+## For Committers
+
+For those with commit access to the main repository, here are a few guidelines.
+
+### Release Notes
+
+We use a two-pronged approach to maintaining the change log and preparing the release notes.
+
+1. For work that is documented in JIRA, we can run reports that include all of
+the tickets targeted for a specific release.  This report can be included in the
+release announcement.
+
+2. The manual change log (CHANGELOG.asciidoc) can be used to highlight large
+changes, describe themes (e.g. "We focused on performance improvements") or to
+give voice to undocumented changes.
+
+### Branches
+
+We maintain the "master" branch as the one where most people would be developing.
+
+Additionally, we may have release branches for maintenance work.  For example,
+the "tp30" branch is used to maintain the 3.0.x line while work on 3.1.x
+proceeds on "master".
+
+Other branches may be created for collaborating on features or for RFC's that
+other developers may want to inspect.  It is suggested that the JIRA issue ID be
+used as the prefix, since that triggers certain automation, and it provides a
+way to account for the branch lifecycle, i.e. "Who's branch is this, and can I
+delete it?"  For example, TINKERPOP3-999-add-cool-new-feature is a nice branch
+name.
+
+For branches that are NOT associated with JIRA issues, you are free to use your
+Apache ID as a branch name prefix.  This provides a unique namespace, and also a
+way to account for the branch lifecycle.
+
+Please remove your own branches when they are no longer needed.
+
+### Tags
+
+We use tags for milestones, release candidates, and approved releases.  Please
+refrain from creating arbitrary tags, as they produce permanent clutter.


[14/14] incubator-tinkerpop git commit: Merge remote-tracking branch 'origin/tp30'

Posted by sp...@apache.org.
Merge remote-tracking branch 'origin/tp30'

Conflicts:
	README.asciidoc


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

Branch: refs/heads/master
Commit: da57f391905542345b92e52634dcd72dfc4cdcff
Parents: 856daac 5453b2d
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Aug 10 14:26:22 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 10 14:26:22 2015 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc                              |   2 +
 CONTRIBUTING.asciidoc                           | 131 ++++++++++++++++++-
 README.asciidoc                                 |  65 ++++-----
 RELEASE.asciidoc                                |  93 +++++++++++++
 .../step/sideEffect/GroovyGroupCountTest.groovy |   7 +-
 .../step/sideEffect/GroupCountTest.java         |  41 +++++-
 6 files changed, 291 insertions(+), 48 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/da57f391/CHANGELOG.asciidoc
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/da57f391/README.asciidoc
----------------------------------------------------------------------
diff --cc README.asciidoc
index 43529fa,934d5af..7299286
--- a/README.asciidoc
+++ b/README.asciidoc
@@@ -82,95 -54,13 +54,102 @@@ $ bin/gremlin.s
           \,,,/
           (o o)
  -----oOOo-(3)-oOOo-----
- gremlin>
+ plugin activated: tinkerpop.server
+ plugin activated: tinkerpop.utilities
+ plugin activated: tinkerpop.tinkergraph
+ gremlin> graph = TinkerFactory.createModern()
+ ==>tinkergraph[vertices:6 edges:6]
+ gremlin> g = graph.traversal()
+ ==>graphtraversalsource[tinkergraph[vertices:6 edges:6], standard]
+ gremlin> g.V().has('name','vadas').valueMap()
+ ==>[name:[vadas], age:[27]]
  ----
 +
 +Issue Tracker Conventions
 +~~~~~~~~~~~~~~~~~~~~~~~~~
 +
 +TinkerPop3 uses Apache JIRA as its link:https://issues.apache.org/jira/browse/TINKERPOP3[issue tracker].  JIRA is a very robust piece of software with many options and configurations.  To simplify usage and ensure consistency across issues, the following conventions should be adhered to:
 +
 +* An issue's "status" should generally be in one of two states: `open` or `closed` (`reopened` is equivalent to `open` for our purposes).
 +** An `open` issue is newly created, under consideration or otherwise in progress.
 +** A `closed` issue is completed for purposes of release (i.e. code, testing, and documentation complete).
 +** Issues in a `resolved` state should immediately be evaluated for movement to `closed` - issue become `resolved` by those who don't have the permissions to `close`.
 +* An issue's "type" should be one of two options: `bug` or `improvement`.
 +** A `bug` has a very specific meaning, referring to an error that prevents usage of TinkerPop AND does not have a reasonable workaround.  Given that definition, a `bug` should generally have very high priority for a fix.
 +** Everything else is an `improvement` in the sense that any other work is an enhancement to the current codebase.
 +* The "component" should be representative of the primary area of code that it applies to and all issues should have this property set.
 +* Issues are not assigned "labels".
 +* The "affects/fix version(s)" fields should be appropriately set, where the "fix version" implies the version on which that particular issue will completed.
 +
 +Release Process
 +~~~~~~~~~~~~~~~
 +
 +. `mvn clean install`
 +.. `mvn verify -DskipIntegrationTests=false -DincludeNeo4j`
 +.. `mvn verify -DskipPerformanceTests=false`
 +. Perform manual tests:
 +.. Execute `:remote connect conf/remote.yaml` and send some requests to a running Gremlin Server instance.
 +.. Execute `:?` to display the help in the Console.
 +. Update `CHANGELOG.asciidoc` with release date
 +. `bin/bump.sh "version"` to update project files to reference the non-SNAPSHOT version
 +. `git diff` and review the updated files (expect all `pom.xml` files and this README)
 +. `git commit -a -m "TinkerPop x.y.z release"` and `git push`
 +. `git tag -a -m "TinkerPop x.y.z release" x.y.z` and `git push --tags`
 +. `mvn clean install -Dmaven.test.skip=true`
 +. `bin/publish-docs.sh <username>`
 +. `mvn install -Papache-release -DcreateChecksum=true -Dmaven.test.skip=true`
 +. Upload artifacts to `https://dist.apache.org/repos/dist/dev/incubator/tinkerpop` for `[VOTE]` review.
 +.. `svn co --depth empty https://dist.apache.org/repos/dist/dev/incubator/tinkerpop/ dev` and `mkdir dev/x.y.z`
 +.. `cp ~/.m2/repository/org/apache/tinkerpop/gremlin-console/x.y.z/gremlin-console-x.y.z-distribution.zip* dev/x.y.z`
 +.. `cp ~/.m2/repository/org/apache/tinkerpop/gremlin-server/x.y.z/gremlin-server-x.y.z-distribution.zip* dev/x.y.z`
 +.. `cp ~/.m2/repository/org/apache/tinkerpop/tinkerpop/x.y.z/tinkerpop-x.y.z-source-release.zip* dev/x.y.z`
 +.. `cd dev/x.y.z` and `for f in *.zip*; do  mv "$f" "apache-$f"; done`
 +.. `cd ..; svn add x.y.z/; svn ci -m "TinkerPop x.y.z release"`
 +. Submit for `[VOTE]` at `general@incubator.apache.org` (see email template below).
 +. *Wait for vote acceptance* (72 hours).
 +. `mvn clean install -Dmaven.test.skip=true; bin/process-docs.sh` - rebuild source and docs of tagged release
 +. `mvn deploy -Papache-release -DcreateChecksum=true -Dmaven.test.skip=true`- deploy signed artifacts with checksums to Apache Nexus
 +. Review and close the staging repository (Apache Nexus at link:https://repository.apache.org/[https://repository.apache.org/])
 +. `svn co --depth empty https://dist.apache.org/repos/dist/dev/incubator/tinkerpop dev; svn up dev/x.y.z`
 +. `svn co --depth empty https://dist.apache.org/repos/dist/release/incubator/tinkerpop release; mkdir release/x.y.z`
- . `ls dev/x.y.z/ | grep '\-\(distribution\|source\-release\)\.zip' | sed -e 's/\(^[^ ]*\)-distribution\([^ ]*\)/cp dev\/x.y.z\/\1-distribution\2 release\/x.y.z\/\1-bin\2/' -e 's/\(^[^ ]*\)-source-release\([^ ]*\)/cp dev\/x.y.z\/\1-source-release\2 release\/x.y.z\/\1-src\2/' | /bin/sh`
- . `cp dev/x.y.z/KEYS release/x.y.z/KEYS`
++. `ls dev/x.y.z/ | grep '\-\(distribution\|source\-release\)\.zip' | sed -e 's/\(^[^ ]*\)-distribution\([^ ]*\)/cp dev\/x.y.z\/\0 release\/x.y.z\/\1-bin\2/' -e 's/\(^[^ ]*\)-source-release\([^ ]*\)/cp dev\/x.y.z\/\0 release\/x.y.z\/\1-src\2/' | /bin/sh`
 +. `cd release; svn add x.y.z/; svn ci -m "TinkerPop x.y.z release"`
 +. Update homepage with references to latest distribution and to other internal links elsewhere on the page.
 +. Wait for Apache Central to sync the jars and src (link:http://repo1.maven.org/maven2/org/apache/tinkerpop/tinkerpop/[http://repo1.maven.org/maven2/org/apache/tinkerpop/tinkerpop/]).
 +. Announce release on `dev@`/`gremlin-users@` mailing lists and tweet from `@apachetinkerpop`.
 +
 +Example `[VOTE]` email:
 +
 +```
 +[VOTE] TinkerPop x.y.z Release
 +
 +Hello,
 +
 +The release artifacts can be found at this location:
 +	https://dist.apache.org/repos/dist/dev/incubator/tinkerpop/x.y.z/
 +
 +The source distribution is provided by:
 +	apache-tinkerpop-x.y.z-source-release.zip
 +
 +Two binary distributions are provided for user convenience:
 +	apache-gremlin-console-x.y.z-distribution.zip
 +	apache-gremlin-server-x.y.z-distribution.zip
 +
 +The online docs can be found here:
 +	http://tinkerpop.incubator.apache.org/docs/x.y.z/ (user docs)
 +	http://tinkerpop.incubator.apache.org/javadocs/x.y.z/core/ (core javadoc)
 +	http://tinkerpop.incubator.apache.org/javadocs/x.y.z/full/ (full javadoc)
 +
 +The tag in Apache Git can be found here:
 +	https://git-wip-us.apache.org/repos/asf?p=incubator-tinkerpop.git;...
 +
 +The release notes are available here:
 +	https://github.com/apache/incubator-tinkerpop/blob/master/CHANGELOG.asciidoc#...
 +
 +The [VOTE] will be open for the next 72 hours --- closing <DayOfTheWeek> (<Month> <Day> <Year>) at <Time> <TimeZone>.
 +
 +My vote is +1.
 +
 +Thank you very much,
 +<TinkerPop Committer Name>
 +```


[09/14] incubator-tinkerpop git commit: Update release process regarding changelog.

Posted by sp...@apache.org.
Update release process regarding changelog.


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

Branch: refs/heads/master
Commit: c4c44ebb6e01f7178de16fb83f6d2fbe8d3590d0
Parents: dec75e5
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Aug 10 06:59:28 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 10 06:59:28 2015 -0400

----------------------------------------------------------------------
 README.asciidoc | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/c4c44ebb/README.asciidoc
----------------------------------------------------------------------
diff --git a/README.asciidoc b/README.asciidoc
index 7f1b6e7..c9f5f6f 100644
--- a/README.asciidoc
+++ b/README.asciidoc
@@ -110,7 +110,10 @@ Release Process
 . Perform manual tests:
 .. Execute `:remote connect conf/remote.yaml` and send some requests to a running Gremlin Server instance.
 .. Execute `:?` to display the help in the Console.
-. Update `CHANGELOG.asciidoc` with release date
+. Update `CHANGELOG.asciidoc`:
+.. Update the release date
+.. Generate the JIRA release notes report for the current version and append them to the `CHANGELOG.asciidoc`
+.. Organize "breaking" changes to be clearly marked (use JIRA and the "breaking" label to identify those)
 . `bin/bump.sh "version"` to update project files to reference the non-SNAPSHOT version
 . `git diff` and review the updated files (expect all `pom.xml` files and this README)
 . `git commit -a -m "TinkerPop x.y.z release"` and `git push`


[05/14] incubator-tinkerpop git commit: Merge remote-tracking branch 'origin/tp30' into tp30

Posted by sp...@apache.org.
Merge remote-tracking branch 'origin/tp30' into tp30


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

Branch: refs/heads/master
Commit: b0bf744aafb88c36e16436645cc2d7d1301d8c01
Parents: 3c6df3c ad66524
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Aug 10 06:35:46 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 10 06:35:46 2015 -0400

----------------------------------------------------------------------
 .../step/filter/TraversalFilterStep.java        |  7 ++++
 .../step/map/TraversalFlatMapStep.java          |  2 +-
 .../traversal/step/map/TraversalMapStep.java    |  2 +-
 .../sideEffect/TraversalSideEffectStep.java     |  7 ++++
 .../IncidentToAdjacentStrategy.java             |  4 +-
 .../IncidentToAdjacentStrategyTest.java         |  3 +-
 .../step/sideEffect/GroovyGroupCountTest.groovy |  7 +++-
 .../step/sideEffect/GroupCountTest.java         | 41 ++++++++++++++++++--
 .../tinkerpop/gremlin/structure/EdgeTest.java   |  1 +
 9 files changed, 66 insertions(+), 8 deletions(-)
----------------------------------------------------------------------



[13/14] incubator-tinkerpop git commit: Moved IDE setup to contributing.

Posted by sp...@apache.org.
Moved IDE setup to contributing.

Minor improvements to README. Stil more to do here probably.


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

Branch: refs/heads/master
Commit: 5453b2d75d2465898e6eed0d42be8e8ca6da13f4
Parents: 71a50db
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Aug 10 14:02:49 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 10 14:02:49 2015 -0400

----------------------------------------------------------------------
 CONTRIBUTING.asciidoc | 48 ++++++++++++++++++++++++++++++++++++++-
 README.asciidoc       | 56 +++++++++++++++-------------------------------
 2 files changed, 65 insertions(+), 39 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5453b2d7/CONTRIBUTING.asciidoc
----------------------------------------------------------------------
diff --git a/CONTRIBUTING.asciidoc b/CONTRIBUTING.asciidoc
index c7b2c1a..1e3f9a4 100644
--- a/CONTRIBUTING.asciidoc
+++ b/CONTRIBUTING.asciidoc
@@ -14,13 +14,59 @@ 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.
 ////
-## Contributing to Apache TinkerPop
+Contributing to Apache TinkerPop
+--------------------------------
 
 Contributions via GitHub pull requests are gladly accepted from their original
 author. By submitting any copyrighted material via pull request, email, or other means
 you agree to license the material under the project's open source license and
 warrant that you have the legal authority to do so.
 
+Building and Testing
+--------------------
+
+TinkerPop requires `Java 1.8.0_40+` for proper building and proper operations.
+
+* Build Project: `mvn clean install`
+** Specify specific tests in a TinkerPop Suite to run with the `GREMLIN_TESTS` environment variable, along with the Maven project list argument, e.g.:
++
+----
+export GREMLIN_TESTS='org.apache.tinkerpop.gremlin.process.traversal.step.map.PathTest$Traversals,org.apache.tinkerpop.gremlin.process.traversal.PathTest'
+mvn -Dmaven.javadoc.skip=true --projects tinkergraph-gremlin test
+----
+** Clean the `.groovy/grapes/org.apache.tinkerpop` directory on build: `mvn clean install -DcleanGrapes`
+** Turn off "heavy" logging in the "process" tests: `mvn clean install -DargLine="-DmuteTestLogs=true"`
+** The test suite for `neo4j-gremlin` is disabled by default - to turn it on: `mvn clean install -DincludeNeo4j`
+* Regenerate test data (only necessary given changes to IO classes): `mvn clean install -Dio` from `tinkergraph-gremlin` directory
+** If there are changes to the Gryo format, it may be necessary to generate the Grateful Dead dataset from GraphSON (see `IoDataGenerationTest.shouldWriteGratefulDead`)
+* Check license headers are present: `mvn apache-rat:check`
+* Build AsciiDocs (Hadoop and ZooKeeper must be running): `bin/process-docs.sh`
+** Build AsciiDocs (but don't evaluate code blocks): `bin/process-docs.sh --dryRun`
+** Process a single AsciiDoc file: +pass:[docs/preprocessor/preprocess-file.sh `pwd`/gremlin-console/target/apache-gremlin-console-*-standalone `pwd`/docs/src/xyz.asciidoc]+
+* Build JavaDocs: `mvn process-resources -Djavadoc`
+* Check for Apache License headers: `mvn apache-rat:check`
+* Check for newer dependencies: `mvn versions:display-dependency-updates` or `mvn versions:display-plugin-updates`
+* Deploy JavaDocs/AsciiDocs: `bin/publish-docs.sh svn-username`
+* Integration Tests: `mvn verify -DskipIntegrationTests=false`
+** Execute with the `-DincludeNeo4j` option to include transactional tests.
+* Performance Tests: `mvn verify -DskipPerformanceTests=false`
+
+IDE Setup with Intellij
+-----------------------
+
+This section refers specifically to setup within Intellij.  TinkerPop has a module called `gremlin-shaded` which contains shaded dependencies for some libraries that are widely used and tend to introduce conflicts.  To ensure that Intellij properly interprets this module after importing the Maven `pom.xml` perform the following steps:
+
+. Build `gremlin-shaded` from the command line with `mvn clean install`.
+. Right-click on the `gremlin-shaded` module in the project viewer of Intellij and select "Remove module".
+. In the "Maven Projects" Tool window and click the tool button for "Reimport All Maven projects" (go to `View | Tool Windows | Maven Projects` on the main menu if this panel is not activated).
+. At this point it should be possible to compile and run the tests within Intellij, but in the worst case, use `File | Invalidate Caches/Restart` to ensure that indices properly rebuild.
+
+Note that it maybe be necessary to re-execute these steps if the `gremlin-shaded` `pom.xml` is ever updated.
+
+Developers working on the `neo4j-gremlin` module should enabled the `include-neo4j` Maven profile in Intellij.  This will ensure that tests will properly execute within the IDE.
+
+If Intellij complains about "duplicate sources" for the Groovy files when attempting to compile/run tests, then install the link:http://plugins.jetbrains.com/plugin/7442?pr=idea[GMavenPlus Intellij plugin].
+
 For Committers
 --------------
 

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/5453b2d7/README.asciidoc
----------------------------------------------------------------------
diff --git a/README.asciidoc b/README.asciidoc
index 54988c9..934d5af 100644
--- a/README.asciidoc
+++ b/README.asciidoc
@@ -22,6 +22,8 @@ image:https://raw.githubusercontent.com/apache/incubator-tinkerpop/master/docs/s
 Documentation
 ~~~~~~~~~~~~~
 
+TinkerPop3 provides graph computing capabilities for both graph databases (OLTP) and graph analytic systems (OLAP).
+
 * link:http://tinkerpop.incubator.apache.org/[homepage]
 * link:http://tinkerpop.incubator.apache.org/docs/3.0.0-SNAPSHOT/[user documentation]
 * link:http://tinkerpop.incubator.apache.org/javadocs/3.0.0-SNAPSHOT/core/[core javadoc]
@@ -30,47 +32,17 @@ Documentation
 Building and Testing
 ~~~~~~~~~~~~~~~~~~~~
 
-TinkerPop requires `Java 1.8.0_40+` for proper building and proper operations.
-
-* Build Project: `mvn clean install`
-** Specify specific tests in a TinkerPop Suite to run with the `GREMLIN_TESTS` environment variable, along with the Maven project list argument, e.g.:
-+
-----
-export GREMLIN_TESTS='org.apache.tinkerpop.gremlin.process.traversal.step.map.PathTest$Traversals,org.apache.tinkerpop.gremlin.process.traversal.PathTest'
-mvn -Dmaven.javadoc.skip=true --projects tinkergraph-gremlin test
-----
-** Clean the `.groovy/grapes/org.apache.tinkerpop` directory on build: `mvn clean install -DcleanGrapes`
-** Turn off "heavy" logging in the "process" tests: `mvn clean install -DargLine="-DmuteTestLogs=true"`
-** The test suite for `neo4j-gremlin` is disabled by default - to turn it on: `mvn clean install -DincludeNeo4j`
-* Regenerate test data (only necessary given changes to IO classes): `mvn clean install -Dio` from `tinkergraph-gremlin` directory
-** If there are changes to the Gryo format, it may be necessary to generate the Grateful Dead dataset from GraphSON (see `IoDataGenerationTest.shouldWriteGratefulDead`)
-* Check license headers are present: `mvn apache-rat:check`
-* Build AsciiDocs (Hadoop and ZooKeeper must be running): `bin/process-docs.sh`
-** Build AsciiDocs (but don't evaluate code blocks): `bin/process-docs.sh --dryRun`
-** Process a single AsciiDoc file: +pass:[docs/preprocessor/preprocess-file.sh `pwd`/gremlin-console/target/apache-gremlin-console-*-standalone `pwd`/docs/src/xyz.asciidoc]+
-* Build JavaDocs: `mvn process-resources -Djavadoc`
-* Check for Apache License headers: `mvn apache-rat:check`
-* Check for newer dependencies: `mvn versions:display-dependency-updates` or `mvn versions:display-plugin-updates`
-* Deploy JavaDocs/AsciiDocs: `bin/publish-docs.sh svn-username`
-* Integration Tests: `mvn verify -DskipIntegrationTests=false`
-** Execute with the `-DincludeNeo4j` option to include transactional tests.
-* Performance Tests: `mvn verify -DskipPerformanceTests=false`
+TinkerPop uses link:https://maven.apache.org/[Maven] and requires `Java 1.8.0_40+` for proper building and proper operations. To build, execute unit tests and package Gremlin Console/Server run:
 
-IDE Setup
-^^^^^^^^^
-
-This section refers specifically to setup within Intellij.  TinkerPop has a module called `gremlin-shaded` which contains shaded dependencies for some libraries that are widely used and tend to introduce conflicts.  To ensure that Intellij properly interprets this module after importing the Maven `pom.xml` perform the following steps:
-
-. Build `gremlin-shaded` from the command line with `mvn clean install`.
-. Right-click on the `gremlin-shaded` module in the project viewer of Intellij and select "Remove module".
-. In the "Maven Projects" Tool window and click the tool button for "Reimport All Maven projects" (go to `View | Tool Windows | Maven Projects` on the main menu if this panel is not activated).
-. At this point it should be possible to compile and run the tests within Intellij, but in the worst case, use `File | Invalidate Caches/Restart` to ensure that indices properly rebuild.
+[source,bash]
+mvn clean install
 
-Note that it maybe be necessary to re-execute these steps if the `gremlin-shaded` `pom.xml` is ever updated.
+The zip distributions can be found in the following directories:
 
-Developers working on the `neo4j-gremlin` module should enabled the `include-neo4j` Maven profile in Intellij.  This will ensure that tests will properly execute within the IDE.
+. `gremlin-server/target`
+. `gremlin-console/target`
 
-If Intellij complains about "duplicate sources" for the Groovy files when attempting to compile/run tests, then install the link:http://plugins.jetbrains.com/plugin/7442?pr=idea[GMavenPlus Intellij plugin].
+Please see the `CONTRIBUTING.asciidoc` file for more detailed information and options for building, test running and developing TinkerPop.
 
 Get Started
 ~~~~~~~~~~~
@@ -82,5 +54,13 @@ $ bin/gremlin.sh
          \,,,/
          (o o)
 -----oOOo-(3)-oOOo-----
-gremlin>
+plugin activated: tinkerpop.server
+plugin activated: tinkerpop.utilities
+plugin activated: tinkerpop.tinkergraph
+gremlin> graph = TinkerFactory.createModern()
+==>tinkergraph[vertices:6 edges:6]
+gremlin> g = graph.traversal()
+==>graphtraversalsource[tinkergraph[vertices:6 edges:6], standard]
+gremlin> g.V().has('name','vadas').valueMap()
+==>[name:[vadas], age:[27]]
 ----


[12/14] incubator-tinkerpop git commit: Add separate RELEASE file.

Posted by sp...@apache.org.
Add separate RELEASE file.

Move "release instructions" out of README.


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

Branch: refs/heads/master
Commit: 71a50db6ece03b80b3f4551d3495ce29142ac97c
Parents: ab064f4
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Aug 10 13:50:16 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 10 13:50:16 2015 -0400

----------------------------------------------------------------------
 README.asciidoc  | 76 -----------------------------------------
 RELEASE.asciidoc | 93 +++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 93 insertions(+), 76 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/71a50db6/README.asciidoc
----------------------------------------------------------------------
diff --git a/README.asciidoc b/README.asciidoc
index feb39dc..54988c9 100644
--- a/README.asciidoc
+++ b/README.asciidoc
@@ -84,79 +84,3 @@ $ bin/gremlin.sh
 -----oOOo-(3)-oOOo-----
 gremlin>
 ----
-
-Release Process
-~~~~~~~~~~~~~~~
-
-. `mvn clean install`
-.. `mvn verify -DskipIntegrationTests=false -DincludeNeo4j`
-.. `mvn verify -DskipPerformanceTests=false`
-. Perform manual tests:
-.. Execute `:remote connect conf/remote.yaml` and send some requests to a running Gremlin Server instance.
-.. Execute `:?` to display the help in the Console.
-. Update `CHANGELOG.asciidoc`:
-.. Update the release date
-.. Generate the JIRA release notes report for the current version and append them to the `CHANGELOG.asciidoc`
-.. Organize "breaking" changes to be clearly marked (use JIRA and the "breaking" label to identify those)
-. `bin/bump.sh "version"` to update project files to reference the non-SNAPSHOT version
-. `git diff` and review the updated files (expect all `pom.xml` files and this README)
-. `git commit -a -m "TinkerPop x.y.z release"` and `git push`
-. `git tag -a -m "TinkerPop x.y.z release" x.y.z` and `git push --tags`
-. `mvn clean install -Dmaven.test.skip=true`
-. `bin/publish-docs.sh <username>`
-. `mvn install -Papache-release -DcreateChecksum=true -Dmaven.test.skip=true`
-. Upload artifacts to `https://dist.apache.org/repos/dist/dev/incubator/tinkerpop` for `[VOTE]` review.
-.. `svn co --depth empty https://dist.apache.org/repos/dist/dev/incubator/tinkerpop/ dev` and `mkdir dev/x.y.z`
-.. `cp ~/.m2/repository/org/apache/tinkerpop/gremlin-console/x.y.z/gremlin-console-x.y.z-distribution.zip* dev/x.y.z`
-.. `cp ~/.m2/repository/org/apache/tinkerpop/gremlin-server/x.y.z/gremlin-server-x.y.z-distribution.zip* dev/x.y.z`
-.. `cp ~/.m2/repository/org/apache/tinkerpop/tinkerpop/x.y.z/tinkerpop-x.y.z-source-release.zip* dev/x.y.z`
-.. `cd dev/x.y.z` and `for f in *.zip*; do  mv "$f" "apache-$f"; done`
-.. `cd ..; svn add x.y.z/; svn ci -m "TinkerPop x.y.z release"`
-. Submit for `[VOTE]` at `general@incubator.apache.org` (see email template below).
-. *Wait for vote acceptance* (72 hours).
-. `mvn clean install -Dmaven.test.skip=true; bin/process-docs.sh` - rebuild source and docs of tagged release
-. `mvn deploy -Papache-release -DcreateChecksum=true -Dmaven.test.skip=true`- deploy signed artifacts with checksums to Apache Nexus
-. Review and close the staging repository (Apache Nexus at link:https://repository.apache.org/[https://repository.apache.org/])
-. `svn co --depth empty https://dist.apache.org/repos/dist/dev/incubator/tinkerpop dev; svn up dev/x.y.z`
-. `svn co --depth empty https://dist.apache.org/repos/dist/release/incubator/tinkerpop release; mkdir release/x.y.z`
-. `ls dev/x.y.z/ | grep '\-\(distribution\|source\-release\)\.zip' | sed -e 's/\(^[^ ]*\)-distribution\([^ ]*\)/cp dev\/x.y.z\/\0 release\/x.y.z\/\1-bin\2/' -e 's/\(^[^ ]*\)-source-release\([^ ]*\)/cp dev\/x.y.z\/\0 release\/x.y.z\/\1-src\2/' | /bin/sh`
-. `cd release; svn add x.y.z/; svn ci -m "TinkerPop x.y.z release"`
-. Update homepage with references to latest distribution and to other internal links elsewhere on the page.
-. Wait for Apache Central to sync the jars and src (link:http://repo1.maven.org/maven2/org/apache/tinkerpop/tinkerpop/[http://repo1.maven.org/maven2/org/apache/tinkerpop/tinkerpop/]).
-. Announce release on `dev@`/`gremlin-users@` mailing lists and tweet from `@apachetinkerpop`.
-
-Example `[VOTE]` email:
-
-```
-[VOTE] TinkerPop x.y.z Release
-
-Hello,
-
-The release artifacts can be found at this location:
-	https://dist.apache.org/repos/dist/dev/incubator/tinkerpop/x.y.z/
-
-The source distribution is provided by:
-	apache-tinkerpop-x.y.z-source-release.zip
-
-Two binary distributions are provided for user convenience:
-	apache-gremlin-console-x.y.z-distribution.zip
-	apache-gremlin-server-x.y.z-distribution.zip
-
-The online docs can be found here:
-	http://tinkerpop.incubator.apache.org/docs/x.y.z/ (user docs)
-	http://tinkerpop.incubator.apache.org/javadocs/x.y.z/core/ (core javadoc)
-	http://tinkerpop.incubator.apache.org/javadocs/x.y.z/full/ (full javadoc)
-
-The tag in Apache Git can be found here:
-	https://git-wip-us.apache.org/repos/asf?p=incubator-tinkerpop.git;...
-
-The release notes are available here:
-	https://github.com/apache/incubator-tinkerpop/blob/master/CHANGELOG.asciidoc#...
-
-The [VOTE] will be open for the next 72 hours --- closing <DayOfTheWeek> (<Month> <Day> <Year>) at <Time> <TimeZone>.
-
-My vote is +1.
-
-Thank you very much,
-<TinkerPop Committer Name>
-```

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/71a50db6/RELEASE.asciidoc
----------------------------------------------------------------------
diff --git a/RELEASE.asciidoc b/RELEASE.asciidoc
new file mode 100644
index 0000000..c3d8d78
--- /dev/null
+++ b/RELEASE.asciidoc
@@ -0,0 +1,93 @@
+////
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+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.
+////
+Release Process
+---------------
+
+The following instructions represent the steps required to release TinkerPop:
+
+. `mvn clean install`
+.. `mvn verify -DskipIntegrationTests=false -DincludeNeo4j`
+.. `mvn verify -DskipPerformanceTests=false`
+. Perform manual tests:
+.. Execute `:remote connect conf/remote.yaml` and send some requests to a running Gremlin Server instance.
+.. Execute `:?` to display the help in the Console.
+. Update `CHANGELOG.asciidoc`:
+.. Update the release date
+.. Generate the JIRA release notes report for the current version and append them to the `CHANGELOG.asciidoc`
+.. Organize "breaking" changes to be clearly marked (use JIRA and the "breaking" label to identify those)
+. `bin/bump.sh "version"` to update project files to reference the non-SNAPSHOT version
+. `git diff` and review the updated files (expect all `pom.xml` files and this README)
+. `git commit -a -m "TinkerPop x.y.z release"` and `git push`
+. `git tag -a -m "TinkerPop x.y.z release" x.y.z` and `git push --tags`
+. `mvn clean install -Dmaven.test.skip=true`
+. `bin/publish-docs.sh <username>`
+. `mvn install -Papache-release -DcreateChecksum=true -Dmaven.test.skip=true`
+. Upload artifacts to `https://dist.apache.org/repos/dist/dev/incubator/tinkerpop` for `[VOTE]` review.
+.. `svn co --depth empty https://dist.apache.org/repos/dist/dev/incubator/tinkerpop/ dev` and `mkdir dev/x.y.z`
+.. `cp ~/.m2/repository/org/apache/tinkerpop/gremlin-console/x.y.z/gremlin-console-x.y.z-distribution.zip* dev/x.y.z`
+.. `cp ~/.m2/repository/org/apache/tinkerpop/gremlin-server/x.y.z/gremlin-server-x.y.z-distribution.zip* dev/x.y.z`
+.. `cp ~/.m2/repository/org/apache/tinkerpop/tinkerpop/x.y.z/tinkerpop-x.y.z-source-release.zip* dev/x.y.z`
+.. `cd dev/x.y.z` and `for f in *.zip*; do  mv "$f" "apache-$f"; done`
+.. `cd ..; svn add x.y.z/; svn ci -m "TinkerPop x.y.z release"`
+. Submit for `[VOTE]` at `general@incubator.apache.org` (see email template below).
+. *Wait for vote acceptance* (72 hours).
+. `mvn clean install -Dmaven.test.skip=true; bin/process-docs.sh` - rebuild source and docs of tagged release
+. `mvn deploy -Papache-release -DcreateChecksum=true -Dmaven.test.skip=true`- deploy signed artifacts with checksums to Apache Nexus
+. Review and close the staging repository (Apache Nexus at link:https://repository.apache.org/[https://repository.apache.org/])
+. `svn co --depth empty https://dist.apache.org/repos/dist/dev/incubator/tinkerpop dev; svn up dev/x.y.z`
+. `svn co --depth empty https://dist.apache.org/repos/dist/release/incubator/tinkerpop release; mkdir release/x.y.z`
+. `ls dev/x.y.z/ | grep '\-\(distribution\|source\-release\)\.zip' | sed -e 's/\(^[^ ]*\)-distribution\([^ ]*\)/cp dev\/x.y.z\/\0 release\/x.y.z\/\1-bin\2/' -e 's/\(^[^ ]*\)-source-release\([^ ]*\)/cp dev\/x.y.z\/\0 release\/x.y.z\/\1-src\2/' | /bin/sh`
+. `cd release; svn add x.y.z/; svn ci -m "TinkerPop x.y.z release"`
+. Update homepage with references to latest distribution and to other internal links elsewhere on the page.
+. Wait for Apache Central to sync the jars and src (link:http://repo1.maven.org/maven2/org/apache/tinkerpop/tinkerpop/[http://repo1.maven.org/maven2/org/apache/tinkerpop/tinkerpop/]).
+. Announce release on `dev@`/`gremlin-users@` mailing lists and tweet from `@apachetinkerpop`.
+
+Example `[VOTE]` email:
+
+```
+[VOTE] TinkerPop x.y.z Release
+
+Hello,
+
+The release artifacts can be found at this location:
+	https://dist.apache.org/repos/dist/dev/incubator/tinkerpop/x.y.z/
+
+The source distribution is provided by:
+	apache-tinkerpop-x.y.z-source-release.zip
+
+Two binary distributions are provided for user convenience:
+	apache-gremlin-console-x.y.z-distribution.zip
+	apache-gremlin-server-x.y.z-distribution.zip
+
+The online docs can be found here:
+	http://tinkerpop.incubator.apache.org/docs/x.y.z/ (user docs)
+	http://tinkerpop.incubator.apache.org/javadocs/x.y.z/core/ (core javadoc)
+	http://tinkerpop.incubator.apache.org/javadocs/x.y.z/full/ (full javadoc)
+
+The tag in Apache Git can be found here:
+	https://git-wip-us.apache.org/repos/asf?p=incubator-tinkerpop.git;...
+
+The release notes are available here:
+	https://github.com/apache/incubator-tinkerpop/blob/master/CHANGELOG.asciidoc#...
+
+The [VOTE] will be open for the next 72 hours --- closing <DayOfTheWeek> (<Month> <Day> <Year>) at <Time> <TimeZone>.
+
+My vote is +1.
+
+Thank you very much,
+<TinkerPop Committer Name>
+```


[10/14] incubator-tinkerpop git commit: Moved "issue tracker conventions" to CONTRIBUTING.

Posted by sp...@apache.org.
Moved "issue tracker conventions" to CONTRIBUTING.


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

Branch: refs/heads/master
Commit: ca1c529bdc50439e88c84157f13384cfa21a7220
Parents: c4c44eb
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Aug 10 07:05:40 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 10 07:05:40 2015 -0400

----------------------------------------------------------------------
 CONTRIBUTING.asciidoc | 37 +++++++++++++++++++++++++++++++++----
 README.asciidoc       | 16 ----------------
 2 files changed, 33 insertions(+), 20 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/ca1c529b/CONTRIBUTING.asciidoc
----------------------------------------------------------------------
diff --git a/CONTRIBUTING.asciidoc b/CONTRIBUTING.asciidoc
index 0663f93..35dbabc 100644
--- a/CONTRIBUTING.asciidoc
+++ b/CONTRIBUTING.asciidoc
@@ -21,11 +21,13 @@ author. By submitting any copyrighted material via pull request, email, or other
 you agree to license the material under the project's open source license and
 warrant that you have the legal authority to do so.
 
-## For Committers
+For Committers
+--------------
 
 The guidelines that follow apply to those with commit access to the main repository:
 
-### Release Notes
+Release Notes
+~~~~~~~~~~~~~
 
 There is a two-pronged approach to maintaining the change log and preparing the release notes.
 
@@ -46,7 +48,8 @@ change.
 Changes that break the public APIs should be marked with a "breaking" label and should be
 distinguished from other changes in the release notes.
 
-### Branches
+Branches
+~~~~~~~~
 
 The "master" branch is used for the main line of development and release branches are constructed
 for ongoing maintenance work.  For example, the "tp30" branch is used to maintain the 3.0.x line
@@ -63,7 +66,33 @@ a branch name prefix.  This provides a unique namespace, and also a way to accou
 
 Developers should remove their own branches when they are no longer needed.
 
-### Tags
+Tags
+~~~~
 
 Tags are used for milestones, release candidates, and approved releases.  Please
 refrain from creating arbitrary tags, as they produce permanent clutter.
+
+Issue Tracker Conventions
+~~~~~~~~~~~~~~~~~~~~~~~~~
+
+TinkerPop uses Apache JIRA as its link:https://issues.apache.org/jira/browse/TINKERPOP3[issue tracker].  JIRA is a
+very robust piece of software with many options and configurations.  To simplify usage and ensure consistency across
+issues, the following conventions should be adhered to:
+
+* An issue's "status" should generally be in one of two states: `open` or `closed` (`reopened` is equivalent to `open`
+for our purposes).
+** An `open` issue is newly created, under consideration or otherwise in progress.
+** A `closed` issue is completed for purposes of release (i.e. code, testing, and documentation complete).
+** Issues in a `resolved` state should immediately be evaluated for movement to `closed` - issue become `resolved`
+by those who don't have the permissions to `close`.
+* An issue's "type" should be one of two options: `bug` or `improvement`.
+** A `bug` has a very specific meaning, referring to an error that prevents usage of TinkerPop AND does not have a
+reasonable workaround.  Given that definition, a `bug` should generally have very high priority for a fix.
+** Everything else is an `improvement` in the sense that any other work is an enhancement to the current codebase.
+* The "component" should be representative of the primary area of code that it applies to and all issues should have
+this property set.
+* Issues are not assigned "labels" with one exception: the "breaking" label.  The "breaking" label marks an issue
+as one that is representative of a change in the API that might affect users or vendors.  This label is important when
+organizing release notes.
+* The "affects/fix version(s)" fields should be appropriately set, where the "fix version" implies the version on
+which that particular issue will completed.

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/ca1c529b/README.asciidoc
----------------------------------------------------------------------
diff --git a/README.asciidoc b/README.asciidoc
index c9f5f6f..feb39dc 100644
--- a/README.asciidoc
+++ b/README.asciidoc
@@ -85,22 +85,6 @@ $ bin/gremlin.sh
 gremlin>
 ----
 
-Issue Tracker Conventions
-~~~~~~~~~~~~~~~~~~~~~~~~~
-
-TinkerPop3 uses Apache JIRA as its link:https://issues.apache.org/jira/browse/TINKERPOP3[issue tracker].  JIRA is a very robust piece of software with many options and configurations.  To simplify usage and ensure consistency across issues, the following conventions should be adhered to:
-
-* An issue's "status" should generally be in one of two states: `open` or `closed` (`reopened` is equivalent to `open` for our purposes).
-** An `open` issue is newly created, under consideration or otherwise in progress.
-** A `closed` issue is completed for purposes of release (i.e. code, testing, and documentation complete).
-** Issues in a `resolved` state should immediately be evaluated for movement to `closed` - issue become `resolved` by those who don't have the permissions to `close`.
-* An issue's "type" should be one of two options: `bug` or `improvement`.
-** A `bug` has a very specific meaning, referring to an error that prevents usage of TinkerPop AND does not have a reasonable workaround.  Given that definition, a `bug` should generally have very high priority for a fix.
-** Everything else is an `improvement` in the sense that any other work is an enhancement to the current codebase.
-* The "component" should be representative of the primary area of code that it applies to and all issues should have this property set.
-* Issues are not assigned "labels" with one exception: the "breaking" label.  The "breaking" label marks an issue as one that is representative of a change in the API that might affect users or vendors.  This label is important when organizing release notes.
-* The "affects/fix version(s)" fields should be appropriately set, where the "fix version" implies the version on which that particular issue will completed.
-
 Release Process
 ~~~~~~~~~~~~~~~
 


[03/14] incubator-tinkerpop git commit: tweak to remove edge test -- remove property requirement.

Posted by sp...@apache.org.
tweak to remove edge test  -- remove property requirement.


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

Branch: refs/heads/master
Commit: 37acf6b7043a2b85620736f1a91b224706ccc5df
Parents: 00be574
Author: Marko A. Rodriguez <ok...@gmail.com>
Authored: Tue Aug 4 07:42:39 2015 -0600
Committer: Marko A. Rodriguez <ok...@gmail.com>
Committed: Tue Aug 4 07:42:39 2015 -0600

----------------------------------------------------------------------
 .../main/java/org/apache/tinkerpop/gremlin/structure/EdgeTest.java  | 1 +
 1 file changed, 1 insertion(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/37acf6b7/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/EdgeTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/EdgeTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/EdgeTest.java
index ab41925..2161f89 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/EdgeTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/structure/EdgeTest.java
@@ -215,6 +215,7 @@ public class EdgeTest {
 
         @Test
         @FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_ADD_EDGES)
+        @FeatureRequirement(featureClass = Graph.Features.EdgeFeatures.class, feature = Graph.Features.EdgeFeatures.FEATURE_REMOVE_PROPERTY)
         @FeatureRequirement(featureClass = Graph.Features.VertexFeatures.class, feature = Graph.Features.VertexFeatures.FEATURE_ADD_VERTICES)
         @FeatureRequirement(featureClass = Graph.Features.EdgePropertyFeatures.class, feature = FEATURE_STRING_VALUES)
         public void shouldGetPropertyKeysOnEdge() {


[06/14] incubator-tinkerpop git commit: Merge branch 'TINKERPOP3-791-committer-doc' of https://github.com/RedSeal-co/incubator-tinkerpop into tp30

Posted by sp...@apache.org.
Merge branch 'TINKERPOP3-791-committer-doc' of https://github.com/RedSeal-co/incubator-tinkerpop into tp30


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

Branch: refs/heads/master
Commit: 21b1ef717077813eb027b03e88d7ccdede8fe77e
Parents: b0bf744 2be03c0
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Aug 10 06:37:08 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 10 06:37:08 2015 -0400

----------------------------------------------------------------------
 CONTRIBUTING.asciidoc | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
----------------------------------------------------------------------



[04/14] incubator-tinkerpop git commit: added a new groupCount() test (one that fails in Spark)

Posted by sp...@apache.org.
added a new groupCount() test (one that fails in Spark)


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

Branch: refs/heads/master
Commit: ad6652435b68bb69fd888a2f605d4afb985db1f1
Parents: 37acf6b
Author: Daniel Kuppitz <da...@hotmail.com>
Authored: Thu Aug 6 01:21:21 2015 +0200
Committer: Daniel Kuppitz <da...@hotmail.com>
Committed: Thu Aug 6 01:21:21 2015 +0200

----------------------------------------------------------------------
 .../step/sideEffect/GroovyGroupCountTest.groovy |  7 +++-
 .../step/sideEffect/GroupCountTest.java         | 41 ++++++++++++++++++--
 2 files changed, 44 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/ad665243/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroovyGroupCountTest.groovy
----------------------------------------------------------------------
diff --git a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroovyGroupCountTest.groovy b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroovyGroupCountTest.groovy
index 6a60278..22fae06 100644
--- a/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroovyGroupCountTest.groovy
+++ b/gremlin-groovy-test/src/main/groovy/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroovyGroupCountTest.groovy
@@ -18,8 +18,8 @@
  */
 package org.apache.tinkerpop.gremlin.process.traversal.step.sideEffect
 
-import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalScriptHelper
 import org.apache.tinkerpop.gremlin.process.traversal.Traversal
+import org.apache.tinkerpop.gremlin.process.traversal.util.TraversalScriptHelper
 import org.apache.tinkerpop.gremlin.structure.Vertex
 
 /**
@@ -45,6 +45,11 @@ public abstract class GroovyGroupCountTest {
         }
 
         @Override
+        public Traversal<Vertex, Map<Vertex, Long>> get_g_V_outXcreatedX_groupCountXxX_capXxX() {
+            TraversalScriptHelper.compute("g.V.out('created').groupCount('x').cap('x')", g)
+        }
+
+        @Override
         public Traversal<Vertex, Map<String, Long>> get_g_V_outXcreatedX_name_groupCountXaX_capXaX() {
             TraversalScriptHelper.compute("g.V.out('created').name.groupCount('a').cap('a')", g)
         }

http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/ad665243/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroupCountTest.java
----------------------------------------------------------------------
diff --git a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroupCountTest.java b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroupCountTest.java
index dfe0a38..dcf073a 100644
--- a/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroupCountTest.java
+++ b/gremlin-test/src/main/java/org/apache/tinkerpop/gremlin/process/traversal/step/sideEffect/GroupCountTest.java
@@ -22,8 +22,8 @@ import org.apache.tinkerpop.gremlin.LoadGraphWith;
 import org.apache.tinkerpop.gremlin.process.AbstractGremlinProcessTest;
 import org.apache.tinkerpop.gremlin.process.GremlinProcessRunner;
 import org.apache.tinkerpop.gremlin.process.traversal.Traversal;
-import org.apache.tinkerpop.gremlin.process.traversal.TraversalEngine;
 import org.apache.tinkerpop.gremlin.structure.Vertex;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 
@@ -34,8 +34,7 @@ import java.util.Map;
 
 import static org.apache.tinkerpop.gremlin.LoadGraphWith.GraphData.MODERN;
 import static org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.__.*;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.*;
 
 /**
  * @author Marko A. Rodriguez (http://markorodriguez.com)
@@ -50,6 +49,8 @@ public abstract class GroupCountTest extends AbstractGremlinProcessTest {
 
     public abstract Traversal<Vertex, Map<String, Long>> get_g_V_outXcreatedX_name_groupCount();
 
+    public abstract Traversal<Vertex, Map<Vertex, Long>> get_g_V_outXcreatedX_groupCountXxX_capXxX();
+
     public abstract Traversal<Vertex, Map<String, Long>> get_g_V_outXcreatedX_name_groupCountXaX_capXaX();
 
     public abstract Traversal<Vertex, Map<Object, Long>> get_g_V_hasXnoX_groupCount();
@@ -76,6 +77,35 @@ public abstract class GroupCountTest extends AbstractGremlinProcessTest {
 
     @Test
     @LoadGraphWith(MODERN)
+    @Ignore // TODO: fix Spark integration
+    public void g_V_outXcreatedX_groupCountXxX_capXxX() {
+        final Traversal<Vertex, Map<Vertex, Long>> traversal = get_g_V_outXcreatedX_groupCountXxX_capXxX();
+        final Object lopId = convertToVertexId("lop");
+        final Object rippleId = convertToVertexId("ripple");
+        printTraversalForm(traversal);
+        final Map<Vertex, Long> map = traversal.next();
+        assertEquals(map.size(), 2);
+        boolean hasLop = false, hasRipple = false, hasSomethingElse = false;
+        for (final Map.Entry<Vertex, Long> entry : map.entrySet()) {
+            final Object id = entry.getKey().id();
+            if (lopId.equals(id)) {
+                hasLop = true;
+                assertEquals(Long.valueOf(3l), entry.getValue());
+            } else if (rippleId.equals(id)) {
+                hasRipple = true;
+                assertEquals(Long.valueOf(1l), entry.getValue());
+            } else {
+                hasSomethingElse = true;
+            }
+        }
+        assertTrue(hasLop);
+        assertTrue(hasRipple);
+        assertFalse(hasSomethingElse);
+        assertFalse(traversal.hasNext());
+    }
+
+    @Test
+    @LoadGraphWith(MODERN)
     public void g_V_outXcreatedX_name_groupCount() {
         Arrays.asList(get_g_V_outXcreatedX_name_groupCount(), get_g_V_outXcreatedX_name_groupCountXaX_capXaX()).forEach(traversal -> {
             printTraversalForm(traversal);
@@ -148,6 +178,11 @@ public abstract class GroupCountTest extends AbstractGremlinProcessTest {
         }
 
         @Override
+        public Traversal<Vertex, Map<Vertex, Long>> get_g_V_outXcreatedX_groupCountXxX_capXxX() {
+            return g.V().out("created").groupCount("x").cap("x");
+        }
+
+        @Override
         public Traversal<Vertex, Map<String, Long>> get_g_V_outXcreatedX_name_groupCountXaX_capXaX() {
             return g.V().out("created").values("name").groupCount("a").cap("a");
         }


[07/14] incubator-tinkerpop git commit: Some adjustments to "contributing".

Posted by sp...@apache.org.
Some adjustments to "contributing".


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

Branch: refs/heads/master
Commit: 005c0e5f8051da3fa3a95ed8dc17527dc09a35af
Parents: 21b1ef7
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Aug 10 06:51:01 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 10 06:51:01 2015 -0400

----------------------------------------------------------------------
 CONTRIBUTING.asciidoc | 37 +++++++++++++++++++++----------------
 1 file changed, 21 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/005c0e5f/CONTRIBUTING.asciidoc
----------------------------------------------------------------------
diff --git a/CONTRIBUTING.asciidoc b/CONTRIBUTING.asciidoc
index d27a62c..0663f93 100644
--- a/CONTRIBUTING.asciidoc
+++ b/CONTRIBUTING.asciidoc
@@ -23,42 +23,47 @@ warrant that you have the legal authority to do so.
 
 ## For Committers
 
-For those with commit access to the main repository, here are a few guidelines.
+The guidelines that follow apply to those with commit access to the main repository:
 
 ### Release Notes
 
-We use a two-pronged approach to maintaining the change log and preparing the release notes.
+There is a two-pronged approach to maintaining the change log and preparing the release notes.
 
-1. For work that is documented in JIRA, we can run reports that include all of
+1. For work that is documented in JIRA, run the release notes report to include all of
 the tickets targeted for a specific release.  This report can be included in the
 release announcement.
 
-2. The manual change log (CHANGELOG.asciidoc) can be used to highlight large
+2. The manual change log (`CHANGELOG.asciidoc`) can be used to highlight large
 changes, describe themes (e.g. "We focused on performance improvements") or to
 give voice to undocumented changes.
 
-### Branches
+Given the dependence on the JIRA report for generating additions to the `CHANGELOG.asciidoc`,
+which uses the title of the issue as the line presented in the release note report, titles should
+be edited prior to release to be useful in that context.  In other words, an issue title should
+be understandable as a change in the fewest words possible while still conveying the gist of the
+change.
+
+Changes that break the public APIs should be marked with a "breaking" label and should be
+distinguished from other changes in the release notes.
 
-We maintain the "master" branch as the one where most people would be developing.
+### Branches
 
-Additionally, we may have release branches for maintenance work.  For example,
-the "tp30" branch is used to maintain the 3.0.x line while work on 3.1.x
-proceeds on "master".
+The "master" branch is used for the main line of development and release branches are constructed
+for ongoing maintenance work.  For example, the "tp30" branch is used to maintain the 3.0.x line
+while work on 3.1.x proceeds on "master".
 
 Other branches may be created for collaborating on features or for RFC's that
 other developers may want to inspect.  It is suggested that the JIRA issue ID be
 used as the prefix, since that triggers certain automation, and it provides a
 way to account for the branch lifecycle, i.e. "Who's branch is this, and can I
-delete it?"  For example, TINKERPOP3-999-add-cool-new-feature is a nice branch
-name.
+delete it?"
 
-For branches that are NOT associated with JIRA issues, you are free to use your
-Apache ID as a branch name prefix.  This provides a unique namespace, and also a
-way to account for the branch lifecycle.
+For branches that are NOT associated with JIRA issues, developers should utilize their Apache ID as
+a branch name prefix.  This provides a unique namespace, and also a way to account for the branch lifecycle.
 
-Please remove your own branches when they are no longer needed.
+Developers should remove their own branches when they are no longer needed.
 
 ### Tags
 
-We use tags for milestones, release candidates, and approved releases.  Please
+Tags are used for milestones, release candidates, and approved releases.  Please
 refrain from creating arbitrary tags, as they produce permanent clutter.


[02/14] incubator-tinkerpop git commit: Update changelog.

Posted by sp...@apache.org.
Update changelog.


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

Branch: refs/heads/master
Commit: 3c6df3c287ec3507cc1af8e9d5e75a8cd1694cc8
Parents: 5311329
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Fri Jul 31 13:02:08 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Fri Jul 31 13:02:08 2015 -0400

----------------------------------------------------------------------
 CHANGELOG.asciidoc | 2 ++
 1 file changed, 2 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/3c6df3c2/CHANGELOG.asciidoc
----------------------------------------------------------------------
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index 84f408f..7363e7d 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -25,6 +25,8 @@ image::http://www.tinkerpop.com/docs/current/images/gremlin-hindu.png[width=225]
 TinkerPop 3.0.1 (NOT OFFICIALLY RELEASED YET)
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
+* Clarified semantics of `Transaction.close()` in unit tests - now refers only to closing the current transaction in the current thread.
+* `Neo4jGraph` no longer uses `OptOut` on `TransactionTest.shouldRollbackOnCloseWhenConfigured` (formerly `shouldRollbackOnShutdownWhenConfigured`)
 * Gremlin Server initialization scripts can now return a `Map` of values that will become global bindings for the server.
 * Introduced the `--dryRun` option to the document generation process which ignores actual script execution in the Gremlin Console.
 * Fixed bug in `EventStrategy` around property changed events when calling `property` without cardinality or meta-property values.


[08/14] incubator-tinkerpop git commit: Mention the breaking label for jira in release notes.

Posted by sp...@apache.org.
Mention the breaking label for jira in release notes.


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

Branch: refs/heads/master
Commit: dec75e5c36640530d4440851d7fcd2d6bdd58437
Parents: 005c0e5
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Aug 10 06:52:41 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 10 06:52:41 2015 -0400

----------------------------------------------------------------------
 README.asciidoc | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/dec75e5c/README.asciidoc
----------------------------------------------------------------------
diff --git a/README.asciidoc b/README.asciidoc
index 86b7f33..7f1b6e7 100644
--- a/README.asciidoc
+++ b/README.asciidoc
@@ -98,7 +98,7 @@ TinkerPop3 uses Apache JIRA as its link:https://issues.apache.org/jira/browse/TI
 ** A `bug` has a very specific meaning, referring to an error that prevents usage of TinkerPop AND does not have a reasonable workaround.  Given that definition, a `bug` should generally have very high priority for a fix.
 ** Everything else is an `improvement` in the sense that any other work is an enhancement to the current codebase.
 * The "component" should be representative of the primary area of code that it applies to and all issues should have this property set.
-* Issues are not assigned "labels".
+* Issues are not assigned "labels" with one exception: the "breaking" label.  The "breaking" label marks an issue as one that is representative of a change in the API that might affect users or vendors.  This label is important when organizing release notes.
 * The "affects/fix version(s)" fields should be appropriately set, where the "fix version" implies the version on which that particular issue will completed.
 
 Release Process


[11/14] incubator-tinkerpop git commit: Mention policy on code style.

Posted by sp...@apache.org.
Mention policy on code style.


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

Branch: refs/heads/master
Commit: ab064f43a49e9c0c666f798cae1a97faa5ed7c34
Parents: ca1c529
Author: Stephen Mallette <sp...@genoprime.com>
Authored: Mon Aug 10 07:40:00 2015 -0400
Committer: Stephen Mallette <sp...@genoprime.com>
Committed: Mon Aug 10 07:40:00 2015 -0400

----------------------------------------------------------------------
 CONTRIBUTING.asciidoc | 7 +++++++
 1 file changed, 7 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-tinkerpop/blob/ab064f43/CONTRIBUTING.asciidoc
----------------------------------------------------------------------
diff --git a/CONTRIBUTING.asciidoc b/CONTRIBUTING.asciidoc
index 35dbabc..c7b2c1a 100644
--- a/CONTRIBUTING.asciidoc
+++ b/CONTRIBUTING.asciidoc
@@ -96,3 +96,10 @@ as one that is representative of a change in the API that might affect users or
 organizing release notes.
 * The "affects/fix version(s)" fields should be appropriately set, where the "fix version" implies the version on
 which that particular issue will completed.
+
+Code Style
+~~~~~~~~~~
+
+Contributors should examine the current code base to determine what the code style patterns are and should match their
+style to what is already present.  Of specific note however, TinkerPop does not use "import wildcards" - IDEs should
+be adjusted accordingly to not auto-wildcard the imports.
\ No newline at end of file