]> git.ipfire.org Git - thirdparty/tar.git/blobdiff - NEWS
Avoid quadratic behavior with delayed links
[thirdparty/tar.git] / NEWS
diff --git a/NEWS b/NEWS
index 333e99ae298a56a2e6af7d61cc59a271b1c2df1f..1378dbe59dc9552ecd66a9335b10c919346023ce 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,8 +1,147 @@
-GNU tar NEWS - User visible changes. 2017-11-16
+GNU tar NEWS - User visible changes. 2022-07-24
 Please send GNU tar bug reports to <bug-tar@gnu.org>
+\f
+version 1.34.90 (git)
+
+* Fail when building GNU tar, if the platform supports 64-bit time_t
+  but the build uses only 32-bit time_t.
+
+* Leave the devmajor and devminor fields empty (rather than zero) for
+  non-special files, as this is more compatible with traditional tar.
+
+* New build scripts ./autopull.sh and ./autogen.sh, to separate
+  fetching from autogenerating source files.  See README-hacking.
+
+* Bug fixes
+
+** Warn "file changed as we read it" less often.
+   Formerly, tar warned if the file's size or ctime changed.
+   However, this generated a false positive if tar read a file
+   while another process hard-linked to it, changing its ctime.
+   Now, tar warns if the file's size, mtime, user ID, group ID,
+   or mode changes.  Although neither heuristic is perfect,
+   the new one should work better in practice.
+
+** Fix --ignore-failed-read to ignore file-changed read errors
+   as far as exit status is concerned.  You can now suppress file-changed
+   issues entirely with --ignore-failed-read --warning=no-file-changed.
+
+** Fix --remove-files to not remove a file that changed while we read it.
+
+** Fix --atime-preserve=replace to not fail if there was no need to replace,
+   either because we did not read the file, or the atime did not change.
+
+** Fix race when creating a parent directory while another process is
+   also doing so.
+
+** Fix handling of prefix keywords not followed by "." in pax headers.
+
+** Fix handling of out-of-range sparse entries in pax headers.
+
+** Fix handling of --transform='s/s/@/2'.
+
+** Fix treatment of options ending in / in files-from list.
+
+** Fix crash on 'tar --checkpoint-action exec=\"'.
+
+** Fix low-memory crash when reading incremental dumps.
 
 \f
-version 1.29.90 (Git)
+version 1.34 - Sergey Poznyakoff, 2021-02-13
+
+* Fix extraction over pipe (savannah bug #60002)
+
+* Fix memory leak in read_header (savannah bug #59897)
+
+* Fix extraction when . and .. are unreadable
+
+See https://lists.gnu.org/archive/html/bug-tar/2021-01/msg00012.html
+
+* Gracefully handle duplicate symlinks when extracting
+
+See https://lists.gnu.org/archive/html/bug-tar/2021-01/msg00026.html
+
+* Re-initialize supplementary groups when switching to user privileges
+\f
+version 1.33 - Sergey Poznyakoff, 2021-01-07
+
+* POSIX extended format headers do not include PID by default
+
+The intent is to make binary-equivalent PAX archives easy to create.  If
+POSIXLY_CORRECT is set, the POSIX standard default is used, which embeds
+the pid.
+
+* --delay-directory-restore works for archives with reversed member ordering
+
+* Fix extraction of a symbolic link hardlinked to another symbolic link
+
+* Wildcards in exclude-vcs-ignore mode don't match slash
+
+* Fix the --no-overwrite-dir option
+
+Given this option, previous versions of tar failed to preserve
+permissions of empty directories and to create files under directories
+owned by the current user that did not have the S_IWUSR bit set.
+
+* Fix handling of chained renames in incremental backups
+
+* Link counting works for file names supplied with -T
+
+* Accept only position-sensitive (file-selection) options in file list files.
+
+Using such options as -f, -z, etc. is senseless in a file list file and
+bypasses option consistency checks in decode_options.  Therefore,
+only options related to file selection (a.k.a position-sensitive options)
+are allowed in file list files.
+
+\f
+version 1.32 - Sergey Poznyakoff, 2019-02-23
+
+* Fix the use of --checkpoint without explicit --checkpoint-action
+
+* Fix extraction with the -U option
+
+See http://lists.gnu.org/archive/html/bug-tar/2019-01/msg00015.html,
+for details
+
+* Fix iconv usage on BSD-based systems
+
+* Fix possible NULL dereference (savannah bug #55369)
+
+* Improve the testsuite
+
+\f
+version 1.31 - Sergey Poznyakoff, 2019-01-02
+
+* Fix heap-buffer-overrun with --one-top-level.
+Bug introduced with the addition of that option in 1.28.
+
+* Support for zstd compression
+
+New option '--zstd' instructs tar to use zstd as compression program.
+When listing, extractng and comparing, zstd compressed archives are
+recognized automatically.
+When '-a' option is in effect, zstd compression is selected if the
+destination archive name ends in '.zst' or '.tzst'.
+
+* The -K option interacts properly with member names given in the command line
+
+Names of members to extract can be specified along with the "-K NAME"
+option. In this case, tar will extract NAME and those of named members
+that appear in the archive after it, which is consistent with the
+semantics of the option.
+
+Previous versions of tar extracted NAME, those of named members that
+appeared before it, and everything after it.
+
+* Fix CVE-2018-20482
+
+When creating archives with the --sparse option, previous versions of
+tar would loop endlessly if a sparse file had been truncated while
+being archived.
+
+\f
+version 1.30 - Sergey Poznyakoff, 2017-12-17
 
 * Member names containing '..' components are now skipped when extracting.
 
@@ -10,7 +149,7 @@ This fixes tar's behavior to match its documentation, and is a bit
 safer when extracting untrusted archives over old files (an unsafe
 practice that the tar manual has long recommended against).
 
-* Report erroneous use of positional options.
+* Report erroneous use of position-sensitive options.
 
 During archive creation or update, tar keeps track of positional
 options (see the manual, subsection 3.4.4 "Position-Sensitive
@@ -22,7 +161,7 @@ invoked as
 tar will create the archive, but will exit with status 2, having
 issued the following error message
 
-   tar: The following options were used after any non-optional
+   tar: The following options were used after non-optional
    arguments in archive create or update mode.  These options are
    positional and affect only arguments that follow them.  Please,
    rearrange them properly.
@@ -30,6 +169,7 @@ issued the following error message
    tar: Exiting with failure status due to previous errors
 
 * --numeric-owner now affects private headers too.
+
 This helps the output of 'tar' to be more deterministic.
 
 * Fixed the --delay-directory-restore option
@@ -41,7 +181,7 @@ causing subsequent link extractions in that directory to fail.
 
 This new warning control option suppresses warning messages about
 unreadable files and directories. It has effect only if used together
-with the --ignore-failed-read option.  
+with the --ignore-failed-read option.
 
 * The --warnings=none option now suppresses all warnings
 
@@ -49,6 +189,11 @@ This includes warnings about unreadable files produced when
 --ignore-failed-read is in effect. To output these, use
 --warnings=none --warnings=no-failed-read.
 
+* Fix reporting of hardlink mismatches during compare
+
+Tar reported incorrect target file name in the 'Not linked to'
+diagnostic message.
+
 \f
 version 1.29 - Sergey Poznyakoff, 2016-05-16
 
@@ -1635,7 +1780,7 @@ Versions 1.07 back to 1.00 by Jay Fenlason.
 
 \f
 
-Copyright 1994-2001, 2003-2010, 2013-2017 Free Software Foundation, Inc.
+Copyright 1994-2022 Free Software Foundation, Inc.
 
 This file is part of GNU tar.
 
@@ -1655,7 +1800,7 @@ along with this program.  If not, see <http://www.gnu.org/licenses/>.
 Local variables:
 mode: outline
 paragraph-separate: "[ \f]*$"
-eval: (add-hook 'write-file-hooks 'time-stamp)
+eval: (add-hook 'write-file-functions #'time-stamp nil t)
 time-stamp-start: "changes. "
 time-stamp-format: "%:y-%02m-%02d"
 time-stamp-end: "\n"