Subject: new snapshot available: gzip-1.8.18-00e6

From: Jim Meyering <[email-masked]>
Date: Mon, 06 Feb 2017 10:38:52 -0800

In the eight months since gzip-1.8 there have been some bug fixes, along
with many improvements via gnulib, so here's a snapshot of the latest.
Please test it and let us know how that goes.

gzip snapshot:
  http://meyering.net/gzip/gzip-ss.tar.xz      728 KB
  http://meyering.net/gzip/gzip-ss.tar.xz.sig
  http://meyering.net/gzip/gzip-1.8.18-00e6.tar.xz

NEWS
=====================================
** Bug fixes

  When converting time stamps to gzip file format (32-bit unsigned) or
  to time_t format (system-dependent), gzip now ignores out-of-range
  values instead of shoehorning them into the destination format,
  sometimes with undefined behavior.  This affects time stamps before
  1970 and after 2106, and time stamps after 2038 on platforms with
  32-bit signed time_t.  [bug present since the beginning]

  Support for VMS and Amiga has been removed.  It was not working anyway,
  and it reportedly caused file name glitches on MS-Windowsish platforms.

=====================================
Changes in gzip since v1.8:

Jim Meyering (11):
      maint: post-release administrivia
      maint: arrange for better URLs in generated announcement message
      maint: fix gzip-specific syntax-check rule
      gnulib: update to latest
      maint: avoid unwarranted "make syntax-check" failure
      maint: update .gitignore files to ignore more generated files
      maint: use "returns_" rather than explicit comparison with "$?"
      maint: update gnulib and copyright dates for 2017
      maint: tweak a distcheck rule
      maint: change "time stamp" to "timestamp" globally
      gnulib: update to latest; and tests/init.sh and bootstrap

Paul Eggert (7):
      gzip: drop mentions of Amiga, VMS
      gzip: fix port to Atari by not defining ASMV
      gzip: fix some Y2038 etc. bugs
      * doc/gzip.texi: Fix off-by-one timestamp.
      gzip --no-name: avoid spurious warning
      gzip: --no-time cleanup
      gzip: minor time stamp cleanups

Changes in gnulib since v1.8:

* gnulib d92a0d9...b6acb8d (385):
  > lock tests: Fix link error.
  > lock: Fix link error (regression from 2017-01-05).
  > Port to PGI 16.10 x86-64
  > parse-datetime: handle timezones reentrantly
  > time_rz: fix comment typo
  > localename: port to cygwin 2.6
  > users.txt: Update wget URL (tiny change)
  > users.txt: Add wget2 (tiny change)
  > dfa: fix memory leak in parse
  > parse-datetime: fix dependence on AC_PROG_SED
  > intprops: update doc URLs
  > host-cpu-c-abi: Add support for armhf, arm64, x32, s390x.
  > update from texinfo
  > localeinfo: case_folded_counterparts and WEOF
  > dfa: port to gcc -fsanitize=undefined
  > strftime: %z is -00 if unknown
  > dfa: port to older GCC
  > Update DEPENDENCIES.
  > maint.mk: enforce spelling of "timestamp" (i.e., no space)
  > dfa: minor simplification with emptyset
  > dfa: shrink constraints from 4 bits to 3
  > dfa: omit unnecessary ptrdiff_t check
  > dfa: omit unnecessary allocation
  > dfa: omit unused local
  > maint: time stamp -> timestamp
  > maint: remove stray .texi files
  > getprogname: fix port to IRIX
  > dfa: melt down dfastate into build_state
  > dfa: simplify transition table allocation
  > dfa: fix reallocation bug when matching newlines
  > Avoid -Wundef warning about undefined WINDOWS_SOCKETS.
  > Avoid -Wundef warning about undefined __USE_FILE_OFFSET64.
  > stdioext: Port to Minix 3.2 and newer.
  > getprogname: port to IRIX
  > localename-tests: port to NetBSD 7
  > glob, intprops, xalloc: work around Clang bug
  > dfa: fix 'return' typo
  > lock tests: Prefer semaphore over mutex.
  > parse-datetime: fix generated paths for coverage files
  > maint.mk: support parallel execution of coverage
  > lock: Provide guarantee to avoid writer starvation for rwlocks.
  > thread: Fix pth port.
  > parse-datetime: fix debug message on lone year number
  > parse-datetime: fix local timezone debug messages
  > parse-datetime: add debug warning about DST changes
  > parse-datetime: add debug warning about date arithmetic
  > parse-datetime: fix debug message of relative part after timezone
  > parse-datetime: fix incorrect debug message on lone number
  > exec
  > build-aux/mdate-sh
  > doc: fix typo in previous change
  > Revert copyright-year change to synced files
  > doc: modernize for C11 etc.
  > dfa: prefer functions to FETCH_WC macro
  > dfa: narrow more local var scopes
  > dfa: remove duplicate assignment
  > dfa: simplify constraint-dependency checking
  > dfa: prefer functions and constants to macros
  > dfa: narrow more local var scopes
  > dfa: narrow the scope of many local variables
  > gettext from dev
  > version-etc: new year
  > do-release-commit-and-tag: avoid shell syntax error
  > maint.mk: hoist gnulib_dir definition earlier
  > maint.mk: do not always evaluate intprops-related shell
  > maint.mk: improve sc_prohibit_intprops_without_use
  > dfa: shorten sbit, success
  > dfa: simplify multibyte_prop etc.
  > dfa: minor performance tweak
  > dfa: wrap charclass inside a struct
  > Changelog: insert omitted word
  > maint.mk: update list of intprops.h symbol names
  > getopt: fix parallel test failure
  > xalloc: x2nrealloc check for ptrdiff_t overflow
  > lock test: Fix performance problem on multi-core machines.
  > autoupdate
  > vma-iter: Fix endless loop on 64-bit Windows.
  > stdint: Fix WINT_MAX to match the gnulib provided wint_t on minw.
  > getopt-posix-tests: fix Makefile typo
  > dfa: improve worst-case 'replace' performance
  > dfa: performance improvement for removal of epsilon closure
  > autoupdate
  > Split tests for getopt-posix and getopt-gnu.
  > posix-modules: Add options for specific platforms.
  > getopt: Fix link error for users of getopt() in <unistd.h>.
  > getaddrinfo tests: Avoid compilation error on MSVC.
  > getlogin, getlogin_r: Fix link errors on MSVC.
  > Un-deprecate the 'progname' module.
  > Reorganize NEWS a bit.
  > tanhf: Avoid redefinition error on MSVC.
  > tanf: Avoid redefinition error on MSVC.
  > sqrtf: Avoid redefinition error on MSVC.
  > sinhf: Avoid redefinition error on MSVC.
  > sinf: Avoid redefinition error on MSVC.
  > logf: Avoid redefinition error on MSVC.
  > log10l: Avoid redefinition error on MSVC.
  > log10f: Avoid redefinition error on MSVC.
  > hypotl: Avoid redefinition error on MSVC.
  > hypotf: Avoid redefinition error on MSVC.
  > fmodl: Avoid redefinition error on MSVC.
  > fmodf: Avoid redefinition error on MSVC.
  > expf: Avoid redefinition error on MSVC.
  > coshf: Avoid redefinition error on MSVC.
  > cosf: Avoid redefinition error on MSVC.
  > atan2f: Avoid redefinition error on MSVC.
  > atanf: Avoid redefinition error on MSVC.
  > asinf: Avoid redefinition error on MSVC.
  > acosf: Avoid redefinition error on MSVC.
  > Avoid redefinition errors on MSVC.
  > Avoid redefinition errors on MSVC.
  > stdint: Fix WINT_MAX to match the gnulib provided wint_t on MSVC.
  > Avoid autoconf warning.
  > fpending: Revert workaround against Emacs bug.
  > getlogin_r tests: Port to mingw.
  > getlogin: Port to newer mingw.
  > builtin-expect: improve port to IBM XL C
  > builtin-expect: port to IBM XL C
  > regex: fix dependency
  > builtin-expect: new module
  > init.sh: Add possibility to not delete temporary files.
  > regex: fix integer-overflow bug in never-used code
  > fpending: fix port to MinGW on Emacs
  > safe-alloc: use xalloc-oversized
  > xalloc: do not exceed PTRDIFF_MAX
  > malloca: do not exceed PTRDIFF_MAX
  > quotearg: pacify GCC better
  > xalloc-oversized: check for PTRDIFF_MAX too
  > dfa: fix glitches in previous commit
  > dfa: fix some unlikely integer overflows
  > dfa: add an assertion to avoid coverity false positive
  > dfa: remove DFA_CASE_FOLD flag in favor of RE_ICASE
  > dfa: remove DFA_CASE_FOLD flag in favor of RE_ICASE
  > link: fix test to declare use of rename()
  > fpending: Port to native Windows with MSVC.
  > stdioext: Port to native Windows with MSVC.
  > non-recursive-gnulib-prefix-hack.m4: remove leading "(" in case stmt
  > threadlib: Optimize out runtime test on Solaris >= 10.
  > stdint: Update doc about Solaris 9.
  > c-ctype tests: Fix link error on Solaris 9.
  > dfa: fix performance bug that recomputes trans
  > same-inode: port to MinGW
  > javacomp: Support Java 7 and 8.
  > gnulib-tool: fix the previous change
  > gnulib-tool: fix the previous change
  > gnulib-tool: properly list the LGPL3orGPLv2 license
  > localcharset: Avoid theoretical buffer overrun.
  > Relicense some modules under LGPLv2+.
  > scandir: Fix _D_ALLOC_NAMLEN() on OS/2 kLIBC
  > alphasort, scandir: Port to OS/2 kLIBC
  > relocatable: Fix that /@unixroot prefix is not working on OS/2 kLIBC
  > sys_socket: typedef sa_family_t correctly on OS/2 kLIBC
  > dfa: avoid new infinite loop
  > dfa: do not match middle of multibyte character
  > dfa: avoid false match in non-UTF8 multibyte locales
  > ptsname_r: leverage AC_HEADER_MAJOR
  > md4,md5,sha*: allow _STRING_INLINE_unaligned enable unaligned operation
  > maint: use a more standard return from mbrtowc test
  > freopen: fix typo in previous commit
  > freopen: work around glibc bug with closed fd
  > fnmatch: fix typo introduced on 2016-08-17
  > maint: fix ChangeLog typo
  > dfa: simplify with new function fillset
  > dfa: fix glitches with on-demand states
  > dfa: addition of new state on demand
  > srclist: sync with released gettext
  > srclist: add "release" option
  > snippet/c++defs: Simplify _GL_CXXALIAS_* macros.
  > dfa: fix logic typo
  > fix test driver leaks: exclude, malloc, realloc
  > Fix gnulib C++ namespace support and std::frexp
  > GNULIB_NAMESPACE::func need not pull in rpl_func
  > libunistring: Relicense under dual "LGPLv3+ or GPLv2" license.
  > Relicense some modules under LGPLv2+.
  > Relicense some modules under LGPLv2+.
  > autoupdate
  > Enable Unicode decoder safety unconditionally.
  > Correct indentation.
  > relocatable-prog-wrapper: Fix breakage on Cygwin.
  > strerror: Make it compile in C++ mode.
  > sys_time: add gnulib::timeval for C++
  > snippet/c++defs: fix real-floating arg functions in C++ mode
  > strftime: don't use __THROW
  > obstack: port to gcc -fcheck-pointer-bounds
  > strerror_r-posix: Another fix, for HAVE_DECL_STRERROR_R on mingw
  > strptime: fix compile error in recent change
  > gnulib-tool: Support for the dual "LGPLv3+ or GPLv2" license.
  > strftime: tune %q
  > Merge strftime.c changes from glibc
  > strerror_r-posix: Fix override of AC_FUNC_STRERROR_R
  > Fix gnulib C++ namespace support and std::frexp
  > GNULIB_NAMESPACE::func need not pull in rpl_func
  > manywarnings: fix -Wno-missing-field-initializers detection
  > non-recursive-gnulib-prefix-hack: revert use of parameterized 'lib' dir
  > strftime,strptime: support %q to represent the quarter
  > autoupdate
  > bootstrap: Fix get_version() for AIX 5.3
  > intprops: port to older XL C
  > autoupdate
  > backupfile: initialize default suffix within the implementation
  > futimens: remove FIXME for old Linux kernels
  > utimensat: remove FIXME for old Linux kernels
  > maint: update how to make web pages
  > qsort_r: Fix macrology for platforms that lack the function.
  > sys_types: fix Texinfo typos
  > getprogname: port to HP-UX
  > Update doc about target platforms.
  > opendir, readdir, closedir: Relicense under LGPLv2+.
  > Fix conflict between strerror_r-posix module and AC_FUNC_STRERROR_R.
  > Make the 'argp' module work without the 'error' module.
  > diffseq: restore TOO_EXPENSIVE heuristic
  > non-recursive-gnulib-prefix-hack: Don't make assumptions about gnulib-tool's --source-base option value.
  > iconv: Avoid compilation error when bootstrapping GNU libiconv.
  > Avoid gnulib-tool warnings about the dependencies of 'parse-datetime'.
  > system-quote tests: Avoid compiler warning on AIX.
  > Fix some "gcc -Wall" warnings.
  > gnulib-tool: Make --create-testdir on all modules work again.
  > libunistring: change the maintainer to 'all'
  > Simplify "configure: checking ..." messages.
  > Simplify "configure: checking ..." messages.
  > quotearg-tests: pacify gcc -Wall
  > canonicalize-lgpl: fix for missing SIZE_MAX on older systems
  > printf.m4: fix a bug in detecting printf %j support
  > sched: substitute HAVE_SYS_CDEFS_H too
  > quotearg: never write beyond the returned length
  > getprogname tests: Avoid failure in packages that use libtool.
  > getprogname: Fix test failure on Cygwin. Comments.
  > Make sure the libunistring detection rejects older versions with a known bug.
  > sh-quote, system-quote: revert regression of unit test.
  > quotearg: fix stale tests
  > non-recursive-gnulib-prefix-hack: fix inconsequential typo
  > Fix a test crash.
  > test-limits-h: suppress -Woverlength-strings
  > gettime, timespec, utimens: Relicense under LGPL.
  > canonicalize-lgpl: Support the case path_max > INT_MAX.
  > getprogname: IBM z/OS: avoid NULL-dereference
  > test-stdint: use _GL_VERIFY rather than "verify" for some tests
  > Add missing ChangeLog entry
  > stdint: port SIZE_MAX to glibc s390
  > getprogname: port to IBM z/OS
  > maint: remove stray space after "." in AC_DEFINE comment.
  > long-options: avoid new GCC 7 warning from -Wimplicit-fallthrough
  > utimecmp: avoid new GCC 7 warning from -Wbool-operation
  > dfa: save memory for states
  > wchar, wctype-h: fix for MinGW 3.22.2
  > long-options: avoid new GCC 7 warning from -Wimplicit-fallthrough
  > utimecmp: avoid new GCC 7 warning from -Wbool-operation
  > autoupdate
  > quotearg: minimize shell quoting using double quotes
  > vasnprintf.c: avoid spurious warning from GCC 7
  > getprogname: correct the test for a __progname variable
  > u8-uctomb-aux.c: build: placate GCC 7's new -Wimplicit-fallthrough
  > dfa: build: avoid warning from GCC 7's new -Wimplicit-fallthrough
  > getprogname: avoid __progname vs program_invocation_short_name pitfall
  > getprogname: port to OpenBSD 5.1
  > sched: port to GCC 6.2.1 on macOS Sierra
  > tests/init.sh: port Alpine fix to AIX 7.1
  > nl_langinfo: pacify GCC
  > stdint: also set GL_GENERATE_LIMITS_H
  > limits-h, stdint: Don't assume extensions, fix typo
  > getprogname: port to AIX
  > update from texinfo
  > update from texinfo
  > extensions: fix typo in comment
  > stdint: support new _WIDTH macros
  > limits-h: new module
  > stdio: don't redefine __USE_MINGW_ANSI_STDIO
  > sys_types: avoid glibc 2.25 warnings about major()
  > mountlist: include sysmacros.h for glibc
  > extensions: port to more ISO C TSes
  > intprops: new macro TYPE_WIDTH
  > extensions: port to recent ISO C TRs
  > update from texinfo
  > update from texinfo
  > dfa: port to Solaris 9
  > autoupdate
  > strverscmp: avoid link failure on OS X
  > dfa: new module, importing grep's DFA matcher
  > getprogname-tests: don't depend on assert-h
  > getprogname-tests: work also when EXEEXT is nonempty
  > getprogname: fix errors in previous change
  > parse-datetime: restrict debug output to input string
  > flexmember: new macro FLEXALIGNOF
  > getprogname: port to systems with __argv (mingw, msvc)
  > flexmember: port better to GCC + valgrind
  > getprogname: port to Solaris 10
  > stdalign: correct mistake in alignof doc
  > getprogname.h: declare with _GL_ATTRIBUTE_PURE, when required
  > main.mk: remove sc_program_name
  > Port tests away from progname
  > Port modules to use getprogname explicitly
  > getprogname: new module
  > autoupdate
  > manywarnings: add -fno-common
  > parse-datetime: Fix typo.
  > intprops: tune INT_NEGATE_OVERFLOW for GCC 5 and 6
  > strverscmp: sync with glibc
  > xalloc-oversized.h: port __builtin_mul_overflow change to GCC 6.2.0
  > intprops.h: port recent changes to GCC 6.2.0
  > intprops.h: use __typeof__ with GCC 7
  > intprops.h, xalloc-oversized.h: work with gcc 7
  > intprops.h: fix missing-backslash problems
  > autoupdate
  > intprops: fix paren typo on old platforms
  > intprops: port to OpenVMS
  > parse-datetime: improve debug implementation
  > c-strcase-tests: port to EBCDIC
  > sigpipe-tests: fix typo
  > canonicalize-lgpl: fix errno after malloca fails
  > strtod: port errno handling to z/OS
  > strtod: port to z/OS
  > regex, string: rename to avoid '__string'
  > c-strcase-tests, wcwidth-tests: depend on c-ctype
  > thread: port to z/OS
  > maint: port tests to z/OS errno behavior
  > maint: preprocessor changes to support z/OS
  > fclose, strstr-simple, wchar: port to z/OS
  > iconv_open-utf-tests, iconv-tests: port to EBCDIC
  > c-strcase-tests, wcwidth-tests: port to EBCDIC
  > stdbool: don't require _Bool for C++
  > getdelim: remove dependency on realloc-posix
  > update from texinfo
  > update from texinfo
  > parse-datetime: add optional debug printing
  > update from texinfo
  > tests/init.sh: exclude dash with bad "local" semantics
  > update from texinfo
  > update from texinfo
  > update from texinfo
  > update from texinfo
  > maint.mk: expand the prohibit_doubled_word regex
  > useless-if-before-free: skip non-matching lines early
  > update from texinfo
  > maint.mk: speed up sc_po_check
  > maint.mk: speed up require_config_h_first
  > maint.mk: speed up sc_po_check
  > update from texinfo
  > update from texinfo
  > autoupdate
  > autoupdate
  > update from texinfo
  > autoupdate
  > update from texinfo
  > obstack: pacify GCC 6 with -Wnull-dereference
  > update from texinfo
  > doc: mention glibc, OS X, Cygwin [S]SIZE_MAX buglet
  > doc: mention glibc SSIZE_MAX buglet
  > printf-posix: Fix mingw build
  > mktime: call tzset as per POSIX
  > fts: handle readdir() errors
  > intprops: port better to GCC 7
  > intprops-test: port to GCC 6
  > autoupdate
  > update from texinfo
  > autoupdate
  > xalloc-oversized: port to GCC 7; fewer warnings
  > autoupdate (gettext-0.19.8.1)
  > update from texinfo
  > regex: port to Sun C
  > update from texinfo
  > stdbool: Restore __bool_true_false_are_defined check
  > stdbool: Port AC_CHECK_HEADER_STDBOOL to C++11
  > Use GCC_LINT, not lint
  > secure_getenv: Port to many more platforms.
  > update from texinfo
  > canonicalize: Fix broken probe for realpath.
  > unsetenv: relax to LGPLv2+
  > update from texinfo
  > gendocs.sh: Set default TOP_NODE_UP_URL in HTML output.
  > manywarnings: update for GCC 6.1
  > autoupdate
  > intdiv0, memmem, nocrash, strcasestr, strstr: no exit
  > glob: size_t overflow checks
  > glob: don't assume INT_MAX < SIZE_MAX
  > Fix undefined behaviour in gettext.h.
  > autoupdate
  > git-version-gen: avoid undefined shift
  > update from texinfo
  > glob: merge glibc changes into lib/glob.c
  > mktime: spelling fix in comment
  > mktime: port to stricter signed overflow checking
  > mktime: speed up DEBUG_MKTIME benchmarks
  > mktime: resurrect DEBUG_MKTIME testing
  > mktime: simplify DEBUG_MKTIME
  > Port mktime_internal offset to unsigned time_t
  > xstrtol: prohibit monstrosities like "1bB"