GNU tar NEWS - User visible changes.
-Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2003,
-2004, 2005
-Free Software Foundation, Inc.
-See the end for copying conditions.
-
Please send GNU tar bug reports to <bug-tar@gnu.org>
\f
-version 1.15.2 (CVS version -- unreleased)
+version 1.16.2
+
+* Fix archivation of sparse files in posix mode. Previous versions padded
+ sparse members with spurious zero blocks.
+
+* Fix operation of --verify --listed-incremental. Version 1.16.1 produced
+ a full dump when both options were given.
+
+\f
+version 1.16.1
+
+* New option --exclude-tag allows to specify "exclusion tag files", i.e.
+ files whose presence in a directory means that the directory should not
+ be archived.
+
+* The --exclude-cache option excludes directories that contain the
+ CACHEDIR.TAG file from being archived. Previous versions excluded
+ directory contents only, while the directories themselves were
+ still added to the archive.
+
+* Support for reading ustar type 'N' header logical records has been removed.
+ This GNU extension was generated only by very old versions of GNU 'tar'.
+ Unfortunately its implementation had security holes; see
+ <http://archives.neohapsis.com/archives/fulldisclosure/2006-11/0344.html>.
+ We don't expect that any tar archives in practical use have type 'N'
+ records, but if you have one and you trust its contents, you can
+ decode it with GNU tar 1.16 or earlier.
+
+* Race conditions have been fixed that in some cases briefly allowed
+ files extracted by 'tar -x --same-owner' (or plain 'tar -x', when
+ running as root) to be accessed by users that they shouldn't have been.
+
+\f
+version 1.16 - Sergey Poznyakoff, 2006-10-21
+
+* After creating an archive, tar exits with code 1 if some files were
+changed while being read. Previous versions exited with code 2 (fatal
+error), and only if some files were truncated while being archived.
+
+* New option --mtime allows to set modification times for all archive
+members during creation.
+
+* Bug fixes
+** Avoid running off file descriptors when using multiple -C options.
+** tar --index-file=FILE --file=- sent the archive to FILE, and
+the listing to stderr.
+
+\f
+version 1.15.91 - Sergey Poznyakoff, 2006-06-16
+
+* Incompatible changes
+
+** Globbing
+
+Previous versions of GNU tar assumed shell-style globbing when
+extracting from or listing an archive. For example:
+
+ tar xf foo.tar '*.c'
+
+would extract all files whose names end in '.c'. This behavior
+was not documented and was incompatible with traditional tar
+implementations. Therefore, starting from this version, GNU tar
+no longer uses globbing by default. For example, the above invocation
+is now interpreted as a request to extract from the archive the file
+named '*.c'.
+
+To treat member names as globbing patterns, use --wildcards option.
+If you wish tar to mimic the behavior of versions up to 1.15.90,
+add --wildcards to the value of the environment variable TAR_OPTIONS.
+
+The exact way in which tar interprets member names is controlled by the
+following command line options:
+
+ --wildcards use wildcards
+ --anchored patterns match file name start
+ --ignore-case ignore case
+ --wildcards-match-slash wildcards match `/'
+
+Each of these options has a '--no-' counterpart that disables its
+effect (e.g. --no-wildcards).
+
+These options affect both the interpretation of member names from
+command line and that of the exclusion patterns (given with --exclude
+and --exclude-from options). The defaults are:
+
+ 1. For member names: --no-wildcards --anchored
+ 2. For exclusion patterns: --wildcards --no-anchored --wildcards-match-slash
+
+The options can appear multiple times in the command line, thereby
+changing the way command line arguments are interpreted. For example,
+to use case-insensitive matching in exclude patterns and to revert to
+case-sensitive matching for the rest of command line, one could write:
+
+ tar xf foo.tar --ignore-case --exclude-from=FILE --no-ignore-case file.name
+
+** Short option -l is now an alias of --check-links option, which complies
+with UNIX98. This ends the transition period started with version 1.14.
+
+* New features
+
+** New option --transform allows to transform file names before storing them
+in the archive or member names before extracting. The option takes a
+sed replace expression as its argument. For example,
+
+ tar cf foo.tar --transform 's,^,prefix/,'
+
+will add 'prefix/' to all file names stored in foo.tar.
+
+** --strip-components option works when deleting and comparing. In previous
+versions it worked only with --extract.
+
+** New option --show-transformed-names enables display of transformed file
+or archive. It generalizes --show-stored-names option, introduced in
+1.15.90. In particular, when creating an archive in verbose mode, it lists
+member names as stored in the archive, i.e., with any eventual prefixes
+removed and file name transformations applied. The option is useful,
+for example, while comparing `tar cv' and `tar tv' outputs.
+
+** New incremental snapshot file format keeps information about file names
+as well as that about directories.
+
+** The --checkpoint option takes an optional argument specifying the number
+of records between the two successive checkpoints. Optional dot
+starting the argument intructs tar to print dots instead of textual
+checkpoints.
+
+** The --totals option can be used with any tar operation (previous versions
+understood it only with --create). If an argument to this option is
+given, it specifies the signal upon delivery of which the statistics
+is to be printed. Both forms of this option (with and without
+argument) can be given to in a single invocation of tar.
+
+* Bug fixes
+** Detect attempts to update compressed archives.
+
+\f
+version 1.15.90 - Sergey Poznyakoff, 2006-02-19
* New features
-* Any number of -T (--files-from) options may be used in the command line.
+** Any number of -T (--files-from) options may be used in the command line.
The file specified with -T may include any valid `tar' options,
including another -T option.
Compatibility note: older versions of tar would only recognize -C
starts with - is handled as an option. To insert file names starting with
dash, use the --add-file option.
-* List files containing null-separated file names are detected and processed
+** List files containing null-separated file names are detected and processed
automatically. It is no longer necessary to give the --null option.
-* New option --no-unquote disables the unquoting of input file names.
+** New option --no-unquote disables the unquoting of input file names.
This is useful for processing output from `find dir -print0'.
An orthogonal option --unquote is provided as well.
-* New option --test-label tests the archive volume label.
+** New option --test-label tests the archive volume label.
If an argument is specified, the label is compared against its value.
Tar exits with code 0 if the two strings match, and with code 2 if
they do not.
If no argument is given, the --verbose option is implied. In this case,
tar prints the label name if present and exits with code 0.
-* New option --show-stored-names. When creating an archive in verbose mode,
+** New option --show-stored-names. When creating an archive in verbose mode,
it lists member names as stored in the archive, i.e., with any eventual
prefixes removed. The option is useful, for example, while comparing
`tar cv' and `tar tv' outputs.
-* New option --atime-preserve=system, which uses the O_NOATIME feature
+** New option --to-command pipes the contents of archive members to the
+specified command.
+
+** New option --atime-preserve=system, which uses the O_NOATIME feature
of recent Linux kernels to avoid some problems when preserving file
access times.
-* Better support for full-resolution time stamps. Tar cannot restore
+** New option --delay-directory-restore delays restoring modification times
+and permissions of extracted directories until the end of extraction.
+This is necessary for restoring from archives with unusual member
+ordering (in particular, those created with --no-recursion option).
+This option is implied when restoring from incremental archives.
+
+** New option --restrict prohibits use of some potentially harmful tar
+options. Currently it disables '!' escape in multi-volume name menu.
+
+** New options --quoting-style and --quote-chars control the way tar
+quotes member names on output. The --quoting-style takes an argument
+specifying the quoting style to use (literal, shell, shell-always,
+c, escape, locale, clocale). The argument to --quote-chars is a string
+specifying characters to quote, even if the selected quoting style
+would not quote them otherwise. The option --no-quote-chars is
+provided to disable quoting certain characters.
+
+** The end-of-volume script (introduced with --info-script option) can
+get current archive name from the environment variable TAR_ARCHIVE and
+the volume number from the variable TAR_VOLUME. It can alter the
+archive name by writing new name to the file descriptor 3.
+
+** Better support for full-resolution time stamps. Tar cannot restore
time stamps to full nanosecond resolution, though, until the kernel
guys get their act together and give us a system call to set file time
stamps to nanosecond resolution.
-* The -v option now prints time stamps only to 1-minute resolution,
+** The -v option now prints time stamps only to 1-minute resolution,
not full resolution, to avoid using up too many output columns.
Nanosecond resolution is now supported, but that would be too much.
** Compare mode (tar d) hanged when trying to compare file contents.
** Previous versions in certain cases failed to restore directory
modification times.
+** When creating an archive, do not attempt to store files whose
+meta-data cannot be stored in the header due to format limitations
+(for ustar and v7 formats).
+** The --version option now also outputs information about copyright,
+license, and credits. This reverts to the behavior of tar 1.14 and
+earlier, and conforms to the GNU coding standards. The --license (-L)
+option introduced in tar 1.15 has been removed, since it's no longer
+needed.
\f
version 1.15.1 - Sergey Poznyakoff, 2004-12-21
\f
-Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2003
-Free Software Foundation, Inc.
+Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2003,
+2004, 2005, 2006, 2007 Free Software Foundation, Inc.
This file is part of GNU tar.