Bug#983071: unblock: xz-utils/5.2.5-1.1

2021-03-08 Thread Sebastian Andrzej Siewior
On 2021-03-08 18:54:22 [+0100], Paul Gevers wrote:
> Hi,
Hi,

> Please upload to unstable. As said, we'll let it age a bit there.

Thanks, uploaded.

> Paul

Sebastian



Processed: Re: Bug#983071: unblock: xz-utils/5.2.5-1.1

2021-03-08 Thread Debian Bug Tracking System
Processing control commands:

> tags -1 confirmed
Bug #983071 [release.debian.org] unblock: xz-utils/5.2.5-1.1
Added tag(s) confirmed.

-- 
983071: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=983071
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#983071: unblock: xz-utils/5.2.5-1.1

2021-03-08 Thread Paul Gevers
Control: tags -1 confirmed

Hi,

On 04-03-2021 12:32, Paul Gevers wrote:
> What I *think* we're going to do is accept the package in unstable, but
> have it age a bit in unstable before unblocking (which is going to
> happen automatically due to the hard freeze).

Please upload to unstable. As said, we'll let it age a bit there.

Paul



OpenPGP_signature
Description: OpenPGP digital signature


Bug#983071: unblock: xz-utils/5.2.5-1.1

2021-03-04 Thread Sebastian Andrzej Siewior
On 2021-03-04 12:32:48 [+0100], Paul Gevers wrote:
> Hi Sebastian
Hi,

> Can you please send a debdiff where you undo the renaming (where
> applicable), such that we get a better understanding of the real changes?

Sure. Please find attached.

> What I *think* we're going to do is accept the package in unstable, but
> have it age a bit in unstable before unblocking (which is going to
> happen automatically due to the hard freeze).

Oki.

> Paul

Sebastian
diff -Nru xz-utils-5.2.5/debian/changelog xz-utils-5.2.5/debian/changelog
--- xz-utils-5.2.5/debian/changelog	2020-12-28 11:25:06.0 +0100
+++ xz-utils-5.2.5/debian/changelog	2021-03-02 21:50:25.0 +0100
@@ -1,3 +1,11 @@
+xz-utils (5.2.5-1.1) experimental; urgency=medium
+
+  * Non-maintainer upload.
+  * Update the patches for #844770 and #975981 to what upstream applied.
+  * Add a SIGPIPE fix to xzgrep (similar to xzcmp in #844770).
+
+ -- Sebastian Andrzej Siewior   Tue, 02 Mar 2021 21:50:25 +0100
+
 xz-utils (5.2.5-1.0) unstable; urgency=medium
 
   * Non-maintainer upload.
diff -Nru xz-utils-5.2.5/debian/patches/0001-Scripts-Fix-exit-status-of-xzdiff-xzcmp.patch xz-utils-5.2.5/debian/patches/0001-Scripts-Fix-exit-status-of-xzdiff-xzcmp.patch
--- xz-utils-5.2.5/debian/patches/0001-Scripts-Fix-exit-status-of-xzdiff-xzcmp.patch	1970-01-01 01:00:00.0 +0100
+++ xz-utils-5.2.5/debian/patches/0001-Scripts-Fix-exit-status-of-xzdiff-xzcmp.patch	2021-03-02 21:50:25.0 +0100
@@ -0,0 +1,118 @@
+From: Lasse Collin 
+Date: Mon, 11 Jan 2021 22:01:51 +0200
+Subject: Scripts: Fix exit status of xzdiff/xzcmp.
+MIME-Version: 1.0
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: 8bit
+
+This is a minor fix since this affects only the situation when
+the files differ and the exit status is something else than 0.
+In such case there could be SIGPIPE from a decompression tool
+and that would result in exit status of 2 from xzdiff/xzcmp
+while the correct behavior would be to return 1 or whatever
+else diff or cmp may have returned.
+
+This commit omits the -q option from xz/gzip/bzip2/lzop arguments.
+I'm not sure why the -q was used in the first place, perhaps it
+hides warnings in some situation that I cannot see at the moment.
+Hopefully the removal won't introduce a new bug.
+
+With gzip the -q option was harmful because it made gzip return 2
+instead of >= 128 with SIGPIPE. Ignoring exit status 2 (warning
+from gzip) isn't practical because bzip2 uses exit status 2 to
+indicate corrupt input file. It's better if SIGPIPE results in
+exit status >= 128.
+
+With bzip2 the removal of -q seems to be good because with -q
+it prints nothing if input is corrupt. The other tools aren't
+silent in this situation even with -q. On the other hand, if
+zstd support is added, it will need -q since otherwise it's
+noisy in normal situations.
+
+Thanks to Étienne Mollier and Sebastian Andrzej Siewior.
+---
+ src/scripts/xzdiff.in | 35 +--
+ 1 file changed, 21 insertions(+), 14 deletions(-)
+
+diff --git a/src/scripts/xzdiff.in b/src/scripts/xzdiff.in
+index eb7825c..98ac0e5 100644
+--- a/src/scripts/xzdiff.in
 b/src/scripts/xzdiff.in
+@@ -116,23 +116,18 @@ elif test $# -eq 2; then
+   if test "$1$2" = --; then
+ xz_status=$(
+   exec 4>&1
+-  ($xz1 -cdfq - 4>&-; echo $? >&4) 3>&- |
++  ($xz1 -cdf - 4>&-; echo $? >&4) 3>&- |
+ eval "$cmp" - - >&3
+ )
+   elif # Reject Solaris 8's buggy /bin/bash 2.03.
+   echo X | (echo X | eval "$cmp" /dev/fd/5 - >/dev/null 2>&1) 5<&0; then
++# NOTE: xz_status will contain two numbers.
+ xz_status=$(
+   exec 4>&1
+-  ($xz1 -cdfq -- "$1" 4>&-; echo $? >&4) 3>&- |
+-( ($xz2 -cdfq -- "$2" 4>&-; echo $? >&4) 3>&- 5<&- &-; echo $? >&4) 3>&- |
++( ($xz2 -cdf -- "$2" 4>&-; echo $? >&4) 3>&- 5<&- &3) 5<&0
+ )
+-cmp_status=$?
+-case $xz_status in
+-  *[1-9]*) xz_status=1;;
+-  *) xz_status=0;;
+-esac
+-(exit $cmp_status)
+   else
+ F=`expr "/$2" : '.*/\(.*\)[-.][ablmotxz2]*$'` || F=$prog
+ tmp=
+@@ -161,10 +156,10 @@ elif test $# -eq 2; then
+   mkdir -- "${TMPDIR-/tmp}/$prog.$$" || exit 2
+   tmp="${TMPDIR-/tmp}/$prog.$$"
+ fi
+-$xz2 -cdfq -- "$2" > "$tmp/$F" || exit 2
++$xz2 -cdf -- "$2" > "$tmp/$F" || exit 2
+ xz_status=$(
+   exec 4>&1
+-  ($xz1 -cdfq -- "$1" 4>&-; echo $? >&4) 3>&- |
++  ($xz1 -cdf -- "$1" 4>&-; echo $? >&4) 3>&- |
+ eval "$cmp" - '"$tmp/$F"' >&3
+ )
+ cmp_status=$?
+@@ -175,7 +170,7 @@ elif test $# -eq 2; then
+   *)
+ xz_status=$(
+   exec 4>&1
+-  ($xz1 -cdfq -- "$1" 4>&-; echo $? 

Processed: Re: Bug#983071: unblock: xz-utils/5.2.5-1.1

2021-03-04 Thread Debian Bug Tracking System
Processing control commands:

> tags -1 moreinfo
Bug #983071 [release.debian.org] unblock: xz-utils/5.2.5-1.1
Added tag(s) moreinfo.

-- 
983071: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=983071
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems



Bug#983071: unblock: xz-utils/5.2.5-1.1

2021-03-04 Thread Paul Gevers
Control: tags -1 moreinfo

Hi Sebastian

On 02-03-2021 21:55, Sebastian Andrzej Siewior wrote:
>> Unfortunately we haven't made up our mind yet, but to get some (albeit
>> limited) exposure and autopkgtest coverage (via the pseudo-excuses) [2],
>> I think your chances for a go are higher if the proposed package is
>> available in experimental.
> 
> Just uploaded to experimental. I added the SIGPIPE fix to xzgrep (as
> mentioned).

The diff for your upload to experimental is awkward as you renamed
seemingly all patches, making the review much harder than it needs to be.

 19 files changed, 822 insertions(+), 628 deletions(-)

Can you please send a debdiff where you undo the renaming (where
applicable), such that we get a better understanding of the real changes?

What I *think* we're going to do is accept the package in unstable, but
have it age a bit in unstable before unblocking (which is going to
happen automatically due to the hard freeze).

Paul





OpenPGP_signature
Description: OpenPGP digital signature


Bug#983071: unblock: xz-utils/5.2.5-1.1

2021-03-02 Thread Sebastian Andrzej Siewior
On 2021-03-02 19:44:58 [+0100], Paul Gevers wrote:
> Hi Sebastian,
Hi Paul,

> Unfortunately we haven't made up our mind yet, but to get some (albeit
> limited) exposure and autopkgtest coverage (via the pseudo-excuses) [2],
> I think your chances for a go are higher if the proposed package is
> available in experimental.

Just uploaded to experimental. I added the SIGPIPE fix to xzgrep (as
mentioned).

> Paul

Sebastian



Bug#983071: unblock: xz-utils/5.2.5-1.1

2021-03-02 Thread Paul Gevers
Hi Sebastian,

On 18-02-2021 23:57, Sebastian Andrzej Siewior wrote:
> Please unblock package xz-utils.

xz-utils is listed on our (build-)essential list [1]. Because the
package is potentially influencing the build artifacts, we're reluctant
to allow changes at this moment because corner case use case regressions
may go unnoticed for some time and require lots of work to fix (tracking
all packages that need rebuilding).

Unfortunately we haven't made up our mind yet, but to get some (albeit
limited) exposure and autopkgtest coverage (via the pseudo-excuses) [2],
I think your chances for a go are higher if the proposed package is
available in experimental.

Paul

[1] https://release.debian.org/bullseye/essential-and-build-essential.txt
[2] https://release.debian.org/britney/pseudo-excuses-experimental.yaml



OpenPGP_signature
Description: OpenPGP digital signature


Bug#983071: unblock: xz-utils/5.2.5-1.1

2021-02-18 Thread Sebastian Andrzej Siewior
Package: release.debian.org
User: release.debian@packages.debian.org
Usertags: unblock
Severity: normal

Please unblock package xz-utils.

I NMUed xz-utils to 5.2.5-1.0 fixing a few bugs including #844770 and
#975981. Both bugs were fixed by upstream differently / more complete.
I prepared an NMU 5.2.5-1.1, #983067 by replacing my patches with
upstream patches:
- #844770 "xzcmp: SIGPIPE is raised because CMP does exit while the XZ
  commands are still writing to the pipe"
  
https://git.tukaani.org/?p=xz.git;a=commitdiff;h=194029ffaf74282a81f0c299c07f73caca3232ca

- #975981 "xz-utils: "unxz -k" should not refuse to decompress a file
  because it has more than one hard link"
  
https://git.tukaani.org/?p=xz.git;a=commitdiff;h=074259f4f3966aeac6edb205fecbc1a8d2b58bb2

I would like to avoid having different changes to the package (and
possibly creating new bugs) and therefore keep what upstream applied
here. The patches were reviewed at least by the maintainer of the
upstream package.
During that review a similar SIGPIPE problem was found and fixed in
xzgrep:
   Scripts: Fix exit status of xzgrep.
   
https://git.tukaani.org/?p=xz.git;a=commitdiff;h=73c555b3077c19dda29b6f4592ced2af876f8333

This bug was never reported and fixed within the Debian package. If it
is okay with the release then I would backport the patch and NMU it as
part of the 5.2.5-1.1 upload.
Otherwise I would stick with the replacement of the two patches as can
been seen in the attached debdiff.
The package was not yet uploaded, I plan to upload it to delayed/5 once
the release team agrees.

unblock xz-utils/5.2.5-1.1

Sebastian
diff -Nru xz-utils-5.2.5/debian/changelog xz-utils-5.2.5/debian/changelog
--- xz-utils-5.2.5/debian/changelog 2020-12-28 11:25:06.0 +0100
+++ xz-utils-5.2.5/debian/changelog 2021-02-18 23:12:30.0 +0100
@@ -1,3 +1,10 @@
+xz-utils (5.2.5-1.1) unstable; urgency=medium
+
+  * Non-maintainer upload.
+  * Update the patches for #844770 and #975981 to what upstream applied.
+
+ -- Sebastian Andrzej Siewior   Thu, 18 Feb 2021 
23:12:30 +0100
+
 xz-utils (5.2.5-1.0) unstable; urgency=medium
 
   * Non-maintainer upload.
diff -Nru 
xz-utils-5.2.5/debian/patches/0001-Scripts-Fix-exit-status-of-xzdiff-xzcmp.patch
 
xz-utils-5.2.5/debian/patches/0001-Scripts-Fix-exit-status-of-xzdiff-xzcmp.patch
--- 
xz-utils-5.2.5/debian/patches/0001-Scripts-Fix-exit-status-of-xzdiff-xzcmp.patch
1970-01-01 01:00:00.0 +0100
+++ 
xz-utils-5.2.5/debian/patches/0001-Scripts-Fix-exit-status-of-xzdiff-xzcmp.patch
2021-02-17 23:52:05.0 +0100
@@ -0,0 +1,118 @@
+From: Lasse Collin 
+Date: Mon, 11 Jan 2021 22:01:51 +0200
+Subject: Scripts: Fix exit status of xzdiff/xzcmp.
+MIME-Version: 1.0
+Content-Type: text/plain; charset="utf-8"
+Content-Transfer-Encoding: 8bit
+
+This is a minor fix since this affects only the situation when
+the files differ and the exit status is something else than 0.
+In such case there could be SIGPIPE from a decompression tool
+and that would result in exit status of 2 from xzdiff/xzcmp
+while the correct behavior would be to return 1 or whatever
+else diff or cmp may have returned.
+
+This commit omits the -q option from xz/gzip/bzip2/lzop arguments.
+I'm not sure why the -q was used in the first place, perhaps it
+hides warnings in some situation that I cannot see at the moment.
+Hopefully the removal won't introduce a new bug.
+
+With gzip the -q option was harmful because it made gzip return 2
+instead of >= 128 with SIGPIPE. Ignoring exit status 2 (warning
+from gzip) isn't practical because bzip2 uses exit status 2 to
+indicate corrupt input file. It's better if SIGPIPE results in
+exit status >= 128.
+
+With bzip2 the removal of -q seems to be good because with -q
+it prints nothing if input is corrupt. The other tools aren't
+silent in this situation even with -q. On the other hand, if
+zstd support is added, it will need -q since otherwise it's
+noisy in normal situations.
+
+Thanks to Étienne Mollier and Sebastian Andrzej Siewior.
+---
+ src/scripts/xzdiff.in | 35 +--
+ 1 file changed, 21 insertions(+), 14 deletions(-)
+
+diff --git a/src/scripts/xzdiff.in b/src/scripts/xzdiff.in
+index eb7825c..98ac0e5 100644
+--- a/src/scripts/xzdiff.in
 b/src/scripts/xzdiff.in
+@@ -116,23 +116,18 @@ elif test $# -eq 2; then
+   if test "$1$2" = --; then
+ xz_status=$(
+   exec 4>&1
+-  ($xz1 -cdfq - 4>&-; echo $? >&4) 3>&- |
++  ($xz1 -cdf - 4>&-; echo $? >&4) 3>&- |
+ eval "$cmp" - - >&3
+ )
+   elif # Reject Solaris 8's buggy /bin/bash 2.03.
+   echo X | (echo X | eval "$cmp" /dev/fd/5 - >/dev/null 2>&1) 
5<&0; then
++# NOTE: xz_status will contain two numbers.
+ xz_status=$(
+   exec 4>&1
+-  ($xz1 -cdfq -- "$1" 4>&-; echo $? >&4) 3>&- |
+-( ($xz2 -cdfq -- "$2" 4>&-; echo $?