summaryrefslogtreecommitdiff
path: root/shells/bash
AgeCommit message (Collapse)AuthorFilesLines
2007-01-08Fix bash's default path to not have hard-coded /usr/pkg/bin but usereed1-2/+3
LOCALBASE. I think I did this last December 2005, but did bash2 package correctly. Reported by Georg Schwarz via tech-pkg.
2006-10-22pkglint fixes.wiz1-3/+3
2006-10-22Add patch for bash-3.2 update (broken ru.po file).wiz1-0/+8
2006-10-22Update to 3.2:wiz8-223/+19
This document details the changes between this version, bash-3.2-release, and the previous version, bash-3.2-beta. 1. Changes to Bash a. Fixed a bug that caused the temporary environment passed to a command to affect the shell's environment under certain circumstances. b. Fixed a bug in the printf builtin that caused the %q format specifier to ignore empty string arguments. c. Improved multibyte character environment detection at configuration time. d. Fixed a bug in the read builtin that left spurious escape characters in the input after processing backslashes when assigning to an array variable. 2. Changes to Readline a. Fixed a redisplay bug that occurred in multibyte-capable locales when the prompt was one character longer than the screen width. ------------------------------------------------------------------------------ This document details the changes between this version, bash-3.2-beta, and the previous version, bash-3.2-alpha. 1. Changes to Bash a. Changed the lexical analyzer to treat locale-specific blank characters as white space. b. Fixed a bug in command printing to avoid confusion between redirections and process substitution. c. Fixed problems with cross-compiling originating from inherited environment variables. d. Added write error reporting to printf builtin. e. Fixed a bug in the variable expansion code that could cause a core dump in a multi-byte locale. f. Fixed a bug that caused substring expansion of a null string to return incorrect results. g. BASH_COMMAND now retains its previous value while executing commands as the result of a trap, as the documentation states. 2. Changes to Readline a. Fixed a bug with prompt redisplay in a multi-byte locale to avoid redrawing the prompt and input line multiple times. b. Fixed history expansion to not be confused by here-string redirection. c. Readline no longer treats read errors by converting them to newlines, as it does with EOF. This caused partial lines to be returned from readline(). ------------------------------------------------------------------------------ This document details the changes between this version, bash-3.2-alpha, and the previous version, bash-3.1-release. 1. Changes to Bash a. Fixed a source bug that caused the minimal configuration to not compile. b. Fixed memory leaks in error handling for the `read' builtin. c. Changed the [[ and (( compound commands to set PIPESTATUS with their exit status. d. Fixed some parsing problems with compound array assignments. e. Added additional configuration changes for: NetBSD (incomplete multibyte character support) f. Fixed two bugs with local array variable creation when shadowing a variable of the same name from a previous context. g. Fixed the `read' builtin to restore the correct set of completion functions if a timeout occurs. h. Added code to defer the initialization of HISTSIZE (and its stifling of the history list) until the history file is loaded, allowing a startup file to override the default value. i. Tightened up the arithmetic expression parsing to produce better error messages when presented with invalid operators. j. Fixed the cross-compilation support to build the signal list at shell invocation rather than compile time if cross-compiling. k. Fixed multibyte support for non-gcc compilers (or compilers that do not allow automatic array variable sizing based on a non-constant value). l. Several fixes to the code that manages the list of terminated jobs and their exit statuses, and the list of active and recently-terminated jobs to avoid pid aliasing/wraparound and allocation errors. m. Fixed a problem that allowed scripts to die due to SIGINT while waiting for children, even when started in the background or otherwise ignoring SIGINT. n. Fixed a bug that caused shells invoked as -/bin/bash from not being recognized as login shells. o. Fixed a problem that caused shells in the background to give the terminal to a process group other than the foreground shell process group. p. Fixed a problem with extracting the `varname' in ${#varname}. q. Fixed the code that handles SIGQUIT to not exit immediately -- thereby calling functions that may not be called in a signal handler context -- but set a flag and exit afterward (like SIGINT). r. Changed the brace expansion code to skip over braces that don't begin a valid matched brace expansion construct. s. Fixed `typeset' and `declare' to not require that their shell function operands to be valid shell identifiers. t. Changed `test' to use access(2) with a temporary uid/euid swap when testing file attributes and running setuid, and access(2) in most other cases. u. Changed completion code to not attempt command name completion on a line consisting solely of whitespace when no_empty_command_completion is set. v. The `hash' builtin now prints nothing in posix mode when the hash table is empty, and prints a message to that effect to stdout instead of stderr when not in posix mode. w. Fixed a bug in the extended pattern matching code that caused it to fail to match periods with certain patterns. x. Fixed a bug that caused the shell to dump core when performing filename generation in directories with thousands of files. y. Returned to the original Bourne shell rules for parsing ``: no recursive parsing of embedded quoted strings or ${...} constructs. z. The inheritence of the DEBUG, RETURN, and ERR traps is now dependent only on the settings of the `functrace' and `errtrace' shell options, rather than whether or not the shell is in debugging mode. aa. Fixed a problem with $HOME being converted to ~ in the expansion of members of the DIRSTACK array. bb. Fixed a problem with quoted arguments to arithmetic expansions in certain constructs. cc. The command word completion code now no longer returns matching directories while searching $PATH. dd. Fixed a bug with zero-padding and precision handling in snprintf() replacement. ee. Fixed a bug that caused the command substitution code not to take embedded shell comments into account. ff. Fixed a bug that caused $((...);(...)) to be misinterpreted as an arithmetic substitution. gg. Fixed a bug in the prompt expansion code that inappropriately added a \001 before a \002 under certain circumstances. hh. Fixed a bug that caused `unset LANG' to not properly reset the locale (previous versions would set the locale back to what it was when bash was started rather than the system's "native" locale). ii. Fixed a bug that could cause file descriptors > 10 to not be closed even when closed explicitly by a script. jj. Fixed a bug that caused single quotes to be stripped from ANSI-C quoting inside double-quoted command substitutions. kk. Fixed a bug that could cause core dumps when `return' was executed as the last element of a pipeline inside a shell function. ll. Fixed a bug that caused DEBUG trap strings to overwrite commands stored in the jobs list. 2. Changes to Readline a. Fixed a problem that caused segmentation faults when using readline in callback mode and typing consecutive DEL characters on an empty line. b. Fixed several redisplay problems with multibyte characters, all having to do with the different code paths and variable meanings between single-byte and multibyte character redisplay. c. Fixed a problem with key sequence translation when presented with the sequence \M-\C-x. d. Fixed a problem that prevented the `a' command in vi mode from being undone and redone properly. e. Fixed a problem that prevented empty inserts in vi mode from being undone properly. f. Fixed a problem that caused readline to initialize with an incorrect idea of whether or not the terminal can autowrap. g. Fixed output of key bindings (like bash `bind -p') to honor the setting of convert-meta and use \e where appropriate. h. Changed the default filename completion function to call the filename dequoting function if the directory completion hook isn't set. This means that any directory completion hooks need to dequote the directory name, since application-specific hooks need to know how the word was quoted, even if no other changes are made. i. Fixed a bug with creating the prompt for a non-interactive search string when there are non-printing characters in the primary prompt. j. Fixed a bug that caused prompts with invisible characters to be redrawn multiple times in a multibyte locale. k. Fixed a bug that could cause the key sequence scanning code to return the wrong function. l. Fixed a problem with the callback interface that caused it to fail when using multi-character keyboard macros. m. Fixed a bug that could cause a core dump when an edited history entry was re-executed under certain conditions. n. Fixed a bug that caused readline to reference freed memory when attmpting to display a portion of the prompt. 3. New Features in Bash a. Changed the parameter pattern replacement functions to not anchor the pattern at the beginning of the string if doing global replacement - that combination doesn't make any sense. b. When running in `word expansion only' mode (--wordexp option), inhibit process substitution. c. Loadable builtins now work on MacOS X 10.[34]. d. Shells running in posix mode no longer set $HOME, as POSIX requires. e. The code that checks for binary files being executed as shell scripts now checks only for NUL rather than any non-printing character. f. Quoting the string argument to the [[ command's =~ operator now forces string matching, as with the other pattern-matching operators. 4. New Features in Readline a. Calling applications can now set the keyboard timeout to 0, allowing poll-like behavior. b. The value of SYS_INPUTRC (configurable at compilation time) is now used as the default last-ditch startup file. c. The history file reading functions now allow windows-like \r\n line terminators.
2006-10-21Fixed PKGMANDIR.rillig1-3/+4
2006-10-07This package needs texinfo 4.1 or lator. (I found on NetBSD 1.6.2 whichtaca1-1/+2
has texinfo 4.0 on base system.)
2006-09-03Update to 3.1pl17, provided by Martin Wilke in PR 34301:wiz2-5/+56
Bugfixes.
2006-06-20USE_TOOLS+=yaccminskim1-2/+2
2006-06-15Take maintainership.wiz1-2/+2
2006-05-26Export dynamic symbols for plugins. Fixes PR 33220.joerg1-2/+3
2006-04-18use GNU bison instead of the native yacc on IRIX 5 since the code hasschwarz1-1/+6
problems with the latter
2006-04-17Strip ${PKGLOCALEDIR} from PLISTs of packages that already obeyjlam1-3/+3
PKGLOCALEDIR and which install their locale files directly under ${PREFIX}/${PKGLOCALEDIR} and sort the PLIST file entries. From now on, pkgsrc/mk/plist/plist-locale.awk will automatically handle transforming the PLIST to refer to the correct locale directory.
2006-04-06Over 1200 files touched but no revisions bumped :)reed1-2/+2
RECOMMENDED is removed. It becomes ABI_DEPENDS. BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo. BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo. BUILDLINK_DEPENDS does not change. IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS which defaults to "yes". Added to obsolete.mk checking for IGNORE_RECOMMENDED. I did not manually go through and fix any aesthetic tab/spacing issues. I have tested the above patch on DragonFly building and packaging subversion and pkglint and their many dependencies. I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I have used IGNORE_RECOMMENDED for a long time). I have been an active user of IGNORE_RECOMMENDED since it was available. As suggested, I removed the documentation sentences suggesting bumping for "security" issues. As discussed on tech-pkg. I will commit to revbump, pkglint, pkg_install, createbuildlink separately. Note that if you use wip, it will fail! I will commit to pkgsrc-wip later (within day).
2006-03-30* Honor PKGINFODIR.jlam2-4/+4
* List the info files directly in the PLIST.
2006-03-05* Teach the tools framework how to supply the pkgsrc version ofjlam1-2/+2
makeinfo if no native makeinfo executable exists. Honor TEXINFO_REQD when determining whether the native makeinfo can be used. * Remove USE_MAKEINFO and replace it with USE_TOOLS+=makeinfo. * Get rid of all the "split" argument deduction for makeinfo since the PLIST module already handles varying numbers of split info files correctly. NOTE: Platforms that have "makeinfo" in the base system should check that the makeinfo entries of pkgsrc/mk/tools.${OPSYS}.mk are correct.
2006-03-04Point MAINTAINER to pkgsrc-users@NetBSD.org in the case where nojlam1-2/+2
developer is officially maintaining the package. The rationale for changing this from "tech-pkg" to "pkgsrc-users" is that it implies that any user can try to maintain the package (by submitting patches to the mailing list). Since the folks most likely to care about the package are the folks that want to use it or are already using it, this would leverage the energy of users who aren't developers.
2006-02-05Recursive revision bump / recommended bump for gettext ABI change.joerg1-1/+2
2005-12-31Update to 3.1pl1:wiz7-87/+41
This is a terse description of the new features added to bash-3.1 since the release of bash-3.0. As always, the manual page (doc/bash.1) is the place to look for complete descriptions. 1. New Features in Bash a. Bash now understands LC_TIME as a special variable so that time display tracks the current locale. b. BASH_ARGC, BASH_ARGV, BASH_SOURCE, and BASH_LINENO are no longer created as `invisible' variables and may not be unset. c. In POSIX mode, if `xpg_echo' option is enabled, the `echo' builtin doesn't try to interpret any options at all, as POSIX requires. d. The `bg' builtin now accepts multiple arguments, as POSIX seems to specify. e. Fixed vi-mode word completion and glob expansion to perform tilde expansion. f. The `**' mathematic exponentiation operator is now right-associative. g. The `ulimit' builtin has new options: -i (max number of pending signals), -q (max size of POSIX message queues), and -x (max number of file locks). h. A bare `%' once again expands to the current job when used as a job specifier. i. The `+=' assignment operator (append to the value of a string or array) is now supported for assignment statements and arguments to builtin commands that accept assignment statements. j. BASH_COMMAND now preserves its value when a DEBUG trap is executed. k. The `gnu_errfmt' option is enabled automatically if the shell is running in an emacs terminal window. l. New configuration option: --single-help-strings. Causes long help text to be written as a single string; intended to ease translation. m. The COMP_WORDBREAKS variable now causes the list of word break characters to be emptied when the variable is unset. n. An unquoted expansion of $* when $IFS is empty now causes the positional parameters to be concatenated if the expansion doesn't undergo word splitting. o. Bash now inherits $_ from the environment if it appears there at startup. p. New shell option: nocasematch. If non-zero, shell pattern matching ignores case when used by `case' and `[[' commands. q. The `printf' builtin takes a new option: -v var. That causes the output to be placed into var instead of on stdout. r. By default, the shell no longer reports processes dying from SIGPIPE. s. Bash now sets the extern variable `environ' to the export environment it creates, so C library functions that call getenv() (and can't use the shell-provided replacement) get current values of environment variables. t. A new configuration option, `--enable-strict-posix-default', which will build bash to be POSIX conforming by default. u. If compiled for strict POSIX conformance, LINES and COLUMNS may now override the true terminal size. 2. New Features in Readline a. The key sequence sent by the keypad `delete' key is now automatically bound to delete-char. b. A negative argument to menu-complete now cycles backward through the completion list. c. A new bindable readline variable: bind-tty-special-chars. If non-zero, readline will bind the terminal special characters to their readline equivalents when it's called (on by default). d. New bindable command: vi-rubout. Saves deleted text for possible reinsertion, as with any vi-mode `text modification' command; `X' is bound to this in vi command mode. e. A new external application-controllable variable that allows the LINES and COLUMNS environment variables to set the window size regardless of what the kernel returns: rl_prefer_env_winsize
2005-12-29Remove USE_PKGINSTALL from pkgsrc now that mk/install/pkginstall.mkjlam1-2/+1
automatically detects whether we want the pkginstall machinery to be used by the package Makefile.
2005-12-27For both bash packages, use CPP to definereed1-2/+3
DEFAULT_PATH_VALUE as /usr/bin:/bin:${LOCALBASE}/bin:/usr/local/bin (Instead of having non-existent default PATH directories.) Bump PKGREVISION. This is for PR 25044. Okayed by bash2 maintainer.
2005-12-05Fixed pkglint warnings. The warnings are mostly quoting issues, forrillig1-2/+2
example MAKE_ENV+=FOO=${BAR} is changed to MAKE_ENV+=FOO=${BAR:Q}. Some other changes are outlined in http://mail-index.netbsd.org/tech-pkg/2005/12/02/0034.html
2005-10-10Don't declare errno, errno.h does so already.joerg2-1/+14
2005-10-05Remove some more *LEGACY* settings that are over a month old andwiz1-2/+1
thus were before 2005Q3.
2005-09-20Teach the +SHELLS helper script to not create an /etc/shells file ifjlam1-2/+2
one doesn't exist. From now on, we only add the listed PKG_SHELL to the /etc/shells file if it already exists. This fixes PR pkg/27162.
2005-07-29* Separate out the shell registration into a separately unpacked scriptjlam1-2/+2
+SHELL. * Turn PKG_REGISTER_SHELLS into a variable that can be set in the shell environment so that admins can make a choice when installing from binary packages. * PKG_SHELL is now a list of paths, and if the path is relative, then it is taken to be relative to ${PREFIX}. Convert packages that set PKG_SHELL to take advantage of this new feature by changing the full paths to the shells into relative paths.
2005-07-07Don't enforce using the "readline" package on every platform justtron1-6/+9
because Darwin needs it (which is probably not true either). Bump package revision after the damage from the previous revision has been fixed.
2005-07-01Use devel/readline instead of the included readline library. Bumpminskim1-2/+11
PKGREVISION due to the added dependency. This should fix PR pkg/30601. While here, set BUILDLINK_DEPMETHOD of dependent libraries to "build" when the "static" option is enabled.
2005-05-31Packages have no business modifying PKG_DEFAULT_OPTIONS -- it's adillo1-8/+4
user settable variable. Set PKG_SUGGESTED_OPTIONS instead. Also, make use of PKG_OPTIONS_LEGACY_VARS. Reviewed by wiz.
2005-04-11Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used.tv1-2/+1
2005-03-15Add a patch allowing compilation of bash on AIX 4.3.3. Tested not togarbled2-1/+55
impact NetBSD/i386 build. Should also not impact aix5 builds.
2005-02-27Update to 3.0pl16, pulling in the first 16 official patches for bash.wiz3-6/+61
Various bugfixes. Some whitespace cleanup while here.
2005-02-24Add RMD160 digests.agc1-1/+2
2004-10-23Add multibyte option to allow to disable multibyte support explicitly.minskim1-2/+12
2004-10-23Enable multibyte support in default. It will be disabled by configureminskim7-10/+150
if wctype_t is not available. Bump PKGREVISION.
2004-10-22Make this work on NetBSD 1.6.2 (pkg/27330). Patch from Juan RP, minormartti1-4/+9
fixes by me.
2004-10-21Remove readline dependency, it's not needed really... because bashxtraeme1-4/+1
uses its own, and there isn't any test in the configure script. Pointed out by wiz@.
2004-10-21Initial import of bash-3.0. It's imported as bash (not bash3) becausextraeme4-0/+91
our existing bash package already is called bash2. If you want to see the new features, please take a look at the NEWS file.