1
2Notable changes in 0.30.1 as compared to 0.30
3=============================================
4
5May require attention
6---------------------
7
8* Previous versions of bup might have saved filesystem directories
9  with incorrect metadata, but the file contents should be fine.  This
10  could have happened if bup encountered an error while trying to read
11  the metadata for one of the files in a directory, or if bup were
12  asked to save two different files with the same name to the same
13  destination directory (e.g. via the strip/graft options).  In cases
14  where this has happened bup may present either generic or incorrect
15  metadata for some of the paths in the affected directory.
16
17* The way `bup index --fake-valid` works has been made to match the
18  documentation in the man page so that it can actually be used for
19  the stated purpose (of avoiding 'boring' files.)
20
21General
22-------
23
24* bup should more accurately recognize git versions.  Previously, for
25  example, it would reject relase candidates like "1.5.2-rc3"
26  or (apparently) "1.5.2-rc3 (something ...)".
27
28* When `BUP_ASSUME_GIT_VERSION_IS_FINE` is set to true, yes or 1 in
29  the environment,  bup will assume the version of git that's
30  available in the `PATH` is acceptable, and skip the version check.
31
32Bugs
33----
34
35* bup should close files more aggressively during various operations
36  which, for example, should return space to the filesystem sooner
37  during midx operations, whether explicit as `bup midx ...` or
38  implicit during other operations like `bup save`.  Previously, it
39  could leave deleted files open, preventing their space from being
40  returned until bup exited.  Similar improvements should prevent bup
41  from crashing during some operations like `gc` on filesystems that
42  don't actually remove a deleted files's path from a directory until
43  it the file is closed.
44
45* bup should no longer crash when trying to read the target of
46  synthetic symlinks like `/BRANCH/latest`.  For example:
47
48    File "/usr/local/lib/bup/bup/vfs.py", line 524, in _compute_item_size
49      return len(_readlink(repo, item.oid))
50    AttributeError: 'FakeLink' object has no attribute 'oid'
51
52* `bup bloom` should notice that it needs to regenerate the filter in
53  some cases.  For example, it was supposed to regenerate the filter
54  if the `-k` value changed, but it wouldn't.
55
56* The DESIGN document is clearer about the fact that `bup save
57  --smaller` will actually omit larger files from the saved tree
58  entirely.
59
60* Failing to specify a port for `bup web` on the command line (only
61  specifying a hostname) should no longer cause an unrelated syntax
62  error.
63
64* Commit date timezone offsets of 0 will no longer be interpreted
65  as local time instead in some cases.
66
67* bup should release some midx-related data structures (mmap, etc.)
68  immediately on close, instead of relying on garbage collection.
69
70* A memory leak caused by some of bup's C-level stat calls has been
71  fixed.
72
73* Some syntax issues in the manpages have been fixed.
74
75Build system
76------------
77
78* The automated tests have moved from FreeBSD 11.2 to 12.1.
79
80* t/test-fuse should be more portable.  In particular, a compatibility
81  issue with Fedora 31 has been fixed, and it should be less affected
82  by local timezone variances.
83
84* Some internal build dependencies have been fixed.
85
86Thanks to (at least)
87====================
88
89Aidan Hobson Sayers, Greg Troxel, Johannes Berg, Luca Carlon, Reinier
90Maas, Rob Browning, and Wyatt Alt
91