pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/trunk]: pkgsrc/shells/bash Update to 5.0
details: https://anonhg.NetBSD.org/pkgsrc/rev/dd203accb43f
branches: trunk
changeset: 327782:dd203accb43f
user: ryoon <ryoon%pkgsrc.org@localhost>
date: Tue Jan 08 16:24:42 2019 +0000
description:
Update to 5.0
Changelog:
This is a terse description of the new features added to bash-5.0 since
the release of bash-4.4. As always, the manual page (doc/bash.1) is
the place to look for complete descriptions.
1. New Features in Bash
a. The `wait' builtin can now wait for the last process substitution created.
b. There is an EPOCHSECONDS variable, which expands to the time in seconds
since the Unix epoch.
c. There is an EPOCHREALTIME variable, which expands to the time in seconds
since the Unix epoch with microsecond granularity.
d. New loadable builtins: rm, stat, fdflags.
e. BASH_ARGV0: a new variable that expands to $0 and sets $0 on assignment.
f. When supplied a numeric argument, the shell-expand-line bindable readline
command does not perform quote removal and suppresses command and process
substitution.
g. `history -d' understands negative arguments: negative arguments offset from
the end of the history list.
h. The `name' argument to the `coproc' reserved word now undergoes word
expansion, so unique coprocs can be created in loops.
i. A nameref name resolution loop in a function now resolves to a variable by
that name in the global scope.
j. The `wait' builtin now has a `-f' option, which signfies to wait until the
specified job or process terminates, instead of waiting until it changes
state.
k. There is a define in config-top.h that allows the shell to use a static
value for $PATH, overriding whatever is in the environment at startup, for
use by the restricted shell.
l. Process substitution does not inherit the `v' option, like command
substitution.
m. If a non-interactive shell with job control enabled detects that a foreground
job died due to SIGINT, it acts as if it received the SIGINT.
n. The SIGCHLD trap is run once for each exiting child process even if job
control is not enabled when the shell is in Posix mode.
o. A new shopt option: localvar_inherit; if set, a local variable inherits the
value of a variable with the same name at the nearest preceding scope.
p. `bind -r' now checks whether a key sequence is bound before binding it to
NULL, to avoid creating keymaps for a multi-key sequence.
q. A numeric argument to the line editing `operate-and-get-next' command
specifies which history entry to use.
r. The positional parameters are now assigned before running the shell startup
files, so startup files can use $@.
s. There is a compile-time option that forces the shell to disable the check
for an inherited OLDPWD being a directory.
t. The `history' builtin can now delete ranges of history entries using
`-d start-end'.
u. The `vi-edit-and-execute-command' bindable readline command now puts readline
back in vi insertion mode after executing commands from the edited file.
v. The command completion code now matches aliases and shell function names
case-insensitively if the readline completion-ignore-case variable is set.
w. There is a new `assoc_expand_once' shell option that attempts to expand
associative array subscripts only once.
x. The shell only sets up BASH_ARGV and BASH_ARGC at startup if extended
debugging mode is active. The old behavior of unconditionally setting them
is available as part of the shell compatibility options.
y. The `umask' builtin now allows modes and masks greater than octal 777.
z. The `times' builtin now honors the current locale when printing a decimal
point.
aa. There is a new (disabled by default, undocumented) shell option to enable
and disable sending history to syslog at runtime.
bb. Bash no longer allows variable assignments preceding a special builtin that
changes variable attributes to propagate back to the calling environment
unless the compatibility level is 44 or lower.
cc. You can set the default value for $HISTSIZE at build time in config-top.h.
dd. The `complete' builtin now accepts a -I option that applies the completion
to the initial word on the line.
ee. The internal bash malloc now uses mmap (if available) to satisfy requests
greater than 128K bytes, so free can use mfree to return the pages to the
kernel.
ff. The shell doesn't automatically set BASH_ARGC and BASH_ARGV at startup
unless it's in debugging mode, as the documentation has always said, but
will dynamically create them if a script references them at the top level
without having enabled debugging mode.
gg. The localvar_inherit option will not attempt to inherit a value from a
variable of an incompatible type (indexed vs. associative arrays, for
example).
hh. The `globasciiranges' option is now enabled by default; it can be set to
off by default at configuration time.
ii. Associative and indexed arrays now allow subscripts consisting solely of
whitespace.
jj. `checkwinsize' is now enabled by default.
kk. The `localvar_unset' shopt option is now visible and documented.
ll. The `progcomp_alias' shopt option is now visible and documented.
mm. The signal name processing code now understands `SIGRTMIN+n' all the way
up to SIGRTMAX.
nn. There is a new `seq' loadable builtin.
oo. Trap execution now honors the (internal) max invocations of `eval', since
traps are supposed to be executed as if using `eval'.
pp. The $_ variable doesn't change when the shell executes a command that forks.
qq. The `kill' builtin now supports -sSIGNAME and -nSIGNUM, even though
conforming applications aren't supposed to use them.
rr. POSIX mode now enables the `shift_verbose' option.
2. New Features in Readline
a. Non-incremental vi-mode search (`N', `n') can search for a shell pattern, as
Posix specifies (uses fnmatch(3) if available).
b. There are new `next-screen-line' and `previous-screen-line' bindable
commands, which move the cursor to the same column in the next, or previous,
physical line, respectively.
c. There are default key bindings for control-arrow-key key combinations.
d. A negative argument (-N) to `quoted-insert' means to insert the next N
characters using quoted-insert.
e. New public function: rl_check_signals(), which allows applications to
respond to signals that readline catches while waiting for input using
a custom read function.
f. There is new support for conditionally testing the readline version in an
inputrc file, with a full set of arithmetic comparison operators available.
g. There is a simple variable comparison facility available for use within an
inputrc file. Allowable operators are equality and inequality; string
variables may be compared to a value; boolean variables must be compared to
either `on' or `off'; variable names are separated from the operator by
whitespace.
h. The history expansion library now understands command and process
substitution and extended globbing and allows them to appear anywhere in a
word.
i. The history library has a new variable that allows applications to set the
initial quoting state, so quoting state can be inherited from a previous
line.
j. Readline now allows application-defined keymap names; there is a new public
function, rl_set_keymap_name(), to do that.
k. The "Insert" keypad key, if available, now puts readline into overwrite
mode.
diffstat:
shells/bash/Makefile | 12 ++++++------
shells/bash/PLIST | 6 +++++-
shells/bash/distinfo | 17 ++++++-----------
shells/bash/patches/patch-lib_readline_colors.c | 17 -----------------
shells/bash/patches/patch-variables.c | 18 +++++++++---------
5 files changed, 26 insertions(+), 44 deletions(-)
diffs (151 lines):
diff -r 0a751f4b2b1a -r dd203accb43f shells/bash/Makefile
--- a/shells/bash/Makefile Tue Jan 08 16:19:38 2019 +0000
+++ b/shells/bash/Makefile Tue Jan 08 16:24:42 2019 +0000
@@ -1,14 +1,14 @@
-# $NetBSD: Makefile,v 1.84 2018/04/09 14:57:19 ryoon Exp $
+# $NetBSD: Makefile,v 1.85 2019/01/08 16:24:42 ryoon Exp $
-BASH_VERSION= 4.4.18
-BASH_PATCHLEVEL= 019
+BASH_VERSION= 5.0
+#BASH_PATCHLEVEL=
DISTNAME= bash-${BASH_VERSION}
-PKGNAME= bash-${BASH_VERSION:C/4\.4\..*/4.4/}.${BASH_PATCHLEVEL}
+#PKGNAME= bash-${BASH_VERSION:C/4\.4\..*/4.4/}.${BASH_PATCHLEVEL}
CATEGORIES= shells
MASTER_SITES= ${MASTER_SITE_GNU:=bash/}
-PATCH_SITES= ${MASTER_SITES:=bash-4.4-patches/}
+#PATCH_SITES= ${MASTER_SITES:=bash-4.4-patches/}
#PATCHFILES+= bash44-001 bash44-002 bash44-003 bash44-004 bash44-005
#PATCHFILES+= bash44-006 bash44-007 bash44-008 bash44-009 bash44-010
#PATCHFILES+= bash44-011 bash44-012 bash44-013 bash44-014 bash44-015
@@ -17,7 +17,7 @@
#PATCHFILES+= bash44-026 bash44-027 bash44-028 bash44-029 bash44-030
#PATCHFILES+= bash44-031 bash44-032 bash44-033 bash44-034 bash44-035
#PATCHFILES+= bash44-036 bash44-037 bash44-038 bash44-039
-PATCHFILES+= bash44-019
+#PATCHFILES+= bash44-019
MAINTAINER= pkgsrc-users%NetBSD.org@localhost
HOMEPAGE= http://www.gnu.org/software/bash/bash.html
diff -r 0a751f4b2b1a -r dd203accb43f shells/bash/PLIST
--- a/shells/bash/PLIST Tue Jan 08 16:19:38 2019 +0000
+++ b/shells/bash/PLIST Tue Jan 08 16:24:42 2019 +0000
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.8 2016/09/19 09:06:03 wiz Exp $
+@comment $NetBSD: PLIST,v 1.9 2019/01/08 16:24:42 ryoon Exp $
bin/bash
bin/bashbug
include/bash/alias.h
@@ -63,10 +63,12 @@
lib/bash/Makefile.inc
lib/bash/basename
lib/bash/dirname
+lib/bash/fdflags
lib/bash/finfo
lib/bash/head
lib/bash/id
lib/bash/ln
+lib/bash/loadables.h
lib/bash/logname
lib/bash/mkdir
lib/bash/mypid
@@ -76,6 +78,7 @@
lib/bash/push
lib/bash/realpath
lib/bash/rmdir
+lib/bash/seq
lib/bash/setpgid
lib/bash/sleep
lib/bash/strftime
@@ -124,6 +127,7 @@
share/locale/nb/LC_MESSAGES/bash.mo
share/locale/nl/LC_MESSAGES/bash.mo
share/locale/pl/LC_MESSAGES/bash.mo
+share/locale/pt/LC_MESSAGES/bash.mo
share/locale/pt_BR/LC_MESSAGES/bash.mo
share/locale/ro/LC_MESSAGES/bash.mo
share/locale/ru/LC_MESSAGES/bash.mo
diff -r 0a751f4b2b1a -r dd203accb43f shells/bash/distinfo
--- a/shells/bash/distinfo Tue Jan 08 16:19:38 2019 +0000
+++ b/shells/bash/distinfo Tue Jan 08 16:24:42 2019 +0000
@@ -1,19 +1,14 @@
-$NetBSD: distinfo,v 1.50 2018/04/09 14:57:19 ryoon Exp $
+$NetBSD: distinfo,v 1.51 2019/01/08 16:24:42 ryoon Exp $
-SHA1 (bash-4.4.18.tar.gz) = 6cf9b3c23930ba8a721fee177d1558e5b7cb6104
-RMD160 (bash-4.4.18.tar.gz) = 0081d54b19e19ab94efc0d69929ae3f40bb984e6
-SHA512 (bash-4.4.18.tar.gz) = bd3048338aded9dee31651011aaa46bc8fba83a27fa063e3d47bcbe85ebbd86816d9080d1a658cfbd1736a2c80e98fdb659019c192d332472b00aa305e0285b0
-Size (bash-4.4.18.tar.gz) = 9463662 bytes
-SHA1 (bash44-019) = 7483741200d09837199d8047cf0f9632834a9b5b
-RMD160 (bash44-019) = b9dedc65d70ca7749ffdb743701487fcb3072033
-SHA512 (bash44-019) = 59984e221a7a6dbf72bf893b1b7c4a63fea34d6af1208a19f0e9e6cd59a09e4cf51890cb2d31c1502e2a2f644f584417bb59cf02c308d3250d2a98d41b63e893
-Size (bash44-019) = 1671 bytes
+SHA1 (bash-5.0.tar.gz) = d116b469b9e6ea5264a74661d3a4c797da7f997b
+RMD160 (bash-5.0.tar.gz) = a081428a896d617855499376b670eca3433a27c1
+SHA512 (bash-5.0.tar.gz) = bb4519f06e278f271d08722b531e49d2e842cc3e0b02a6b3eee422e2efcb5b6226111af43f5e5eae56beb85ac8bfebcd6a4aacbabb8f609e529aa4d571890864
+Size (bash-5.0.tar.gz) = 10135110 bytes
SHA1 (patch-af) = e26e3209902247263884cfebc11a2f7e43245062
SHA1 (patch-ag) = cd3b151e3bb045d2bb609c0a03d7d3df2c871f47
SHA1 (patch-aj) = 2e4c15afd9b50d44967ee8e1f85bdc908c0eeeb0
SHA1 (patch-builtins_ulimit.def) = 1390069344607204eb3abbd6ddeb148ff590c55e
SHA1 (patch-configure) = c4e1ab53a1ee85f3e6121047f0aca8ceb85e6e5d
-SHA1 (patch-lib_readline_colors.c) = 4ebf871b883fc8ab6756758c423f777d9eb21da1
SHA1 (patch-shell.c) = daa07914d4c318cd72463f80344f4f7c364809cd
SHA1 (patch-support_shobj-conf) = 8750c104549ea8a4a722bd21a684a9fe13e05fe5
-SHA1 (patch-variables.c) = 0bb513cb863f82eb378b8c720bdfb1c31d21d36c
+SHA1 (patch-variables.c) = 8d91272602aba348dc158d8fb5948edd90d96646
diff -r 0a751f4b2b1a -r dd203accb43f shells/bash/patches/patch-lib_readline_colors.c
--- a/shells/bash/patches/patch-lib_readline_colors.c Tue Jan 08 16:19:38 2019 +0000
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,17 +0,0 @@
-$NetBSD: patch-lib_readline_colors.c,v 1.2 2016/09/19 09:06:03 wiz Exp $
-
-* SCO OpenServer 5.0.7/3.2 has no S_ISSOCK.
-
---- lib/readline/colors.c.orig 2016-01-25 15:38:00.000000000 +0000
-+++ lib/readline/colors.c
-@@ -215,8 +215,10 @@ _rl_print_color_indicator (const char *f
- colored_filetype = C_LINK;
- else if (S_ISFIFO (mode))
- colored_filetype = C_FIFO;
-+#if defined(S_ISSOCK)
- else if (S_ISSOCK (mode))
- colored_filetype = C_SOCK;
-+#endif
- else if (S_ISBLK (mode))
- colored_filetype = C_BLK;
- else if (S_ISCHR (mode))
diff -r 0a751f4b2b1a -r dd203accb43f shells/bash/patches/patch-variables.c
--- a/shells/bash/patches/patch-variables.c Tue Jan 08 16:19:38 2019 +0000
+++ b/shells/bash/patches/patch-variables.c Tue Jan 08 16:24:42 2019 +0000
@@ -1,18 +1,18 @@
-$NetBSD: patch-variables.c,v 1.4 2016/09/19 09:06:03 wiz Exp $
+$NetBSD: patch-variables.c,v 1.5 2019/01/08 16:24:42 ryoon Exp $
Only read functions from environment if flag is set.
---- variables.c.orig 2016-06-15 20:05:52.000000000 +0000
+--- variables.c.orig 2018-12-18 16:07:21.000000000 +0000
+++ variables.c
-@@ -115,6 +115,7 @@ extern time_t shell_start_time;
- extern int assigning_in_environment;
- extern int executing_builtin;
- extern int funcnest_max;
+@@ -95,6 +95,7 @@
+ #define FV_SKIPINVISIBLE 0x02
+
+ extern char **environ;
+extern int import_functions;
- #if defined (READLINE)
- extern int no_line_editing;
-@@ -365,7 +366,7 @@ initialize_shell_variables (env, privmod
+ /* Variables used here and defined in other files. */
+ extern time_t shell_start_time;
+@@ -368,7 +369,7 @@ initialize_shell_variables (env, privmod
#if defined (FUNCTION_IMPORT)
/* If exported function, define it now. Don't import functions from
the environment in privileged mode. */
Home |
Main Index |
Thread Index |
Old Index