7e97015417f624d6faefd9f11cff968d8648929f
[matthijs/upstream/backupninja.git] / ChangeLog
1 version 0.9.4 -- unreleased
2     backupninja changes
3          . Fixed bug in toint(), and thus isnow(), which caused it
4            to not work when run from cron.
5          . Recursively ignore subdirs in /etc/backup.d (Closes: #361102)
6          . Add admingroup option to configuration to allow a group that can
7            read/write configurations (instead of only allowing root). Checks
8            and complains about group-readable files only when the group differs
9            from the one in the configuration file (default is root as before). 
10            Thanks to Martin Krafft for the patch (Closes: #370396).
11     handler changes
12         Added tar handler
13         mysql:
14          . Fixed improper use of $vuserhome (Closes: #351083)
15          . Fixed erroneous removal of tmpfile when it didn't exit
16          . Fixed inversed vsname emptiness check
17          . Fixed su quote usage to be more posixy
18          . Compress for sqldumps now happens in-line to save some disk space (Closes: #370778)
19         pgsql:
20          . Fixed inversed vsname emptiness check
21          . Fixed su quote usage to be more posixy
22          . Fixed shell expansion, thanks Thomas Kotzian (Closes: #363297)
23          . postgres user UID is now the one from inside the vserver if necessary
24          . Compress now happens in-line to save some disk space (Closes: #370778)
25         svn:
26          . Fixed inversed vsname emptiness check
27         rdiff:
28          . Symlink and globbing support enhancement and clarification: for
29            a given include/exclude/vsinclude statement, rdiff handler now
30            support EITHER globbing with '*' OR symlinks in the path.
31          . Fixed improper include/exclude symlink dereference
32          . Removed overzealous vsnames check
33          . Now works if testconnect=no and if $test is not defined.
34         dup:
35          . Symlink and globbing support enhancement and clarification: for
36            a given include/exclude/vsinclude statement, dup handler now
37            support EITHER globbing with '*' OR symlinks in the path.
38          . Removed over zealous vsnames check
39          . Does not pretend anymore that duplicity can work without
40            any passphrase
41          . Support duplicity 0.4.2 (with Debian patches applied; upstream's
42            0.4.3 will integrate them)
43          . Now forbid to (try to) include /.
44         sys:
45          . Many more system checks were added, thanks to Petr Klíma
46         ldap:
47          . Compress now happens in-line to save some disk space (Closes: #370778)
48     lib changes
49         vserver:
50          . init_vservers: fixed Debian bug #351083 (improper readlink syntax)
51          . found_vservers: escaped special grep repetition character +
52     ninjahelper changes
53          . Recursively ignore subdirs in /etc/backup.d (Closes: #361102)
54     changed cron permissions to 644
55     minor documentation fixes
56
57 version 0.9.3 -- February 1st, 2006
58     autotools fixes
59     backupninja changes
60         backupninja.conf
61          . added (commented out) the various default paths to
62            programs such as PGSQLDUMP, so that users can figure
63            out more easily they can customize them
64         code refactor:
65          . now uses vservers lib to initialize vservers support
66     handler changes
67         duplicity, mysql, pgsql, rdiff, svn, sys: start to use (at different
68            degrees) new lib/vserver functionality
69         mysql:
70          . fixed no user defaults file processing
71         duplicity:
72          . fixed (again...) globbing in include and exclude options (Debian bug
73            #348022, follow-up to #338796)
74          . warn if vsnames or vsinclude is enabled while vservers support is
75            disabled in backupninja.conf
76          . now works when multiple vservers names are given (separated by space)
77            in vsnames config variable
78         rdiff
79          . fixed globbing bug in include, exclude and vsinclude options
80          . it's now possible to choose exactly which vservers should be
81            backed-up, as it already was with duplicity handler, with the
82            "vsnames" configuration setting
83     ninjahelper changes
84         rdiff.helper:
85          . fixed errors in create remote dir
86          . code formatting cleanup (three spaces indent)
87          . fixed bug which caused only first include/exclude dir to
88            have "include = "
89          . fixed globbing bug with exclude
90         ninjahelper:
91          . now reports error if the helper script has a syntax error or bombs out.
92          . code formatting cleanup (three spaces indent)
93     lib changes
94         vserver:
95          . init_vservers: improved VROOTDIR detection
96          . init_vservers: test in a stricter way the real vservers availability
97          . init_vservers: canonicalize VROOTDIR (since duplicity et al.
98            don't follow symlinks)
99          . init_vservers: warn if vservers are enabled but no vserver is found
100          . new function: vservers_exist
101     known bugs:
102         easydialog: 
103          . formDisplay does not return exit status.
104
105 version 0.9.2 -- December 29, 2005
106     backupninja changes
107         fixed broken toint() which caused when "everyday" problems
108         backupninja.conf.5 updated to include "when" and "vservers"
109         code refactor:
110             . moved to lib/ some code that has to be shared between
111               backupninja and ninjahelper
112     handler changes
113         trac:
114             . mkdir subdirectory problem fixed
115         duplicity:
116             . globbing support fixed in include and exclude options 
117             . different signing and encrypting key support added
118             . fixed erroneous comments in example.dup about the way
119               GnuPG-related options are used
120         mysql:
121             . handler vserver bugs fixed and debug output enhanced
122     ninjahelper(s) changes
123         vserver-related functions added to lib/vservers.in
124         added man/ninjahelper.1 man page
125         makecd:
126             . was missing in Makefile.am/.in
127         rdiff-backup:
128             . used to expand '*' in default source directories
129             . the "Cancel" buttons used to have a weird behaviour
130             . updated to include Vserver selection 
131         pgsql:
132             . forbid the user to choose an empty database set 
133             . "Cancel" button now does what it is meant to do
134         mysql:
135             . enhanced for vserver support 
136             . now able to select databases and dump directory
137         duplicity:
138             . new handler added (with Vserver support)
139
140 version 0.9.1 -- November 05 2005
141     rearranged source so that it is relocatable with autotools
142         (thanks to Petr Klíma petr.klima@madeta-group.cz)
143     fixed many bugs in rdiff helper
144     rdiff handler does not require 'label' (for real this time?)
145     added makecd ninjahelper
146         (thanks to Stefani stefani@riseup.net)
147     made ninjahelper create files with mode 600 rather than 000
148     changed subversion handler to use svnadmin hotcopy instead of
149             the unsupported hot-copy.py script, which was moved in Debian
150     update rdiff ninjahelper
151             now detects and auto-install rdiff-backup on the remote 
152             machine if possible, also tests the remote backup directory
153             and offers to create it if it doesn't exist
154
155 version 0.9 -- October 19 2005
156     *** IMPORTANT CHANGE, UPGRADE AT ONCE ***
157      fixed insecure temporary file creation 
158     *****************************************
159     removed erroneous magic file marker in pgsql handler
160     fixed incorrect find positional
161     changed direct grep of /etc/passwd to getent passwd.
162     rdiff helper has much better information on failed ssh attempt
163         (patch from cmccallum@thecsl.org).
164     rdiff handler now supports remote source and local dest. 
165         (patch from cmccallum@thecsl.org).
166     man pages are greatly improved.
167
168 version 0.8 -- September 15 2005
169     added pgsql (PostgreSQL) handler, with vservers support.
170     added vservers support to duplicity handler
171         Note: the configuration is a bit different than the rdiff
172         handler's one, but the default behavior is the same:
173         have a look at example.dup.
174     improved README
175     documented .disabled method.
176     corrected VROOTDIR default value.
177     added ninjahelper to the install instructions.
178     improved rdiff, dup and sys handlers' vservers support
179         prevent vserver-debiantools' $VROOTDIR/ARCHIVES directory
180         to be seen as a vserver
181     changes to sys handler
182         make use of configurable $VSERVERINFO instead of hard-coded vserver-info.
183         fixed dpkg existence test inside vserver.
184         fixed $nodpkg use.
185     changes to pgsql handler
186         now checks if the specified vserver is running.
187         now checks if $PGSQLDUMP/$PGSQLDUMPALL are available where needed.
188         now checks if "postgres" user exists on the host/vserver.
189     changes to ninjahelper
190         check_perms() does not die anymore on group/world readable
191         helper scripts (now consistent with the "helper scripts
192         must not be group or world writable!" error msg).
193     xedit action now tries $EDITOR, then /etc/alternatives/editor,
194         then nano, vim and vi, and aborts if none of these exists.
195     added helper for pgsql handler.
196     rdiff handler now does not require 'label'
197     changes to mysql and svn handlers' vservers support
198         these handlers now check if the source vserver is running
199     added 'ignores' for mysql handler. (thanks Daniel.Bonniot@inria.fr)
200
201 version 0.7 -- July 26 2005
202     added ninjahelper: a dialog based wizard for creating backupninja configs.
203     considerably improved and changed the log file output.
204     you can now disable actions with .disabled (this is new preferred method).
205     added makecd handler and example.makecd for backing up to cd/dvd (thanks stef).
206     fixed bug when specifying multiple 'when' options.
207
208 version 0.6 -- June 16 2005
209     ldap handler has new options: backup method to use (ldapsearch or
210         slapcat), restart, passwordfile and binddn. Default backup method
211         is set to ldapsearch as this is safer
212     ******************************************************************
213     NOTE: to get the previous default behavior with the ldap handler, 
214     you must set "method = slapcat". The new default is ldapsearch.
215     ******************************************************************
216     implemented fix so that the main script will echo fatal errors rather
217         than being silent about them, this means an error message every hour
218         if there is a major configuration problem (not a handler problem)
219     added vserver support to main script and to the handlers: mysql, svn, sys, rdiff
220     changes to duplicity handler (thanks intrigeri!):
221         "keep = yes" now disables file cleaning on desthost
222         added "sign" option for backups signing
223         added "encryptkey" option to specify the gpg key to use
224         split config into [source], [gpg] and [dest] sections
225         added "nicelevel" option
226         added "testconnect" option
227         added "sshoptions" option (will be passed to ssh/scp)
228         added "bandwidthlimit" option
229     example.dup example config file for duplicity handler 
230     added trac (http://trac.edgewall.com/) environment handler (thanks Charles Lepple!)
231     added configfile option to mysql handler
232         the default is /etc/mysql/debian.cnf. with this, 
233         sqldump doesn't need dbusername. (hotcopy still does).
234     fixed bug in mysql handler which caused some passwords to not work.
235         (.my.cnf files now have double quotes around password)
236     can now pass options to hwinfo and sfdisk in sys handler.
237
238 version 0.5 -- April 12 2005
239     rdiff handler works when remote sshd has a banner
240     rdiff handler supports local dest 
241     logfile is created if it doesn't exist
242     added "when = hourly" 
243     added optional 'nicelevel' to rdiff handler
244     fixed bug where actions were not run in numeric order.
245     improved 'when' parsing.
246
247 version 0.4.4 -- March 18 2005
248     results of handlers are now read line by line. 
249     changes to rdiff handler: added "options", and "keep" is
250         not necessarily days now (ie, it will pass straight through to
251         rdiff-backup if the keep has a unit on it, otherwise it adds the 'D').
252     added dup handler (still pretty beta)
253     added maildir handler (very specialized handler)
254     added --run option (runs the specified action file)
255     improved sys handler, now uses hwinfo
256     added subversion hotbackup handler, svn. 
257     added PATH to cron.d file, which fixes file not found errors.
258
259 version 0.4.2 -- Jan 6 2005
260     fixed bug which caused a report email to be sent even if no actions were run.
261     fixed bug where multiple handler status messages were ignored
262     added status in the subject line of report emails
263
264 version 0.4.1 -- Jan 3 2005
265     added $usecolors and now more conservative about when colors are echoed.
266     fixed major bug, 'when' actually works now.
267     replaced debug function with debug, info, warning, error, fatal.
268     added --now option to force all actions to be performed now.
269     
270 version 0.4 -- Dec 26 2004
271     added "when" option, so that all configs can specify when
272         they are to be run.
273     added reportsuccess and reportwarning config options
274     added .sys handler (hardware, packages, partitions).
275
276 version 0.3.4 -- Dec 8 2004
277     fixed numerical variable quoting compatibility with older wc    
278     fixed stderr redirect bug
279     some comments in example.rdiff
280
281 version 0.3.3 -- Nov 10 2004
282     '*' (asterisk) works now in rdiff config files
283     works now with gawk as well as mawk
284     many bug fixes to ldap handler
285     paths to helper scripts can be configured in global config
286     does not require /usr/bin/stat
287
288 version 0.3.2 -- Sept 29 2004
289     handler scripts are no longer executable (to comply with debian policy)
290     handler error and warning messages are sent with the notify email
291
292 version 0.3.1 -- Sept 5 2004
293     added ldap handler
294     moved sh support to a handler script
295     add test mode, where no action is taken.
296     added --help
297     force only root can read /etc/backup.d/*
298     fixed missing equals symbols in example.rdiff
299     changed backupninja executable to be /usr/sbin rather than /usr/bin
300     
301 version 0.3 -- Oct 20 2004
302     ** IMPORTANT ** all config files are now ini style, not apache style
303     rewrote all scripts in bash for portability
304     added drop-in backupninja lib directory (/usr/share/backupninja)
305     all scripts are now run as root
306
307 version 0.2 -- Oct 14 2004
308     move distribution folder ./cron.d to ./etc/cron.d
309     fixed bug: removed printr of excludes (!)
310     added support for changing the user/group in rdiff sources.
311     added support for .mysql config files.
312     
313 version 0.1 -- Oct 8 2004
314     initial release 
315