version 1.8
[debian/gzip] / NEWS
diff --git a/NEWS b/NEWS
index 59d7ad79c229aea535f27bd6bed120cda7171980..ce0daaddfe43730d81b2bc2d9d0a8080ff9f5789 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,4 +1,190 @@
-Major changes in Gzip 1.3.7 (not yet released)
+GNU gzip NEWS                                    -*- outline -*-
+
+* Noteworthy changes in release 1.8 (2016-04-26) [stable]
+
+** Bug fixes
+
+  gzip -l no longer falsely reports a write error when writing to a pipe.
+  [bug introduced in gzip-1.7]
+
+  Port to Oracle Solaris Studio 12 on x86-64.
+  [bug present since at least gzip-1.2.4]
+
+  When configuring gzip, ./configure DEFS='...-DNO_ASM...' now
+  suppresses assembler again.  [bug introduced in gzip-1.3.5]
+
+
+* Noteworthy changes in release 1.7 (2016-03-27) [stable]
+
+** Changes in behavior
+
+  The GZIP environment variable is now obsolescent; gzip now warns if
+  it is used, and rejects attempts to use dangerous options or operands.
+  You can use an alias or script instead.
+
+  Installed programs like 'zgrep' now use the PATH environment variable
+  as usual to find subsidiary programs like 'gzip' and 'grep'.
+  Previously they prepended the installation directory to the PATH,
+  which sometimes caused 'make check' to test the wrong gzip executable.
+  [bug introduced in gzip-1.3.13]
+
+** New features
+
+  gzip now accepts the --synchronous option, which causes it to use
+  fsync and similar primitives to transfer output data to the output
+  file's storage device when the file system supports this.  Although
+  this option makes gzip safer in the presence of system crashes, it
+  can make gzip considerably slower.
+
+  gzip now accepts the --rsyncable option. This option is accepted in
+  all modes, but has effect only when compressing: it makes the resulting
+  output more amenable to efficient use of rsync.  For example, when a
+  large input file gets a small change, a gzip --rsyncable image of
+  that file will remain largely unchanged, too.  Without --rsyncable,
+  even a tiny change in the input could result in a totally different
+  gzip-compressed output file.
+
+** Bug fixes
+
+  gzip -k -v no longer reports that files are replaced.
+  [bug present since the beginning]
+
+  zgrep -f A B C no longer reads A more than once if A is not a regular file.
+  This better supports invocations like 'zgrep -f <(COMMAND) B C' in Bash.
+  [bug introduced in gzip-1.2]
+
+
+* Noteworthy changes in release 1.6 (2013-06-09) [stable]
+
+** New features
+
+  gzip now accepts the --keep (-k) option, for consistency with tools
+  like xz, lzip and bzip2.  With this option, gzip no longer removes
+  named input files when compressing or decompressing.
+
+** Bug fixes
+
+  gzip -d no longer malfunctions with certain invalid data in 'pack' format.
+  [bug introduced in gzip-0.8]
+
+  When overwriting, gzip no longer acts as if you typed "y" when you type "n",
+  on some platforms when compiled with optimization.
+  [bug introduced in gzip-1.3.6]
+
+  zgrep no longer malfunctions with a multi-digit context option like -15.
+  Now, it passes that option to grep (equivalent to -C15) just as it does
+  for single-digit options. [bug introduced in gzip-1.3.12]
+
+  zmore now acts more like 'more', and is more portable to POSIXish hosts.
+
+
+* Noteworthy changes in release 1.5 (2012-06-17) [stable]
+
+** Bug fixes
+
+  gzip -d now decodes and checks header CRC16 checksums as specified by
+  the FHCRC section of Internet RFC 1952.
+
+  "gzip -d -S '' precious.gz" is now rejected immediately.  Before,
+  that command would emulate "rm -i precious.gz", but with an easily-
+  misunderstood prompt.  I.e., gzip would ask if it's ok to remove the
+  existing file, "precious.gz".  If you made the mistake of saying "yes",
+  it would remove that input file before attempting to uncompress it.
+
+  gzip -cdf now properly handles input consisting of gzip'd data followed
+  by uncompressed data.  Before it would output raw compressed input, too.
+  For example, now "(printf x|gzip; echo y)|gzip -dcf" prints "xy\n",
+  while before it would print "x<compressed data>y\n".
+
+  gzip -rf no longer compresses files more than once (e.g., replacing
+  FOO with FOO.gz.gz) on file systems such as ZFS where a readdir
+  loop that unlinks and creates files can revisit output files.
+
+
+* Noteworthy changes in release 1.4 (2010-01-20) [stable]
+
+** Bug fixes
+
+  gzip -d could segfault and/or clobber the stack, possibly leading to
+  arbitrary code execution.  This affects x86_64 but not 32-bit systems.
+  This fixes CVE-2010-0001.
+  For more details, see http://bugzilla.redhat.com/554418
+
+  gzip -d would fail with a CRC error for some valid inputs.
+  So far, the only valid input known to exhibit this failure was
+  compressed "from FAT filesystem (MS-DOS, OS/2, NT)".  In addition,
+  to trigger the failure, your memcpy implementation must copy in
+  the "reverse" order.
+
+
+* Noteworthy changes in release 1.3.14 (2009-10-30) [beta]
+
+** Bug fixes
+
+  gzip no longer fails when there is exactly one trailing NUL byte
+  gzip has always accepted trailing NUL bytes.  Note the plural.
+
+  zdiff would exit with status 2 (indicating an error) rather than 1 to
+  indicate differences when both inputs were compressed and different.
+
+  zdiff would fail to print differences in two compressed inputs
+
+  zgrep -f - didn't work
+
+
+* Noteworthy changes in release 1.3.13 (2009-09-30) [stable]
+
+** 'gzip -f foo.gz' now creates a file foo.gz.gz instead of complaining.
+
+** Bug fixes
+
+  gzip -d no longer fails with "-" as 2nd or subsequent argument
+
+  gzip no longer ignores a close-induced write failure, e.g., on NFS
+
+  gzip -d no longer segfaults on certain invalid inputs
+
+
+Major changes in Gzip 1.3.12 (2007-04-13)
+
+* znew now uses $TMPDIR (default /tmp) instead of always using /tmp.
+
+* It is now documented that gzip ignores case when examining file name
+  extensions; for example, 'gzip test.Gz' (without -f) fails because
+  the file name ends in '.Gz'.
+
+Major changes in Gzip 1.3.11 (2007-02-05)
+
+* As per the GNU coding standards, the behavior of gzip and its
+  companion executables no longer depend on the name used to invoke them.
+  For example, 'gzip' and 'gunzip' are no longer hard links;
+  instead, 'gunzip' is now a small program that invokes 'gzip -d'.
+
+* zdiff now checks for subsidiary gzip failures, and works around
+  bugs in IRIX 6 sh, Tru64 4.0F ksh, and Solaris 8 bash.
+
+Major changes in Gzip 1.3.10 (2006-12-30)
+
+* gzip -c and zcat now work on special files, files with special mode bits,
+  and files with multiple hard links.
+* gzip -q now exits with status 2 (not 1) when SIGPIPE is received.
+* zcmp and zdiff did not work in the usual case, due to a typo.
+* zgrep has many bugs fixed with argument handling, special characters,
+  and exit status.
+* zless no longer mishandles $%=~ in file names.
+
+Gzip 1.3.9 (2006-12-15)
+
+* No major changes; only porting fixes.
+
+Major changes in Gzip 1.3.8 (2006-12-08)
+
+* Fix some gzip problems:
+  - A security fix from Debian 1.3.5-5 was inadvertently omitted.
+  - The assembler is now invoked with --noexecstack if supported,
+    so that gzip can better resist stack-smashing attacks.
+
+Major changes in Gzip 1.3.7 (2006-12-06)
 
 * Fix some gzip problems:
   - Refuse to compress setuid or setgid files, or files with the sticky bit.
@@ -125,7 +311,7 @@ Major changes from 1.1.2 to 1.2
 * With --force, let zcat pass non gzip'ed data unchanged (zcat == cat)
 * Added the zgrep shell script.
 * Made sub.c useful for 16 bit sound, 24 bit images, etc..
-* Supress warnings about suffix for gunzip -r, except with --verbose.
+* Suppress warnings about suffix for gunzip -r, except with --verbose.
 * On MSDOS, use .gz extension when possible (files without extension)
 * Moved the sample programs to a subdirectory sample.
 * Added a "Special targets" section in INSTALL.
@@ -298,11 +484,12 @@ Major changes form 0.5 to 0.6:
 
 ========================================================================
 
-Copyright (C) 1999, 2001, 2002, 2006 Free Software Foundation, Inc.
+Copyright (C) 1999, 2001-2002, 2006-2007, 2009-2016 Free Software Foundation,
+Inc.
 Copyright (C) 1992, 1993 Jean-loup Gailly
 
 Permission is granted to copy, distribute and/or modify this document
-under the terms of the GNU Free Documentation License, Version 1.2 or
+under the terms of the GNU Free Documentation License, Version 1.3 or
 any later version published by the Free Software Foundation; with no
 Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
 Texts.  A copy of the license is included in the ``GNU Free