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