Merge branch 'refs/heads/t/exit-hook'
[dss.git] / NEWS
1 -----------------------
2 1.0.0 (to be announced)
3 -----------------------
4
5 - The gengetopt option parser has been replaced by the
6 [lopsub](http://people.tuebingen.mpg.de/maan/lopsub) library. Hence
7 lopsub must be installed to compile this package. help2man is
8 no longer required since lopsub has built-in roff support.
9
10 - New subcommand "configtest" to check the command line options and
11 the configuration file for syntactic correctness.
12
13 - New option: --mountpoint. If this option is given, dss aborts if
14 no file system is mounted on the destination directory.
15
16 - New option --checksum to let rsync compute checksums occasionally.
17
18 - The --no-resume option has been removed.
19
20 - The ls subcommand now shows the age of incomplete snapshots rather
21 than 0:00.
22
23 - In run mode, dss no longer exits successfully if another instance
24 is already running.
25
26 - The command specified as the argument to --exit-hook is now subject
27 to word splitting. Previously, the string was executed as-is.
28
29 - Improved error diagnostics for the kill subcommand.
30
31 - For all subcommands other than "run", timestamps and function names
32 are omitted from the log output.
33
34 - "make install" will install the executable and the man page.
35
36 - CFLAGS, CPPFLAGS and LDFLAGS can now be used to override the flags
37 of the build system.
38
39 - The dss logo is now created with ImageMagick rather than dia.
40
41 ------------------
42 0.1.7 (2017-04-17)
43 ------------------
44
45 - Documentation improvements.
46
47 - Improved error diagnostics.
48
49 - dss no longer refuses to run in daemon mode without a log file.
50
51 - Minor tweaks to the snapshot pruning algorithm.
52
53 - A fix for create mode when rsync exists unsuccessfully.
54
55 - NEWS and README have been converted to markdown format.
56
57 - We now compile with -Wunused-parameter and -Wshadow.
58
59 ------------------
60 0.1.6 (2015-08-05)
61 ------------------
62
63 - New option --min-complete to specify the minimal number of snapshots
64 to keep.
65
66 - Improved handling of rsync errors. The new --max-rsync-errors option
67 tells dss to terminate after the given number of rsync failures.
68
69 - New home page URL and email address.
70
71 - Reworked rsync restart logic, new --max-rsync-errors option.
72
73 - Avoidance of "Errors with program diagnostics" error from rsync.
74
75 - Improved signal handling.
76
77 ------------------
78 0.1.5 (2014-01-14)
79 ------------------
80
81 - snapshot recycling: outdated, redundant and orphaned snapshots are
82 reused as the basis for new snapshots.
83
84 - New subcommands: --kill, --reload.
85
86 - The semaphore-based locking system prevents to start multiple
87 instances of dss.
88
89 - When dss receives SIGHUP it now writes the internal state and the
90 configuration to the log file
91
92 - First steps to make the source code ANSI C conform (thanks to
93 Daniel Richard G).
94
95 - dss writes log messages to stderr rather than to the logfile unless
96 running in daemon mode.
97
98 - Default hooks work also on systems where "/bin/true" does not exist,
99 e.g. Mac OS.
100
101 ------------------
102 0.1.4 (2010-11-08)
103 ------------------
104 This version of dss contains some new features, many improvements of
105 existing features and several bug fixes.
106
107 Support for resuming snapshot creation after restart has been added
108 and snapshot removal is deferred until at least one current snapshot
109 exists. The internal handling of the various hooks has been simplified
110 and many error messages have been clarified. On SIGHUP, dss now writes
111 its configuration and internal state to the log file.
112
113 ------------------
114 0.1.3 (2009-06-06)
115 ------------------
116 You can now specify pre-rm/post-rm-hooks that are executed whenever
117 a snapshot is deleted. This release adds better compatibility with
118 rsync 3.0, and avoids busy loops when automatically restarting the
119 rsync process.
120
121 ------------------
122 0.1.2 (2009-03-05)
123 ------------------
124 This release includes the reason why a snapshot gets removed in the
125 log message. It will never remove the snapshot that is currently
126 being created. It will really pass the full path to the last complete
127 snapshot in the post_create_hook.
128
129 ------------------
130 0.1.1 (2008-11-13)
131 ------------------
132 This release prevents busy loops on rsync exit code 13. It ignores
133 any snapshot directory with creation time >= completion time. It
134 opens /dev/null for reading and writing when executing rsync. It shows
135 human readable snapshot creation duration when listing snapshots. It
136 restarts the rsync process if it returned with exit code 13.
137
138 ------------------
139 0.1.0 (2008-10-10)
140 ------------------
141 Initial public release.