dash (0.5.7-4ubuntu1) trusty; urgency=medium
* Merge from Debian testing, remaining changes:
- If the dash/sh question has not been seen by the user, reset it to
the default which is now true.
- Support build with profile feedback based optimization.
- Ensure correct strip is called when cross-building.
dash (0.5.7-2) unstable; urgency=high
* debian/diff/:
- 0004-BUILTIN-Fix-test-x-as-root...diff: new; teach "test -x"
as root not to return true for nonexecutable files on
platforms where faccessat() does return true in this case,
such as glibc-bsd in squeeze (thx Christoph Egger, closes:
#640334).
- 0005-SHELL-Disable-sh-c-...diff: back out the optimization
that makes dash -c "script" avoid a fork(). It caused
several packages to fail to build from source (thx Stéphane
Glondu, closes: #642922).
dash (0.5.7-2~exp1) experimental; urgency=low
* debian/diff/0003-VAR-Disable-LINENO-support.diff: remove
(closes: #540685, reopens: #582952).
* debian/dash.preinst:
- rewrite in C (closes: #604873).
- if dash's copy of /bin/sh is not already diverted, divert it
on behalf of bash. This ensures extracting a new version of
dash does not overwrite /bin/sh and handling of that symlink
is left to postinst. Likewise for .../man/man1/sh.1.gz.
- if /bin/sh is not executable (for example because it is a
symlink to a nonexistent file), replace it with a symlink to
dash. Likewise for /usr/share/man/man1/sh.1.gz.
* debian/dash.postinst:
- remove workaround for dpkg bug #160848 ("dpkg-divert --remove"
silently enabling --rename). The dash package already depends
on dpkg 1.15.0 or later, which has the fix.
- respect local diversions.
- clarify.
dash (0.5.7-1) unstable; urgency=low
* new upstream release.
* optimize dash -c "script" to notice the last command and
exec it without forking (thx Jilles Tjoelker; closes:
#436466). This change is inspired by a similar trick in
ksh, bash, and zsh and can be useful in commands passed to
system(), popen(), and Makefiles, where "exec" is usually
not explicitly used.
* remove spurious space in descriptions of PS1, PS2, PS4 (thx
Kalle Olavi Niemitalo; closes: #624715).
* test builtin: use faccessat if available (closes: #539909,
#556521) so ACLs and other corner cases can be handled
correctly.
* debian/diff/:
- remove patches applied upstream (i.e. all except 0045, 0046).
- 0045-SHELL-print-n-upon-EOF-...diff: rename to 0001-*.
- 0046-PARSER-Remove-backslash-...diff: rename to 0002-*.
- 0003-VAR-Disable-LINENO-support.diff: new; remove LINENO
support (closes: #582952, reopens: #540685).
* debian/po/sk.po: [INTL:sk] Slovak debconf templates (thx
Slavko; closes: #611556).
* debian/po/nl.po: [INTL:nl] Dutch debconf templates (thx
Jeroen Schot; closes: #624172).
dash (0.5.6.1-1~exp2) experimental; urgency=low
* debian/diff/:
- 0036-BUILTIN-Fix-corruption-of-reads...diff: remove; fixed
upstream.
- 0037-EVAL-Make-.-dev-null-return-.diff: remove; applied
upstream.
- 0034-SHELL-print-n-upon...diff: rename to 0045-*.
- 0035-PARSER-Remove-backslash...diff: rename to 0046-*.
- 0034...0044: new from the upstream "master" branch.
- 0042-EXPAND-Free-IFS-state...diff: new from upstream:
do not let parameter expansion in here documents corrupt word
splitting state (thx Aurelien Jarno; closes: #618023).
dash (0.5.6.1-1~exp1) experimental; urgency=low
* new upstream release.
* add preliminary LINENO support (closes: #540685, reopens:
#582952).
* fix corruption of redirections with byte 0x81 (closes:
#532302).
* honor tab as IFS whitespace in read (closes: #429251,
#607174).
* debian/diff/:
- remove patches applied upstream (0001-0016, 0020).
- 0021--INPUT-exit-127...diff: remove; patch is faulty
(reopens: #548687).
- 0022--EVAL-with-set-e-exit: remove; fixed upstream.
- 0019--SHELL-print-n-upon...diff: rename to 0034-*.
- 0001...0033: new from the upstream "master" branch.
- 0035-PARSER-Remove-backslash-before...diff: new from the
mailing list: remove backslashes used to escape closing
braces in ${...} expressions (thx Jilles Tjoelker).
- 0036-BUILTIN-Fix-corruption-of-reads...diff: new from the
mailing list: do not corrupt input by removing CTLESC bytes
('\x81') in readcmd (thx Alexey Gladkov).
- 0037-EVAL-Make-.-dev-null-return-0.diff: new from the
mailing list: dotcmd should yield status 0 when no command
is executed (thx Tim Allen, closes: #615922).
* debian/watch: document upstream source location.
dash (0.5.5.1-7.4) unstable; urgency=low
* Non-maintainer upload.
* dash.preinst: Do not error out if /bin/sh or its manpage is
not already present (thx Brian Potkin; closes: #606756).
* dash.postinst: Cope with missing files. Atomically replace
/bin/sh and its manpage rather than removing and re-creating them
(thx Adam D. Barratt).
dash (0.5.5.1-7.3) unstable; urgency=medium
* Non-maintainer upload.
* Modify the preinst to use /bin/bash rather than /bin/sh to avoid having
to rely on /bin/sh being available during unpack. (Closes: #546528)
* Adapt preinst diversion handling to be idempotent; thanks to
Jonathan Nieder.
dash (0.5.5.1-7.2) unstable; urgency=low
* Non-maintainer upload to correct previous NMU.
* Drop dependency on debconf as that change was not agreed
with the maintainer when the NMU was prepared.
dash (0.5.5.1-7.1) unstable; urgency=low
* Non-maintainer upload with maintainer approval.
* Add "debconf | debconf-2.0" to dependencies as this package is
using debconf
* Explicitly re-include the text of the BSD licence as
/usr/share/common-licenses/BSD could be dropped in the future
because of minor wording changes in the different version of
the BSD licence text
* Fix pending l10n issues. Debconf translations:
- Czech (Miroslav Kure). Closes: #598331
- Finnish (Esko Arajärvi). Closes: #600518
This is a temporary solution. The definitive solution is to skip the
debconf prompt completely, but that should be done by the other shells
once dash is the only one providing /bin/sh.
The package that diverted the file can now be queried with
--listpackage, and restoring the original file can be done by passing
--rename to the --remove call.
Additionally pass --package so that it is clear that local diversions
are not removed.
The code block is only executed if dash (the package) diverted the
file being processed. Pass --package to dpkg-divert to make it clear
(and to lintian) that a local diversion is not being removed, in any
case.
rename to 0023-*.diff.
* debian/diff/0001--MAN-rename-sh-to-dash-update-DESCRIPTION-...diff:
remove; applied upstream.
* debian/diff/0001-*...0022-*.diff: new from upstream git.
* debian/diff/0010-*.diff: Add preliminary LINENO support (closes:
#540685).
* debian/diff/0017-*.diff: Fix syntax array size (closes: #548493).
* debian/diff/0009-*.diff: Honor tab as IFS whitespace when
splitting fields in readcmd (closes: #429251).
* debian/diff/0024-INPUT-exit-127-if-command_file-is-given-...diff:
new; exit 127 if command_file is given but does not exist (closes:
#548743).
* debian/diff/0025-INPUT-exit-127-if-command_file-is-given-...diff:
new; exit 127 if command_file is given but is a directory (closes:
#548687).
* debian/diff/0026-EVAL-with-set-e-exit-the-shell-if-a-...diff: new;
with set -e exit the shell if a subshell exits non-zero (closes:
#514863).
* debian/diff/0027-EVAL-don-t-clear-eflag-when-forking-subshell.diff:
new; don't clear eflag when forking subshell (closes: #514863).