ChangeLog entries from 1.13.25 through today.

This commit is contained in:
Paul Eggert
2003-07-05 21:17:47 +00:00
parent 09c4d7dc3c
commit 96148b87b7

333
ChangeLog
View File

@@ -1,3 +1,331 @@
2003-07-05 Paul Eggert <eggert@twinsun.com>
Finish the checkin begin yesterday.
* NEWS: Document the user-visible changes installed in the last
two days.
* TODO: New file (actually, resurrected; but with new contents).
* src/list.c (read_and): Give full type for procedure arg.
(read_header): Strip trailing slashes, setting current_trailing_slash.
(tartime): Avoid int overflow when printing year (!).
(print_header): New arg specifying block ordinal. All uses changed.
Print link as 'h' type. Give labels for long links and names.
* src/misc.c (contains_dot_dot): Moved to names.c
(must_be_dot_or_slash): New function.
(safer_rmdir): Use it.
(remove_any_file): Now takes enum as option, not boolean.
Check for (Linux) EISDIR as well as (POSIX) EPERM when attempting
to unlink a directory.
(deref_stat): Accept bool, not int.
* src/names.c (namelist_match): Allow partial matches only if
recursive.
(hash_string_hasher): Renamed from hash_avoided_name.
(hash_string_compare): Renamed from compare_avoided_anames.
(hash_string_insert, hash_string_lookup): New functions.
(add_avoided_name, is_avoided_name): Use them.
(safer_name_suffix): New function.
(contains_dot_dot): Moved here from misc.c. Now returns bool, not int.
* src/rmt.c: Don't include print-copyr.h.
(prepare_input_buffer): New arg FD.
Do not read more than INT_MAX bytes at once,
since it breaks on some brain damaged Tru64 hosts.
Divide size by two
when retrying instead of subtracting 1024; for speed.
(main): Use gettext to translate (C), not print_copyright.
* src/system.h: Include <alloca.h> and <stdbool.h> unconditionally,
now that gnulib handles this.
Include <stddef.h> and <limits.h> unconditionally, now that we assume
C89 or better.
Assume that offsetof is defined in stddef.h.
Do not include <sys/param.h>.
(realloc, lseek): Do not declare.
(HAVE_DECL_VALLOC): Renamed from HAVE_VALLOC.
(CHAR_BIT, CHAR_MAX, UCHAR_MAX, LONG_MAX): Remove
declarations, since we now assume C89 or better.
(PARAMS): Remove, as we now assume C89. All uses changed.
(bindtextdomain, textdomain): Include <gettext.h> to define.
Include <unlocked-io.h>.
(valloc): Define if not defined, and if valloc is not declared.
(xstrdup): Remove decl.
* src/tar.c: Do not include <print-copyr.h>.
Include <getdate.h>.
(get_date): Remove decl.
(ATIME_PRESERVE_OPTION, CHECKPOINT_OPTION, FORCE_LOCAL_OPTION,
IGNORE_FAILED_READ_OPTION, INDEX_FILE_OPTION, NO_OVERWRITE_DIR_OPTION,
NUMERIC_OWNER_OPTION, RECURSIVE_UNLINK_OPTION, REMOVE_FILES_OPTION,
SHOW_OMITTED_DIRS_OPTION, TOTALS_OPTION): New constants.
(long_options, decode_options): Use them.
(OVERWRITE_DIR_OPTION): Remove.
(long_options): New options --index-file, --no-overwrite-dir.
Remove --overwrite-dir option.
(usage): Use PACKAGE_BUGREPORT.
(decode_options): Terminate new argv properly.
Use PACKAGE_NAME, PACKAGE_VERSION.
If verbose, report how we grokked any textual date option.
(main): Add support for index-file.
* tests/Makefile.am: Convert to UTF-8.
(AUTOMAKE_OPTIONS): Remove.
(TESTS): Add delete04.sh, multiv01.sh, options.sh.
(INCLUDES): Remove ../intl.
(LDADD): Don't link libtar.a twice.
* tests/genfile.c: Convert to UTF-8.
Don't include <print-copyr.h>.
(DEFAULT_PATTERN): Renamed from DEFAULT.
(ZEROS_PATTERN): Renamed from ZEROS.
(main): Use gettext to translate (C), not print_copyright.
2003-07-04 Paul Eggert <eggert@twinsun.com>
Revamp to meet current standards of autoconf, automake,
gettext, and gnulib, and incorporate new translations.
* config/config.guess, config/config.sub, config/depcomp,
config/install-sh, config/mdate-sh, config/missing,
config/mkinstalldirs, config/texinfo.texi:
Moved here from parent directory, or from doc.
* config.hin: Renamed from config.h.in.
* config/config.rpath: New file.
* intl: Remove this subdirectory.
* lib/fnmatch_.h: Renamed from lib/fnmatch.hin.
* lib/getstr.c, lib/getstr.h, lib/msleep.c, lib/print-copyr.c,
lib/print-copyr.h, lib/readutmp.c, lib/rename.c, lib/stpcpy.c,
lib/strstr.c, lib/strtoimax.c, lib/strtoll.c, lib/strtoull.c,
lib/strtoumax.c, lib/unicodeio.c, lib/unicodeio.h,
lib/xstrtoimax.c, m4/c-bs-a.m4, m4/ccstdc.m4, m4/check-decl.m4,
m4/decl.m4, m4/jm-mktime.m4, m4/prereq.m4, m4/xstrtoimax.m4,
stamp-h.in: Remove.
* lib/alloca_.h, lib/fnmatch_loop.c, lib/gettext.h, lib/pathmax.h,
lib/safe-write.c, lib/safe-write.h, lib/stdbool_.h, lib/strcase.h,
lib/stripslash.c, lib/unlocked-io.h, lib/xgetcwd.h, m4/alloca.m4,
m4/backupfile.m4, m4/bison.m4, m4/chown.m4, m4/dirname.m4,
m4/dos.m4, m4/exclude.m4, m4/fileblocks.m4, m4/ftruncate.m4,
m4/getdate.m4, m4/getopt.m4, m4/hash.m4, m4/human.m4,
m4/intdiv0.m4, m4/intmax_t.m4, m4/inttypes-pri.m4,
m4/inttypes_h.m4, m4/isc-posix.m4, m4/lchown.m4, m4/lib-ld.m4,
m4/lib-link.m4, m4/lib-prefix.m4, m4/memset.m4, m4/mktime.m4,
m4/modechange.m4, m4/nls.m4, m4/onceonly.m4, m4/pathmax.m4,
m4/po.m4, m4/quote.m4, m4/quotearg.m4, m4/rmdir.m4,
m4/safe-read.m4, m4/safe-write.m4, m4/save-cwd.m4, m4/savedir.m4,
m4/ssize_t.m4, m4/stdbool.m4, m4/stdint_h.m4, m4/strcase.m4,
m4/strtoimax.m4, m4/strtol.m4, m4/strtoll.m4, m4/strtoul.m4,
m4/strtoull.m4, m4/strtoumax.m4, m4/tm_gmtoff.m4, m4/uintmax_t.m4,
m4/unlocked-io.m4, m4/xalloc.m4, m4/xgetcwd.m4, m4/xstrtol.m4,
po/LINGUAS, po/Makevars, po/Rules-quot, po/boldquot.sed,
po/en@boldquot.header, po/en@quot.header, po/en_GB.po,
po/insert-header.sin, po/remove-potcdate.sin, po/stamp-po: New files.
* ABOUT-NLS, INSTALL, lib/addext.c, lib/alloca.c, lib/argmatch.c,
lib/argmatch.h, lib/backupfile.c, lib/backupfile.h, lib/dirname.c,
lib/dirname.h, lib/error.c, lib/exclude.c, lib/exclude.h,
lib/fnmatch.h, lib/full-write.c, lib/full-write.h, lib/getdate.h,
lib/getdate.y, lib/getline.c, lib/getline.h, lib/getopt.c,
lib/getopt.h, lib/getopt1.c, lib/hash.c, lib/hash.h, lib/human.c,
lib/human.h, lib/lchown.c, lib/malloc.c, lib/mktime.c,
lib/modechange.c, lib/modechange.h, lib/quote.c, lib/quote.h,
lib/quotearg.c, lib/quotearg.h, lib/realloc.c, lib/safe-read.c,
lib/safe-read.h, lib/save-cwd.c, lib/save-cwd.h, lib/savedir.c,
lib/savedir.h, lib/strcasecmp.c, lib/utime.c, lib/xalloc.h,
lib/xgetcwd.c, lib/xmalloc.c, lib/xstrdup.c, lib/xstrtol.c,
lib/xstrtol.h, lib/xstrtoumax.c, m4/codeset.m4, m4/d-ino.m4,
m4/error.m4, m4/fnmatch.m4, m4/getcwd.m4, m4/getline.m4, m4/gettext.m4,
m4/glibc21.m4, m4/iconv.m4, m4/inttypes.m4, m4/lcmessage.m4,
m4/longlong.m4, m4/malloc.m4, m4/mbrtowc.m4, m4/mbstate_t.m4,
m4/progtest.m4, m4/realloc.m4, m4/strerror_r.m4, m4/ulonglong.m4,
m4/utimbuf.m4, m4/utime.m4, m4/utimes.m4, m4/xstrtoumax.m4,
po/Makefile.in.in:
Upgrade to latest version from external source. The file "bootstrap"
now grabs these automatically, so we needn't keep track of them
in this change long any longer.
* Makefile.am (AUTOMAKE_OPTIONS): Remove. Now done by configure.ac.
(SUBDIRS): Remove intl.
* PORTS: Update for star, Macintosh.
* README, README-alpha: Suggest Autoconf 2.57, Automake 1.7.5,
Bison 1.875, gettext 0.12.1.
* THANKS: Add Bernhard Rosenkraenzer, Solar Designer.
* configure.ac (AC_INIT, AM_INIT_AUTOMAKE): Convert to modern form.
(AC_CONFIG_AUX_DIR): New.
(AC_CONFIG_HEADERS): Rename config.h.in to config.hin, to be more
like coreutils.
(AC_PREREQ): Bump from 2.52 to 2.57.
(AC_GNU_SOURCE): New.
(AC_PROG_GCC_TRADITIONAL, AM_C_PROTOTYPES, AC_C_CONST): Remove;
we no longer support K&R C.
(YACC): Remove.
(AC_CHECK_HEADERS): Remove limits.h, poll.h, stdbool.h, stropts.h,
sys/ioccom.h, sys/param.h, sys/time.h, sys/timeb.h, wchar.h, wctype.h.
(AC_MBSTATE_T): Remove.
(HAVE_UTIME_H, HAVE_DECL_FREE, HAVE_DECL_GETGRGID, HAVE_DECL_GETPWUID,
HAVE_DECL_GETENV, HAVE_DECL_MALLOC, HAVE_DECL_STRTOUL,
HAVE_DECL_STRTOULL, HAVE_MKNOD): Remove our special code.
(AM_STDBOOL_H): Add.
(AC_HEADER_TIME, AC_STRUCT_TIMEZONE,
jm_CHECK_TYPE_STRUCT_DIRENT_D_INO): Remove.
(AC_CHECK_TYPE): Remove ssize_t.
(gt_TYPE_SSIZE_T): Add.
(jm_AC_PREREQ_XSTRTOUMAX, jm_PREREQ_ADDEXT, jm_PREREQ_ERROR,
jm_PREREQ_HUMAN, jm_PREREQ_QUOTEARG, jm_PREREQ_XGETCWD,
AC_FUNC_ALLOCA, AC_FUNC_CLOSEDIR_VOID, AC_FUNC_STRERROR_R,
AC_FUNC_FNMATCH, AC_FUNC_VPRINTF, AM_FUNC_GETLINE, jm_FUNC_MALLOC,
jm_FUNC_MKTIME, jm_FUNC_REALLOC):
Remove. Switch to gnulib macros like gl_BACKUPFILE instead.
(tar_LDADD): Rename to LIB_CLOCK_GETTIME. All uses changed.
(rmt_LDADD): Rename to LIB_SETSOCKOPT. All uses changed.
(AC_CHECK_FUNCS): Remove fchdir, ftime, getcwd, isascii, nap,
napms, poll, select, strstr, usleep.
(AC_REPLACE_FUNCS): Remove ftruncate, lchown, memset, rename,
rmdir, strcasecmp, strncasecmp, strtol, strtoul.
(AM_GNU_GETTEXT): Use external and need-ngettext options.
(AM_GNU_GETTEXT_VERSION): New.
(AC_OUTPUT): Remove intl/Makefile.
* doc/Makefile.am (AUTOMAKE_OPTIONS): Remove.
($(srcdir)/tar.info, tar.dvi): Remove obsolete warnings.
* doc/fdl.texi: Update to current GNU version.
* doc/gettext.texi: Update to current coreutils version,
plus a copyright notice.
* doc/tar.texi: Switch to new method for doing copyright notices.
Use @acronym instead of @sc where appropriate.
Remove empty examples. Give a few more examples.
* lib/Makefile.am (AUTOMAKE_OPTIONS): Remove.
(EXTRA_DIST, libtar_a_SOURCES): Switch to gnulib, so that they
are built up in pieces with +=.
(noinst_HEADERS, INCLUDES): Remove.
(BUILT_SOURCES, MAINTAINERCLEANFILES, MOSTLYCLEANFILES): New.
(libtar_a_LIBADD): Use $ rather than @.
(all-local, alloca.h, fnmatch.h, stdbool.h): New rules, from gnulib.
* m4/Makefile.am (EXTRA_DIST): Add alloca.m4, backupfile.m4,
bison.m4, chown.m4, dirname.m4, dos.m4, exclude.m4, fileblocks.m4,
ftruncate.m4, getdate.m4, getopt.m4, hash.m4, human.m4,
intdiv0.m4, intmax_t.m4, inttypes_h.m4, inttypes-pri.m4,
isc-posix.m4, lcown.m4, lib-ld.m4, lib-link.m4, lib-prefix.m4,
memset.m4, mktime.m4, modechange.m4, nls.m4, onceonly.m4,
pathmax.m4, po.m4, quotearg.m4, quote.m4, rmdir.m4, safe-read.m4,
safe-write.m4, save-cwd.m4, savedir.m4, ssize_t.m4, stdbool.m4,
stdint_h.m4, strcase.m4, strtoimax.m4, strtoll.m4, strtol.m4,
strtoull.m4, strtoul.m4, strtoumax.m4, tm_gmtoff.m4, uintmax_t.m4,
unlocked-io.m4, xalloc.m4, xgetcwd.m4, xstrtol.m4.
Remove c-bs-a.m4, ccstdc.m4, check-decl.m4, decl.m4, jm-mktime.m4,
prereq.m4, xstrtoimax.m4.
* po/POTFILES.in: Remove tests/genfile.c; it doesn't need to
be translated, since it's not a user-visible tool.
* scripts/Makefile.am (AUTOMAKE_OPTIONS): Remove.
* src/Makefile.am (AUTOMAKE_OPTIONS): Remove.
(INCLUDES): Remove ../intl. Put top-srcdir before ., for
consistency with coreutils.
(LDADD): Link LIBINTL after libtar.a, since
it's now external and should stand by itself.
* src/buffer.c (print_total_written): Adjust to new human.h
interface.
(child_open_for_compress): Do not increase size to BLOCKSIZE.
(open_archive): Open index file name.
Strip trailing slahes from file names.
(flush_write): Set size to 0 if not saving names.
(flush_write, flush_read): Use safer_name_suffix rather than
inline code.
* src/common.h: Include <quote.h>.
(absolute_names_option, atime_preserve_option, backup_option,
block_number_option, checkpoint_option, dereference_option,
force_local_option, ignore_failed_read_option, ignore_zeros_option,
incremental_option, interactive_option, multi_volume_option,
numeric_owner_option, one_file_system_option, recursive_unlink_option,
read_full_records_option, remove_files_option, same_order_option,
show_omitted_dirs_option, sparse_option, starting_file_option,
to_stdout_option, totals_option, touch_option, verify_option,
dev_null_output, now_verifying, we_are_root): Now bool, not int.
(current_trailing_slash, index_file_name, recent_long_name_blocks,
recent_long_link_blocks): New vars.
(NO_OVERWRITE_DIR_OLD_FILES): New constant.
(OVERWRITE_OLD_DIRS): Remove.
(enum remove_option): New enum.
(remove_any_file): Use it as option arg, not int.
(is_avoided_name, contains_dot_dot): Return bool, not int.
(safer_name_suffix): New decl.
* src/compare.c (now_verifying): Now bool, not int.
(fill_in_sparse_array): Move to extract.c. Now returns bool;
all callers changed to test for failure.
(diff_sparse_files): Take size from current_stat, not from param.
(diff_archive): Do not count trailing slashes in archives.
(verify_volume): Test for header failure after loop, not before.
* src/create.c (relativize): Remove; replaced by safer_name_suffix.
All callers changed.
(start_header): Clear devmajor and devminor fields, too.
(finish_header): New arg block_ordinal.
(init_sparsearray): Now extern. Set sp_array_size to
SPARSES_IN_OLDGNU_HEADER if it is zero.
(dump_file): Keep link table as a hash.
Do not count "file changed as we read it" as a failure.
* src/delete.c (recent_long_name_blocks, recent_long_link_blocks):
Move extern decl to common.h.
* src/extract.c (we_are_root): Now bool, not int.
(check_time): Warn about implausibly old time stamps.
(set_stat): Use utimbuf, not stat_info.
(prepare_to_extract): New arg DIRECTORY.
(fill_in_sparse_array): Moved here from compare.c.
(extract_sparse_file): Now returns off_t, giving size left.
Truncate file at end.
(extract_archive): Use safer_name_suffix rather than rolling our own.
Use fill_in_sparse_array rather than rolling our own.
Strip trailing slashes more effectively.
Check for unsafe names.
* src/incremen.c (struct directory): nfs and found are now of type
bool, not int.
(gnu_restore): Now takes directory name as argument, not offset
of directory name in a global. All uses changed.
(CURRENT_FILE_NAME): Remove.
New tests.
* tests/delete04.sh, tests/multiv01.sh, tests/options.sh: New
files.
2002-09-30 Paul Eggert <eggert@twinsun.com>
* src/rmt.c (prepare_input_buffer): Renamed form
prepare_record_buffer. All uses changed. Do not assume that
size_t is the same width as int.
2002-03-29 Paul Eggert <eggert@twinsun.com>
* src/incremen.c (get_directory_contents):
If ignore_failed_read_option, only warn about
get_directory_contents failures. Fix suggested by
Mark Costlow.
2002-01-31 Mark W. Eichin <eichin@thok.org>
* src/buffer.c (child_open_for_compress): Don't try to read
past the end of the buffer.
2001-10-11 Jim Meyering <meyering@lucent.com>
* argmatch.c (argmatch_invalid): Use quotearg_n_style (0, ...
and quote_n (1, ... to avoid clobbering a buffer.
2001-09-26 Paul Eggert <eggert@twinsun.com>
* NEWS, configure.ac (AM_INIT_AUTOMAKE): Version 1.13.25.
@@ -2521,7 +2849,7 @@
component, when deciding whether to exclude it.
* src/list.c (<fnmatch.h>): Do not include.
(from_chars): Renamed from from_oct. New parameter specifing
(from_chars): Renamed from from_oct. New parameter specifying
the negative of the minimum allowed value. Support negative
and base-64 values.
(base64_map): New var.
@@ -3551,7 +3879,8 @@
See ChangeLog.1 for earlier changes.
Copyright (C) 1997, 1998, 1999, 2000, 2001 Free Software Foundation, Inc.
Copyright (C) 1997, 1998, 1999, 2000, 2001, 2003 Free Software Foundation,
Inc.
This file is part of GNU tar.