From 107107ad1fada5d65d1a86f2af78c3df1d45e1d3 Mon Sep 17 00:00:00 2001 From: Pavel Raiskup Date: Mon, 25 Feb 2019 08:20:57 +0100 Subject: [PATCH] rebase: latest upstream release v1.32 Per upstream release notes: http://lists.gnu.org/archive/html/info-gnu/2019-02/msg00010.html Version: 1.32-1 --- sources | 4 +- tar-1.31-dirrem-tests.patch | 81 --------- tar-1.31-racy-compress-tests.patch | 271 ----------------------------- tar.spec | 10 +- 4 files changed, 8 insertions(+), 358 deletions(-) delete mode 100644 tar-1.31-dirrem-tests.patch delete mode 100644 tar-1.31-racy-compress-tests.patch diff --git a/sources b/sources index 79009cd..6dc50e0 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (tar-1.31.tar.xz) = 2185fbbe53d4fe3eb688ebc8c2fa800db2599a282c07007358d0a011394aafcf27a80600d044bb4fc299a172d3d95f953106be651db33eb6e5555bd24cad02aa -SHA512 (tar-1.31.tar.xz.sig) = bdf5e6280c07aceb3277b6f57e20a7de01124de5de24e9457738dd70f8702ac7487fb6161f9383db151c1bddb4e5fca8b016e72631ce7bced6b38cf5ca56b990 +SHA512 (tar-1.32.tar.xz) = 1bd13854009b6ee08958481738e6bf661e40216a2befe461d06b4b350eb882e431b3a4eeea7ca1d35d37102df76194c9d933df2b18b3c5401350e9fc17017750 +SHA512 (tar-1.32.tar.xz.sig) = 28eaf5db3ad32b50ce08891e245a84482771eef37b62c4266d9867f7504e0b9f6ad9fc05a53efda531bcb7e7bdfdc79bace81785d1a12556a355821db9bbd7d8 diff --git a/tar-1.31-dirrem-tests.patch b/tar-1.31-dirrem-tests.patch deleted file mode 100644 index c6609a7..0000000 --- a/tar-1.31-dirrem-tests.patch +++ /dev/null @@ -1,81 +0,0 @@ -From f86722c34c92f265bc9a20cb171d2fcfeab7d341 Mon Sep 17 00:00:00 2001 -From: Sergey Poznyakoff -Date: Mon, 14 Jan 2019 12:26:59 +0200 -Subject: [PATCH] Fix expected output in dirrem tests. - -In both tests, the "file changed as we read it" warning might be -produced for dir/sub, depending on the ctime resolution and timing. -The problem was fixed by 64b43fdf70d82c39eb2ca900cd4f8e49, but regressed -after e7cd377f7801d42aa8e07addff93d2150666c237, which removed 1 second -delays between each pair of checkpoints. Since the presense or absense -of this warning is irrelevant for the test, it is now suppressed. - -* tests/dirrem01.at: Suppress the file-changed warning. -* tests/dirrem02.at: Likewise. ---- - tests/dirrem01.at | 15 ++++++++++----- - tests/dirrem02.at | 5 +++-- - 2 files changed, 13 insertions(+), 7 deletions(-) - -diff --git a/tests/dirrem01.at b/tests/dirrem01.at -index 0a9c9e5..24bf392 100644 ---- a/tests/dirrem01.at -+++ b/tests/dirrem01.at -@@ -27,9 +27,13 @@ - # it prints a warning and exits with TAREXIT_DIFFERS. - # - # This test checks whether this behaviour is mimicked for directories, too. -- --# Remark: This file is based on 'filerem01.at', which is the test-case for --# a vanishing file. -+# -+# Notes: -+# 1. This file is based on 'filerem01.at', which is the test-case for -+# a vanishing file. -+# 2. Depending on the stat.st_ctime resolution, the "file changed as we -+# read it" warning might be issued for dir/sub. The test takes care to -+# suppress it. - - AT_SETUP([directory removed before reading]) - AT_KEYWORDS([create incremental listed dirchange dirrem dirrem01]) -@@ -48,13 +52,14 @@ esac - - genfile --run --checkpoint=$CPT --unlink dir/sub/file2 --unlink dir/sub -- \ - tar --blocking-factor=1 -c -f archive.tar \ -- --listed-incremental db -v dir >/dev/null -+ --listed-incremental db \ -+ --warning=no-file-changed \ -+ -v dir >/dev/null - ], - [1], - [ignore], - [tar: dir: Directory is new - tar: dir/sub: Directory is new --tar: dir/sub: file changed as we read it - tar: dir/sub: File removed before we read it - ],[],[],[gnu,posix]) - -diff --git a/tests/dirrem02.at b/tests/dirrem02.at -index c314484..3c63bbe 100644 ---- a/tests/dirrem02.at -+++ b/tests/dirrem02.at -@@ -45,13 +45,14 @@ esac - - genfile --run --checkpoint=$CPT --unlink dir/sub/file2 --unlink dir/sub -- \ - tar --blocking-factor=1 -c -f archive.tar \ -- --listed-incremental db -v dir dir/sub >/dev/null -+ --listed-incremental db \ -+ --warning=no-file-changed \ -+ -v dir dir/sub >/dev/null - ], - [2], - [ignore], - [tar: dir: Directory is new - tar: dir/sub: Directory is new --tar: dir/sub: file changed as we read it - tar: dir/sub: Cannot open: No such file or directory - tar: Exiting with failure status due to previous errors - ],[],[],[gnu,posix]) --- -2.20.1 - diff --git a/tar-1.31-racy-compress-tests.patch b/tar-1.31-racy-compress-tests.patch deleted file mode 100644 index 300b626..0000000 --- a/tar-1.31-racy-compress-tests.patch +++ /dev/null @@ -1,271 +0,0 @@ -From 9af3ae33108e5a1d281d75d29938fe8c6ffcd218 Mon Sep 17 00:00:00 2001 -From: Sergey Poznyakoff -Date: Mon, 14 Jan 2019 18:08:21 +0200 -Subject: [PATCH] Fix compression tests - -Existing compression tests used tar with compiled-in defaults. However, -some of the defaults are sure to create archives that are not byte-to-byte -reproducible (e.g. DEFAULT_ARCHIVE_FORMAT=POSIX, because the name field -in posix extended headers uses PID of the creating process by default). -Moreover, some compressors (e.g. gzip) store current timestamp in -the file header when compressing from stdin, so that using cmp on the -two created archives as the tests did is error-prone. Another problem -is that the tests implicitly assumed that tar uses archive suffix to -recognize its format when extracting, which isn't the case. Finally, -there's hardly any reason in using sed to create m4 sources, when -everything can be achieved by m4 itself. - -* tests/Makefile.am: Remove generation of compress-*.at files. -* tests/compress.at.in: Remove. -* tests/compress.m4: New file. -* tests/testsuite.at: Include compress.m4, use TAR_CHECK_COMPRESS to -check compression options. ---- - tests/Makefile.am | 45 ++--------------------------- - tests/compress.at.in | 67 -------------------------------------------- - tests/compress.m4 | 56 ++++++++++++++++++++++++++++++++++++ - tests/testsuite.at | 13 +++++---- - 4 files changed, 65 insertions(+), 116 deletions(-) - delete mode 100644 tests/compress.at.in - create mode 100644 tests/compress.m4 - -diff --git a/tests/Makefile.am b/tests/Makefile.am -index 4750acb..a29f626 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -19,7 +19,7 @@ - - EXTRA_DIST = $(TESTSUITE_AT) \ - testsuite package.m4 star/README star/quicktest.sh \ -- compress.at.in -+ compress.m4 - - DISTCLEANFILES = atconfig $(check_SCRIPTS) - MAINTAINERCLEANFILES = Makefile.in $(TESTSUITE) -@@ -47,6 +47,7 @@ $(srcdir)/package.m4: $(top_srcdir)/configure.ac - - TESTSUITE_AT = \ - testsuite.at\ -+ compress.m4\ - T-cd.at\ - T-dir00.at\ - T-dir01.at\ -@@ -70,12 +71,6 @@ TESTSUITE_AT = \ - chtype.at\ - comprec.at\ - comperr.at\ -- compress-zstd.at\ -- compress-xz.at\ -- compress-bzip2.at\ -- compress-gzip.at\ -- compress-lzip.at\ -- compress-lzop.at\ - delete01.at\ - delete02.at\ - delete03.at\ -@@ -277,42 +272,6 @@ TESTSUITE_AT = \ - selacl01.at\ - capabs_raw01.at - --CLEANFILES += compress-zstd.at --compress-zstd.at: compress.at.in -- $(AM_V_GEN)rm -rf $@ $@-t -- $(AM_V_at)sed 's/@tool@/zstd/g;s/@suff@/zst/g;s/@suff2@/tzst/g;' \ -- $(srcdir)/compress.at.in > $@-t && chmod a-w $@-t && mv $@-t $@ -- --CLEANFILES += compress-gzip.at --compress-gzip.at: compress.at.in -- $(AM_V_GEN)rm -rf $@ $@-t -- $(AM_V_at)sed 's/@tool@/gzip/g;s/@suff@/gz/g;s/@suff2@/tgz/g;' \ -- $(srcdir)/compress.at.in > $@-t && chmod a-w $@-t && mv $@-t $@ -- --CLEANFILES += compress-xz.at --compress-xz.at: compress.at.in -- $(AM_V_GEN)rm -rf $@ $@-t -- $(AM_V_at)sed 's/@tool@/xz/g;s/@suff@/xz/g;s/@suff2@/txz/g;' \ -- $(srcdir)/compress.at.in > $@-t && chmod a-w $@-t && mv $@-t $@ -- --CLEANFILES += compress-bzip2.at --compress-bzip2.at: compress.at.in -- $(AM_V_GEN)rm -rf $@ $@-t -- $(AM_V_at)sed 's/@tool@/bzip2/g;s/@suff@/bz2/g;s/@suff2@/tbz2/g;' \ -- $(srcdir)/compress.at.in > $@-t && chmod a-w $@-t && mv $@-t $@ -- --CLEANFILES += compress-lzip.at --compress-lzip.at: compress.at.in -- $(AM_V_GEN)rm -rf $@ $@-t -- $(AM_V_at)sed 's/@tool@/lzip/g;s/@suff@/lz/g;s/@suff2@//g;' \ -- $(srcdir)/compress.at.in > $@-t && chmod a-w $@-t && mv $@-t $@ -- --CLEANFILES += compress-lzop.at --compress-lzop.at: compress.at.in -- $(AM_V_GEN)rm -rf $@ $@-t -- $(AM_V_at)sed 's/@tool@/lzop/g;s/@suff@/lzo/g;s/@suff2@//g;' \ -- $(srcdir)/compress.at.in > $@-t && chmod a-w $@-t && mv $@-t $@ -- - distclean-local: - -rm -rf download - -diff --git a/tests/compress.at.in b/tests/compress.at.in -deleted file mode 100644 -index 91a6af2..0000000 ---- a/tests/compress.at.in -+++ /dev/null -@@ -1,67 +0,0 @@ --# Process this file with autom4te to create testsuite. -*- Autotest -*- -- --# Test suite for GNU tar. --# Copyright 2018-2019 Free Software Foundation, Inc. -- --# This file is part of GNU tar. -- --# GNU tar is free software; you can redistribute it and/or modify --# it under the terms of the GNU General Public License as published by --# the Free Software Foundation; either version 3 of the License, or --# (at your option) any later version. -- --# GNU tar is distributed in the hope that it will be useful, --# but WITHOUT ANY WARRANTY; without even the implied warranty of --# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --# GNU General Public License for more details. -- --# You should have received a copy of the GNU General Public License --# along with this program. If not, see . -- --# tar can create/decompress @tool@-compressed tarballs -- --AT_SETUP([compress: @tool@]) --AT_KEYWORDS([compression @tool@]) -- --unset TAR_OPTIONS -- --AT_CHECK([ --AT_GZIP_PREREQ([@tool@]) -- --touch empty --# Create with --@tool@: --tar --@tool@ -cf - empty 2>err > k.tar.@suff@ || exit 1 --test -s err && exit 1 --tar tf k.tar.@suff@ 2>err > out || exit 1 --test "$(cat out)" = empty || exit 1 --test -s err && exit 1 -- --# Ensure -ac works with an -f-specified .@suff@-suffixed name. --tar -acf k2.tar.@suff@ empty 2>err > out || exit 1 --cmp k2.tar.@suff@ k.tar.@suff@ || exit 1 --test -s err && exit 1 -- --# Extraction: ensure the .@suff@ suffix is recognized. --rm -f empty || exit 1 --tar xf k.tar.@suff@ 2>err > out || exit 1 --test -s err && exit 1 --test -f empty || exit 1 -- --if test -n '@suff2@'; then -- # Extraction: ensure the .@suff2@ suffix is also recognized. -- mv k.tar.@suff@ k.@suff2@ || exit 1 -- rm -f empty -- tar xf k.@suff2@ 2>err > out || exit 1 -- test -s err && exit 1 -- test -f empty || exit 1 --else -- : --fi -- --], --[0], --[], --[], --[],[]) -- --AT_CLEANUP -diff --git a/tests/compress.m4 b/tests/compress.m4 -new file mode 100644 -index 0000000..1f22632 ---- /dev/null -+++ b/tests/compress.m4 -@@ -0,0 +1,56 @@ -+# This file is part of GNU tar testsuite. -*- Autotest -*- -+# Copyright 2018-2019 Free Software Foundation, Inc. -+# -+# GNU tar is free software; you can redistribute it and/or modify -+# it under the terms of the GNU General Public License as published by -+# the Free Software Foundation; either version 3 of the License, or -+# (at your option) any later version. -+# -+# GNU tar is distributed in the hope that it will be useful, -+# but WITHOUT ANY WARRANTY; without even the implied warranty of -+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -+# GNU General Public License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with this program. If not, see . -+ -+dnl TAR_CHECK_COMPRESS(TOOL, SUF[, SUF2]) -+dnl Tests whether tar can create archives using TOOL (i.e. using the --TOOL -+dnl command line option). SUF and optional SUF2 are suffixes for created -+dnl archives (without leading dot). Tar should be able to use TOOL to -+dnl automatically decompress archives with names ending on these suffixes. -+m4_define([TAR_CHECK_COMPRESS], -+[AT_SETUP([compress: $1]) -+AT_KEYWORDS([compression compress-$1 $1]) -+ -+AT_CHECK([ -+AT_GZIP_PREREQ($1) -+unset TAR_OPTIONS -+ -+touch empty -+set -e -+: create with --$1 -+tar --$1 -cf k.tar.$2 empty -+tar tf k.tar.$2 -+ -+m4_foreach([SUF], m4_quote(m4_shift($@)), -+[ -+echo testing .SUF -+tar -acf k2.tar.SUF empty -+cat k2.tar.SUF | $1 -d > k.SUF.tar -+tar tf k.SUF.tar -+]) -+ -+# Extraction: ensure compressed format is correctly recognized -+rm -f empty -+tar xf k.tar.$2 -+test -f empty -+], -+[0], -+[empty -+m4_foreach([SUF],m4_quote(m4_shift($@)),[testing .SUF -+empty -+])]) -+ -+AT_CLEANUP -+]) -diff --git a/tests/testsuite.at b/tests/testsuite.at -index f751bcf..ce25c96 100644 ---- a/tests/testsuite.at -+++ b/tests/testsuite.at -@@ -217,13 +217,14 @@ m4_include([opcomp05.at]) - m4_include([opcomp06.at]) - - AT_BANNER([Compression]) --m4_include([compress-gzip.at]) --m4_include([compress-bzip2.at]) --m4_include([compress-xz.at]) -+m4_include([compress.m4]) -+TAR_CHECK_COMPRESS(gzip, gz, tgz) -+TAR_CHECK_COMPRESS(bzip2, bz2, tbz2) -+TAR_CHECK_COMPRESS(xz, xz, txz) - dnl: omit lzma, because it would fail due to magic number mismatch --m4_include([compress-lzip.at]) --m4_include([compress-lzop.at]) --m4_include([compress-zstd.at]) -+TAR_CHECK_COMPRESS(lzip, lz) -+TAR_CHECK_COMPRESS(lzop, lzo) -+TAR_CHECK_COMPRESS(zstd, zst, tzst) - - AT_BANNER([Positional options]) - m4_include([positional01.at]) --- -2.20.1 - diff --git a/tar.spec b/tar.spec index 4f7c376..baf211e 100644 --- a/tar.spec +++ b/tar.spec @@ -4,8 +4,8 @@ Summary: A GNU file archiving program Name: tar Epoch: 2 -Version: 1.31 -Release: 4%{?dist} +Version: 1.32 +Release: 1%{?dist} License: GPLv3+ URL: http://www.gnu.org/software/tar/ @@ -18,8 +18,6 @@ Patch2: tar-1.28-vfatTruncate.patch Patch3: tar-1.29-wildcards.patch Patch4: tar-1.28-atime-rofs.patch Patch9: tar-1.28-document-exclude-mistakes.patch -Patch10: tar-1.31-dirrem-tests.patch -Patch11: tar-1.31-racy-compress-tests.patch BuildRequires: gcc BuildRequires: autoconf automake texinfo gettext libacl-devel @@ -113,6 +111,10 @@ make check || ( %changelog +* Mon Feb 25 2019 Pavel Raiskup - 1.32-1 +- the latest upstream release, per release notes + http://lists.gnu.org/archive/html/info-gnu/2019-02/msg00010.html + * Mon Feb 04 2019 Pavel Raiskup - 1.31-4 - fix racy compress: gzip test