fix [Bug]: gremlin-console.sh fails on Mac M4 (Apple Silicon)#3031#3050
fix [Bug]: gremlin-console.sh fails on Mac M4 (Apple Silicon)#3031#3050vaijosh wants to merge 1 commit into
Conversation
Added org.fusesource.jansi:jansi:2.4.0 as a runtime dependency in `hugegraph-server/hugegraph-dist/pom.xml` to prevent NoClassDefFoundError: org/fusesource/jansi/AnsiConsole when launching gremlin-console. Also update release docs: - install-dist/release-docs/LICENSE - install-dist/release-docs/NOTICE - add install-dist/release-docs/licenses/LICENSE-jansi-2.4.0.txt
imbajin
left a comment
There was a problem hiding this comment.
Blocking: yes. Summary: the new packaged dependency is missing required release/dependency inventory updates and a distro regression guard. Evidence: dependency-check reports +jansi-2.4.0.jar, dependency:tree shows the new runtime jar, and the added license file is only a short summary.
🔗 Please also check the latest failed dependency-check job: https://github.com/apache/hugegraph/actions/runs/26973199772/job/79593480638
|
|
||
| <!-- Added updated jar to avoid java.lang.NoClassDefFoundError: org/fusesource/jansi/AnsiConsole when launching | ||
| gremlin console on arm64 --> | ||
| <dependency> |
There was a problem hiding this comment.
Evidence: this PR adds org.fusesource.jansi:jansi:2.4.0, and the dependency-check job diffs the generated inventory with install-dist/scripts/dependency/known-dependencies.txt; the failed job shows +jansi-2.4.0.jar, while the tracked file has no such entry.
Impact: the release dependency gate will keep failing for this PR, and the newly bundled jar is not recorded in the deterministic dependency inventory.
Requested fix: regenerate and commit install-dist/scripts/dependency/known-dependencies.txt, or add the missing jansi-2.4.0.jar entry in the correct sorted position.
| @@ -0,0 +1,16 @@ | |||
| Copyright (c) 2007-2021, the original author(s) | |||
There was a problem hiding this comment.
Evidence: this new file is a 16-line summary with URLs, but the surrounding install-dist/release-docs/licenses/LICENSE-*.txt files vendor complete upstream license texts. The new LICENSE entry also points readers here for license details, which this summary does not provide.
Impact: the release docs for the newly bundled jar are incomplete, which is an ASF release/legal risk even if the runtime dependency is correct.
Requested fix: replace this file with the full upstream license text for the license option HugeGraph is relying on for distribution, and align the LICENSE/NOTICE wording with that choice.
|
|
||
| <!-- Added updated jar to avoid java.lang.NoClassDefFoundError: org/fusesource/jansi/AnsiConsole when launching | ||
| gremlin console on arm64 --> | ||
| <dependency> |
There was a problem hiding this comment.
Evidence: the fix is purely in distro packaging, so the normal unit/core/api suites do not exercise the gremlin-console.sh classpath. I could not find an automated check that launches the packaged console or at least asserts the tarball contains lib/jansi-*.jar.
Impact: this exact classpath regression can silently return after a dependency or assembly change and only be caught by users starting the packaged console.
Requested fix: add a distro-level smoke check, for example launching bin/gremlin-console.sh -- -e <script> from the assembled server, or at minimum asserting the packaged archive contains the Jansi jar.
What I changed
org.fusesource.jansi:jansi:2.4.0inhugegraph-server/hugegraph-dist/pom.xml.install-dist/release-docs/LICENSEinstall-dist/release-docs/NOTICEinstall-dist/release-docs/licenses/LICENSE-jansi-2.4.0.txtValidation performed