anchor.diff:  Example `[VOTE]` email:
   
   ```
  -[VOTE] TinkerPop x.y.z Release
  +[VOTE] TinkerPop xx.yy.zz Release
   
   Hello,
   
   The release artifacts can be found at this location:
  -	https://dist.apache.org/repos/dist/dev/incubator/tinkerpop/x.y.z/
  +	https://dist.apache.org/repos/dist/dev/incubator/tinkerpop/xx.yy.zz/
   
   The source distribution is provided by:
  -	apache-tinkerpop-x.y.z-src.zip
  +	apache-tinkerpop-xx.yy.zz-src.zip
   
   Two binary distributions are provided for user convenience:
  -	apache-gremlin-console-x.y.z-bin.zip
  -	apache-gremlin-server-x.y.z-bin.zip
  +	apache-gremlin-console-xx.yy.zz-bin.zip
  +	apache-gremlin-server-xx.yy.zz-bin.zip
   
   The online docs can be found here:
  -	http://tinkerpop.apache.org/docs/x.y.z/ (user docs)
  -	http://tinkerpop.apache.org/docs/x.y.z/upgrade.html (upgrade docs)
  -	http://tinkerpop.apache.org/javadocs/x.y.z/core/ (core javadoc)
  -	http://tinkerpop.apache.org/javadocs/x.y.z/full/ (full javadoc)
  +	http://tinkerpop.apache.org/docs/xx.yy.zz/reference/ (user docs)
  +	http://tinkerpop.apache.org/docs/xx.yy.zz/upgrade/ (upgrade docs)
  +	http://tinkerpop.apache.org/javadocs/xx.yy.zz/core/ (core javadoc)
  +	http://tinkerpop.apache.org/javadocs/xx.yy.zz/full/ (full javadoc)
   
   The tag in Apache Git can be found here:
   	https://git-wip-us.apache.org/repos/asf?p=incubator-tinkerpop.git;...
  
positive.code: . Update "upgrade documentation":
  .. Update the release date.
  .. Update the link to CHANGELOG.asciidoc
  . `mvn versions:set -DnewVersion=x.y.z -DgenerateBackupPoms=false` 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`
  . `mvn clean install -Dmaven.test.skip=true` - need to build first so that the right version of the console is used with `bin/publish-docs.sh`
  . `bin/process-docs.sh` and validate the generated documentation locally
  . `bin/publish-docs.sh <username>` - Note that this step requires no additional processing as the previous step.
  handled document generation and this step now merely needs to upload what was generated.
  . `mvn deploy -Papache-release -DcreateChecksum=true -Dmaven.test.skip=true` - deploy signed artifacts with checksums to link:https://repository.apache.org/[Apache Nexus]. Review (artifacts versions, file sizes, anything that might be out of place - request another committer to review as well) but do NOT close/release the staging repository at this time.
  . Review generated artifacts to be sure they have both javadocs and asciidocs present then "close" the repo - if the repo is left open it will be automatically dropped after five days and closing the repo will allow it to stay available for a full ninety days which is more than enough time to complete a vote.
  . 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`
  .. pass:[<code>ls * | xargs -n1 -I {} echo "mv apache-{} {}" | sed -e 's/distribution/bin/' -e 's/source-release/src/' -e s'/^\(.*\) \(.*\) \(.*\)$/\1 \3 \2/' | /bin/bash</code>]
  .. `cd ..; svn add x.y.z/; svn ci -m "TinkerPop x.y.z release"`
  . Execute `bin/validate-distribution.sh` and any other relevant testing.
  . `git tag -a -m "TinkerPop x.y.z release" x.y.z` 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 (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`.
  .. `mvn clean install -Dmaven.test.skip=true` - 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
  .. `bin/publish-docs.sh <username>` to publish the `SNAPSHOT` docs which enables the README to work properly.
  .. Update the links in the `README.asciidoc` to point at the `SNAPSHOT` version.
  . Submit for `[VOTE]` at `dev@tinkerpop.apache.org` (see email template below)
  . *Wait for vote acceptance* (72 hours)
  
  
negative.code: A positive vote for a particular release from the Apache Incubator is required to move to the following phase.
  
  . Submit for `[VOTE]` at `general@incubator.apache.org` (see email template below)
  .. Include the vote tally: "Apache TinkerPop (http://tinkerpop.apache.org/) would like to release TinkerPop xx.yy.zz. We had a dev@ VOTE which resulted in a tally of +1 (3), 0 (0), and -1 (0). We now present our artifacts for vote by Incubator."
  . *Wait for vote acceptance* (72 hours)
  
  Release & Promote
  -----------------
  
  . Close the staging repository at link:https://repository.apache.org/[Apache Nexus]) and then release.
  . `svn co --depth empty https://dist.apache.org/repos/dist/dev/incubator/tinkerpop dev; svn up dev/xx.yy.zz`
  . `svn co --depth empty https://dist.apache.org/repos/dist/release/incubator/tinkerpop release; mkdir release/xx.yy.zz`
  . `cd release; svn add xx.yy.zz/; svn ci -m "TinkerPop xx.yy.zz release"`
  . If there is are releases present in SVN that represents lines of code that are no longer under development, then remove those releases. In other words, if `3.1.0-incubating` is present and `3.1.1-incubating` is released then remove `3.1.0-incubating`.  However, if `3.0.2-incubating` is present and that line of code is still under potential development, it may stay.
  . 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/]).
  