]> arthur.barton.de Git - bup.git/blob - note/0.28-from-0.27.1.md
Add xattr EACCES fix to release notes
[bup.git] / note / 0.28-from-0.27.1.md
1
2 Notable changes in 0.28 as compared to 0.27.1
3 =============================================
4
5 May require attention
6 ---------------------
7
8 * The default install PREFIX is now "/usr/local".
9
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".
13
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
16   usual.
17
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 "/".
23
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
28   "/.tag/special".
29
30 General
31 -------
32
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.)
42
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
46   large repositories.
47
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`
50   or `split`.
51
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`.
56
57 * `bup web` will now attempt an orderly shutdown when it receives a
58   SIGTERM.
59
60 * `bup web` will listen on a filesystem socket when given an address
61   like "unix://...".
62
63 * bup no longer limits the number of files in a directory to 100000.
64   The limit is now UINT_MAX.
65
66 * `bup fuse` now has a `--verbose` argument, and responds to
67   `--debug`.
68
69 Bugs
70 ----
71
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.
75
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
78   system crash.
79
80 * A problem has been fixed that could cause bup to ignore the current
81   TZ setting when computing the local time.
82
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).
86
87 * `bup midx --output` should now work when used with `--auto` or
88   `--force`.
89
90 * `bup import-rsnapshot` should exit with a status of 1, not -1.
91
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.
95
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
98   not).
99
100 * `bup restore` should no longer crash when an attempt to remove an
101   xattr returns EACCES.
102
103 Build system
104 ------------
105
106 * The tests can now be run in parallel (and possibly much more
107   quickly) via `make -j check`.
108
109 * The build system now creates and uses cmd/bup-python which refers to
110   the `./configure` selected python.
111
112
113 Thanks to (at least)
114 ====================
115
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