2 Notable changes in 0.28 as compared to 0.27.1
3 =============================================
8 * The default install PREFIX is now "/usr/local".
10 * BINDIR, DOCDIR, LIBDIR, and MANDIR settings no longer side-step
11 DESTDIR. i.e. `make DESTDIR=/x MANDIR=/y` install will install the
12 manpages to "/x/y" not just "/y".
14 * The index format has changed, which will trigger a full index
15 rebuild on the next index run, making that run more expensive than
18 * When given `--xdev`, `bup save` should no longer skip directories
19 that are explicitly listed on the command line when the directory is
20 both on a separate filesystem, and a subtree of another path listed
21 on the command line. Previously `bup save --xdev / /usr` could skip
22 "/usr" if it was on a separate filesystem from "/".
24 * Tags along a branch are no longer shown in the branch's directory in
25 the virtual filesystem (VFS). i.e. given `bup tag special
26 /foo/latest`, "/foo/special" will no longer be visible via `bup ls`,
27 `bup web`, `bup fuse`, etc., but the tag will still be available as
33 * bup now provides experimental `rm` and `gc` subcommands, which
34 should allow branches and saves to be deleted, and their storage
35 space reclaimed (assuming nothing else refers to the relevant data).
36 For the moment, these commands require an `--unsafe` argument and
37 should be treated accordingly. Although if an attempt to `join` or
38 `restore` the data you still care about after a `gc` succeeds,
39 that's a fairly encouraging sign that the commands worked correctly.
40 (The `t/compare-trees` command in the source tree can be used to
41 help test before/after results.)
43 Note that the current `gc` command is probabilistic, which means it
44 may not remove *all* of the obsolete data from the repository, but
45 also means that the command should be fairly efficient, even for
48 * bup may have less impact on the filesystem cache. It now attempts
49 to leave the cache roughly the way it found it when running a `save`
52 * A specific Python can be specified at `./configure` time via PYTHON,
53 i.e. `PYTHON=/some/python ./configure`, and that Python will be
54 embedded in all of the relevant scripts as an explicit "#!/..." line
55 during `make install`.
57 * `bup web` will now attempt an orderly shutdown when it receives a
60 * `bup web` will listen on a filesystem socket when given an address
63 * bup no longer limits the number of files in a directory to 100000.
64 The limit is now UINT_MAX.
66 * `bup fuse` now has a `--verbose` argument, and responds to
72 * bup save should not fail when asked to save a subdirectory of a
73 directory that was completely up to date in the index. Previously
74 this could cause a "shalists" assertion failure.
76 * The way bup writes the data to disk (the packfiles in particular),
77 should be a bit safer now if there is a coincident power failure or
80 * A problem has been fixed that could cause bup to ignore the current
81 TZ setting when computing the local time.
83 * bup should no longer generate broken commits when the timezone
84 offset is not an integer number of hours
85 (e.g. TZ=Australia/Adelaide).
87 * `bup midx --output` should now work when used with `--auto` or
90 * `bup import-rsnapshot` should exit with a status of 1, not -1.
92 * bup should be more likely to get the data to permanent storage
93 safely on OS X, which appears to follow a surprising interpretation
94 of the `fsync()` specification.
96 * `bup web` should handle non-ASCII paths better. It will no longer
97 treat them as (and try to convert them to) Unicode (which they're
100 * `bup restore` should no longer crash when an attempt to remove an
101 xattr returns EACCES.
106 * The tests can now be run in parallel (and possibly much more
107 quickly) via `make -j check`.
109 * The build system now creates and uses cmd/bup-python which refers to
110 the `./configure` selected python.
116 Aidan Hobson Sayers, Ben Kelly, Ben Wiederhake, Brandon Smith, Brian Minton,
117 David Kettler, Frank Gevaerts, Gabriel Filion, Greg Troxel, James Lott,
118 Karl-Philipp Richter, Luis Sanchez Sanchez, Marcus Schopen, Mark J
119 Hewitt, Markus, Mathieu Schroeter, Michael March, Nimen Nachname, Nix,
120 Patrick Rouleau, Paul Kronenwetter, Rob Browning, Robert Edmonds,
121 Simon Persson, Tadej Janež, Thomas Klausner, Tilo Schwarz, Tim
122 Riemenschneider, Wayne Scott, pspdevel, and stevelr