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