Skip to content

Commit

Permalink
Merge branch 'master' into ryan/remove-deprecated-none
Browse files Browse the repository at this point in the history
  • Loading branch information
ryn5 authored Dec 20, 2023
2 parents 6898e36 + dc5b190 commit 15db433
Show file tree
Hide file tree
Showing 90 changed files with 2,102 additions and 585 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/build-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -324,7 +324,7 @@ jobs:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Go
uses: actions/setup-go@v4
uses: actions/setup-go@v5
with:
go-version: '1.20'
- name: Get Cached Server Base Image
Expand Down
14 changes: 7 additions & 7 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
Expand All @@ -47,7 +47,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2
uses: github/codeql-action/autobuild@v3

# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
Expand All @@ -60,7 +60,7 @@ jobs:
# ./location_of_script_within_repo/buildscript.sh

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{matrix.language}}"

Expand All @@ -79,7 +79,7 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
uses: github/codeql-action/init@v3
with:
languages: 'csharp'

Expand All @@ -94,7 +94,7 @@ jobs:
# dotnet build gremlin-dotnet/test/Gremlin.Net.Template.IntegrationTest

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
uses: github/codeql-action/analyze@v3
with:
category: "/language:csharp"

Expand All @@ -113,7 +113,7 @@ jobs:

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
uses: github/codeql-action/init@v3
with:
languages: 'java'

Expand All @@ -125,6 +125,6 @@ jobs:
-DskipTests -Dmaven.test.skip.exec -Dlicense.skip=true -Drat.skip=true -Dspotless.check.skip=true
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
uses: github/codeql-action/analyze@v3
with:
category: "/language:java"
5 changes: 5 additions & 0 deletions CHANGELOG.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
* Added `with()` on `AnonymousTraversalSource` to cover both embedded and remote creation options.
* Removed the deprecated `withGraph()` option from `AnonymousTraversalSource`.
* Renamed the traversal discarding `none()` step to `discard()`.
* Bumped to `commons-collection4`.
== TinkerPop 3.7.0 (Gremfir Master of the Pan Flute)
Expand Down Expand Up @@ -296,7 +297,11 @@ image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
=== TinkerPop 3.6.7 (NOT OFFICIALLY RELEASED YET)
* Improved error message from `JavaTranslator` by including exception source.
* Added missing `short` serialization (`gx:Int16`) to GraphSONV2 and GraphSONV3 in `gremlin-python`
* Added tests for error handling for GLV's if tx.commit() is called remotely for graphs without transactions support.
* Introduced multi-architecture AMD64/ARM64 docker images for gremlin-console.
* Fixed bug in `JavaTranslator` where `has(String, null)` could call `has(String, Traversal)` to generate an error.
* Fixed issue where server errors weren't being properly parsed when sending bytecode over HTTP.
[[release-3-6-6]]
=== TinkerPop 3.6.6 (November 20, 2023)
Expand Down
119 changes: 119 additions & 0 deletions bin/run-examples.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
#!/bin/bash

#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.

function cleanup {
if [ -n "$(docker ps -q -f name=glv-examples)" ]
then
echo -n "Shutting down container: "
docker stop glv-examples
fi
if [ -n "$(docker ps -q -f name=glv-examples-modern)" ]
then
echo -n "Shutting down container: "
docker stop glv-examples-modern
fi
}
trap cleanup EXIT

open -a Docker
docker pull tinkerpop/gremlin-server
docker run -d --rm -p 8182:8182 --name glv-examples --health-cmd="curl -f http://localhost:8182/ || exit 1" --health-interval=5s --health-timeout=3s tinkerpop/gremlin-server

echo
echo "Not having Docker open initially or occupying port 8182 may cause an error loop. If so, simply restart this script."
echo -n "Starting Gremlin server on port 8182..."
until docker inspect --format '{{.State.Health.Status}}' glv-examples | grep -q "healthy"; do
echo -n "."
sleep 1
done
echo

cd gremlin-driver/src/main/java/examples || exit
mvn clean install

echo
echo "Running Java examples"
java -cp target/run-examples-shaded.jar examples.Connections
java -cp target/run-examples-shaded.jar examples.BasicGremlin
cd ../../../../.. || exit

echo
echo "Running python examples:"
python3 gremlin-python/src/main/python/examples/connections.py
python3 gremlin-python/src/main/python/examples/basic_gremlin.py

echo
echo "Running JavaScript examples:"
npm install --prefix gremlin-javascript/examples
node gremlin-javascript/examples/connections.js
node gremlin-javascript/examples/basic-gremlin.js

echo
echo "Running .NET examples:"
dotnet run --project gremlin-dotnet/Examples/Connections
dotnet run --project gremlin-dotnet/Examples/BasicGremlin

echo
echo "Running Go examples:"
cd gremlin-go/examples || exit
go run connections.go
go run basic_gremlin.go
cd ../.. || exit

echo
echo -n "Shutting down container: "
docker stop glv-examples

echo
docker run -d --rm -p 8182:8182 --name glv-examples-modern --health-cmd="curl -f http://localhost:8182/ || exit 1" --health-interval=5s --health-timeout=3s tinkerpop/gremlin-server conf/gremlin-server-modern.yaml
echo -n "Starting Modern server on port 8182..."
until docker inspect --format '{{.State.Health.Status}}' glv-examples-modern | grep -q "healthy"; do
echo -n "."
sleep 1
done
echo

echo
echo "Running Java traversals"
cd gremlin-driver/src/main/java/examples || exit
java -cp target/run-examples-shaded.jar examples.ModernTraversals
cd ../../../../.. || exit

echo
echo "Running python traversals:"
python3 gremlin-python/src/main/python/examples/modern_traversals.py

echo
echo "Running JavaScript traversals:"
npm install --prefix gremlin-javascript/examples
node gremlin-javascript/examples/modern-traversals.js

echo
echo "Running .NET traversals:"
dotnet run --project gremlin-dotnet/Examples/ModernTraversals

echo
echo "Running Go traversals:"
cd gremlin-go/examples || exit
go run modern_traversals.go
cd ../.. || exit

echo
echo -n "Shutting down container: "
docker stop glv-examples-modern
4 changes: 3 additions & 1 deletion docs/src/dev/developer/release.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ Take care to commit or not commit changes related to that as necessary.
== Release Manager Requirements
If this is your first time as release manager, you will need to setup keys for signing purposes per the Apache
If this is your first time as release manager, you will need to set up keys for signing purposes per the Apache
release process. Generally speaking, this will mean that you will need to generate a key-pair and then publish your
public key.
Expand Down Expand Up @@ -326,6 +326,8 @@ the help of a PMC member for those steps.
. Examine the `future.asciidoc` and update the "Roadmap" as needed.
. Send email to advise that code freeze is lifted.
. Consider the changes made to Gremlin and determine if the community needs to organize a PR to [DefinitelyTyped](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/gremlin) to keep TypeScript up to date.
. Ensure that the GLV examples compile and run with the latest image and dependencies: `bin/run-examples.sh`.
.. Make changes as necessary to update the examples.
. 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.
. Set up the IO tests for the current `SNAPSHOT` as discussed in the <<io,IO Documentation and Testing Section>>
Expand Down
Loading

0 comments on commit 15db433

Please sign in to comment.