Permalink
Commits on Feb 16, 2013
  1. Add 'x' to the getopts call in t/compare-trees (i.e. allow -x).

    Signed-off-by: Anton Eliasson <devel@antoneliasson.se>
    Reviewed-by: Rob Browning <rlb@defaultvalue.org>
    antoneliasson committed with rlbdv Feb 1, 2013
  2. clear_index(): remove unused "cleared" variable.

    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Feb 16, 2013
  3. bloom-cmd: don't explicitly create the bloom file (allow bloom.create…

    …()).
    
    Don't explicitly create the bloom file since bloom.create() will
    handle it, and will actually use the correct (binary) mode instead of
    "w+".
    
    The binary mode has no effect under Linux or Cygwin, but is important
    under Windows.
    
    Signed-off-by: Patrick Rouleau <prouleau72@gmail.com>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    Reviewed-by: Rob Browning <rlb@defaultvalue.org>
    pfrouleau committed with rlbdv Feb 13, 2013
Commits on Feb 13, 2013
  1. Add "bup index --clear" to clear the index.

    Signed-off-by: Zoran Zaric <zz@zoranzaric.de>
    Reviewed-by: Rob Browning <rlb@defaultvalue.org>
    zoranzaric committed with rlbdv Feb 13, 2013
Commits on Feb 12, 2013
  1. Add the filename/fd and invalid value to stat_struc_to_py error messa…

    …ges.
    
    Thanks to Nathan Bird <ecthellion@gmail.com> for the initial report.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Nov 24, 2012
  2. Store metadata in the index, in bupindex.meta; only store unique values.

    See DESIGN for more information.
    
    Update the index format header to 'BUPI\0\0\0\5' (version 5).
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Nov 13, 2012
  3. Document accommodations for filesystems with low-resolution timestamps.

    ...and some effects thereof.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Feb 11, 2013
Commits on Feb 9, 2013
  1. Change index; include atime; pack time as xstat timespec; use ns in m…

    …emory.
    
    Update the index format header to 'BUPI\0\0\0\4' (version 4).
    
    Change the index to include atimes, and write all times to bupindex as
    xstat timespecs.  This is in preparation for indexing all metadata.
    After moving all of the times to the index, there should be far fewer
    unique instances of the remaining metadata in many/most cases.
    
    Change the index and index-related code to handle all time
    values as integer nanoseconds since the epoch, excepting the packed
    format, which (as mentioned above) is now an xstat timespec.
    
    After these changes the index-related in-memory and on-disk time value
    handling should match that of the metadata code (i.e. metadata.py,
    .bupm, etc.).
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    [rlb@defaultvalue.org: change 10e8 to 10**9 for ns per second.]
    rlbdv committed Nov 10, 2012
Commits on Feb 3, 2013
  1. Handle nonexistent groups in Metadata._apply_common_rec().

    Thanks to Oei, Yung-Chin <yungchin@yungchin.nl> for tracking this
    down.
    
    Reported-by: Yung-Chin <yungchin@yungchin.nl>
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Sep 29, 2012
  2. Cache all password (pwd) and group (grp) database lookups.

    Thanks to Jann Horn <jannhorn@googlemail.com> for determining that
    even just caching user names and group names could provide a notable
    performance improvement in some cases.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Sep 23, 2012
Commits on Feb 2, 2013
  1. Overhaul restore destination handling, and stripping/grafting behavior.

    Change restore to respond to source paths like this (assume outdir
    corresponds to "." if there no -C argument or to -C outdir):
    
      /foo/what/ever - extract ever to outdir/ever
      /foo/what/ever/ - extract ever/* to outdir/*
      /foo/what/ever/. - extract ever/. to outdir/. (i.e. outdir == ever).
    
    Also fix handling of top-level commit symlinks.  Previously bup would
    just restore /foo/latest as a dummy symlink like this:
    
       latest -> ../.commit/SHA
    
    Instead, dereference latest and restore the target instead.
    
    Tighten up stripping/grafting with additional argument checks, and
    handle any root collisions by creating a fake root dir (see comments
    in save-cmd.py).  Bup still doesn't handle other path collisions yet,
    i.e. if both /foo/bar and /bar are remapped to /bar.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Aug 18, 2012
Commits on Jan 27, 2013
  1. Avoid partial writes of config/config.h.

    Write to config/config.h.tmp first, then rename it to config/config.h
    once it's complete to avoid the possibility of a partially written
    file.
    
    Thanks to Paul Schulz <pschulz01@gmail.com> for reporting the problem.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Jan 10, 2013
  2. Don't pass --tmpdir to mktemp or expect it to have a default template.

    BSD mktemp does not understand --tmpdir, and does not have a default
    pattern if none is supplied.
    
    Signed-off-by: Yung-Chin Oei <yungchin@yungchin.nl>
    Acked-by: Gabriel Filion <lelutin@gmail.com>
    Reviewed-by: Rob Browning <rlb@defaultvalue.org>
    yungchin committed with rlbdv Sep 4, 2012
  3. Don't pass -AX to rsync in t/compare-trees if xattrs aren't supported.

    The -AX options won't be available if rsync doesn't report the xattr
    capability, so test for that before trying to use them.
    
    Thanks to Yung-Chin Oei <yungchin@yungchin.nl> for the suggested
    approach and initial report.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Sep 11, 2012
  4. Move tree comparison to t/compare-trees; compare content by default.

    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Aug 4, 2012
  5. Add preliminary hardlink support for review.

    Thanks to Tim Riemenschneider <git@tim-riemenschneider.de> for
    pointing out a compatibility problem (with older versions of Python)
    in an earlier version of this patch.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed May 5, 2012
  6. Stop checking for empty stat values from recursive_dirlist().

    Remove the "if pst:" guard in index-cmd.py, since it doesn't appear to
    be possible for recursive_dirlist() to return None for the stat value.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Jan 13, 2013
  7. Print a more meaningful error message when help can't run man.

    Signed-off-by: Zoran Zaric <zz@zoranzaric.de>
    [rlb@defaultvalue.org: elaborated on the error message a bit]
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    zoranzaric committed with rlbdv Jan 26, 2013
  8. Explicitly use "du -k" to set block size in t/test.sh.

    Commit e351481 (Explicitly select the "du" block size in t/test.sh)
    used the parameter "-B 1024" which isn't portable. Now use "du -k"
    to explicitly get output in kilobytes.
    
    At least du(1) on Linux (GNU coreutils), Mac OS X, FreeBSD, NetBSD,
    and OpenBSD support this option.
    
    Signed-off-by: Alexander Barton <alex@barton.de>
    Reviewed-by: Rob Browning <rlb@defaultvalue.org>
    alexbarton committed with rlbdv Jan 26, 2013
Commits on Jan 26, 2013
  1. Add *.tmp.meta to .gitignore and to "make clean".

    ...since tmpindex.tmp.meta is now generated by "make check".
    
    Signed-off-by: Alexander Barton <alex@barton.de>
    Reviewed-by: Rob Browning <rlb@defaultvalue.org>
    alexbarton committed with rlbdv Jan 23, 2013
  2. Update bup repository address in Documentation/bup.md.

    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 26, 2013
  3. Fix path to git repository in ./README.md.

    The repository at http://github.com/apenwarr/bup says to go here.
    
    Signed-off-by: Henrik Holmboe <henrik@holmboe.se>
    Reviewed-by: Gabriel Filion <lelutin@gmail.com>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    holmboe committed with rlbdv Jan 25, 2013
Commits on Jan 25, 2013
  1. Try again to create a HACKING link in README.md.

    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 25, 2013
  2. Try to create a HACKING link in README.md.

    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 25, 2013
  3. Add ./HACKING and refer to it from README.md.

    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 23, 2013
Commits on Jan 23, 2013
  1. Explicitly select the "du" block size in t/test.sh.

    Since du's default output can be affected by several environment
    variables (DU_BLOCK_SIZE, BLOCK_SIZE and BLOCKSIZE), be explicit about
    what we want via -B 1024.
    
    Thanks to Michael Ekstrand <michael@elehack.net> for the original
    report, and help with the fix.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 23, 2013
  2. Makefile: clean config/ during clean.

    Signed-off-by: Yung-Chin Oei <yungchin@yungchin.nl>
    Reviewed-by: Rob Browning <rlb@defaultvalue.org>
    yungchin committed with rlbdv Oct 24, 2012
  3. Remove dependency on linux/ext2_fs.h

    Due to a missing header in (some versions of) linux/ext2_fs.h,
    configure's AC_CHECK_HEADERS test fails for this header, making it
    appear "not found", and causing Linux-attr support to be disabled in bup
    for no good reason.
    
    Given that all the flags bup needs are available in linux/fs.h, we can
    safely remove the requirement for linux/ext2_fs.h altogether, to work
    around the problem.
    
    Signed-off-by: Yung-Chin Oei <yungchin@yungchin.nl>
    Reviewed-by: Rob Browning <rlb@defaultvalue.org>
    yungchin committed with rlbdv Oct 24, 2012
Commits on Jan 22, 2013
  1. Note linux-libc-dev build dependency (for ext2_fs.h).

    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 22, 2013
Commits on Jan 13, 2013
  1. Explain current installation process in README.md (i.e. "make install").

    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 13, 2013
  2. Check the arguments passed to ./configure.

    For now, don't allow arguments, since ./configure doesn't actually
    support any.  Previously "./configure --help" would print misleading
    information, and any other arguments were silently ignored.
    
    Thanks to Alexander Barton <alex@barton.de> for the report.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    Reviewed-by: Zoran Zaric <zz@zoranzaric.de>
    rlbdv committed Jan 12, 2013
Commits on Jan 12, 2013
  1. Properly escape \r in bup-newliner.md.

    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 1, 2013
  2. Note additional repositories that may be needed for CentOS builds.

    Thanks to Paul Schulz <pschulz01@gmail.com> for the report.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 12, 2013
Commits on Jan 10, 2013
  1. Add missing "install" argument to yum command in README.md.

    Thanks to Paul Schulz <pschulz01@gmail.com> for pointing it out.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 10, 2013
  2. Add instructions for CentOS 6 to README.md.

    Thanks to Paul Schulz <pschulz01@gmail.com> for the information.
    
    Signed-off-by: Rob Browning <rlb@defaultvalue.org>
    rlbdv committed Jan 10, 2013