Subject: Re: [platform-testers] new snapshot available: gzip-1.8.32-4606

From: Bruno Haible <[email-masked]>
Date: Sat, 28 Oct 2017 02:58:50 +0200

Test result on Mac OS X 10.5.8, compiling in 32-bit mode:

============================================
   gzip 1.8.32-4606: tests/test-suite.log
============================================

# TOTAL: 20
# PASS:  19
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: timestamp
===============

++ initial_cwd_=/Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests
+++ testdir_prefix_
+++ printf gt
++ pfx_=gt
+++ mktempd_ /Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests gt-timestamp.XXXX
+++ case $# in
+++ destdir_=/Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests
+++ template_=gt-timestamp.XXXX
+++ MAX_TRIES_=4
+++ case $destdir_ in
+++ destdir_slash_=/Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/
+++ case $template_ in
++++ unset TMPDIR
+++ d=/Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/gt-timestamp.bFAR
+++ case $d in
+++ :
+++ test -d /Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/gt-timestamp.bFAR
++++ ls -dgo /Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/gt-timestamp.bFAR
+++ perms='drwx------ 2 68 Oct 28 02:47 /Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/gt-timestamp.bFAR'
+++ case $perms in
+++ :
+++ echo /Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/gt-timestamp.bFAR
+++ return
++ test_dir_=/Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/gt-timestamp.bFAR
++ cd /Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/gt-timestamp.bFAR
++ gl_init_sh_nl_='
'
++ IFS=' 
'
++ for sig_ in 1 2 3 13 15
+++ expr 1 + 128
++ eval 'trap '\''Exit 129'\'' 1'
+++ trap 'Exit 129' 1
++ for sig_ in 1 2 3 13 15
+++ expr 2 + 128
++ eval 'trap '\''Exit 130'\'' 2'
+++ trap 'Exit 130' 2
++ for sig_ in 1 2 3 13 15
+++ expr 3 + 128
++ eval 'trap '\''Exit 131'\'' 3'
+++ trap 'Exit 131' 3
++ for sig_ in 1 2 3 13 15
+++ expr 13 + 128
++ eval 'trap '\''Exit 141'\'' 13'
+++ trap 'Exit 141' 13
++ for sig_ in 1 2 3 13 15
+++ expr 15 + 128
++ eval 'trap '\''Exit 143'\'' 15'
+++ trap 'Exit 143' 15
++ trap remove_tmp_ 0
+ path_prepend_ ..
+ test 1 '!=' 0
+ path_dir_=..
+ case $path_dir_ in
+ abs_path_dir_=/Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/..
+ case $abs_path_dir_ in
+ PATH=/Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/..:/Users/bruno/data/build/gzip-1.8.32-4606/build-32:.:/Users/bruno/data/local-macos/bin:/opt/local/bin:/sw/bin:/sw/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:/usr/X11R6/bin
+ create_exe_shims_ /Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/..
+ case $EXEEXT in
+ return 0
+ shift
+ test 0 '!=' 0
+ export PATH
+ TZ=UTC0
+ export TZ
+ for time in 190101010000 196912312359.59 197001010000 210602070628.16
+ touch -t 190101010000 in
touch: invalid date format '190101010000'
+ rm -f in.gz in
+ for time in 190101010000 196912312359.59 197001010000 210602070628.16
+ touch -t 196912312359.59 in
+ returns_ 2 gzip in
gzip: in: warning: file timestamp out of range for gzip format
+ rm -f in.gz in
+ for time in 190101010000 196912312359.59 197001010000 210602070628.16
+ touch -t 197001010000 in
+ returns_ 2 gzip in
gzip: in: warning: file timestamp out of range for gzip format
+ rm -f in.gz in
+ for time in 190101010000 196912312359.59 197001010000 210602070628.16
+ touch -t 210602070628.16 in
touch: invalid date format '210602070628.16'
+ rm -f in.gz in
+ for time in 197001010000.01 203801190314.07 203801190314.08 210602070628.15
+ touch -t 197001010000.01 in
+ gzip in
+ rm -f in.gz in
+ for time in 197001010000.01 203801190314.07 203801190314.08 210602070628.15
+ touch -t 203801190314.07 in
+ gzip in
+ rm -f in.gz in
+ for time in 197001010000.01 203801190314.07 203801190314.08 210602070628.15
+ touch -t 203801190314.08 in
touch: invalid date format '203801190314.08'
+ rm -f in.gz in
+ for time in 197001010000.01 203801190314.07 203801190314.08 210602070628.15
+ touch -t 210602070628.15 in
touch: invalid date format '210602070628.15'
+ rm -f in.gz in
+ touch -t 210602070628.15 in
touch: invalid date format '210602070628.15'
+ printf '\037\213\10\0\377\377\377\377\0\377\3\0\0\0\0\0\0\0\0\0'
+ returns_ 2 gzip -Nlv
method  crc     date  time           compressed        uncompressed  ratio uncompressed_name
defla 00000000 Oct 28 00:47                  20                   0   0.0% stdout
+ fail=1
+ :
+ gzip --no-name
+ Exit 1
+ set +e
+ exit 1
+ exit 1
+ remove_tmp_
+ __st=1
+ cleanup_
+ :
+ test '' = yes
+ cd /Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests
+ chmod -R u+rwx /Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/gt-timestamp.bFAR
+ rm -rf /Users/bruno/data/build/gzip-1.8.32-4606/build-32/tests/gt-timestamp.bFAR
+ exit 1
FAIL timestamp (exit status: 1)

============================================================================
Testsuite summary for gzip 1.8.32-4606
============================================================================
# TOTAL: 20
# PASS:  19
# SKIP:  0
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0
============================================================================
See tests/test-suite.log
Please report to [email-masked]
============================================================================
make[4]: *** [test-suite.log] Error 1

The 'touch' program that rejects distant timestamps is:

$ touch --version
touch (GNU coreutils) 8.24.161-1204d
...

I think the problem is this comment:
# On platforms that fail to support timestamps within gzip's range,
# test that gzip warns when converting them from gzip format.

Gzip's behaviour depends on libc, and what the 'touch' program is doing
is a different thing. It's incorrect to assume that libc's behaviour and
touch's behaviour are consistent.

Bruno