summaryrefslogtreecommitdiff
path: root/blog/2021/11/21/0.5.0.mdwn
blob: c78bbed924994940d10e2c66791e8b40ea166b41 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
[[!meta title="Obnam 0.5.0 released"]]
[[!meta date="Sun, 21 Nov 2021 09:51:01 +0200"]]

[Obnam]: https://obnam.org/
[feedback]: https://gitlab.com/obnam/obnam/-/issues

I've just released version 0.5.0 of [Obnam][], the encrypting backup
program. It's still an alpha version and only suitable for a light
trial of a modest amount of data that isn't sensitive. I would welcome
any [feedback][] you may have.

Release notes follow.

# Version 0.5.0, released 2021-11-20

## Experimental version

This is an experimental release, and is not meant to be relied on for
recovery of important data. The purpose of this release is to get new
features into the hands of intrepid people who want to try out new
things.

## Breaking changes

* Obnam is now licensed under the GNU Affero General Public License,
  version 3 or later. This mainly affects the Obnam chunk server,
  which has a network API.

* The Obnam client now stores the version of the database schema in
  the per-backup SQLite database. This allows the client to recognize
  when a backup was made with an incompatible version of the client.
  This, in turn, paves way for us to safely making changes that older
  versions of the client do not understand.

  As a result, the backups made with this version may silently break
  older versions of the client. However, this should be the last time
  such silent breakage happens.

## New or changed features

* Obnam now restore metadata of restored symlinks correctly.

* Obnam's handling of `CACHEDIR.TAG` files is more secure against an
  attacker adding such files in directories getting backed up.

* Progress bars so bars for different phases of the backup do not
  interfere with each other anymore.

* The client now has the "obnam resolve" subcommand to resolve a
  generation label (such as "latest") into a generation ID. The labels
  may point at different commits over time, the IDs never change.

* The client now has the "obnam chunkify" subcommand to compute
  checksums of chunks of files. For now, this is for doing performance
  benchmarks, but may eventually evolve into a way to experiment how
  parameters affect sizes of chunks and the ability of the Obnam
  client to find duplicate data.

* A build problem on macOS, where `chmod` needs a different type of
  integer, was fixed.

## Internal changes

* Obnam was migrated to using Docker in GitLab CI and using the new
  Debian stable release (version 11, code name bullseye).

* The Obnam client is now asynchronous code. This is a foundation for
  making the client be faster in the future. This has temporarily made
  the client slower in some cases.

* There is now a simple policy on what is required for changes to be
  merge, in the `DONE.md` file.

* There have been updates to use newer versions of dependencies,
  refactoring of code to be clearer and more tidy, as well as bug
  fixes in the test suite.

## Changes to documentation

* The tutorial now explains the passphrases are ephemeral.

## Thank you

Several people have helped with this release, with changes or
feedback.

* Alexander Batischev
* Daniel Silverstone
* Lars Wirzenius
* Ossi Herrala

(Our apologies to anyone who's been forgotten.)