X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=NEWS;h=72b41099737e6789511da63052a28807c7568953;hb=92249085071a973e2c0621b0415b93d2e48bb00d;hp=8370882e59e5fd3dbb29962fced190b55620ab5d;hpb=dc0ab95dbae38577efebe2283fc9b76e92ef4233;p=debian%2Fgzip diff --git a/NEWS b/NEWS index 8370882..72b4109 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,160 @@ GNU gzip NEWS -*- outline -*- +* Noteworthy changes in release 1.10 (2018-12-29) [stable] + +** Changes in behavior + + Compressed gzip output no longer contains the current time as a + timestamp when the input is not a regular file. Instead, the output + contains a null (zero) timestamp. This makes gzip's behavior more + reproducible when used as part of a pipeline. (As a reminder, even + regular files will use null timestamps after the year 2106, due to a + limitation in the gzip format.) + +** Bug fixes + + A use of uninitialized memory on some malformed inputs has been fixed. + [bug present since the beginning] + + A few theoretical race conditions in signal handers have been fixed. + These bugs most likely do not happen on practical platforms. + [bugs present since the beginning] + + +* Noteworthy changes in release 1.9 (2018-01-07) [stable] + +** Bug fixes + + gzip -d -S SUFFIX file.SUFFIX would fail for any upper-case byte in SUFFIX. + E.g., before, this command would fail: + $ :|gzip > kT && gzip -d -S T kT + gzip: kT: unknown suffix -- ignored + [bug present since the beginning] + + When decompressing data in 'pack' format, gzip no longer mishandles + leading zeros in the end-of-block code. [bug introduced in gzip-1.6] + + When converting from system-dependent time_t format to the 32-bit + unsigned MTIME format used in gzip files, if a timestamp does not + fit gzip now substitutes zero instead of the timestamp's low-order + 32 bits, as per Internet RFC 1952. When converting from MTIME to + time_t format, if a timestamp does not fit gzip now warns and + substitutes the nearest in-range value instead of crashing or + silently substituting an implementation-defined value (typically, + the timestamp's low-order bits). This affects timestamps before + 1970 and after 2106, and timestamps after 2038 on platforms with + 32-bit signed time_t. [bug present since the beginning] + + Commands implemented via shell scripts are now more consistent about + failure status. For example, 'gunzip --help >/dev/full' now + consistently exits with status 1 (error), instead of with status 2 + (warning) on some platforms. [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. + + +* 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 "xy\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 @@ -7,7 +162,7 @@ GNU gzip NEWS -*- outline -*- 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 + For more details, see https://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 @@ -33,6 +188,8 @@ GNU gzip NEWS -*- outline -*- * 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 @@ -46,8 +203,6 @@ Major changes in Gzip 1.3.12 (2007-04-13) * znew now uses $TMPDIR (default /tmp) instead of always using /tmp. -* 'gzip -f foo.gz' now creates a file foo.gz.gz instead of complaining. - * 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'. @@ -107,10 +262,10 @@ Major changes in Gzip 1.3.7 (2006-12-06) Major changes in Gzip 1.3.6 (2006-11-20) -* Fix some race conditions in setting file time stamps, permissions, and owner. +* Fix some race conditions in setting file timestamps, permissions, and owner. * Fix some race conditions in signal handling. * When gzip exits due to a signal, it exits with the signal's status, not 1. -* gzip now restores file time stamps to the resolution supported by the +* gzip now restores file timestamps to the resolution supported by the time-setting primitives of the operating system, typically 1 microsecond. Formerly it restored them only to the nearest second. * gzip -r no longer attempts to reset the last-access times of directories @@ -210,7 +365,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. @@ -243,7 +398,7 @@ Major changes from 1.0.7 to 1.1. * Added comparison of zip and gzip in the readme file. * Added small sample programs (ztouch, sub, add) * Use less memory when compiled with -DSMALL_MEM (for MSDOS). -* Remove the "off by more than one minute" time stamp kludge +* Remove the "off by more than one minute" timestamp kludge Major changes from 1.0.6 to 1.0.7. * Allow zmore to read from standard input (like more). @@ -322,7 +477,7 @@ Major changes from 1.0.1 to 1.0.2 on such systems. * Added gzexe to compress rarely used executables. * Reduce memory usage (required for MSDOS and useful on all systems). -* Preserve time stamp in znew -P (pipe option) if touch -r works. +* Preserve timestamp in znew -P (pipe option) if touch -r works. Major changes from 1.0 to 1.0.1 @@ -363,7 +518,7 @@ Major changes from 0.7 to 0.8: Major changes from 0.6 to 0.7: * Use "make check" instead of "make test". -* Keep time stamp and pass options to gzip in znew. +* Keep timestamp and pass options to gzip in znew. * Do not create .z.z files with gzip -r. * Allow again gunzip .zip files (was working in 0.5) * Allow again compilation with TurboC 2.0 (was working in 0.4) @@ -383,7 +538,7 @@ Major changes form 0.5 to 0.6: ======================================================================== -Copyright (C) 1999, 2001-2002, 2006-2007, 2009-2010 Free Software Foundation, +Copyright (C) 1999, 2001-2002, 2006-2007, 2009-2018 Free Software Foundation, Inc. Copyright (C) 1992, 1993 Jean-loup Gailly