pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/devel/readline



Module Name:    pkgsrc
Committed By:   wiz
Date:           Sat Aug  2 06:56:15 UTC 2025

Modified Files:
        pkgsrc/devel/readline: Makefile PLIST distinfo
        pkgsrc/devel/readline/patches: patch-ae
Added Files:
        pkgsrc/devel/readline/patches: patch-readline.pc.in
Removed Files:
        pkgsrc/devel/readline/patches: patch-ai patch-input.c

Log Message:
readline: update to 8.3.

This document details the changes between this version, readline-8.3, and
the previous version, readline-8.2.

1. Changes to Readline

a. Fixed a bug in clearing the visible line structure before redisplay.

b. Fix a bug where setlocale(3) returning NULL caused a crash.

c. Fixed signal checking in callback mode to handle signals that arrive before
   readline restore's the application's signal handlers.

d. Fixed a bug with word completion where the directory name needs to be
   dequoted and tilde-expanded.

e. Fixed a bug that caused compilation to fail on systems with select but not
   pselect.

f. System-specific changes for: WIN32, z/OS, Cygwin, MSYS

g. Fixed a bug that caused word completion mismatches if the quoted text the
   user typed was longer than the unquoted match.

h. Fixes for freeing undo lists that might appear in history list entries
   after non-incremental searches.

i. Fixes for some errors revealed by address sanitizer.

j. In vi mode, if an `f' or `F' move command associated with a `c' or `C'
   command fails, don't enter insert mode.

k. Fixed bug with truncating a history file containing timestamps that caused
   the timestamp associated with the first history entry not to be written.

l. Fix vi-mode so that a motion command attached to d/D, y/Y, or t/T must
   consume or delete at least one character.

m. Fix a redisplay error when displaying meta characters as octal sequences
   and other C locale issues.

n. Fix error that caused characters composing an incomplete multibyte
   character not to be inserted into the line.

o. In callback mode, let the application echo the signal characters (e.g., ^C)
   when the application's signal handlers are installed.

p. Added some support for lines that consume more than the physical number of
   screen lines.

q. Make sure dump-variables returns the string values for active-region-start-color
   and active-region-end-color if they're set.

r. Fixes to how characters between 128 and 159 are printed when displaying
   macro values (use symbolic notation instead of directly printing the
   character).

s. Don't convert meta characters that contain NULL (\M-\C-@) to actual NULs,
   which prematurely terminates the macro value.

t. Fix typo in the readline color prefix extension that it uses for coloring
   filename prefixes when displaying possible completions.

u. Call the filename rewrite hook on the word being completed before comparing
   it against possible completions from the file system to get consistent
   strings.

v. Fix infinite recursion that can happen if someone binds a key that doesn't
   have a different upper and lower case represenation to do-lowercase-version.

w. Check for non-ANSI (dumb) terminals a little more thoroughly.

x. Don't attempt to history-expand the `quick substitution' character at the
   beginning of a line if the application has set the quoting state to single
   quotes.

y. Fix small memory leak if non-incremental or incremental search is
   interrupted by a signal.

z. Loading very large history files should be much faster.

aa. Retry opening startup files if the open is interrupted by a signal
    and is not automatically restarted.

bb. Make sure the bracketed-paste input buffer is null-terminated when read
    returns an error.

cc. Fixed a small memory leak in execute-named-command if the command doesn't
    exist or the function doesn't return.

dd. Fix for attempting to change case of invalid multibyte characters.

ee. Fix for possible completions that compare identically when using case-
    insensitive completion but have different byte lengths.

ff. Fix to make non-incremental searches use undo lists and set the history
    position the same way as incremental searches.

gg. Don't check for signals when handling a received signal.

hh. Fix off-by-one error when tokenizing words like $((expr)) while performing
    history expansion.

ii. Fixes for incremental searches and redisplay in the C locale.

jj. Fixes for some use-after-free of the undo list errors when stacking multiple
    commands that use rl_maybe_replace_line to save changes to a history entry.

kk. Fixes to ensure that completion-prefix-display-length and
    colored-completion-prefix are mutually exclusive.

ll. Fixed a bug that allowed a history search to change the current history
    list position.

mm. Fixed a bug that allowed ^G to retain a saved command to execute.

nn. Updates to new export-completions command to allow filename suffixes.

oo. Fixed a redisplay bug with prompts containing multiple sequences of
    invisible characters that are longer than the screen width.

pp. The history library no longer skips blank lines while it is reading a
    multiline history entry from a history file.

2. New Features in Readline

a. Output a newline if there is no prompt and readline reads an empty line.

b. The history library falls back to stdio when writing the history list if
   mmap fails.

c. New bindable variable `search-ignore-case', causes readline to perform
   case-insensitive incremental and non-incremental history searches.

d. rl_full_quoting_desired: new application-settable variable, causes all
   completions to be quoted as if they were filenames.

e. rl_macro_display_hook: new application-settable function pointer, used if
   the application wants to print macro values itself instead of letting
   readline do it

f. rl_reparse_colors: new application-callable function, reparses $LS_COLORS
   (presumably after the user changes it)

g. rl_completion_rewrite_hook: new application-settable function pointer,
   called to modify the word being completed before comparing it against
   pathnames from the file system.

h. execute-named-command: a new bindable command that reads the name of a
   readline command from the standard input and executes it. Bound to M-x
   in emacs mode by default.

i. Incremental and non-incremental searches now allow ^V/^Q (or, in the former
   case, anything bound to quoted-insert) to quote characters in the search
   string.

j. Documentation has been significantly updated.

k. New `force-meta-prefix' bindable variable, which forces the use of ESC as
   the meta prefix when using "\M-" in key bindings instead of overloading
   convert-meta.

l. The default value for `readline-colored-completion-prefix' no longer has a
   leading `.'; the original report was based on a misunderstanding.

m. There is a new bindable command, `export-completions', which writes the
   possible completions for a word to the standard output in a defined format.

n. Readline can reset its idea of the screen dimensions when executing after
   a SIGCONT.


To generate a diff of this commit:
cvs rdiff -u -r1.75 -r1.76 pkgsrc/devel/readline/Makefile
cvs rdiff -u -r1.10 -r1.11 pkgsrc/devel/readline/PLIST
cvs rdiff -u -r1.39 -r1.40 pkgsrc/devel/readline/distinfo
cvs rdiff -u -r1.23 -r1.24 pkgsrc/devel/readline/patches/patch-ae
cvs rdiff -u -r1.3 -r0 pkgsrc/devel/readline/patches/patch-ai
cvs rdiff -u -r1.1 -r0 pkgsrc/devel/readline/patches/patch-input.c
cvs rdiff -u -r0 -r1.1 pkgsrc/devel/readline/patches/patch-readline.pc.in

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: pkgsrc/devel/readline/Makefile
diff -u pkgsrc/devel/readline/Makefile:1.75 pkgsrc/devel/readline/Makefile:1.76
--- pkgsrc/devel/readline/Makefile:1.75 Mon Apr  7 17:20:16 2025
+++ pkgsrc/devel/readline/Makefile      Sat Aug  2 06:56:14 2025
@@ -1,9 +1,6 @@
-# $NetBSD: Makefile,v 1.75 2025/04/07 17:20:16 nia Exp $
+# $NetBSD: Makefile,v 1.76 2025/08/02 06:56:14 wiz Exp $
 
-READLINE_VERSION=      8.2
-PKGREVISION=           2
-
-DISTNAME=      readline-${READLINE_VERSION}
+DISTNAME=      readline-8.3
 CATEGORIES=    devel
 MASTER_SITES=  ${MASTER_SITE_GNU:=readline/}
 

Index: pkgsrc/devel/readline/PLIST
diff -u pkgsrc/devel/readline/PLIST:1.10 pkgsrc/devel/readline/PLIST:1.11
--- pkgsrc/devel/readline/PLIST:1.10    Tue Dec  6 05:34:06 2022
+++ pkgsrc/devel/readline/PLIST Sat Aug  2 06:56:14 2025
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.10 2022/12/06 05:34:06 sekiya Exp $
+@comment $NetBSD: PLIST,v 1.11 2025/08/02 06:56:14 wiz Exp $
 include/readline/chardefs.h
 include/readline/history.h
 include/readline/keymaps.h
@@ -19,3 +19,6 @@ man/man3/readline.3
 share/doc/readline/CHANGES
 share/doc/readline/INSTALL
 share/doc/readline/README
+share/doc/readline/history.html
+share/doc/readline/readline.html
+share/doc/readline/rluserman.html

Index: pkgsrc/devel/readline/distinfo
diff -u pkgsrc/devel/readline/distinfo:1.39 pkgsrc/devel/readline/distinfo:1.40
--- pkgsrc/devel/readline/distinfo:1.39 Sun Mar 31 17:14:32 2024
+++ pkgsrc/devel/readline/distinfo      Sat Aug  2 06:56:14 2025
@@ -1,12 +1,11 @@
-$NetBSD: distinfo,v 1.39 2024/03/31 17:14:32 js Exp $
+$NetBSD: distinfo,v 1.40 2025/08/02 06:56:14 wiz Exp $
 
-BLAKE2s (readline-8.2.tar.gz) = 680d2c3d7ce2de64a7e3a72adc5021e564f29af270d48781b0669b3e075f55e8
-SHA512 (readline-8.2.tar.gz) = 0a451d459146bfdeecc9cdd94bda6a6416d3e93abd80885a40b334312f16eb890f8618a27ca26868cebbddf1224983e631b1cbc002c1a4d1cd0d65fba9fea49a
-Size (readline-8.2.tar.gz) = 3043952 bytes
-SHA1 (patch-ae) = 15a0252befd0770f5de646ef8b36bf19cc93ec28
+BLAKE2s (readline-8.3.tar.gz) = 9138ef5b41fb1a5cf758b99281c915cc6b09bd640c7ddc3460db8c6a116feccc
+SHA512 (readline-8.3.tar.gz) = 513002753dcf5db9213dbbb61d51217245f6a40d33b1dd45238e8062dfa8eef0c890b87a5548e11db959e842724fb572c4d3d7fb433773762a63c30efe808344
+Size (readline-8.3.tar.gz) = 3419642 bytes
+SHA1 (patch-ae) = c917e0f4cc2e502bab2b695bb042216b7a21b822
 SHA1 (patch-ag) = 3114e6959dfff3e2aae74c3df3ba4b0f692b79bb
 SHA1 (patch-ah) = d812ea068415939beb42c72dd9bed8d210db57d1
-SHA1 (patch-ai) = 92600d64a9184e7b3b0ee31c3e7fccb115e3343d
 SHA1 (patch-examples_Makefile.in) = 12bdbc3a0d1a116bed96c66ef4d25273b071fd3c
-SHA1 (patch-input.c) = d402ec2ad55dfd62830f4b8e104b371e02d1db0f
+SHA1 (patch-readline.pc.in) = b953a4ca1636b30eee0e90d76484b9ecb73f84f5
 SHA1 (patch-rlprivate.h) = b04503026cb4fd5bfeb9cd884bb6a35b6014f058

Index: pkgsrc/devel/readline/patches/patch-ae
diff -u pkgsrc/devel/readline/patches/patch-ae:1.23 pkgsrc/devel/readline/patches/patch-ae:1.24
--- pkgsrc/devel/readline/patches/patch-ae:1.23 Fri Apr 21 22:03:42 2023
+++ pkgsrc/devel/readline/patches/patch-ae      Sat Aug  2 06:56:15 2025
@@ -1,4 +1,4 @@
-$NetBSD: patch-ae,v 1.23 2023/04/21 22:03:42 joerg Exp $
+$NetBSD: patch-ae,v 1.24 2025/08/02 06:56:15 wiz Exp $
 
 Libtoolify.
 Pass -no-undefined to libtool for building shared library.
@@ -6,7 +6,7 @@ Don't ignore failures during installatio
 Don't ignore failures building the examples.
 Fix race condition so the examples are built *after* the library.
 
---- Makefile.in.orig   2020-10-29 19:48:14.000000000 +0000
+--- Makefile.in.orig   2025-06-02 20:10:34.000000000 +0000
 +++ Makefile.in
 @@ -18,6 +18,9 @@
  RL_LIBRARY_VERSION = @LIBVERSION@
@@ -18,15 +18,15 @@ Fix race condition so the examples are b
  PACKAGE = @PACKAGE_NAME@
  VERSION = @PACKAGE_VERSION@
  
-@@ -77,6 +80,7 @@ CTAGS = ctags -w
+@@ -79,6 +82,7 @@ CTAGS = ctags -w
  CFLAGS = @CFLAGS@
  LOCAL_CFLAGS = @LOCAL_CFLAGS@ -DRL_LIBRARY_VERSION='"$(RL_LIBRARY_VERSION)"' @BRACKETED_PASTE@
  CPPFLAGS = @CPPFLAGS@
 +LDFLAGS = @LDFLAGS@ -no-undefined
  
+ STYLE_CFLAGS = @STYLE_CFLAGS@
  DEFS = @DEFS@ @CROSS_COMPILE@
- LOCAL_DEFS = @LOCAL_DEFS@
-@@ -104,9 +108,15 @@ install_examples = @EXAMPLES_INSTALL_TAR
+@@ -110,9 +114,15 @@ install_examples = @EXAMPLES_INSTALL_TAR
        ${RM} $@
        $(CC) -c $(CCFLAGS) $<
  
@@ -42,7 +42,7 @@ Fix race condition so the examples are b
  
  # The C code source files for this library.
  CSOURCES = $(srcdir)/readline.c $(srcdir)/funmap.c $(srcdir)/keymaps.c \
-@@ -163,8 +173,10 @@ TARGETS = @STATIC_TARGET@ @SHARED_TARGET
+@@ -169,8 +179,10 @@ TARGETS = @STATIC_TARGET@ @SHARED_TARGET
  INSTALL_TARGETS = @STATIC_INSTALL_TARGET@ @SHARED_INSTALL_TARGET@
  
  all: $(TARGETS)
@@ -53,8 +53,8 @@ Fix race condition so the examples are b
 +everything-libtool: all-libtool .WAIT examples
  
  asan:
-       ${MAKE} ${MFLAGS} ASAN_CFLAGS='${ASAN_XCFLAGS}' ASAN_LDFLAGS='${ASAN_XLDFLAGS}' everything
-@@ -176,17 +188,30 @@ libreadline.a: $(OBJECTS)
+       ${MAKE} ASAN_CFLAGS='${ASAN_XCFLAGS}' ASAN_LDFLAGS='${ASAN_XLDFLAGS}' everything
+@@ -182,17 +194,30 @@ libreadline.a: $(OBJECTS)
        $(AR) $(ARFLAGS) $@ $(OBJECTS)
        -test -n "$(RANLIB)" && $(RANLIB) $@
  
@@ -85,19 +85,9 @@ Fix race condition so the examples are b
  readline: $(OBJECTS) readline.h rldefs.h chardefs.h ./libreadline.a
        $(CC) $(CCFLAGS) -DREADLINE_LIBRARY -o $@ $(top_srcdir)/examples/rl.c ./libreadline.a ${TERMCAP_LIB}
  
-@@ -223,8 +251,7 @@ documentation: force
-       -( cd doc && $(MAKE) $(MFLAGS) )
- 
- examples: force
--      -test -d examples || mkdir examples
--      -(cd examples && ${MAKE} ${MFLAGS} all )
-+      (cd examples && ${MAKE} ${MFLAGS} all )
- 
- force:
- 
-@@ -281,6 +308,12 @@ install-examples: installdirs install-he
+@@ -288,6 +313,12 @@ install-examples: installdirs install-he
  uninstall-examples: maybe-uninstall-headers
-       -( cd examples; ${MAKE} ${MFLAGS} DESTDIR=${DESTDIR} uninstall )
+       -( cd examples; ${MAKE} DESTDIR=${DESTDIR} uninstall )
  
 +install-libtool: installdirs $(LIBTOOL_LIBS) install-headers install-doc
 +      -$(LIBTOOL) --mode=uninstall $(RM) $(DESTDIR)$(libdir)/libreadline.la

Added files:

Index: pkgsrc/devel/readline/patches/patch-readline.pc.in
diff -u /dev/null pkgsrc/devel/readline/patches/patch-readline.pc.in:1.1
--- /dev/null   Sat Aug  2 06:56:15 2025
+++ pkgsrc/devel/readline/patches/patch-readline.pc.in  Sat Aug  2 06:56:15 2025
@@ -0,0 +1,12 @@
+$NetBSD: patch-readline.pc.in,v 1.1 2025/08/02 06:56:15 wiz Exp $
+
+--- readline.pc.in.orig        2019-04-08 18:22:47.000000000 +0000
++++ readline.pc.in
+@@ -7,6 +7,5 @@ Name: Readline
+ Description: Gnu Readline library for command line editing
+ URL: http://tiswww.cwru.edu/php/chet/readline/rltop.html
+ Version: @LIBVERSION@
+-Requires.private: @TERMCAP_PKG_CONFIG_LIB@
+-Libs: -L${libdir} -lreadline
++Libs: -L${libdir} -lreadline @TERMCAP_LIB@
+ Cflags: -I${includedir}



Home | Main Index | Thread Index | Old Index