From f268a4194fa7d46e5223e84c0e4929c2ce865978 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20L=C3=A4ubrich?= Date: Thu, 6 Mar 2025 17:17:39 +0100 Subject: [PATCH] Upgrade to latest jline release and enable the gogo-build Currently gogo-jline uses a rather outdated jline release, this upgrades to the latest release and enables the build. --- .github/workflows/maven-ci.yml | 6 ++++++ gogo/jline/pom.xml | 4 ++-- .../java/org/apache/felix/gogo/jline/Builtin.java | 13 +++++++------ 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/.github/workflows/maven-ci.yml b/.github/workflows/maven-ci.yml index 1b34481ef9..dfbb0dbc77 100644 --- a/.github/workflows/maven-ci.yml +++ b/.github/workflows/maven-ci.yml @@ -14,6 +14,7 @@ on: paths: - 'scr/**' - 'http/**' + - 'gogo/**' - 'tools/maven-bundle-plugin/**' - 'tools/osgicheck-maven-plugin/**' - 'webconsole/**' @@ -44,6 +45,8 @@ jobs: - 'scr/**' http: - 'http/**' + gogo: + - 'gogo/**' maven-bundle-plugin: - 'tools/maven-bundle-plugin/**' maven-osgicheck-plugin: @@ -65,6 +68,9 @@ jobs: - name: Felix Webconsole if: steps.changes.outputs.webconsole == 'true' run: mvn -B -V -Dstyle.color=always --file webconsole/pom.xml clean install verify + - name: Felix Gogo Shell + if: steps.changes.outputs.gogo == 'true' + run: mvn -B -V -Dstyle.color=always --file gogo/pom.xml clean install verify - name: Upload Test Results if: always() uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4.6.1 diff --git a/gogo/jline/pom.xml b/gogo/jline/pom.xml index c4590ef4fa..faf8db46c2 100644 --- a/gogo/jline/pom.xml +++ b/gogo/jline/pom.xml @@ -63,7 +63,7 @@ org.jline jline - 3.13.2 + 3.29.0 org.apache.sshd @@ -94,7 +94,7 @@ !org.apache.felix.gogo.runtime.threadio, - org.jline*;version="[3.13,4)", + org.jline*;version="[3.29,4)", * diff --git a/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Builtin.java b/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Builtin.java index 87d616ddbc..c50f9e42e8 100644 --- a/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Builtin.java +++ b/gogo/jline/src/main/java/org/apache/felix/gogo/jline/Builtin.java @@ -18,6 +18,8 @@ */ package org.apache.felix.gogo.jline; +import static org.apache.felix.gogo.jline.Shell.getCommands; + import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.ByteArrayInputStream; @@ -49,12 +51,12 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; -import org.apache.felix.service.command.Job; -import org.apache.felix.service.command.Process; import org.apache.felix.gogo.runtime.CommandSessionImpl; import org.apache.felix.service.command.CommandSession; import org.apache.felix.service.command.Converter; import org.apache.felix.service.command.Function; +import org.apache.felix.service.command.Job; +import org.apache.felix.service.command.Process; import org.jline.builtins.Commands; import org.jline.builtins.Completers.DirectoriesCompleter; import org.jline.builtins.Completers.FilesCompleter; @@ -64,8 +66,7 @@ import org.jline.reader.ParsedLine; import org.jline.reader.Widget; import org.jline.terminal.Terminal; - -import static org.apache.felix.gogo.jline.Shell.getCommands; +import org.jline.utils.StyleResolver; /** * gosh built-in commands. @@ -683,7 +684,7 @@ public List __files(CommandSession session) { List candidates = new ArrayList<>(); new FilesCompleter(session.currentDir()) { @Override - protected String getDisplay(Terminal terminal, Path p) { + protected String getDisplay(Terminal terminal, Path p, StyleResolver resolver, String separator) { return getFileDisplay(session, p); } }.complete(reader, line, candidates); @@ -696,7 +697,7 @@ public List __directories(CommandSession session) { List candidates = new ArrayList<>(); new DirectoriesCompleter(session.currentDir()) { @Override - protected String getDisplay(Terminal terminal, Path p) { + protected String getDisplay(Terminal terminal, Path p, StyleResolver resolver, String separator) { return getFileDisplay(session, p); } }.complete(reader, line, candidates);