X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=ChangeLog;h=b35e183b98446e02faa26900e0bea8e82003c8ae;hb=3209329337c87a102fa12d7eb60a3df323ba56c1;hp=73ffdd8859ff32df4280bf3dc56e1c648c5b8f05;hpb=b65b1ff9eb435b4c19a3e51f9b838c8150094a1f;p=chaz%2Ftar diff --git a/ChangeLog b/ChangeLog index 73ffdd8..b35e183 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,7 +1,113 @@ +2005-09-16 Paul Eggert + + Don't filter time stamps through the resolution supported + by struct stat; keep them to full nanosecond resolution. + This affects behavior only on older hosts or file systems + that have lower-resolution time stamps. + * src/common.h (OLDER_STAT_TIME): Parenthesize arg. + (OLDER_TAR_STAT_TIME): New macro. + (code_timespec): New function. + (BILLION, LOG10_BILLION, TIMESPEC_STRSIZE_BOUND): New constants. + * src/compare.c (diff_file): Use full time stamp resolution. + * src/create.c (start_header, dump_file0): Likewise. + (start_header, dump_file0): Adjust to new structure layout. + (dump_regular_finish): Simplify by using timespec_cmp. + * src/extract.c (struct delayed_set_stat): Don't store stat info + that we don't need, to save space. All uses changed. + (struct delayed_set_stat, struct delayed_link, file_newer_p): + (create_placeholder_file, extract_link, apply_delayed_links): + Use full time stamp resolution. + (check_time): Use code_timespec rather than rolling our own code. + (set_stat, delay_set_stat): Arg now points to tar_stat_info to + avoid losing time information. All callers changed. + * src/list.c (read_and, decode_header, print_heaeder): + Use full time stamp resolution. + * src/misc.c (code_timespec): New function. + * src/tar.h (struct tar_stat_info): Record atime, mtime, ctime + separately, for benefit of hosts with lower resolution. + * src/update.c (update_archive): Use full time stamp resolution. + * src/xheader.c (code_time): Use new code_timespec function + to simplify code. + (atime_coder, atime_decoder, ctime_coder, ctime_decoder): + (mtime_coder, mtime_decoder): Use full time stamp resolution. + + Report time stamps to full resolution in environment. + Report memory allocation failures rather than ignoring them. + * src/system.c (time_to_env): New function. + (oct_to_env, str_to_env, chr_to_env): Report memory allocation failures. + (stat_to_env): Report full resolution in time stamps. + +2005-09-16 Paul Eggert + + Merge changes from gnulib for file system sub-second time stamps. + * configure.ac: Remove checks for struct stat.st_spare1, struct + stat.st_atim.tv_nsec, struct stat.st_atimespec.tv_nsec, struct + stat.st_atimensec, as gnulib now does this for us. + Similarly for LIB_CLOCK_GETTIME. + * gnulib.modules: Add stat-time. + * lib/.cvsignore: Add stat-time.h. + * src/common.h: Include stat-time.h. + (timespec_lt): Remove. All callers changed to use timespec_cmp. + (get_stat_atime, get_stat_ctime, get_stat_mtime): + (set_stat_atime, set_stat_ctime, set_stat_mtime): + Remove; now defined by stat-time.h. + +2005-09-14 Sergey Poznyakoff + + * src/incremen.c (list_dumpdir): New function. Used to dump + contents of GNUTYPE_DUMPDIR blocks. + * src/common.h (list_dumpdir): Likewise. + * src/list.c (list_archive): Use list_dumpdir() to display + GNUTYPE_DUMPDIR blocks. Do that only if two or more -v options are + given. + +2005-09-12 Paul Eggert + + * lib/.cvsignore: Adjust to current gnulib and modules used. + Add getdelim.c, getdelim.h, mbchar.c, mbchar.h, mbuiter.h, memchr.c, + pipe-safer.c, size_max.h, strdup.c, strdup.h, strnlen.h, strnlen1.c, + strnlen1.h, unistd--.h. + Remove getndelim2.c, getndelim2.h, pathmax.h, sysexits.h, xstrdup.c. + + Treat fishy-looking hard links like fishy-looking symlinks. + * src/extract.c (struct delayed_set_stat): Rename after_symlinks + member to after_links. All uses changed. + (struct delayed_link): Renamed from struct delayed_symlink. + All uses changed. New member is_symlink. + (delayed_link_head): Renamed from delayed_symlink_head. All uses + changed. + (create_placeholder_file): New function, taken from extract_symlink. + (extract_link): Create placeholders for fishy-looking hard links. + (extract_symlink): Move code into create_placeholder_file. + (apply_delayed_links): Renamed from apply_delayed_symlinks. + All uses changed. Create both hard links and symlinks. + +2005-09-03 Paul Eggert + + * README-alpha: Modernize description of software required for + developers. + +2005-09-03 Sergey Poznyakoff + + * gnulib.modules: Add strdup + * src/incremen.c (purge_directory): Do not dereference symbolic + links. Bug reported by Ralph Corderoy and + David Brown + * tests/incr01.at: New test. + * tests/Makefile.am: Add incr01.at + * tests/testsuite.at: Likewise + * THANKS: Updated + +2005-08-17 Sergey Poznyakoff + + * src/incremen.c (read_directory_file): Use strtoumax to read + snapshot file contents. + (write_directory_file_entry): Use umaxtostr(). + 2005-07-31 Sergey Poznyakoff * src/create.c (file_dumpable_p,dump_file0): Fix handling of - sparse files to /dev/null with --totals option. + sparse files to /dev/null with --totals option. * tests/update.at: Remove dependency on file order. 2005-07-08 Sergey Poznyakoff @@ -30,16 +136,16 @@ * tests/star/ustar-big-2g.at: Likewise * tests/star/ustar-big-8g.at: Likewise - * tests/sparse03.at: New test. + * tests/sparse03.at: New test. * tests/Makefile.am: Add sparse03.at * tests/testsuite.at: Likewise * src/xheader.c (size_decoder): Do not set archive_file_size. Fix bugs introduced yesterday: - + * src/sparse.c (tar_sparse_init): Initialize - dimped_size to 0. + dimped_size to 0. (sparse_scan_file): Initialize archive_file_size to 0. The variable keeps size of the file *as stored in the archive*, not the size reported by stat.