Commit graph

942 commits

Author SHA1 Message Date
mef
82b26d9ce0 Updated shells/zsh to 5.3.1
---------------------------
2016-12-21  Peter Stephenson  <p.w.stephenson@ntlworld.com>

       * unposted: Config/version.mk, Etc/FAQ.yo, NEWS, README:
       release 5.3.1:

2016-12-18  Baptiste Daroussin  <bapt@FreeBSD.org>

       * 40210: Completion/Unix/Command/_sysctl: Add support modern
       FreeBSD and drop support for FreeBSD < 5

2016-12-18  Baptiste Daroussin  <bapt@gandi.net>

       * 40209: Completion/BSD/Command/_chflags: Fix typo in chflags
       completion

2016-12-16  Daniel Shahaf  <d.s@daniel.shahaf.name>

       * 40149: Functions/VCS_Info/Backends/VCS_INFO_get_data_git:
       vcs_info git: Avoid a fork.

       * 40203: Test/B03print.ztst: Resolve 'printf --' question from
       grandparent commit (thanks Chet).

2016-12-15  Barton E. Schaefer  <schaefer@zsh.org>

       * 40198: Test/V10private.ztst: output of B02typeset differs when
       (( UID == 0 )) so do not attempt to redo that test in that case

2016-12-14  Barton E. Schaefer  <schaefer@zsh.org>

       * 40179: Src/builtin.c: fix handling of "printf -" and "printf --"

       * unposted: Test/B03print.ztst: regression for 40179 / 37467

2016-12-12  Peter Stephenson  <p.w.stephenson@ntlworld.com>

       * unposted: Config/version.mk: update to 5.3-dev-0 to avoid
       clash with installed 5.3.
2017-01-29 05:31:13 +00:00
ryoon
3b183999d6 Update to 4.4.012
Changelog:
When -N is used, the input is not supposed to be split using $IFS, but
leading and trailing IFS whitespace was still removed.
2017-01-28 04:41:14 +00:00
maya
362f9535b0 bash: update to patchlevel 11.
changes:

patch 06:
Out-of-range negative offsets to popd can cause the shell to crash attempting
to free an invalid memory block.

patch 07:
When performing filename completion, bash dequotes the directory name being
completed, which can result in match failures and potential unwanted
expansion.

patch 08:
Under certain circumstances, bash will evaluate arithmetic expressions as
part of reading an expression token even when evaluation is suppressed. This
happens while evaluating a conditional expression and skipping over the
failed branch of the expression.

patch 09:
Depending on compiler optimizations and behavior, the `read' builtin may not
save partial input when a timeout occurs.

patch 10:
Depending on compiler optimizations and behavior, the `read' builtin may not
save partial input when a timeout occurs.

patch 11:
Subshells begun to run command and process substitutions may attempt to
set the terminal's process group to an incorrect value if they receive
a fatal signal.  This depends on the behavior of the process that starts
the shell.
2017-01-22 21:52:05 +00:00
agc
30b55df38e Convert all occurrences (353 by my count) of
MASTER_SITES= 	site1 \
			site2

style continuation lines to be simple repeated

	MASTER_SITES+= site1
	MASTER_SITES+= site2

lines. As previewed on tech-pkg. With thanks to rillig for fixing pkglint
accordingly.
2017-01-19 18:52:01 +00:00
mef
1bb1ca49ec Updated shells/perlsh to 1.8.1
------------------------------
1.8.1 [2007-07-20]
  Fixes
    *   Applied patch from rafalka:
        http://sourceforge.net/support/tracker.php?aid=1635389 to fix path
        behavior on Windows.
2017-01-08 10:55:51 +00:00
wiz
7f84153239 Add python-3.6 to incompatible versions. 2017-01-01 14:43:22 +00:00
ryoon
6ef08b0a4c Fix PLIST from wiz@. Thank you 2016-12-25 12:01:44 +00:00
ryoon
c44c30a5b0 Update to 5.3
Changelog:
Changes from 5.2 to 5.3
-----------------------

It is possible to enable character width support for Unicode 9 by
configuring with `--enable-unicode9'; this compiles in some additional
tables.  At some point this support may move into a module, in which
case the configure option will be changed to cause the module to be
permanently loaded.  This option is not useful unless your terminal also
supports Unicode 9.

The new word modifier ':P' computes the physical path of the argument.
It is different from the existing ':a' modifier which always resolves
'/before/here/../after' to '/before/after', and differs from the
existing ':A' modifier which resolves symlinks only after 'here/..' is
removed, even when /before/here is itself a symbolic link.  It is
recommended to review uses of ':A' and, if appropriate, convert them
to ':P' as soon as compatibility with 5.2 is no longer a requirement.

The output of "typeset -p" uses "export" commands or the "-g" option
for parameters that are not local to the current scope.  Previously,
all output was in the form of "typeset" commands, never using "-g".

vi-repeat-change can repeat user-defined widgets if the widget calls
zle -f vichange.

The parameter $registers now makes the contents of vi register buffers
available to user-defined widgets.

New vi-up-case and vi-down-case builtin widgets bound to gU/gu (or U/u
in visual mode) for doing case conversion.

A new select-word-match function provides vim-style text objects with
configurable word boundaries using the existing match-words-by-style
mechanism.

Support for the conditional expression [[ -v var ]] to test if a
variable is set for compatibility with other shells.

The print and printf builtins have a new option -v to assign the output
to a variable. This is for bash compatibility but with the additional
feature that, for an array, a separate element is used each time the
format is reused.

New x: syntax in completion match specifications make it possible to
disable match specifications hardcoded in completion functions.
2016-12-25 00:23:30 +00:00
kim
ca258a3af9 Apply fixes from upstream to prevent a crash and a usability issue:
- Fix type of read in prompt confirmation (eg. rmstar) (David Kaspar)
- Fix out of bounds read (Brooks Davis)
- Don't play pointer tricks that are undefined in modern c (Brooks Davis)
- Use `` instead $() for solaris, bleh.
2016-12-24 13:18:43 +00:00
christos
41a1027d74 Welcome to tcsh-6.20.00 2016-11-24 15:45:06 +00:00
wen
43355a0785 Update to 4.4.005 2016-11-20 08:02:26 +00:00
wiz
dc2034af4d Updated bash to 4.4.
This is a terse description of the new features added to bash-4.4 since
the release of bash-4.3.  As always, the manual page (doc/bash.1) is
the place to look for complete descriptions.

1.  New Features in Bash

a.  There is now a settable configuration #define that will cause the shell
    to exit if the shell is running setuid without the -p option and setuid
    to the real uid fails.

b.  Command and process substitutions now turn off the `-v' option when
    executing, as other shells seem to do.

c.  The default value for the `checkhash' shell option may now be set at
    compile time with a #define.

d.  The `mapfile' builtin now has a -d option to use an arbitrary character
    as the record delimiter, and a -t option  to strip the delimiter as
    supplied with -d.

e.  The maximum number of nested recursive calls to `eval' is now settable in
    config-top.h; the default is no limit.

f.  The `-p' option to declare and similar builtins will display attributes for
    named variables even when those variables have not been assigned values
    (which are technically unset).

g.  The maximum number of nested recursive calls to `source' is now settable
    in config-top.h; the default is no limit.

h.  All builtin commands recognize the `--help' option and print a usage
    summary.

i.  Bash does not allow function names containing `/' and `=' to be exported.

j.  The `ulimit' builtin has new -k (kqueues) and -P (pseudoterminals) options.

k.  The shell now allows `time ; othercommand' to time null commands.

l.  There is a new `--enable-function-import' configuration option to allow
    importing shell functions from the environment; import is enabled by
    default.

m.  `printf -v var ""' will now set `var' to the empty string, as if `var=""'
    had been executed.

n.  GLOBIGNORE, the pattern substitution word expansion, and programmable
    completion match filtering now honor the value of the `nocasematch' option.

o.  There is a new ${parameter@spec} family of operators to transform the
    value of `parameter'.

p.  Bash no longer attempts to perform compound assignment if a variable on the
    rhs of an assignment statement argument to `declare' has the form of a
    compound assignment (e.g., w='(word)' ; declare foo=$w); compound
    assignments are accepted if the variable was already declared as an array,
    but with a warning.

q.  The declare builtin no longer displays array variables using the compound
    assignment syntax with quotes; that will generate warnings when re-used as
    input, and isn't necessary.

r.  Executing the rhs of && and || will no longer cause the shell to fork if
    it's not necessary.

s.  The `local' builtin takes a new argument: `-', which will cause it to save
    and the single-letter shell options and restore their previous values at
    function return.

t.  `complete' and `compgen' have a new `-o nosort' option, which forces
    readline to not sort the completion matches.

u.  Bash now allows waiting for the most recent process substitution, since it
    appears as $!.

v.  The `unset' builtin now unsets a scalar variable if it is subscripted with
    a `0', analogous to the ${var[0]} expansion.

w.  `set -i' is no longer valid, as in other shells.

x.  BASH_SUBSHELL is now updated for process substitution and group commands
    in pipelines, and is available with the same value when running any exit
    trap.

y.  Bash now checks $INSIDE_EMACS as well as $EMACS when deciding whether or
    not bash is being run in a GNU Emacs shell window.

z.  Bash now treats SIGINT received when running a non-builtin command in a
    loop the way it has traditionally treated running a builtin command:
    running any trap handler and breaking out of the loop.

aa. New variable: EXECIGNORE; a colon-separate list of patterns that will
    cause matching filenames to be ignored when searching for commands.

bb. Aliases whose value ends in a shell metacharacter now expand in a way to
    allow them to be `pasted' to the next token, which can potentially change
    the meaning of a command (e.g., turning `&' into `&&').

cc. `make install' now installs the example loadable builtins and a set of
    bash headers to use when developing new loadable builtins.

dd. `enable -f' now attempts to call functions named BUILTIN_builtin_load when
    loading BUILTIN, and BUILTIN_builtin_unload when deleting it.  This allows
    loadable builtins to run initialization and cleanup code.

ee. There is a new BASH_LOADABLES_PATH variable containing a list of directories
    where the `enable -f' command looks for shared objects containing loadable
    builtins.

ff. The `complete_fullquote' option to `shopt' changes filename completion to
    quote all shell metacharacters in filenames and directory names.

gg. The `kill' builtin now has a `-L' option, equivalent to `-l', for
    compatibility with Linux standalone versions of kill.

hh. BASH_COMPAT and FUNCNEST can be inherited and set from the shell's initial
    environment.

ii. inherit_errexit: a new `shopt' option that, when set, causes command
    substitutions to inherit the -e option.  By default, those subshells disable
    -e.  It's enabled as part of turning on posix mode.

jj. New prompt string: PS0.  Expanded and displayed by interactive shells after
    reading a complete command but before executing it.

kk. Interactive shells now behave as if SIGTSTP/SIGTTIN/SIGTTOU are set to
    SIG_DFL when the shell is started, so they are set to SIG_DFL in child
    processes.

ll. Posix-mode shells now allow double quotes to quote the history expansion
    character.

mm. OLDPWD can be inherited from the environment if it names a directory.

nn. Shells running as root no longer inherit PS4 from the environment, closing
    a security hole involving PS4 expansion performing command substitution.

oo. If executing an implicit `cd' when the `autocd' option is set, bash will
    now invoke a function named `cd' if one exists before executing the `cd'
    builtin.

pp. Value conversions (arithmetic expansions, case modification, etc.) now
    happen when assigning elements of an array using compound assignment.

qq. There is a new option settable in config-top.h that makes multiple
    directory arguments to `cd' a fatal error.

rr. Bash now uses mktemp() when creating internal temporary files; it produces
    a warning at build time on many Linux systems.

2.  New Features in Readline

a.  The history truncation code now uses the same error recovery mechansim as
    the history writing code, and restores the old version of the history file
    on error.  The error recovery mechanism handles symlinked history files.

b.  There is a new bindable variable, `enable-bracketed-paste', which enables
    support for a terminal's bracketed paste mode.

c.  The editing mode indicators can now be strings and are user-settable
    (new `emacs-mode-string', `vi-cmd-mode-string' and `vi-ins-mode-string'
    variables).  Mode strings can contain invisible character sequences.
    Setting mode strings to null strings restores the defaults.

d.  Prompt expansion adds the mode string to the last line of a multi-line
    prompt (one with embedded newlines).

e.  There is a new bindable variable, `colored-completion-prefix', which, if
    set, causes the common prefix of a set of possible completions to be
    displayed in color.

f.  There is a new bindable command `vi-yank-pop', a vi-mode version of emacs-
    mode yank-pop.

g.  The redisplay code underwent several efficiency improvements for multibyte
    locales.

h.  The insert-char function attempts to batch-insert all pending typeahead
    that maps to self-insert, as long as it is coming from the terminal.

i.  rl_callback_sigcleanup: a new application function that can clean up and
    unset any state set by readline's callback mode.  Intended to be used
    after a signal.

j.  If an incremental search string has its last character removed with DEL, the
    resulting empty search string no longer matches the previous line.

k.  If readline reads a history file that begins with `#' (or the value of
    the history comment character) and has enabled history timestamps, the
    history entries are assumed to be delimited by timestamps.  This allows
    multi-line history entries.

l.  Readline now throws an error if it parses a key binding without a
    terminating `:' or whitespace.

m.  The default binding for ^W in vi mode now uses word boundaries specified
    by Posix (vi-unix-word-rubout is bindable command name).

n.  rl_clear_visible_line: new application-callable function; clears all
    screen lines occupied by the current visible readline line.

o.  rl_tty_set_echoing: application-callable function that controls whether
    or not readline thinks it is echoing terminal output.

p.  Handle >| and strings of digits preceding and following redirection
    specifications as single tokens when tokenizing the line for history
    expansion.

q.  Fixed a bug with displaying completions when the prefix display length
    is greater than the length of the completions to be displayed.

r.  The :p history modifier now applies to the entire line, so any expansion
    specifying :p causes the line to be printed instead of expanded.

s.  New application-callable function: rl_pending_signal(): returns the signal
    number of any signal readline has caught but not yet handled.

t.  New application-settable variable: rl_persistent_signal_handlers: if set
    to a non-zero value, readline will enable the readline-6.2 signal handler
    behavior in callback mode: handlers are installed when
    rl_callback_handler_install is called and removed removed when a complete
    line has been read.
2016-09-19 09:06:03 +00:00
joerg
990157a52e Since this violates the general prefix rules and won't build e.g. with
the recommendated setup of read-only root, mark it as not for bulk
builds.
2016-09-07 21:03:21 +00:00
richard
330f5ef8c6 Use '$(CPP) -P' to inhibit generation of linemarkers foiling siglist.sh
Noticed on aarch64-linux-gnu with gcc5.3
2016-08-28 13:15:13 +00:00
kamil
00665623f8 Add shells/xonsh 2016-08-21 11:35:33 +00:00
kamil
9ae1223d9b Import xonsh-0.4.5 as shells/xonsh
xonsh is a Python-ish, BASHwards-looking shell language and command prompt. The
language is a superset of Python 3.4+ with additional shell primitives. xonsh
(pronounced conch) is meant for the daily use of experts and novices alike.
2016-08-21 11:34:57 +00:00
wiz
ad0031c15e Remove python33: adapt all packages that refer to it. 2016-07-09 13:03:30 +00:00
wiz
73716d23de Bump PKGREVISION for perl-5.24.0 for everything mentioning perl. 2016-07-09 06:38:30 +00:00
dholland
1fa6495034 pkglint whitespace 2016-06-11 23:34:07 +00:00
rillig
3e0fcb2ae8 Fixed pkglint warnings. 2016-06-11 12:54:24 +00:00
richard
b546d92e4c PR/51142: address for/select loop compatibility with ksh93 in pdksh 2016-06-05 04:44:56 +00:00
wiz
a3ac93e674 Unconfuse pkglint. 2016-05-05 06:28:58 +00:00
richard
b5771f0eff Get a working ast-ksh build for SunOS using c99 and defining _XPG6
(and __EXTENSIONS__ for strict STDC).  Also needs -lm.
Fix testing to work prior to [stage-]install. No revbump needed.
okay'd by jperkin@
NB there are still some corner cases not working on some SunOS, but
on illumos SunOS 5.11 this actually goes a real long way over stock sh/ksh!
2016-03-22 19:31:15 +00:00
jperkin
a897668643 Use OPSYSVARS. 2016-02-26 09:41:05 +00:00
ryoon
e31c06a793 Update to 0.12.5
Changelog:
posh (0.12.5) unstable; urgency=medium

  * Patch from John Salmon to correct fencepost error in PWD
    initialization.  closes: #777427.
  * Suppress linemarker generation when building signal table, as
    gcc 5 gets crazy.  closes: #778069.
  * Blindly assume that signal handlers return void.
  * Switch to dh.

 -- Clint Adams <clint@debian.org>  Sun, 07 Jun 2015 14:54:36 -0400
2016-01-25 15:09:01 +00:00
nros
a83c1ebc57 Update shells/osh to version 20160108 as request by upstream on
pkgsrc-users.

Also added copyright notices and installation of the license to make the
package compilant with it's license.

Changelog:

Changes that improve compatibility w/ the Sixth Edition (V6) UNIX
Thompson shell are marked w/ a `C:' in the details below.

-------------------------------------------------------------------------------
[osh-current] (development):
	* Work In Progress ( see http://v6shell.org/src/current/ )

-------------------------------------------------------------------------------
[osh-20160108] (latest):
README:
	* Updated supported systems to include FreeBSD 10.2,
	  Mac OS X 10.11 (El Capitan), NetBSD 7.0, OpenBSD 5.[78],
	  and Debian 8.2 (jessie).

Makefile:
	* Changed `-W' to `-Wextra' (same warning, newer name).  From gcc(1) -
	  This option used to be called -W.  The older name is still supported,
	  but the newer name is more descriptive.

DEDICATIONS:
	* Updated the URL for dmr's home page at Bell Labs.

*.h:
	* Added a sh6-related comment to the top of the header files
	  since they are used by sh6 and its external utilities.

examples/dot.oshrc:
	* Redirected diagnostics from leaks(1) (Mac OS X) to /dev/null.

-------------------------------------------------------------------------------
[osh-20150115]:
if.c, osh.c, strtoint.[hc], util.c:
	* Changed the strtoint() function to convert string into a
	  long instead of an int, and ensured that numbers which might
	  be considered to have an octal form (valid or invalid) are
	  not treated as if they are decimal integers.  For example:
	  `if 0[0-9] -eq [0-9]' and `if [0-9] -eq 0[0-9]' and similar
	  are always false, resulting in an error.

if.c, util.c:
	* Changed how the built-in & external if(1) commands call
	  the strtoint() function.

err.h, strtoint.c:
	* Changed the "not an integer" diagnostic for the strtoint()
	  function to "bad integer".

err.h, if.c, util.c:
	* Changed the "not a digit" diagnostic for the built-in & external
	  if(1) commands to "bad digit".

err.h:
	* Changed the order of the definitions for diagnostics to make finding
	  the "... expected" ones for if(1) a bit easier.

-------------------------------------------------------------------------------
[osh-20141024]:
README:
	* Added OS X 10.10 (Yosemite) to supported systems.

	* Added Debian 7.7 (wheezy) to supported systems.

examples/*.osh.login:
	* Changed /usr/X11 to /opt/X11 in *PATH.

examples/dot.oshrc:
	* Updated the sh6i alias to make it trap and untrap the 1 (HUP),
	  2  (INT), 3 (QUIT), 13 (PIPE), 14 (ALRM), 15 (TERM), 18 (TSTP),
	  21 (TTIN), and 22 (TTOU) signals accordingly for better behavior.

-------------------------------------------------------------------------------
[osh-20140820]:
	* See CHANGES6 .

-------------------------------------------------------------------------------
[osh-20140410]:
Makefile:
	* Changed MOXARCH to OSXCFLAGS & OSXLDFLAGS to play better w/ MacPorts.

Makefile.config:
	* Added comment to celebrate 12 years of osh via osh-current.

osh.1:
	* Added missing (+) to version in Special commands.

osh.c:
	* Enable `.' and `source' special built-in command execution
	  to succeed when the user invokes the shell as `osh -c string'.
	  EG:

		% osh -c '. file [arg1 ...]' [arg1 ...]

	  or:

		% osh -c 'source file [arg1 ...]' [arg1 ...]

	  .

-------------------------------------------------------------------------------
[osh-20131109]:
osh.1:
	* Changed `LICENSE' to LICENSE to match the other manual pages.

examples/FILEPREP:
	* Changed `sigign' invocation to `trap'.

examples/dot.oshrc:
	* Added two useful pwd-related aliases: `ocpwd' and `opwd'

	* Added a `now' and a `sysinfo' alias.

-------------------------------------------------------------------------------
[osh-20130331]:
*sh.[ch]:
	* Removed the deprecated $n and $s parameters.
	  Now, the user can `set' and `unset' n and s as shell variables.
	  The following command line is a simple way to replace
	  all instances of $n w/ $# and $s w/ $? in file:

		% <file(rm -f file;sed 's/$n/$#/g;s/$s/$?/g'>file)

	  .

osh:
	* Added code to print diagnostics w/ line numbers when possible.
	  When reporting error(s), if a diagnostic is to be printed, the
	  shell gets the line number of the file where the error happened,
	  adjusts the diagnostic (adding the name of the file and the line
	  number if the standard input from which the shell reads and
	  interprets commands lines is seekable), and prints it.  EG:

		% echo R* ; osh R* ; head -1 R*
		README
		osh: README: 1: syntax error
		Welcome to Osh (V6Shell) - osh-20130331 !

	  .

	* Renamed the `sigign' special built-in command to `trap'
	  to make osh signal-trapping behavior more sh-like.  Granted,
	  trap is a misnomer since osh only ignores signals for now.

osh.1:
	* Removed the documentation for the $n and $s parameters.

	* Changed the documentation for `sigign' to `trap' as needed.

examples/*:
	* Made stty(1) invocation conditional in .../etc.osh.login .

	* Escaped $1 when setting hcount alias in .../dot.oshrc .

-------------------------------------------------------------------------------
[osh-20120604]:
	* New file:  Makefile.config  (included from Makefile)

	* New files: strtoint.[ch] (string to integer converter)

	* New files: tests/* (regression test suite for osh/sh6)

Makefile:
	* Added a "check" target to run the tests w/ osh and sh6.

	* Added a "check-newlog" target to generate new test logs
	  for the osh and sh6 tests.

defs.h:
	* Limited maximum PATHMAX definition to 1024.

pexec.c:
	* Changed errno to ENAMETOOLONG for each `path too long' error.

osh:
	C: Added missing `Command line overflow' diagnostic.

	* Added $# (as a synonym for $n) parameter.

	* Added $? (as a synonym for $s) parameter.

	* Deprecated $n and $s parameters in favor of $# and $?.
	  $n and $s parameters will be removed after this release.

	* Added simple shell variables. This allows the user to `set' and
	  `unset' shell variables. For compatibility, these variables are
	  limited to uppercase and lowercase ASCII alpha names that are
	  one character in length. For example: $A $B $C and $a $b $c
	  and so forth.

	* Changed quoting to allow $ substitution within double (") quotes.
	  For example: "$$", "$*", "$1", and so forth. This makes parameter
	  and variable substitution much more flexible.

	* Added `.' as a synonym for `source'.

	* Enabled PATH search when opening file for `.' and `source'.

	* Changed `setenv' built-in command usage and behavior. Now, name
	  requires value argument. Updated osh.1 manual page accordingly.

if:
	* Added new operators to the built-in `if' command for osh
	  and to the external `if' command for sh6. Updated the if.1
	  manual page accordingly. The new operators include: <, >,
	  -eq, -ne, -gt, -ge, -lt, -le

osh.1:
	* Flagged $n and $s parameters as deprecated.

	* Added `set' and `unset' documentation to the
	  "Special commands" subsection.

	* Added a new "Variable substitution (+)" subsection.

	* Documented `.' as a synonym for `source', and added relevant
	  PATH search documentation.

	* Simplified "SECURITY" section a bit.

	* Updated "Quoting" subsection to describe double (") quotes handling.

examples/*:
	* Made various changes to reflect current and future osh behavior.

-------------------------------------------------------------------------------
[osh-20120102]:
mkconfig:
	* Changed _XOPEN_SOURCE definition from 600 to 600L .

err.h:
	* Added DEBUG_ALIAS, DEBUG_GLOB, and DEBUG_PROC definitions
	  (undefined by default) for printf debugging in osh.c and
	  util.c if/when needed.

osh.c:
	* Changed exit status for alias and unalias so that they exit w/ a
	  false (1) status when there are no aliases to print, set, or unset.
	  Otherwise, they exit w/ a true (0) status when there is no error.

	* Added 'version' as special built-in command.

osh.1:
	* Adjusted $v description in "Parameter substitution" subsection.

	* Added version description to "Special commands" subsection.

	* Added uname(1) to "SEE ALSO" section.

examples/dot.oshrc:
	* Replaced the 'version' alias w/ alias 'v1' 'version'
	  to invoke the 'version' special built-in command.

-------------------------------------------------------------------------------
[osh-20111129-p1]:
examples/dot.oshrc:
	* Re-added missing ';s/ \$//' that git ident removed from version alias.
	  This removes trailing ' $' as shown in example 1 and 2 below:

		% : example 1 ; version
		osh-20111129 (NetBSD 5.1 amd64) $

		% : example 2 ; version
		osh-20111129-p1 (NetBSD 5.1 amd64)

-------------------------------------------------------------------------------
[osh-20111129]:
mkconfig, v.c:
	* Added useful build system info from `uname -srm'.

examples/dot.*:
	* Removed code to replace osh w/ sh6 when invoked as
	  `osh [-i | -l] sh6'.  Use sh6i alias instead.

	* Changed sh6i alias for sake of simplicity.

	* Removed sh6l alias.

	* Changed from using kill(1) to kill current ssh-agent process
	  to using ssh-agent(1) and its `-k' flag instead.

	* Added handy new v and version aliases.  For example:

		% v ; : Same as doing % echo $v
		osh-20111129

		% version
		osh-20111129 (NetBSD 5.1 amd64)

-------------------------------------------------------------------------------
[osh-20111027]:
	* New file: DEDICATIONS (in memory of Dennis M. Ritchie (dmr))

AUTHORS:
	* Added reference to DEDICATIONS file.

LICENSE:
	* Added two more OpenBSD license references.

mkconfig:
	* Fixed a problem w/ the mkconfig script on OpenBSD, where which(1)
	  used to send a "newgrp: Command not found." diagnostic to standard
	  output, not standard error. It looks like the noted OpenBSD which(1)
	  problem has since been fixed though.

osh:
	* Fixed a globbing problem caused by an unsigned-integer overflow.

	* Added $# (as a synonym for $n) and $* parameters.

	* Added a new, command-aliasing feature.

osh.1:
	* Added `alias' and `unalias' documentation to the
	  "Special commands" subsection.

	* Added a new "Aliases (+)" subsection.

	* Added a new "Metacharacters" subsection.

*.1:
	* Changed the visual style of the manual pages, regarding bold, italic,
	  and `literal' text.  The intent was to make for easier reading.

if:
	* Added `:' as if(1) special command. It is useful when debugging
	  scripts and helps when documenting them.

examples/dot.*:
	* Documented by example how to turn alias arguments into a no-op.

	* Added ssh-agent support.  This allows the same ssh-agent process
	  to be used for shared ssh key(s) across multiple concurrent
	  login sessions. It also kills the ssh-agent process on
	  logout when appropriate.
2016-01-13 13:14:21 +00:00
markd
6149938d92 Upstream patch to fix gcc5 optimization issue. 2015-12-13 10:46:26 +00:00
szptvlfn
640f5186aa Update to 5.2
NEWS:
Changes from 5.1.1 to 5.2
-------------------------

The new module zsh/param/private can be loaded to allow the shell
to define parameters that are private to a function scope (i.e. are
not propagated to nested functions called within this function).

The parameter flag ${(P)...} is now more useful when it appears in
a nested expansion.  For example,

  typeset -A assoc=(one un two deux three trois)
  name=assoc
  print ${${(P)name}[one]}

now prints "un".  In previous versions of the shell the value of the
substitution was fully expanded on return from ${(P)name}, making
associative array subscripting difficult.  As a side effect, flags
for formatting appearing in the inner substitution now affect the
substitution of the name (into "assoc" in this case), which is not
normally useful: flags that should apply to the value must be in the
outer substitution.

The GLOB_STAR_SHORT option allows the pattern **/* to be shortened to
just ** if no / follows. so **.c searches recursively for a file whose
name has the suffix ".c".

The effect of the WARN_CREATE_GLOBAL option has been significantly
extended, so expect it to cause additional warning messages about
parameters created globally within function scope.

README:
Incompatibilities between 5.1 and 5.2
-------------------------------------

The behaviour of the parameter flag (P) has changed when it appears
in a nested parameter group, in order to make it more useful in
such cases.  A (P) in the outermost parameter group behaves as
before.  See NEWS for more.
2015-12-08 11:24:59 +00:00
adam
7f3b4730ad Extend PYTHON_VERSIONS_INCOMPATIBLE to 35 2015-12-05 21:25:27 +00:00
agc
168a7e5915 Add SHA512 digests for distfiles for shells category
Existing SHA1 digests verified, all found to be the same on the
machine holding the existing distfiles (morden).  Existing SHA1
digests retained for now as an audit trail.
2015-11-02 23:00:34 +00:00
ryoon
d052349a20 Update to 5.1.1
Changelog:
Changes from 5.1 to 5.1.1
-------------------------

5.1.1 is primarily a bug fix release; however, a few minor features were
added.

The ZLE variables YANK_ACTIVE, YANK_START and YANK_END have been added
and are useful for managing highlighting.

The zsh-specific pattern match range tests have been supplemented with
[:INCOMPLETE:] and [:INVALID:] to help detect the state of partially
read multibyte character strings.
2015-11-02 15:21:01 +00:00
kim
41d9aa5ca1 Try to avoid people changing my email address from under me. 2015-09-09 22:04:55 +00:00
jperkin
8091aee373 Now that _STRIPFLAG_INSTALL is disabled by default on Darwin, remove manual
settings of INSTALL_UNSTRIPPED=yes for Darwin in individual packages.
2015-09-07 12:02:05 +00:00
dsainty
b2abaf2265 On Linux, Bash is fine if you don't mind your package builds spending 50% of
their time compiling, and 50% spinning in shell scripts.  If you'd rather
spend your power bill on useful gcc cycles though, you might desire to use a
different shell for running build scripts - like pdksh, which is conveniently
available at bootstrap time.

But what if pdksh does this to you?

pdksh -c 'f=`pdksh -c set | wc -l`; f=$((f+1)); while ((f < 100000)); do f=$((f+1)); eval "v_${f}=0"; echo "$f"; done'|tail -1
 13106
segmentation fault (core dumped)  pdksh -c

Well that's annoying, isn't it.

% echo $(((13106*10+7)/8))
16383

... that's a magical number.  Coincidence?  Well, no.

tp->nfree = 8*nsize/10; /* table can get 80% full */

This particularly ugly overflow happens because tp->size is a short.  When
texpand() does:

  p = &ntblp[hash(tblp->name) & (tp->size-1)];

tp->size-1 will, given enough variables (80% of 2^15), type coerce into a
sign-extended 32-bit value of:

info registers $ecx
ecx            0xffff7fff       -32769

That hash() function does more or less what you guess, it's a 32 bit unsigned
value.  The chances of the final pointer pointing inside the valid allocated
block of memory are very low indeed.

The least-change solution is to change tp->size to a 32 bit value.  I've left
it signed because that matches, for example, the size parameter passed to
texpand().  But really this code would be more correct with a liberal
sprinkling of "unsigned", and perhaps a bit of "size_t".

This change allows ffmpeg's configure script, as interpreted by pdksh, to
produce more usable output than a core file.

Bump PKGREVISION for code change.
2015-09-07 06:43:48 +00:00
sevan
bddeeb16db Exclude this package on OmniOS which ships with a copy of tcsh.
OmniOS is an Illumos distro which falls under the SunOS variant for us.
Include mk/bsd.prefs.mk before the shells/tcsh/Makefile so the
OS_VARIANT variable is available for testing.

Reviewed by agc@ wiz@
2015-09-03 15:58:22 +00:00
szptvlfn
ee59884530 update sha1 checksums. 2015-09-02 11:08:15 +00:00
szptvlfn
453f20b7e5 Update to 5.1
pkgsrc changes:
  removed patch:
    patch-Completion_Unix_Command__du
    patch-Completion_Unix_Command__sort
    patch-Src_builtin.c
    patch-Test_B03print.ztst

  quote from zsh-5.1/ChangeLog:
    * 36120: Completion/Unix/Command/_sort: Fix syntax error
    * 35467: Completion/Unix/Command/_du: complete files for non-GNU du
    * 35412: Src/builtin.c, Test/B03print.ztst: fix for - flag
    when formating strings with printf that was broken in 34841

  separate a patch ( $ mv patches/patch-ac files/patch-ac )

zsh-5.1/NEWS:
Changes from 5.0.8 to 5.1
-------------------------

The builtins declare, export, local, readonly and typeset
now have corresponding reserved words.  When used in
this form, the builtin syntax is extended so that assignments
following the reserved word are treated similarly to
assignments that appear at the start of the command line.
For example,
  local scalar=`echo one word` array=(several words)
creates a local "scalar" containing the text "one word"
and an array "array" containing the words "several"
"words".

- The print builtin has new options -x and -X to expand tabs.

- Several new command completions and numerous updates to others.

- Options to "fc" to segregate internal and shared history.

- All emulations including "sh" use multibyte by default; several
  repairs to multibyte handling.

- ZLE supports "bracketed paste" mode to avoid interpreting pasted
  newlines as accept-line.  Pastes can be highlighted for visibility
  and to make it more obvious whether accept-line has occurred.

- Improved (though still not perfect) POSIX compatibility for getopts
  builtin when POSIX_BUILTINS is set.

- New setopt APPEND_CREATE for POSIX-compatible NO_CLOBBER behavior.

- Completion of date values now displays in a calendar format when
  the complist module is available.  Controllable by zstyle.

- New parameter UNDO_LIMIT_NO for more control over ZLE undo repeat.

- Several repairs/improvements to the contributed narrow-to-region
  ZLE function.

- Many changes to child-process and signal handling to eliminate race
  conditions and avoid deadlocks on descriptor and memory management.

- New builtin sysopen in zsh/system module for detailed control of
  file descriptor modes.

zsh-5.1/README:
Incompatibilites between 5.0.8 and 5.1
--------------------------------------

The default behaviour when text is pasted into an X Windows terminal has
changed significantly (unless you are using a very old terminal emulator
that doesn't support this mode).  Now, the new "bracketed paste mode"
treats all the pasted text as literal characters.  This means, in
particular, that a newline is simply inserted as a visible newline; you
need to hit Return on the keyboard to execute the pasted text in one go.
See the description of zle_bracketed_paste in the zshparams manual for
more.  "unset zle_bracketed_paste" restores the previous behaviour.

As noted in NEWS, the builtins declare, export, float, integer, local,
readonly and typeset now have corresponding reserved words that provide
true assignment semantics instead of an approximation by means of normal
command line arguments.  It is hoped that this additional consistency
provides a more natural interface.  However, compatbility with older
versions of zsh can be obtained by turning off the reserved word
interface, exposing the builtin interface:

  disable -r declare export float integer local readonly typeset

This is also necessary in the unusual eventuality that the builtins are
to be overridden by shell functions, since reserved words take
precedence over functions.
2015-09-02 10:54:29 +00:00
wiz
c7383780db Bump all packages that depend on curses.bui* or terminfo.bui* since they
might incur ncurses dependencies on some platforms, and ncurses just bumped
its shlib.
Some packages were bumped twice now, sorry for that.
2015-08-18 07:31:00 +00:00
snj
b12ba95ac9 Fix a couple new-to-5.0.8 issues with command completion.
- non-GNU du wouldn't complete filenames (taken from upstream)
- sort completion threw a syntax error on NetBSD (reported upstream)

Bump PKGREVISION to 1.
2015-07-26 22:04:13 +00:00
bsiegert
19b7622b9a Update mksh to R51. From Changelog:
[tg] OpenBSD sync: handle integer base out of band like ksh93 does
[tg] Protect standard code (predefined aliases, internal code, aliases and functions in dot.mkshrc) from being overridden by aliases and, in some cases, shell functions (i.e. permit overriding but ignore it)
[tg] Implement GNU bash's enable for dot.mkshrc using magic aliases to redirect the builtins to external utilities; this differs from GNU bash in that enable takes precedence over functions
[tg] Move unaliasing an identifier when defining a POSIX-style function with the same name into lksh, as compatibility kludge
[tg] Korn shell style functions now have locally scoped shell options
[tg, iSKUNK] Change some ASCII-isms to be EBCDIC-aware or pluggable
[tg, Ypnose] Mention lksh build instructions on manpage and website
[tg] Overhaul signal handling; support new POSIX NSIG_MAX, add sysconf(_SC_NSIG) as a later TODO item
[tg] Fix signal bounds (1 <= signum < NSIG)
[tg] Improve manual pages, especially wrt. standards compliance
[tg, iSKUNK] Initial EBCDIC work for dot.mkshrc
[tg, iSKUNK] Add list of z/OS signals to Build.sh
[tg] Work around the sh(1) backslash-newline problem by moving the code triggering it out of *.opt and into the consumers
[colona] Bind another well-known ANSI Del key in the Emacs mode
[tg] Fix ${foo/*/x} pattern checks, spotted by izabera
[carstenh] Fix error output of cd function in dot.mkshrc
[tg] read partial returns in -N and timeout cases
[tg] Fix $LINENO inside PS1; spotted by carstenh
[tg] Ensure correct padding of at least 2 spaces in print_columns
[tg] Note issues with nested complex parameter expansions and follow-up bugfixes to expect
[OpenBSD] Some language fixes in documentation; comments
[tg] Reimplement multi-line command history (Debian #783978) + fixes
[Martijn Dekker] Fix command -v for "shell reserved words"
[tg] In dot.mkshrc make use of latest feature: local options
[tg] Fix ""$@ to emit a word
[tg] Change cat(1) hack to look first and not ignore builtin
[KO Myung-Hun] Begin porting mksh to OS/2
[komh, tg] Some generic minor bugfixes from OS/2 porting
[tg] Document mknod(8) isn’t normally part of mksh(1)
[tg] Quote arguments to : in build/test scripts as well
[tg] Add cat(1) hack for printf(1)-as-builtin: always prefer external
[tg] Explicitly use binary mode for any and all file I/O in stock mksh
[Ilya Zakharevich] Use termio, not termios(4), on OS/2
[tg] Set edchars to sane BSD defaults if any are NUL
[tg] Implement support for PC scancodes in Vi and Emacs editing mode
[komh] OS/2 uses ; as PATH separator plus support drive letters
2015-07-13 04:41:52 +00:00
wiz
40bbad7ac6 Comment out dependencies of the style
{perl>=5.16.6,p5-ExtUtils-ParseXS>=3.15}:../../devel/p5-ExtUtils-ParseXS
since pkgsrc enforces the newest perl version anyway, so they
should always pick perl, but sometimes (pkg_add) don't due to the
design of the {,} syntax.

No effective change for the above reason.

Ok joerg
2015-07-12 18:56:06 +00:00
ryoon
43fb5c8f65 Update to 0.5.8
Changelog:
2014-09-26  Herbert Xu <herbert@gondor.apana.org.au>

	* Small optimisation of command -pv change.
	* Set command -p path to /usr/sbin:/usr/bin:/sbin:/bin.
	* Change "characters" for printf precision to "bytes".
	* Release 0.5.8.

2014-09-26  Jonathan Nieder <jrnieder@gmail.com>

	* Clarify "trap '' signals" syntax in manual page.

2014-09-26  Adam Buchbinder <adam.buchbinder@gmail.com>

	* Clarify that 0 and EXIT are both acceptable for exit traps.

2014-09-26  Harald van Dijk <harald@gigawatt.nl>

	* command: allow combining -p with -v.
	* getjob: Fix off-by-one error for multiple of four job numbers

2013-08-23  Herbert Xu <herbert@gondor.apana.org.au>

	* Propagate EXP_QPAT in subevalvar.
	* Initialise OPTIND after importing environment.
	* Fixed argument parsing crash in test.

2013-03-12  Peter Rosin <peda@lysator.liu.se>

	* Add newline when tracing in poplocalvars.

2013-01-10  Jérémie Courrèges-Anglas <jca+dash@wxcvbn.org>

	* Markup fixes in manual for mandoc 1.12.1.

2012-12-03  Harald van Dijk <harald@gigawatt.nl>

	* Use PRIdMAX instead of %j in printf.

2012-07-20  Kimo Rosenbaum <kimor79@yahoo.com>

	* Fix typo for wait in manual.

2012-06-09  Christoph Mathys <eraserix@gmail.com>

	* Add support for ulimit -r.

2012-03-11  Jim Meyering  <meyering@redhat.com>

	* Avoid overflow for very long variable name.
	$ perl -le 'print "v"x(2**31+1) ."=1"' | dash

2012-02-25  Herbert Xu <herbert@gondor.apana.org.au>

	* Sanitise environment variable names on entry.

2011-08-17  David S. Miller <davem@davemloft.net>

	* Allow building without LINEO support.
	* Add top-level autogen.sh.

2011-07-26  Harald van Dijk <harald@gigawatt.nl>

	* Avoid imaxdiv when only one of the results is wanted.

2010-07-09  maximilian attems <max@stro.at>

	* Fix klibc DEBUG compilation.

2011-07-09  Herbert Xu <herbert@gondor.apana.org.au>

	* Merge SKIPFUNC/SKIPFILE and only clear SKIPFUNC when leaving dotcmd.
2015-06-14 11:04:24 +00:00
ryoon
1dbb0be094 Update to 5.0.8
* Include bugfix,
  ac26fafa03/

Changelog:
Changes from 5.0.7 to 5.0.8
---------------------------

- Global aliases can be created for syntactic tokens such as command
  separators (";", "&", "|", "&&", "||"), redirection operators, etc.
  Use at your own risk!  The POSIX_ALIASES option is interpreted more
  strictly to prevent expansion of these and other alias names containing
  quotes, glob metacharacters, parameter references, etc.

- There have been various further improvements to builtin handling
  with the POSIX_BUILTINS option (off by default) for compatibility with
  the POSIX standard.

- 'whence -v' is now more informative, and 'whence -S' shows you
  how a full chain of symbolic links resolves to a command.

- The 'p' parameter flag now allows an argument to be specified
  as a reference to a variable, e.g. ${(ps.$sep.)foo} to split $foo
  on a string given by $sep.

- The option FORCE_FLOAT now forces variables, not just constants,
  to floating point in arithmetic expressions.

- The type of an assignment in arithmetic expressions, e.g. the
  type seen by the variable res in $(( res = a = b )), is now
  more logical and C-like.

- The default binding of 'u' in vi command mode has changed to undo
  multiple changes when invoked repeatedly. '^R' is now bound to redo
  changes. To revert to toggling of the last edit use:
    bindkey -a u vi-undo-change

- Compatibility with Vim has been improved for vi editing mode. Most
  notably, Vim style text objects are supported and the region can be
  manipulated with vi commands in the same manner as Vim's visual mode.

- Elements of the watch variable may now be patterns.

- The logic for retrying history locking has been improved.

- Some rationalisations have been made to the zsh/db/gdbm module that
  should make it more useful and predictable in operation.
2015-06-13 12:57:28 +00:00
wiz
2e65d464e8 Recursive PKGREVISION bump for all packages mentioning 'perl',
having a PKGNAME of p5-*, or depending such a package,
for perl-5.22.0.
2015-06-12 10:50:58 +00:00
ryoon
1bc36c5cfb Update to 4.3.039
Changelog:
* Bugfixes (031-039)
2015-06-07 05:49:28 +00:00
ryoon
065d41a45c Convert ZSH_STATIC to PKG_OPTIONS.zsh=static. 2015-06-04 15:08:14 +00:00
kim
87e8cf7d68 Upgrade to 6.19.00
This is a mainly a bug fix release with few new features:

1. new cdtohome variable
2. locking in history files
3. history speedups.
2015-05-22 08:03:43 +00:00
wen
079d536444 Update to R50f
Upstream changes:
R50f is a required security and bugfix release:

[tg] Add a patch marker for vendor patch versioning to mksh.1
[tg] SECURITY: make unset HISTFILE actually work
[tg] Document some more issues with the current history code
[tg] Remove some unused code
[tg] RCSID-only sync with OpenBSD, for bogus and irrelevant changes
[tg] Also disable field splitting for alias 'local=\typeset'
[tg] Fix read -n-1 to not be identical to read -N-1
[tg] Several fixes and improvements to lksh(1) and mksh(1) manpages
[tg] More code (int  size_t), comment and testsuite fixes
[tg] Make dot.mkshrc more robust (LP#1441853)
[tg] Fix issues with IFS='\' read, found by edualbus
[enh, tg] Fix integer overflows related to file descriptor parsing, found by Pawel Wylecial (LP#1440685); reduce memory usage for I/O redirs
[tg] Document in the manpage how to set ±U according to the current locale settings via LANG/LC_* parameters (cf. Debian #782225)
[igli, tg] Some code cleanup and restructuring
[tg, oksh] Handle number parsing and storing more carefully

R50e is a required bugfix release:
[tg] Add more tests detailing behaviour difference from GNU bash
[tg] Introduce a memory leak for x=<< fixing use of freed memory instead, bug tracked as LP#1380389 still live
[tg] Add x+=<< parallel to x=<<
[tg, ormaaj, jilles] POSIX "command" loses builtin special-ness
[tg] Fix LP#1381965 and LP#1381993 (more field splitting)
[jilles] Update location of FreeBSD testsuite for test(1)
[Martin Natano] Remove dead NULL elements from Emacs keybindings
[tg, Stéphane Chazelas, Geoff Clare] Change several testcases for $*/$@ expansion with/without quotes to expected-fail, with even more to come ☹
[tg] Fix miscalculating required memory for encoding the double-quoted parts of a here document or here string delimiter, leading to a buffer overflow; discovered by zacts from IRC
[RT] Rename a function conflicting with a MacRelix system header
[tg] Use size_t (and ssize_t) consistently, stop using ptrdiff_t; fixes some arithmetics and S/390 bugs
[tg] Remove old workarounds for Clang 3.2 scan-build
[tg] Remove all Clang/Coverity assertions, making room for new checks
[tg] Fix NSIG generation on Debian sid gcc-snapshot
[tg] Make a testcase not fail in a corner case
[tg] Fix issues detected by GCC’s new sanitisers: data type of a value to be shifted constantly must be unsigned (what not, in C…); shebang check array accesses are always unsigned char
[tg] Be even more explicit wrt. POSIX in the manpage
[tg] Fix shebang / file magic decoding
[tg] More int → bool conversion
[tg] Let Build.sh be run by GNU bash 1.12.1 (Slackware 1.01)
[Stéphane Chazelas, tg] Fix here string parsing issue
[tg] Point out more future changes in the manpage
[tg] Call setgid(2), setegid(2), setuid(2) before seteuid(2)
[tg] Fix spurious empty line after ENOENT “whence -v”, found by Ypnose
[tg] Optimise dot.mkshrc and modernise it a bit
[tg] Use MAXPATHLEN from <sys/param.h> for PATH_MAX fallback
[tg] Some code cleanup and warnings fixes
[tg] Add options -a argv0 and -c to exec
[jsg] Prevent use-after-free when hitting multiple errors unwinding
[tg] Fix use of $* and $@ in scalar context: within [[ … ]] and after case (spotted by Stéphane Chazelas) and in here documents (spotted by tg@); fix here document expansion
[tg] Unbreak when $@ shares double quotes with others
[tg] Fix set -x in PS4 expansion infinite loop
2015-04-30 13:32:59 +00:00
mef
f78b25d997 Update to 0.12.4
----------------  (from debian/changelog)
posh (0.12.4) unstable; urgency=medium

  * Correct misspelling of "--".  closes: #774004.
  * Patch from Chris Lamb to make the build reproducible.
    closes: #777395.
  * Patch from John Salmon to use memmove instead of memcpy in
    debunk().  closes: #777493.

 -- Clint Adams <clint@debian.org>  Sun, 26 Apr 2015 14:20:19 -0400
2015-04-28 01:08:30 +00:00
jperkin
d58659ebd6 Avoid mixing _POSIX_C_SOURCE and C99 on SunOS. 2015-03-19 12:34:37 +00:00