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