24 Commits

Author SHA256 Message Date
Fridrich Štrba
be6c6a6912 Decide the ffm support according to the build Java version 2025-11-05 18:19:52 +01:00
Fridrich Štrba
ace94dd5af 3.30.6 2025-11-05 11:27:28 +01:00
Fridrich Štrba
c1aa78fab8 Build the ffm terminal on Factory 2025-11-05 08:44:41 +01:00
889f26631a Accepting request 1287888 from Java:packages
3.30.4

OBS-URL: https://build.opensuse.org/request/show/1287888
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/jline3?expand=0&rev=7
2025-06-24 18:47:09 +00:00
a536a22bcd OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=26 2025-06-23 09:50:22 +00:00
32c583a762 3.30.4
OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=25
2025-06-23 06:24:30 +00:00
0af3fd31b5 Accepting request 1264935 from Java:packages
Rewrite for Ant == build cycles prevention

OBS-URL: https://build.opensuse.org/request/show/1264935
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/jline3?expand=0&rev=6
2025-03-31 09:38:27 +00:00
91f3305293 OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=23 2025-03-28 06:02:57 +00:00
94679695c5 OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=22 2025-03-21 19:40:56 +00:00
67856df9cb OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=21 2025-03-21 19:25:57 +00:00
2cb091842b OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=20 2025-03-21 13:35:45 +00:00
922d5b696f Accepting request 1253153 from Java:packages
3.29.0

OBS-URL: https://build.opensuse.org/request/show/1253153
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/jline3?expand=0&rev=5
2025-03-15 15:16:18 +00:00
2c2297eda1 OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=18 2025-03-14 18:03:29 +00:00
65cd315110 OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=17 2025-03-14 04:50:38 +00:00
cddfe3a6d6 OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=16 2025-03-14 04:44:56 +00:00
ccb4288469 OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=15 2025-03-14 04:28:34 +00:00
61c4253e45 OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=14 2025-03-14 04:13:23 +00:00
737e7233ea OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=13 2025-03-13 20:45:04 +00:00
6f1f061dfc Accepting request 1207101 from Java:packages
Build the bundle module too

OBS-URL: https://build.opensuse.org/request/show/1207101
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/jline3?expand=0&rev=4
2024-10-11 15:03:21 +00:00
4674834981 OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=11 2024-10-11 08:42:31 +00:00
f0cb8482b4 OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=10 2024-10-11 07:42:01 +00:00
bcf6ad9f67 Accepting request 1202882 from Java:packages
Simplify dependencies

OBS-URL: https://build.opensuse.org/request/show/1202882
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/jline3?expand=0&rev=3
2024-09-24 15:34:23 +00:00
5183e47091 OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=8 2024-09-24 09:45:35 +00:00
0702dcf6da OBS-URL: https://build.opensuse.org/package/show/Java:packages/jline3?expand=0&rev=7 2024-09-24 07:13:00 +00:00
7 changed files with 297 additions and 54 deletions

View File

@@ -1,4 +1,4 @@
From 1cf3f73c9ce89d9c49985ddb8dfef33ae9fd44c8 Mon Sep 17 00:00:00 2001
From f3eda0bf4fa1b9efb0562224fa3c090ba59f0253 Mon Sep 17 00:00:00 2001
From: Mikolaj Izdebski <mizdebsk@redhat.com>
Date: Wed, 26 Feb 2025 16:26:49 +0100
Subject: [PATCH] Remove optional dependency on universalchardet
@@ -8,18 +8,18 @@ Subject: [PATCH] Remove optional dependency on universalchardet
1 file changed, 12 deletions(-)
diff --git a/builtins/src/main/java/org/jline/builtins/Nano.java b/builtins/src/main/java/org/jline/builtins/Nano.java
index 765cea7c..47501ee1 100644
index 491d0bc3..be5748c1 100644
--- a/builtins/src/main/java/org/jline/builtins/Nano.java
+++ b/builtins/src/main/java/org/jline/builtins/Nano.java
@@ -47,7 +47,6 @@ import org.jline.terminal.Terminal.Signal;
import org.jline.terminal.Terminal.SignalHandler;
@@ -51,7 +51,6 @@ import org.jline.terminal.impl.MouseSupport;
import org.jline.utils.*;
import org.jline.utils.InfoCmp.Capability;
import org.jline.utils.Status;
-import org.mozilla.universalchardet.UniversalDetector;
import static org.jline.builtins.SyntaxHighlighter.*;
import static org.jline.keymap.KeyMap.KEYMAP_LENGTH;
@@ -249,17 +248,6 @@ public class Nano implements Editor {
@@ -380,17 +379,6 @@ public class Nano implements Editor {
}
byte[] bytes = bos.toByteArray();
@@ -38,5 +38,5 @@ index 765cea7c..47501ee1 100644
try (BufferedReader reader =
new BufferedReader(new InputStreamReader(new ByteArrayInputStream(bytes), charset))) {
--
2.48.1
2.49.0

View File

@@ -1,6 +1,6 @@
--- a/native/src/main/java/org/jline/nativ/JLineNativeLoader.java
+++ b/native/src/main/java/org/jline/nativ/JLineNativeLoader.java
@@ -328,6 +328,7 @@ public class JLineNativeLoader {
@@ -499,6 +499,7 @@ public class JLineNativeLoader {
// As a last resort try from java.library.path
String javaLibraryPath = System.getProperty("java.library.path", "");
@@ -8,4 +8,3 @@
for (String ldPath : javaLibraryPath.split(File.pathSeparator)) {
if (ldPath.isEmpty()) {
continue;

Binary file not shown.

BIN
jline-3.30.6.tar.gz LFS Normal file

Binary file not shown.

BIN
jline3-build.tar.xz LFS Normal file

Binary file not shown.

View File

@@ -1,3 +1,143 @@
-------------------------------------------------------------------
Wed Nov 5 10:14:16 UTC 2025 - Fridrich Strba <fstrba@suse.com>
- Update to upstream version 3.30.6
* New features and improvements
+ Improve console variable expansion (fixes #1370)
+ ConsoleEngineImpl: change method and field visibilities
+ Allow ConsoleEngineImpl subclasses access to
VariableReferenceCompleter
+ feat: add reusable POSIX commands to builtins module
+ feat: support slurp command to be renamed
+ feat: Extend InputRC with method/s to directly read ~/.inputrc
& /etc/inputrc
+ Allow system commands to be renamed.
* Bug Fixes
+ Fix macOS hang in pipe operations by removing PTY terminal
usage
+ enhancement: only compute suggestions in the Nano editor if
something has changed
+ fix: refactor TerminalProvider methods to use
inputEncoding/outputEncoding parameters
+ Fix System.out not working after closing dumb terminal
+ Optimize Display performance and fix terminal capability
usage
* Dependency updates
+ chore: Bump com.diffplug.spotless:spotless-maven-plugin from
2.44.4 to 2.46.1
+ chore: Bump groovy.version from 4.0.27 to 4.0.28
+ chore: Bump com.palantir.javaformat:palantir-java-format from
2.67.00 to 2.73.0
+ chore: Bump junit.version from 5.12.2 to 5.13.4
+ chore: Bump org.graalvm.sdk:graal-sdk from 24.2.1 to 24.2.2
+ chore: Bump com.google.jimfs:jimfs from 1.3.0 to 1.3.1
+ chore: Bump org.apache.maven.plugins:maven-enforcer-plugin
from 3.5.0 to 3.6.1
+ chore: Bump on-headers and compression in /website
+ chore: Bump org.codehaus.gmavenplus:gmavenplus-plugin from
4.2.0 to 4.2.1
+ chore: Bump org.apache.maven.plugins:maven-clean-plugin from
3.4.1 to 3.5.0
+ chore: Bump org.codehaus.mojo:build-helper-maven-plugin from
3.6.0 to 3.6.1
+ chore: Bump org.apache.maven.plugins:maven-gpg-plugin from
3.2.7 to 3.2.8
+ chore: Bump eu.maveniverse.maven.njord:extension from 0.6.2
to 0.7.5
* Documentation updates
+ docs: Link to Nano Customization from Builtins doc page
+ docs: Add Capability.enter_ca_mode and Capability.exit_ca_mode
tip
* Maintenance
+ Remove double docs/docs in edit links on jline.org (fixes#
1309)
+ chore: make downcall handles static final
-------------------------------------------------------------------
Wed Nov 5 07:41:24 UTC 2025 - Fridrich Strba <fstrba@suse.com>
- Build the ffm support if we are building with Java >= 22
-------------------------------------------------------------------
Mon Jun 23 09:32:33 UTC 2025 - Fridrich Strba <fstrba@suse.com>
- Update to upstream version 3.30.4
* New features and improvements
+ add pluggable completion to Nano editor (fixes #1194)
+ enhanced MouseSupport to handle multiple mouse event formats
(SGR, URXVT, SGR-Pixels)
+ add getCurrentMouseTracking to Terminal interface
+ add ability to get terminal default foreground and background
colors
+ add password masking support for dumb terminals (fixes #1172)
+ add line numbers and current line marker to secondary prompt
(fix for #1151)
+ Add support for separate encodings for stdin, stdout, and
stderr
+ Make prompts work in non-fullscreen mode
* Bug Fixes
+ use a fallback classloader suitable for java Modules or OSGi
environments (fixes #1185)
+ NPE in Status#resize when supported is false (fixes #1191)
+ nano editor exiting when pressing Ctrl+Space (fixes #1200)
+ parse error of system default /usr/share/nano/*.nanorc
+ Terminal.trackMouse(MouseTracking.Off) (fixes #1189)
+ Make command execution order consistent in SystemRegistryImpl
+ handle invalid entries in history files gracefully
+ Properly fill screen lines with spaces when width is increased
in ScreenTerminal
+ cursor position after Status.update()
+ improve script file detection and execution in Groovy REPL,
fixes #1139
+ ensure proper cleanup of pump threads in terminal
implementations
+ add history line width check in ScreenTerminal.setSize()
(fixes #1206)
+ console-ui example: catch UserInterruptException in place of
IOError
+ Ctrl+Space handling on Windows terminals
+ Update LineReaderImpl to use new readMouseEvent signature with
lastBinding parameter
+ enhance nanorc loading and introduce a ClasspathResourceUtil
utility
+ missing close in PosixSysTerminal.
+ Jansi AnsiConsole broken color detection in uber jars
+ SyntaxHighlighter glob pattern handling for non-default file
systems
* Documentation
+ Integrate website into main repository
+ improve JLineNativeLoader documentation and references
+ fix readme
+ Add comprehensive Javadoc to jline-builtins module
+ improve Javadoc in console module
+ add comprehensive Javadoc to org.jline.style package
+ add comprehensive Javadoc to JLine Terminal and Reader
+ Add missing DISABLE_EVENT_EXPANSION JavaDoc (fixes #1218)
+ Make sure snippets compile
+ Corrected the maven central link
+ correct PicocliJLineExample snippet name in
library-integration.md
+ validate code snippets during build time instead of runtime
+ add missing @SInCE 3.30.0 annotations to new methods in
Terminal
+ integrate GitHub wiki content into website documentation
+ Improve website build system and documentation management
+ fix javadoc redirect URL issue
+ Add picocli links to library integration
+ Mention InputRC on Builtins
+ doc: update version to 3.30.0 and add Javadoc integration
+ integrate ConsoleUI documentation into website
+ add syntax highlighting example classes for documentation
+ Expand DISABLE_EVENT_EXPANSION JavaDoc (re. #1238)
+ Link to documentation website earlier in README (see #1240)
+ Link to Pty4j on Terminal
-------------------------------------------------------------------
Fri Mar 28 06:02:04 UTC 2025 - Fridrich Strba <fstrba@suse.com>
- Rewrite to use Ant to build. This prevents potential cycles with
upcoming Maven 4
-------------------------------------------------------------------
Fri Mar 14 14:06:15 UTC 2025 - Fridrich Strba <fstrba@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package jline3
#
# Copyright (c) 2025 SUSE LLC
# Copyright (c) 2025 SUSE LLC and contributors
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -23,29 +23,34 @@ readline/editline capabilities for modern shells (such as bash and tcsh) will\
find most of the command editing features of JLine to be familiar.\
\
JLine 3.x is an evolution of JLine 2.x.
%bcond_with ssh
# Requires java >= 22
%if %{?pkg_vcmp:%pkg_vcmp java-devel >= 22}%{!?pkg_vcmp:0}
%bcond_without ffm
%else
%bcond_with ffm
%endif
%bcond_with ssh
Name: jline3
Version: 3.29.0
Version: 3.30.6
Release: 0
Summary: Java library for handling console input
License: BSD-3-Clause
Group: Development/Libraries/Java
URL: https://github.com/jline/jline3
Source0: %{url}/archive/refs/tags/jline-%{version}.tar.gz
Source1: Load-native-library-system-wide-place.patch.in
Source1: %{name}-build.tar.xz
Source100: Load-native-library-system-wide-place.patch.in
Patch0: 0001-Remove-optional-dependency-on-universalchardet.patch
BuildRequires: ant
BuildRequires: fdupes
BuildRequires: java-devel >= 11
BuildRequires: maven-local
BuildRequires: mvn(com.google.code.findbugs:jsr305)
BuildRequires: mvn(net.java.dev.jna:jna)
BuildRequires: mvn(org.apache.felix:maven-bundle-plugin)
BuildRequires: mvn(org.fusesource.jansi:jansi)
BuildRequires: jansi
BuildRequires: java-devel >= 1.8
BuildRequires: javapackages-local >= 6
BuildRequires: jna
BuildRequires: jsr-305
%if %{with ssh}
BuildRequires: mvn(org.apache.sshd:sshd-core)
BuildRequires: mvn(org.apache.sshd:sshd-scp)
BuildRequires: mvn(org.apache.sshd:sshd-sftp)
BuildRequires: apache-sshd
BuildRequires: slf4j
%endif
%if %{with ffm}
BuildRequires: java-devel >= 22
@@ -63,13 +68,6 @@ find most of the command editing features of JLine to be familiar.
JLine 3.x is an evolution of JLine 2.x.
%package parent
Summary: JLine Parent
BuildArch: noarch
%description parent
%{desc}
%package builtins
Summary: JLine Builtins
BuildArch: noarch
@@ -223,9 +221,9 @@ BuildArch: noarch
API documentation for %{name}.
%prep
%autosetup -n %{name}-jline-%{version} -p1
%autosetup -n %{name}-jline-%{version} -p1 -a1
sed "s;@SYSTEMLIBRARYPATH@;%{_libdir}/%{name}/;g" < %{SOURCE1} | patch -p1
sed "s;@SYSTEMLIBRARYPATH@;%{_libdir}/%{name}/;g" < %{SOURCE100} | patch -p1
cp -p console-ui/LICENSE.txt LICENSE-APACHE.txt
@@ -257,7 +255,6 @@ sed -i /-Werror/d $(find -name pom.xml)
%pom_remove_plugin :spotless-maven-plugin
%pom_remove_plugin :maven-release-plugin
%pom_remove_plugin :maven-deploy-plugin
%pom_remove_plugin :central-publishing-maven-plugin
%pom_remove_plugin :native-image-maven-plugin
%pom_remove_plugin :maven-source-plugin
@@ -319,17 +316,123 @@ for module in \
done
%build
mkdir -p lib
build-jar-repository -s lib \
jansi/jansi \
jna/jna \
jsr-305
%if %{with ssh}
build-jar-repository -s lib \
apache-sshd/sshd-common \
apache-sshd/sshd-core \
apache-sshd/sshd-scp \
apache-sshd/sshd-sftp \
slf4j/api
%endif
# Build a native object
gcc -Wall %{?build_cflags} %{?optflags} -fPIC -fvisibility=hidden -shared \
-I native/src/main/native -I %{_jvmdir}/java/include \
-I %{_jvmdir}/java/include/linux %{?build_ldflags} \
-o libjlinenative.so native/src/main/native/{jlinenative,clibrary}.c
%{mvn_build} -f -s -- -Dnojavadoc=true
ant package javadoc
%if %{with ssh}
ant -f remote-ssh package javadoc
%endif
%if %{with ffm}
ant -f terminal-ffm package javadoc
%endif
%install
%mvn_install
# jars
install -dm 0755 %{buildroot}%{_jnidir}/%{name}
install -pm 0644 jansi/target/jansi-%{version}.jar %{buildroot}%{_jnidir}/%{name}/jansi.jar
install -pm 0644 jline/target/jline-%{version}.jar %{buildroot}%{_jnidir}/%{name}/jline.jar
install -pm 0644 native/target/jline-native-%{version}.jar %{buildroot}%{_jnidir}/%{name}/jline-native.jar
install -dm 0755 %{buildroot}%{_javadir}/%{name}
install -pm 0644 jansi-core/target/jansi-core-%{version}.jar %{buildroot}%{_javadir}/%{name}/jansi-core.jar
for i in \
builtins \
console \
console-ui \
curses reader \
%if %{with ssh}
remote-ssh \
%endif
remote-telnet \
style \
terminal \
%if %{with ffm}
terminal-ffm \
%endif
terminal-jansi \
terminal-jna \
terminal-jni; do
install -pm 0644 ${i}/target/jline-${i}-%{version}.jar %{buildroot}%{_javadir}/%{name}/jline-${i}.jar
done
# poms
install -dm 0755 %{buildroot}%{_mavenpomdir}/%{name}
for i in \
jansi \
jansi-core \
jline; do
%{mvn_install_pom} ${i}/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/${i}.pom
%add_maven_depmap %{name}/${i}.pom %{name}/${i}.jar -f ${i}
done
for i in \
builtins \
console \
console-ui \
curses reader \
native \
%if %{with ssh}
remote-ssh \
%endif
remote-telnet \
style \
terminal \
%if %{with ffm}
terminal-ffm \
%endif
terminal-jansi \
terminal-jna \
terminal-jni; do
%{mvn_install_pom} ${i}/pom.xml %{buildroot}%{_mavenpomdir}/%{name}/jline-${i}.pom
%add_maven_depmap %{name}/jline-${i}.pom %{name}/jline-${i}.jar -f ${i}
done
# javadoc
install -dm 0755 %{buildroot}%{_javadocdir}/%{name}
for i in \
builtins \
console \
console-ui \
curses reader \
jansi \
jansi-core \
jline \
native \
%if %{with ssh}
remote-ssh \
%endif
remote-telnet \
style \
terminal \
%if %{with ffm}
terminal-ffm \
%endif
terminal-jansi \
terminal-jna \
terminal-jni; do
cp -r ${i}/target/site/apidocs %{buildroot}%{_javadocdir}/%{name}/${i}
done
%fdupes %{buildroot}%{_javadocdir}/%{name}
# native library
install -d -m 755 %{buildroot}%{_libdir}/%{name}/
install -p -m 755 libjlinenative.so %{buildroot}%{_libdir}/%{name}/
@@ -343,57 +446,55 @@ install -p -m 755 libjlinenative.so %{buildroot}%{_libdir}/%{name}/
%files jansi-core -f .mfiles-jansi-core
%license LICENSE.txt
%files builtins -f .mfiles-jline-builtins
%files builtins -f .mfiles-builtins
%license LICENSE.txt
%files console -f .mfiles-jline-console
%files console -f .mfiles-console
%license LICENSE.txt
%files console-ui -f .mfiles-jline-console-ui
%files console-ui -f .mfiles-console-ui
%license LICENSE.txt
%files curses -f .mfiles-jline-curses
%files curses -f .mfiles-curses
%license LICENSE.txt
%files native -f .mfiles-jline-native
%files native -f .mfiles-native
%{_libdir}/%{name}
%license LICENSE.txt
%files reader -f .mfiles-jline-reader
%files reader -f .mfiles-reader
%license LICENSE.txt
%if %{with ssh}
%files remote-ssh -f .mfiles-jline-remote-ssh
%files remote-ssh -f .mfiles-remote-ssh
%license LICENSE.txt
%endif
%if %{with ffm}
%files terminal-ffm -f .mfiles-jline-terminal-ffm
%files terminal-ffm -f .mfiles-terminal-ffm
%license LICENSE.txt
%endif
%files remote-telnet -f .mfiles-jline-remote-telnet
%files remote-telnet -f .mfiles-remote-telnet
%license LICENSE.txt
%files style -f .mfiles-jline-style
%files style -f .mfiles-style
%license LICENSE.txt
%files terminal -f .mfiles-jline-terminal
%files terminal -f .mfiles-terminal
%license LICENSE.txt
%files terminal-jansi -f .mfiles-jline-terminal-jansi
%files terminal-jansi -f .mfiles-terminal-jansi
%license LICENSE.txt
%files terminal-jna -f .mfiles-jline-terminal-jna
%files terminal-jna -f .mfiles-terminal-jna
%license LICENSE.txt
%files terminal-jni -f .mfiles-jline-terminal-jni
%files terminal-jni -f .mfiles-terminal-jni
%license LICENSE.txt
%files parent -f .mfiles-jline-parent
%license LICENSE.txt
%files javadoc -f .mfiles-javadoc
%files javadoc
%{_javadocdir}/%{name}
%license LICENSE.txt
%changelog