📄 changelog
字号:
* THANKS: Add Jason Armistead * doc/tar.texi: Update * NEWS: Update * src/buffer.c: Implement more flexible checkpoint style * src/common.h (checkpoint_option): Change type to unsigned (checkpoint_style): New variable. * src/tar.c: --checkpoint takes an optional argument specifying number of records between two successive checkpoints (proposed by Jason Armistead on 2004-06-22). Optional dot starting the argument means "print dots instead of textual checkpoints". (tar_help): New function * src/transform.c: Minor fixes.2006-06-08 Sergey Poznyakoff <gray@gnu.org.ua> * gnulib.modules: Add mkdtemp * doc/dumpdir.texi: New file * doc/Makefile.am (tar_TEXINFOS): Add dumpdir.texi * doc/tar.texi: Document dumpdir format * src/incremen.c (dumpdir_locate,obstack_code_rename): (purge_directory): Re-implement renaming. Introduce 'X' control code. (make_tmp_dir_name): Remove * src/transform.c (set_transform_expr,_transform_name_to_obstack): Implement NUMBER flag. (add_char_segment): Fix length assignement * doc/tar.texi: Update2006-06-07 Sergey Poznyakoff <gray@gnu.org.ua> * src/transform.c (transform_name_fp): Run fun even if _transform_name_to_obstack returns false. (_transform_name_to_obstack,set_transform_expr): Implement GNU extension case conversion operations. * doc/tar.texi (transform): Document the option.2006-06-02 Sergey Poznyakoff <gray@gnu.org.ua> * NEWS: Update * src/common.h (set_transform_expr): New function * tests/Makefile.am: Add incr04.at * tests/testsuite.at: Likewise * tests/incr04.at: New test case * tests/long01.at: Fix typo in the comment * tests/multiv04.at: Use genfile --files-from (Above changes need new genfile.c from paxutils) * TODO: Update * NEWS: Update * doc/tar.texi: Update * src/transform.c: New file * src/Makefile.am (tar_SOURCES): New module transform.c * src/common.h (transform_name, transform_name_fp): New functions (show_stored_names_option): Renamed to show_transformed_names_option. All uses changed * src/create.c (dump_file0): Transform file name * src/extract.c (extract_archive): safer_name_suffix and stripped_prefix_len are now called by decode_header * src/list.c (print_header): Update displayable name selection. * src/tar.c: New option --transform New option --show-transformed-names generalizes --show-stored-names. The latter is retained as an alias.2006-05-31 Sergey Poznyakoff <gray@gnu.org.ua> * src/incremen.c (make_directory): Fix initialization of struct directory.2006-05-25 Sergey Poznyakoff <gray@gnu.org.ua> * doc/tar.texi: Document use of globbing patterns. * src/tar.c (parse_opt): Add comment before --preserve case.2006-05-24 Sergey Poznyakoff <gray@gnu.org.ua> * NEWS: Update * doc/tar.texi: Update * configure.ac (AM_INIT_AUTOMAKE): Use tar-ustar option. Raise version requirement to 1.9 * src/common.h (struct name): Refactured (warn_regex_usage): New variable. (dump_file): First argument is const char*. (name_init,name_add): Removed (name_add_name,name_add_dir): New functions (name_next): Return const char*. * src/create.c: (dump_file,dump_file0): First argument is const char*. All callers updated. * src/names.c: Rewritten handling of member names in the command line. Tar no longer attempts to guess globbing patterns, instead it relies on --wildcard option. (init_names): Removed. (struct name_elt): New structure. (name_array): Change type to struct name_elt. All references updated (name_add_name,name_add_dir): New functions (name_next_elt): New function (name_next): Rewritten using name_next_elt. (namelist_match): Rewritten pattern matching using exclude_fnmatch. (names_notfound): Warn if globbing patterns were used without --wildcards option * src/tar.c (options): Move globbing-related options into a separate group. Set -l as an alias to --check-links, as required by UNIX98 (struct tar_args): New fields wildcards,matching_flags,include_anchored (MAKE_EXCL_OPTIONS,MAKE_INCL_OPTIONS): New macros (parse_opt): Use x2nrealloc to grow archive_name_array. Use MAKE_EXCL_OPTIONS,MAKE_INCL_OPTIONS to create appropriate fnmatch options, and name_add_name,name_add_dir to handle member name and -C arguments. (decode_options): Likewise (main): Remove call to init_names. * tests/append.at, tests/append01.at, tests/extrac01.at, tests/options.at, tests/options02.at, tests/same-order01.at, tests/same-order02.at: Make AT_SETUP more readable.2006-05-23 Sergey Poznyakoff <gray@gnu.org.ua> * src/buffer.c (change_tape_menu): Fix typo (uninitialized variable) introduced yesterday.2006-05-22 Sergey Poznyakoff <gray@gnu.org.ua> * doc/tar.texi: Use @var{file_name} instead of @var{file name} * src/buffer.c (change_tape_menu): Break the loop after obtaining new archive name. Check for empty input line.2006-05-15 Sergey Poznyakoff <gray@gnu.org.ua> * tests/atlocal.in (XFAILFILE): New variable * tests/version.at: Create $XFAILFILE on failure * tests/testsuite.at (AT_TAR_CHECK): Declare expected failure if $XFAILFILE exists.2006-05-13 Sergey Poznyakoff <gray@gnu.org.ua> * THANKS: Update * src/buffer.c (read_header0): Use read_header_primitive to avoid clubbering current_tar_info. All callers updated. * src/common.h (read_header_primitive): New function * src/extract.c (extract_volhdr): New function (prepare_to_extract): Use extract_volhdr as extractor for volume names. * src/list.c (read_header_primitive): New function (read_header): Front end for read_header_primitive * tests/chtype.at: New file * tests/volsize.at: New file * tests/Makefile.am (TESTSUITE_AT): Add chtype.at, volsize.at (check-full): New target. * tests/atlocal.in (TEST_DATA_URL,STAR_DATA_URL) (STAR_TESTSCRIPTS): Provide default values. (tarball_prereq): New function * tests/testsuite.at (AT_TARBALL_PREREQ): New defun (AT_STAR_PREREQ): Rewrite using tarball_prereq Include chtype.at and volsize.at * tests/volume.at: Add keywords. * tests/star/gtarfail.at, tests/star/gtarfail2.at, tests/star/multi-fail.at, tests/star/pax-big-10g.at, tests/star/ustar-big-2g.at, tests/star/ustar-big-8g.at (AT_STAR_PREREQ): Provide md5 sum. * lib/.cvsignore: Update2006-05-08 Sergey Poznyakoff <gray@gnu.org.ua> * tests/testsuite.at (AT_SORT_PREREQ, AT_UNPRIVILEGED_PREREQ): New defines * tests/extrac04.at, tests/incr03.at, tests/listed02.at, tests/pipe.at, tests/rename01.at, tests/rename02.at, tests/rename03.at, tests/same-order01.at: Call AT_SORT_PREREQ. Remove fd 2 redirection after calls to sort * ignfail.at: Call AT_UNPRIVILEGED_PREREQ2006-05-08 Sergey Poznyakoff <gray@gnu.org.ua> Listed incremental backups: keep more information about directories. Handle renamed directories more effectively (initial implementation, more updates to follow). Source tree before this point is tagged alpha_1_15_90_incremental_1. * NEWS: Update * configure.ac: Raise version number to 1.15.91 * src/common.h (rename_directory,append_incremental_renames): New functions. * src/extract.c (rename_directory): New function * src/incremen.c (struct directory.contents, flags): New members (nfs,found,new): Remove. Replaced by appropriate bitmask values in `flags' field. All uses updated. (directory_meta_table): New table. (hash_directory): Rename to hash_directory_name (compare_directories): Rename to compare_directory_names (hash_directory_meta,compare_directory_meta,find_directory_meta): New functions (compare_dirents): Removed (note_directory): Get 7th argument: directory contents. All callers updated (dumpdir_locate,makedumpdir): New functions (scan_directory): Rewritten. Use makedumpdir to create a sorted dumpdir array. This makes the obstack argument unnecessary. Besides, ALL_CHILDREN flag is set only for new directories. (procdir): Change return type to struct directory. Return immediately if the directory was already initialized. Discover directory renames using directory_meta_table. (append_incremental_renames): New function. (read_directory_file, write_directory_file): Use new snapshot file format. * src/names.c (collect_and_sort_names): Update dir_contents of the first non-fake name entry when in listed incremental mode. * tests/incr03.at: New testcase * tests/rename01.at: New testcase * tests/rename02.at: New testcase * tests/rename03.at: New testcase * tests/Makefile.am: Add incr03.at,rename01.at,rename02.at,rename03.at * tests/testsuite.at: Likewise. * tests/listed02.at: Update for the new behavior * tests/multiv04.at (AT_KEYWORDS): Add missing incremental kw.2006-05-02 Sergey Poznyakoff <gray@gnu.org.ua> * src/buffer.c (try_new_volume): Attempt to continue if the name is apparently truncated in a GNU format volume. * tests/comprec.at, tests/delete01.at, tests/delete02.at, tests/delete04.at, tests/delete05.at, tests/extrac05.at, tests/listed01.at, tests/multiv01.at, tests/multiv02.at, tests/pipe.at, tests/same-order01.at, tests/same-order02.at, tests/sparse01.at, tests/sparse03.at: Always use genfile --file, this enables extra error checking. * tests/multiv03.at: Attempt to extract a member with truncated file name from the archive. * src/buffer.c (_open_archive): Remove unnecessary argument to check_compressed_archive.2006-04-25 Sergey Poznyakoff <gray@gnu.org.ua> * tests/sparse01.at, tests/sparse02.at, tests/sparse03.at, tests/sparsemv.at, tests/sparsemvp.at: Skip the test if the file system does not support sparse files. * doc/tar.texi (@copying): Remove the reference to not existing invariant section.2006-04-11 Sergey Poznyakoff <gray@gnu.org.ua> * src/extract.c (extract_dir): Fix toggling existing directory permissions (Debian bug #361077). Use parts of patch provided by Ian Jackson <iwj@ubuntu.com>. * src/compare.c: Minor changes * src/incremen.c (directory.new): New member (note_directory,find_directory: Use make_directory to create struct directory entries (procdir): Avoid duplicating directories in the incremental backup map. * tests/Makefile.am (TESTSUITE_AT): Add extrac06.at * tests/testsuite.at: Include extrac06.at2006-03-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de> (trivial change) * tests/atlocal.in (PATH): Add build-aux from the source tree, not the build tree.2006-03-13 Sergey Poznyakoff <gray@gnu.org.ua> * THANKS: Add Benno Schulenberg2006-03-13 Jim Meyering <jim@meyering.net> * tests/listed02.at: Sort the two lines of stderr from the first `tar -v --listed-incremental'. They would come out reversed and provoke a test failure on a tmpfs file system.2006-03-13 Benno Schulenberg <benno@nietvergeten.nl> * doc/tar.texi: Minor fixes. * src/tar.c (options): Consistently begin help messages with a lowercase letter.2006-03-12 Sergey Poznyakoff <gray@gnu.org.ua> * tests/Makefile.am (AM_CPPFLAGS): Define LOCALEDIR2006-03-07 Paul Eggert <eggert@cs.ucla.edu> * src/buffer.c (record_buffer_aligned): New var. (init_buffer): Use it to ensure that the buffer is aligned. This doesn't result in any measurable performance improvement on my host (Debian GNU/Linux 3.1 stable, with default block size), but I assume it does help on some hosts. * lib/.cvsignore: Sort.2006-03-04 Sergey Poznyakoff <gray@gnu.org.ua> * tests/shortrec.at: Use -f - to read from stdin.2006-02-21 Sergey Poznyakoff <gray@gnu.org.ua> * doc/tar.texi: Fix typo: --to-command instead of --to-program2006-02-20 Paul Eggert <eggert@cs.ucla.edu> * tests/multiv04.at (split directory members in a MV archive): Don't use %X in an awk printf format; this doesn't work with Solaris 10 /usr/bin/awk. Use %x instead.2006-02-20 Sergey Poznyakoff <gray@gnu.org.ua> * src/create.c (split_long_name): Fix maximum length estimation. Patch by Jim Lowe. * tests/Makefile.am (lustar01.at,lustar02.at,lustar03.at): New tests. * tests/atlocal.in: Add build-aux to the PATH * tests/long01.at: Remove mkhier, use AT_TAR_MKHIER instead * tests/longv7.at: Reword test title * tests/lustar01.at: New test * tests/lustar02.at: New test * tests/lustar03.at: New test * tests/testsuite.at (AT_TAR_MKHIER): New macro (lustar01.at,lustar02.at,lustar03.at): New tests.2006-02-20 Paul Eggert <eggert@cs.ucla.edu> * bootstrap: Don't claim lib/Makefile.am is generated automatically from itself. Avoid installation glitches on Solaris 8 with Sun C 5.4. * lib/.cvsignore: Add system-ioctl.h. * lib/Makefile.tmpl (noinst_HEADERS): Add system-ioctl.h. * src/buffer.c: Include system-ioctl.h. * src/compare.c: Likewise. * src/delete.c: Likewise. * src/system.c: Include <getline.h>, <setenv.h>. * src/tar.c: Include <getline.h>.2006-02-19 Sergey Poznyakoff <gray@gnu.org.ua> * src/buffer.c (add_chunk_header): Free st.orig_file_name after calling finish_header(). (new_volume): Prompt the user for archive name if unable to open next archive.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -