Skip to content

refactor: improve SQL function implementations and add tests for ifem… - #2186

Merged
robfrank merged 1 commit into
mainfrom
chore/add-tests-to-functions
Apr 29, 2025
Merged

refactor: improve SQL function implementations and add tests for ifem…#2186
robfrank merged 1 commit into
mainfrom
chore/add-tests-to-functions

Conversation

@robfrank

Copy link
Copy Markdown
Collaborator

This pull request introduces enhancements and bug fixes to the SQL functions if, ifempty, and ifnull in the ArcadeDB codebase. It includes improvements to code readability, handling of edge cases, and the addition of comprehensive unit tests for the ifempty and ifnull functions.

Improvements to SQL Function Logic:

Code Cleanup:

  • Updated imports in SQLFunctionIf and SQLFunctionIfEmpty to use specific classes instead of wildcard imports for clarity. (engine/src/main/java/com/arcadedb/query/sql/function/misc/SQLFunctionIf.java, [1]; engine/src/main/java/com/arcadedb/query/sql/function/misc/SQLFunctionIfEmpty.java, [2]

Testing Enhancements:

@robfrank
robfrank merged commit e3bcab4 into main Apr 29, 2025
@codacy-production

Copy link
Copy Markdown

Coverage summary from Codacy

See diff coverage on Codacy

Coverage variation Diff coverage
+0.25% 66.67%
Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (0b80599) 69901 44687 63.93%
Head commit (d4f3642) 69899 (-2) 44863 (+176) 64.18% (+0.25%)

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#2186) 9 6 66.67%

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

See your quality gate settings    Change summary preferences

@robfrank
robfrank deleted the chore/add-tests-to-functions branch June 20, 2025 07:44
tae898 pushed a commit to humemai/arcadedb-embedded-python that referenced this pull request Jun 28, 2026
mergify Bot added a commit that referenced this pull request Aug 30, 2026
Bumps `jline.version` from 4.3.1 to 4.4.0.
Updates `org.jline:jline-terminal` from 4.3.1 to 4.4.0
Release notes

*Sourced from [org.jline:jline-terminal's releases](https://github.com/jline/jline3/releases).*

> JLine 4.4.0 is a feature-rich release bringing modern terminal protocol support, broader platform compatibility, and continued security hardening.
>
> **Highlights:**
>
> * **Kitty Keyboard Protocol** — full support for the [Kitty keyboard protocol](https://sw.kovidgoyal.net/kitty/keyboard-protocol/), enabling unambiguous key event reporting ([#2007](https://redirect.github.com/jline/jline3/issues/2007))
> * **In-band window resize** — support for mode 2048 resize notifications across the terminal, reader, and builtins (Nano, Less, Tmux) ([#2021](https://redirect.github.com/jline/jline3/issues/2021), [#2198](https://redirect.github.com/jline/jline3/issues/2198))
> * **Synchronized output** — full mode 2026 support to eliminate flicker during rapid screen updates ([#2022](https://redirect.github.com/jline/jline3/issues/2022))
> * **musl libc support** — native libraries now load on Alpine and other musl-based distributions ([#2197](https://redirect.github.com/jline/jline3/issues/2197))
> * **JdkConsoleProvider** — drop-in JLine console that can replace `System.console()` ([#2031](https://redirect.github.com/jline/jline3/issues/2031))
> * **Reproducible builds** — source archives can now be built without a git checkout, thanks to nisse property fallbacks ([#2151](https://redirect.github.com/jline/jline3/issues/2151), [#2153](https://redirect.github.com/jline/jline3/issues/2153))
> * **Security hardening** — path traversal guards, ReDoS protection, cross-origin rejection, control character stripping, and SSH agent forwarding tightened across multiple modules
> * **FFM signal handling rewrite** — replaced shared Arena with self-pipe trick for reliable signal delivery ([#2141](https://redirect.github.com/jline/jline3/issues/2141))
>
> ⚠️ **Breaking:** the ambiguous key binding timeout has been reduced from 1000ms to 100ms ([#2186](https://redirect.github.com/jline/jline3/issues/2186)), and SSH agent forwarding now requires the explicit `-A` flag ([#2106](https://redirect.github.com/jline/jline3/issues/2106)).
>
> 💥 Breaking changes
> -----------------------
>
> * fix: reduce ambiguous binding timeout from 1000ms to 100ms ([#2186](https://redirect.github.com/jline/jline3/pull/2186)) [`@​gnodet`](https://github.com/gnodet)
> * fix: only forward the ssh agent when -A is given ([#2106](https://redirect.github.com/jline/jline3/pull/2106)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
>
> 🚀 New features and improvements
> -------------------------------
>
> * feat: support in-band resize (mode 2048) in Nano, Less, and Tmux builtins ([#2198](https://redirect.github.com/jline/jline3/pull/2198)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add musl libc support for native libraries ([#2197](https://redirect.github.com/jline/jline3/pull/2197)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add Kitty Keyboard Protocol support ([#2007](https://redirect.github.com/jline/jline3/pull/2007)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add configurable behavior for too many completion candidates (fixes [#2154](https://redirect.github.com/jline/jline3/issues/2154)) ([#2196](https://redirect.github.com/jline/jline3/pull/2196)) [`@​gnodet`](https://github.com/gnodet)
> * feat: support in-band window resize notifications (mode 2048) ([#2021](https://redirect.github.com/jline/jline3/pull/2021)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add JdkConsoleProvider for drop-in JLine console ([#2031](https://redirect.github.com/jline/jline3/pull/2031)) [`@​gnodet`](https://github.com/gnodet)
> * feat: verify macOS native library signatures in CI ([#2173](https://redirect.github.com/jline/jline3/pull/2173)) [`@​gnodet`](https://github.com/gnodet)
> * feat: allow customizing the help source in Less pager (fixes [#2056](https://redirect.github.com/jline/jline3/issues/2056)) ([#2065](https://redirect.github.com/jline/jline3/pull/2065)) [`@​gnodet`](https://github.com/gnodet)
> * feat: full synchronized output (mode 2026) support ([#2022](https://redirect.github.com/jline/jline3/pull/2022)) [`@​gnodet`](https://github.com/gnodet)
> * refactor: batch DEC mode probing into single DECRQM round-trip ([#2023](https://redirect.github.com/jline/jline3/pull/2023)) [`@​gnodet`](https://github.com/gnodet)
> * feat: allow customizing the default prompt in Less pager ([#2036](https://redirect.github.com/jline/jline3/pull/2036)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add factory to simplify LineDisciplineTerminal + ScreenTerminal wiring ([#2035](https://redirect.github.com/jline/jline3/pull/2035)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add AttributedStringBuilder.appendCodePoint(int) ([#2163](https://redirect.github.com/jline/jline3/pull/2163)) [`@​gnodet`](https://github.com/gnodet)
> * Enable reproducible builds from source archives ([#2151](https://redirect.github.com/jline/jline3/pull/2151)) [`@​gnodet`](https://github.com/gnodet)
> * Add Terminal.getenv() for remote terminal environment support ([#2030](https://redirect.github.com/jline/jline3/pull/2030)) [`@​gnodet`](https://github.com/gnodet)
>
> 🐛 Bug Fixes
> -----------
>
> * fix: remove eval from MVX demo launchers (fixes [#2191](https://redirect.github.com/jline/jline3/issues/2191)) ([#2193](https://redirect.github.com/jline/jline3/pull/2193)) [`@​gnodet`](https://github.com/gnodet)
> * fix: DefaultHistory.read() records per-file entry count instead of total (fixes [#2179](https://redirect.github.com/jline/jline3/issues/2179)) ([#2194](https://redirect.github.com/jline/jline3/pull/2194)) [`@​gnodet`](https://github.com/gnodet)
> * fix: handle IOError in BindingReader gracefully instead of crashing (fixes [#2155](https://redirect.github.com/jline/jline3/issues/2155)) ([#2195](https://redirect.github.com/jline/jline3/pull/2195)) [`@​gnodet`](https://github.com/gnodet)
> * fix: lower native library candidate log level from WARNING to DEBUG (fixes [#2185](https://redirect.github.com/jline/jline3/issues/2185)) ([#2192](https://redirect.github.com/jline/jline3/pull/2192)) [`@​gnodet`](https://github.com/gnodet)
> * fix: reimplement FFM signal handling with self-pipe trick (fixes [#2139](https://redirect.github.com/jline/jline3/issues/2139)) ([#2141](https://redirect.github.com/jline/jline3/pull/2141)) [`@​gnodet`](https://github.com/gnodet)
> * fix: add software signal interception to Windows terminals (fixes [#2127](https://redirect.github.com/jline/jline3/issues/2127)) ([#2148](https://redirect.github.com/jline/jline3/pull/2148)) [`@​gnodet`](https://github.com/gnodet)
> * fix: escape control chars in oversized line-buffer display ([#2175](https://redirect.github.com/jline/jline3/pull/2175)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
> * fix: escape IAC byte in the telnet data output stream ([#2164](https://redirect.github.com/jline/jline3/pull/2164)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
> * fix: strip control characters from Less status messages ([#2156](https://redirect.github.com/jline/jline3/pull/2156)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
> * fix: preserve termios baud rate when setting attributes ([#2170](https://redirect.github.com/jline/jline3/issues/2170)) ([#2172](https://redirect.github.com/jline/jline3/pull/2172)) [`@​arimu1`](https://github.com/arimu1)
> * fix: mask password value in DefaultPrompter result display ([#2167](https://redirect.github.com/jline/jline3/pull/2167)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)

... (truncated)


Commits

* [`57f82ce`](jline/jline3@57f82ce) fix: preserve pending buffer and message during Less resize
* [`f21f332`](jline/jline3@f21f332) fix: enforce dimension bounds in InBandResize.applyResizeParams
* [`1c3801c`](jline/jline3@1c3801c) test: add unit tests for InBandResize utility, fix resize aborting Less file ...
* [`6be4759`](jline/jline3@6be4759) fix: address SonarCloud issues — rename Binding enum to UPPER\_SNAKE\_CASE, red...
* [`571f0fe`](jline/jline3@571f0fe) feat: support in-band resize (mode 2048) in Nano, Less, and Tmux builtins (fi...
* [`6e02fe4`](jline/jline3@6e02fe4) feat: add musl libc support for native libraries (fixes [#1092](https://redirect.github.com/jline/jline3/issues/1092))
* [`11f9346`](jline/jline3@11f9346) fix: remove eval from MVX demo launchers (fixes [#2191](https://redirect.github.com/jline/jline3/issues/2191))
* [`a701558`](jline/jline3@a701558) feat: add Kitty Keyboard Protocol support (fixes [#1217](https://redirect.github.com/jline/jline3/issues/1217))
* [`c7170ea`](jline/jline3@c7170ea) fix: DefaultHistory.read() records per-file entry count instead of total (fix...
* [`e5202a3`](jline/jline3@e5202a3) feat: add configurable behavior for too many completion candidates (fixes [#2154](https://redirect.github.com/jline/jline3/issues/2154))
* Additional commits viewable in [compare view](jline/jline3@4.3.1...4.4.0)
  
Updates `org.jline:jline-reader` from 4.3.1 to 4.4.0
Release notes

*Sourced from [org.jline:jline-reader's releases](https://github.com/jline/jline3/releases).*

> JLine 4.4.0 is a feature-rich release bringing modern terminal protocol support, broader platform compatibility, and continued security hardening.
>
> **Highlights:**
>
> * **Kitty Keyboard Protocol** — full support for the [Kitty keyboard protocol](https://sw.kovidgoyal.net/kitty/keyboard-protocol/), enabling unambiguous key event reporting ([#2007](https://redirect.github.com/jline/jline3/issues/2007))
> * **In-band window resize** — support for mode 2048 resize notifications across the terminal, reader, and builtins (Nano, Less, Tmux) ([#2021](https://redirect.github.com/jline/jline3/issues/2021), [#2198](https://redirect.github.com/jline/jline3/issues/2198))
> * **Synchronized output** — full mode 2026 support to eliminate flicker during rapid screen updates ([#2022](https://redirect.github.com/jline/jline3/issues/2022))
> * **musl libc support** — native libraries now load on Alpine and other musl-based distributions ([#2197](https://redirect.github.com/jline/jline3/issues/2197))
> * **JdkConsoleProvider** — drop-in JLine console that can replace `System.console()` ([#2031](https://redirect.github.com/jline/jline3/issues/2031))
> * **Reproducible builds** — source archives can now be built without a git checkout, thanks to nisse property fallbacks ([#2151](https://redirect.github.com/jline/jline3/issues/2151), [#2153](https://redirect.github.com/jline/jline3/issues/2153))
> * **Security hardening** — path traversal guards, ReDoS protection, cross-origin rejection, control character stripping, and SSH agent forwarding tightened across multiple modules
> * **FFM signal handling rewrite** — replaced shared Arena with self-pipe trick for reliable signal delivery ([#2141](https://redirect.github.com/jline/jline3/issues/2141))
>
> ⚠️ **Breaking:** the ambiguous key binding timeout has been reduced from 1000ms to 100ms ([#2186](https://redirect.github.com/jline/jline3/issues/2186)), and SSH agent forwarding now requires the explicit `-A` flag ([#2106](https://redirect.github.com/jline/jline3/issues/2106)).
>
> 💥 Breaking changes
> -----------------------
>
> * fix: reduce ambiguous binding timeout from 1000ms to 100ms ([#2186](https://redirect.github.com/jline/jline3/pull/2186)) [`@​gnodet`](https://github.com/gnodet)
> * fix: only forward the ssh agent when -A is given ([#2106](https://redirect.github.com/jline/jline3/pull/2106)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
>
> 🚀 New features and improvements
> -------------------------------
>
> * feat: support in-band resize (mode 2048) in Nano, Less, and Tmux builtins ([#2198](https://redirect.github.com/jline/jline3/pull/2198)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add musl libc support for native libraries ([#2197](https://redirect.github.com/jline/jline3/pull/2197)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add Kitty Keyboard Protocol support ([#2007](https://redirect.github.com/jline/jline3/pull/2007)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add configurable behavior for too many completion candidates (fixes [#2154](https://redirect.github.com/jline/jline3/issues/2154)) ([#2196](https://redirect.github.com/jline/jline3/pull/2196)) [`@​gnodet`](https://github.com/gnodet)
> * feat: support in-band window resize notifications (mode 2048) ([#2021](https://redirect.github.com/jline/jline3/pull/2021)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add JdkConsoleProvider for drop-in JLine console ([#2031](https://redirect.github.com/jline/jline3/pull/2031)) [`@​gnodet`](https://github.com/gnodet)
> * feat: verify macOS native library signatures in CI ([#2173](https://redirect.github.com/jline/jline3/pull/2173)) [`@​gnodet`](https://github.com/gnodet)
> * feat: allow customizing the help source in Less pager (fixes [#2056](https://redirect.github.com/jline/jline3/issues/2056)) ([#2065](https://redirect.github.com/jline/jline3/pull/2065)) [`@​gnodet`](https://github.com/gnodet)
> * feat: full synchronized output (mode 2026) support ([#2022](https://redirect.github.com/jline/jline3/pull/2022)) [`@​gnodet`](https://github.com/gnodet)
> * refactor: batch DEC mode probing into single DECRQM round-trip ([#2023](https://redirect.github.com/jline/jline3/pull/2023)) [`@​gnodet`](https://github.com/gnodet)
> * feat: allow customizing the default prompt in Less pager ([#2036](https://redirect.github.com/jline/jline3/pull/2036)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add factory to simplify LineDisciplineTerminal + ScreenTerminal wiring ([#2035](https://redirect.github.com/jline/jline3/pull/2035)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add AttributedStringBuilder.appendCodePoint(int) ([#2163](https://redirect.github.com/jline/jline3/pull/2163)) [`@​gnodet`](https://github.com/gnodet)
> * Enable reproducible builds from source archives ([#2151](https://redirect.github.com/jline/jline3/pull/2151)) [`@​gnodet`](https://github.com/gnodet)
> * Add Terminal.getenv() for remote terminal environment support ([#2030](https://redirect.github.com/jline/jline3/pull/2030)) [`@​gnodet`](https://github.com/gnodet)
>
> 🐛 Bug Fixes
> -----------
>
> * fix: remove eval from MVX demo launchers (fixes [#2191](https://redirect.github.com/jline/jline3/issues/2191)) ([#2193](https://redirect.github.com/jline/jline3/pull/2193)) [`@​gnodet`](https://github.com/gnodet)
> * fix: DefaultHistory.read() records per-file entry count instead of total (fixes [#2179](https://redirect.github.com/jline/jline3/issues/2179)) ([#2194](https://redirect.github.com/jline/jline3/pull/2194)) [`@​gnodet`](https://github.com/gnodet)
> * fix: handle IOError in BindingReader gracefully instead of crashing (fixes [#2155](https://redirect.github.com/jline/jline3/issues/2155)) ([#2195](https://redirect.github.com/jline/jline3/pull/2195)) [`@​gnodet`](https://github.com/gnodet)
> * fix: lower native library candidate log level from WARNING to DEBUG (fixes [#2185](https://redirect.github.com/jline/jline3/issues/2185)) ([#2192](https://redirect.github.com/jline/jline3/pull/2192)) [`@​gnodet`](https://github.com/gnodet)
> * fix: reimplement FFM signal handling with self-pipe trick (fixes [#2139](https://redirect.github.com/jline/jline3/issues/2139)) ([#2141](https://redirect.github.com/jline/jline3/pull/2141)) [`@​gnodet`](https://github.com/gnodet)
> * fix: add software signal interception to Windows terminals (fixes [#2127](https://redirect.github.com/jline/jline3/issues/2127)) ([#2148](https://redirect.github.com/jline/jline3/pull/2148)) [`@​gnodet`](https://github.com/gnodet)
> * fix: escape control chars in oversized line-buffer display ([#2175](https://redirect.github.com/jline/jline3/pull/2175)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
> * fix: escape IAC byte in the telnet data output stream ([#2164](https://redirect.github.com/jline/jline3/pull/2164)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
> * fix: strip control characters from Less status messages ([#2156](https://redirect.github.com/jline/jline3/pull/2156)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
> * fix: preserve termios baud rate when setting attributes ([#2170](https://redirect.github.com/jline/jline3/issues/2170)) ([#2172](https://redirect.github.com/jline/jline3/pull/2172)) [`@​arimu1`](https://github.com/arimu1)
> * fix: mask password value in DefaultPrompter result display ([#2167](https://redirect.github.com/jline/jline3/pull/2167)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)

... (truncated)


Commits

* [`57f82ce`](jline/jline3@57f82ce) fix: preserve pending buffer and message during Less resize
* [`f21f332`](jline/jline3@f21f332) fix: enforce dimension bounds in InBandResize.applyResizeParams
* [`1c3801c`](jline/jline3@1c3801c) test: add unit tests for InBandResize utility, fix resize aborting Less file ...
* [`6be4759`](jline/jline3@6be4759) fix: address SonarCloud issues — rename Binding enum to UPPER\_SNAKE\_CASE, red...
* [`571f0fe`](jline/jline3@571f0fe) feat: support in-band resize (mode 2048) in Nano, Less, and Tmux builtins (fi...
* [`6e02fe4`](jline/jline3@6e02fe4) feat: add musl libc support for native libraries (fixes [#1092](https://redirect.github.com/jline/jline3/issues/1092))
* [`11f9346`](jline/jline3@11f9346) fix: remove eval from MVX demo launchers (fixes [#2191](https://redirect.github.com/jline/jline3/issues/2191))
* [`a701558`](jline/jline3@a701558) feat: add Kitty Keyboard Protocol support (fixes [#1217](https://redirect.github.com/jline/jline3/issues/1217))
* [`c7170ea`](jline/jline3@c7170ea) fix: DefaultHistory.read() records per-file entry count instead of total (fix...
* [`e5202a3`](jline/jline3@e5202a3) feat: add configurable behavior for too many completion candidates (fixes [#2154](https://redirect.github.com/jline/jline3/issues/2154))
* Additional commits viewable in [compare view](jline/jline3@4.3.1...4.4.0)
  
Updates `org.jline:jline-terminal-jni` from 4.3.1 to 4.4.0
Release notes

*Sourced from [org.jline:jline-terminal-jni's releases](https://github.com/jline/jline3/releases).*

> JLine 4.4.0 is a feature-rich release bringing modern terminal protocol support, broader platform compatibility, and continued security hardening.
>
> **Highlights:**
>
> * **Kitty Keyboard Protocol** — full support for the [Kitty keyboard protocol](https://sw.kovidgoyal.net/kitty/keyboard-protocol/), enabling unambiguous key event reporting ([#2007](https://redirect.github.com/jline/jline3/issues/2007))
> * **In-band window resize** — support for mode 2048 resize notifications across the terminal, reader, and builtins (Nano, Less, Tmux) ([#2021](https://redirect.github.com/jline/jline3/issues/2021), [#2198](https://redirect.github.com/jline/jline3/issues/2198))
> * **Synchronized output** — full mode 2026 support to eliminate flicker during rapid screen updates ([#2022](https://redirect.github.com/jline/jline3/issues/2022))
> * **musl libc support** — native libraries now load on Alpine and other musl-based distributions ([#2197](https://redirect.github.com/jline/jline3/issues/2197))
> * **JdkConsoleProvider** — drop-in JLine console that can replace `System.console()` ([#2031](https://redirect.github.com/jline/jline3/issues/2031))
> * **Reproducible builds** — source archives can now be built without a git checkout, thanks to nisse property fallbacks ([#2151](https://redirect.github.com/jline/jline3/issues/2151), [#2153](https://redirect.github.com/jline/jline3/issues/2153))
> * **Security hardening** — path traversal guards, ReDoS protection, cross-origin rejection, control character stripping, and SSH agent forwarding tightened across multiple modules
> * **FFM signal handling rewrite** — replaced shared Arena with self-pipe trick for reliable signal delivery ([#2141](https://redirect.github.com/jline/jline3/issues/2141))
>
> ⚠️ **Breaking:** the ambiguous key binding timeout has been reduced from 1000ms to 100ms ([#2186](https://redirect.github.com/jline/jline3/issues/2186)), and SSH agent forwarding now requires the explicit `-A` flag ([#2106](https://redirect.github.com/jline/jline3/issues/2106)).
>
> 💥 Breaking changes
> -----------------------
>
> * fix: reduce ambiguous binding timeout from 1000ms to 100ms ([#2186](https://redirect.github.com/jline/jline3/pull/2186)) [`@​gnodet`](https://github.com/gnodet)
> * fix: only forward the ssh agent when -A is given ([#2106](https://redirect.github.com/jline/jline3/pull/2106)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
>
> 🚀 New features and improvements
> -------------------------------
>
> * feat: support in-band resize (mode 2048) in Nano, Less, and Tmux builtins ([#2198](https://redirect.github.com/jline/jline3/pull/2198)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add musl libc support for native libraries ([#2197](https://redirect.github.com/jline/jline3/pull/2197)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add Kitty Keyboard Protocol support ([#2007](https://redirect.github.com/jline/jline3/pull/2007)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add configurable behavior for too many completion candidates (fixes [#2154](https://redirect.github.com/jline/jline3/issues/2154)) ([#2196](https://redirect.github.com/jline/jline3/pull/2196)) [`@​gnodet`](https://github.com/gnodet)
> * feat: support in-band window resize notifications (mode 2048) ([#2021](https://redirect.github.com/jline/jline3/pull/2021)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add JdkConsoleProvider for drop-in JLine console ([#2031](https://redirect.github.com/jline/jline3/pull/2031)) [`@​gnodet`](https://github.com/gnodet)
> * feat: verify macOS native library signatures in CI ([#2173](https://redirect.github.com/jline/jline3/pull/2173)) [`@​gnodet`](https://github.com/gnodet)
> * feat: allow customizing the help source in Less pager (fixes [#2056](https://redirect.github.com/jline/jline3/issues/2056)) ([#2065](https://redirect.github.com/jline/jline3/pull/2065)) [`@​gnodet`](https://github.com/gnodet)
> * feat: full synchronized output (mode 2026) support ([#2022](https://redirect.github.com/jline/jline3/pull/2022)) [`@​gnodet`](https://github.com/gnodet)
> * refactor: batch DEC mode probing into single DECRQM round-trip ([#2023](https://redirect.github.com/jline/jline3/pull/2023)) [`@​gnodet`](https://github.com/gnodet)
> * feat: allow customizing the default prompt in Less pager ([#2036](https://redirect.github.com/jline/jline3/pull/2036)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add factory to simplify LineDisciplineTerminal + ScreenTerminal wiring ([#2035](https://redirect.github.com/jline/jline3/pull/2035)) [`@​gnodet`](https://github.com/gnodet)
> * feat: add AttributedStringBuilder.appendCodePoint(int) ([#2163](https://redirect.github.com/jline/jline3/pull/2163)) [`@​gnodet`](https://github.com/gnodet)
> * Enable reproducible builds from source archives ([#2151](https://redirect.github.com/jline/jline3/pull/2151)) [`@​gnodet`](https://github.com/gnodet)
> * Add Terminal.getenv() for remote terminal environment support ([#2030](https://redirect.github.com/jline/jline3/pull/2030)) [`@​gnodet`](https://github.com/gnodet)
>
> 🐛 Bug Fixes
> -----------
>
> * fix: remove eval from MVX demo launchers (fixes [#2191](https://redirect.github.com/jline/jline3/issues/2191)) ([#2193](https://redirect.github.com/jline/jline3/pull/2193)) [`@​gnodet`](https://github.com/gnodet)
> * fix: DefaultHistory.read() records per-file entry count instead of total (fixes [#2179](https://redirect.github.com/jline/jline3/issues/2179)) ([#2194](https://redirect.github.com/jline/jline3/pull/2194)) [`@​gnodet`](https://github.com/gnodet)
> * fix: handle IOError in BindingReader gracefully instead of crashing (fixes [#2155](https://redirect.github.com/jline/jline3/issues/2155)) ([#2195](https://redirect.github.com/jline/jline3/pull/2195)) [`@​gnodet`](https://github.com/gnodet)
> * fix: lower native library candidate log level from WARNING to DEBUG (fixes [#2185](https://redirect.github.com/jline/jline3/issues/2185)) ([#2192](https://redirect.github.com/jline/jline3/pull/2192)) [`@​gnodet`](https://github.com/gnodet)
> * fix: reimplement FFM signal handling with self-pipe trick (fixes [#2139](https://redirect.github.com/jline/jline3/issues/2139)) ([#2141](https://redirect.github.com/jline/jline3/pull/2141)) [`@​gnodet`](https://github.com/gnodet)
> * fix: add software signal interception to Windows terminals (fixes [#2127](https://redirect.github.com/jline/jline3/issues/2127)) ([#2148](https://redirect.github.com/jline/jline3/pull/2148)) [`@​gnodet`](https://github.com/gnodet)
> * fix: escape control chars in oversized line-buffer display ([#2175](https://redirect.github.com/jline/jline3/pull/2175)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
> * fix: escape IAC byte in the telnet data output stream ([#2164](https://redirect.github.com/jline/jline3/pull/2164)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
> * fix: strip control characters from Less status messages ([#2156](https://redirect.github.com/jline/jline3/pull/2156)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)
> * fix: preserve termios baud rate when setting attributes ([#2170](https://redirect.github.com/jline/jline3/issues/2170)) ([#2172](https://redirect.github.com/jline/jline3/pull/2172)) [`@​arimu1`](https://github.com/arimu1)
> * fix: mask password value in DefaultPrompter result display ([#2167](https://redirect.github.com/jline/jline3/pull/2167)) [`@​uchiha-bug-hunter`](https://github.com/uchiha-bug-hunter)

... (truncated)


Commits

* [`57f82ce`](jline/jline3@57f82ce) fix: preserve pending buffer and message during Less resize
* [`f21f332`](jline/jline3@f21f332) fix: enforce dimension bounds in InBandResize.applyResizeParams
* [`1c3801c`](jline/jline3@1c3801c) test: add unit tests for InBandResize utility, fix resize aborting Less file ...
* [`6be4759`](jline/jline3@6be4759) fix: address SonarCloud issues — rename Binding enum to UPPER\_SNAKE\_CASE, red...
* [`571f0fe`](jline/jline3@571f0fe) feat: support in-band resize (mode 2048) in Nano, Less, and Tmux builtins (fi...
* [`6e02fe4`](jline/jline3@6e02fe4) feat: add musl libc support for native libraries (fixes [#1092](https://redirect.github.com/jline/jline3/issues/1092))
* [`11f9346`](jline/jline3@11f9346) fix: remove eval from MVX demo launchers (fixes [#2191](https://redirect.github.com/jline/jline3/issues/2191))
* [`a701558`](jline/jline3@a701558) feat: add Kitty Keyboard Protocol support (fixes [#1217](https://redirect.github.com/jline/jline3/issues/1217))
* [`c7170ea`](jline/jline3@c7170ea) fix: DefaultHistory.read() records per-file entry count instead of total (fix...
* [`e5202a3`](jline/jline3@e5202a3) feat: add configurable behavior for too many completion candidates (fixes [#2154](https://redirect.github.com/jline/jline3/issues/2154))
* Additional commits viewable in [compare view](jline/jline3@4.3.1...4.4.0)
  
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
  
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot show  ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant