This is an automated email from the ASF dual-hosted git repository.

Cole-Greer pushed a commit to branch 3.7-dev
in repository https://gitbox.apache.org/repos/asf/tinkerpop.git


The following commit(s) were added to refs/heads/3.7-dev by this push:
     new c1e7b6afcb Refactor JS CI jobs to use matrix strategy and add Node 26 
(#3425)
c1e7b6afcb is described below

commit c1e7b6afcb72f2c1af49396ce0934f1b2165afb3
Author: Cole Greer <[email protected]>
AuthorDate: Fri May 15 12:18:16 2026 -0700

    Refactor JS CI jobs to use matrix strategy and add Node 26 (#3425)
---
 .github/workflows/build-test.yml             | 64 +++-------------------------
 CHANGELOG.asciidoc                           |  1 +
 docs/src/reference/gremlin-variants.asciidoc | 23 +++++-----
 3 files changed, 20 insertions(+), 68 deletions(-)

diff --git a/.github/workflows/build-test.yml b/.github/workflows/build-test.yml
index 5c2ad5355b..1546a8bd75 100644
--- a/.github/workflows/build-test.yml
+++ b/.github/workflows/build-test.yml
@@ -238,65 +238,15 @@ jobs:
         run: |
           mvn clean install -pl 
-:gremlin-javascript,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests,-:gremlint
 -q -DskipTests -Dci
           mvn verify -pl gremlin-driver -DskipIntegrationTests=false
-  javascript-node20:
-    name: javascript-all-node20
-    timeout-minutes: 15
-    needs: cache-gremlin-server-docker-image
-    runs-on: ubuntu-latest
-    steps:
-      - uses: actions/checkout@v6
-      - name: Set up JDK 11
-        uses: actions/setup-java@v5
-        with:
-          java-version: '11'
-          distribution: 'temurin'
-      - name: Get Cached Server Base Image
-        uses: actions/cache@v5
-        id: gremlin-server-test-docker-image
-        with:
-          path: |
-            ./gremlin-server/*
-            ~/.m2/repository/org/apache/tinkerpop/*
-          key: ${{ github.sha }}
-      - name: Load Docker Image
-        working-directory: ./gremlin-server
-        run: docker load --input gremlin-server.tar
-      - name: Build with Maven
-        run: |
-          mvn clean install -pl 
-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests 
-q -DskipTests -Dci
-          mvn verify -pl :gremlin-javascript,:gremlint -Dnode.test.version=20
-  javascript-node22:
-    name: javascript-glv-node22
-    timeout-minutes: 15
-    needs: cache-gremlin-server-docker-image
-    runs-on: ubuntu-latest
-    steps:
-      - uses: actions/checkout@v6
-      - name: Set up JDK 11
-        uses: actions/setup-java@v5
-        with:
-          java-version: '11'
-          distribution: 'temurin'
-      - name: Get Cached Server Base Image
-        uses: actions/cache@v5
-        id: gremlin-server-test-docker-image
-        with:
-          path: |
-            ./gremlin-server/*
-            ~/.m2/repository/org/apache/tinkerpop/*
-          key: ${{ github.sha }}
-      - name: Load Docker Image
-        working-directory: ./gremlin-server
-        run: docker load --input gremlin-server.tar
-      - name: Build with Maven
-        run: |
-          mvn clean install -pl 
-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests 
-q -DskipTests -Dci
-          mvn verify -pl :gremlin-javascript -Dnode.test.version=22
-  javascript-node24:
-    name: javascript-glv-node24
+  javascript:
+    name: javascript-glv-node${{ matrix.node-version }}
     timeout-minutes: 15
     needs: cache-gremlin-server-docker-image
     runs-on: ubuntu-latest
+    strategy:
+      fail-fast: false
+      matrix:
+        node-version: ['20', '22', '24', '26']
     steps:
       - uses: actions/checkout@v6
       - name: Set up JDK 11
@@ -318,7 +268,7 @@ jobs:
       - name: Build with Maven
         run: |
           mvn clean install -pl 
-:gremlin-python,-gremlin-dotnet,-:gremlin-dotnet-source,-:gremlin-dotnet-tests 
-q -DskipTests -Dci
-          mvn verify -pl :gremlin-javascript -Dnode.test.version=24
+          mvn verify -pl :gremlin-javascript,:gremlint -Dnode.test.version=${{ 
matrix.node-version }}
   python:
     name: python-${{ matrix.python-version }}
     timeout-minutes: 20
diff --git a/CHANGELOG.asciidoc b/CHANGELOG.asciidoc
index d25b5476c1..f710d91f02 100644
--- a/CHANGELOG.asciidoc
+++ b/CHANGELOG.asciidoc
@@ -27,6 +27,7 @@ 
image::https://raw.githubusercontent.com/apache/tinkerpop/master/docs/static/ima
 
 * Fixed conjoin has incorrect null handling.
 * Expanded `gremlin-python` CI matrix to test against Python 3.9, 3.10, 3.11, 
3.12, and 3.13.
+* Add Node 26 support for `gremlin-javascript` and `gremlint`.
 
 [[release-3-7-6]]
 === TinkerPop 3.7.6 (Release Date: April 1, 2026)
diff --git a/docs/src/reference/gremlin-variants.asciidoc 
b/docs/src/reference/gremlin-variants.asciidoc
index f231e41b3a..4d9c3f606c 100644
--- a/docs/src/reference/gremlin-variants.asciidoc
+++ b/docs/src/reference/gremlin-variants.asciidoc
@@ -1483,8 +1483,8 @@ java -cp target/run-examples-shaded.jar 
examples.ModernTraversals
 == Gremlin-JavaScript
 
 image:gremlin-js.png[width=130,float=right] Apache TinkerPop's 
Gremlin-JavaScript implements Gremlin within the
-JavaScript language. It targets Node.js runtime and can be used on different 
operating systems on any Node.js 20 or
-above. Since the JavaScript naming conventions are very similar to that of 
Java, it should be very easy to switch
+JavaScript language. It targets Node.js runtime and can be used on different 
operating systems. Since the JavaScript
+naming conventions are very similar to that of Java, it should be very easy to 
switch
 between Gremlin-Java and Gremlin-JavaScript.
 
 [source,bash]
@@ -1494,15 +1494,16 @@ The following table outlines recommended runtime 
versions by the release in whic
 
 [cols="1,1,1",options="header"]
 |===
-|Version |Min Node.js |npm Version
-|3.4.0 |≥6 |N/A
-|3.5.0 |≥10 |6.14.16
-|3.5.7 |≥16 |8.19.4
-|3.6.0 |≥10 |8.1.2
-|3.6.5 |≥16 |8.19.4
-|3.6.7 |≥18 |9.6.7
-|3.7.0 |≥18 |9.6.7
-|3.7.4 |≥20 |10.8.2
+|Version |Recommended Node.js Version |npm Version
+|3.4.0 |6 |N/A
+|3.5.0 |10 |6.14.16
+|3.5.7 |16 |8.19.4
+|3.6.0 |10 |8.1.2
+|3.6.5 |16 |8.19.4
+|3.6.7 |18 |9.6.7
+|3.7.0 |18 |9.6.7
+|3.7.4 |20, 22, 24 |10.8.2
+|3.7.7 |20, 22, 24, 26 |10.8.2
 |===
 
 [[gremlin-javascript-connecting]]

Reply via email to