* Commit for 2.1.0.
[BackupPC.git] / ChangeLog
index 4789d2e..e9ee938 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
 # Version __VERSION__, __RELEASEDATE__
 #------------------------------------------------------------------------
 
+* Added Dutch translation from Lieven Bridts, with tweaks from
+  Guus Houtzager.
+
+* Added PC-specific config file read in CGI/Archive.pm.  Patch
+  from Pete Wenzel.
+
+* Added non-zero exit code to BackupPC_zcat when uncompress fails.
+  Patch from Pete Wenzel.
+
+* Cosmetic changes to PC Summary and Log file language strings from
+  Pete Wenzel.
+
+* BackupPC::Lib tries to be more careful when renaming the backups
+  file to backups.old.  There have been reports of backups being
+  empty, perhaps when the BackupPC data file system fills up.
+  Now backups is not renamed to backups.old if backups is empty.
+
+* BackupPC now closes stderr and stdout before renaming and
+  re-opening the log file.
+
+* Pre/post backup/restore/archive commands now correctly set
+  "type" to either incr/full/restore/archive, and now cmdType
+  is the type of Pre/post backup/restore/archive command.
+
+* BackupPC_archive correctly terminates archive processes on
+  alarm or cancel.
+
+* Updates to BackupPC_stnd.css with absolute font sizes instead
+  of relative.
+
+* BackupPC_dump now makes sure that the $Conf{FullAgeMax} check
+  also ensures the full backup is older than the maximum age
+  expected from $Conf{FullPeriod}.
+
+#------------------------------------------------------------------------
+# Version 2.1.0beta2pl1, 30 May 2004
+#------------------------------------------------------------------------
+
+* Fixed bug in rsync checksum caching code in BackupPC::Xfer::RsyncDigest.
+
+* BackupPC_zipCreate now ensures the earliest mtime is 1/1/1980,
+  since zip file formats don't support earlier dates.  Reported
+  by Dan Niles.
+
+* CGI restore via zip and tar now makes sure stderr is ignored
+  when BackupPC_tarCreate and BackupPC_zipCreate are run.
+  Previously any stderr output would get mixed in the archive,
+  corrupting it.  Reported by Dan Niles.
+
+#------------------------------------------------------------------------
+# Version 2.1.0beta2, 23 May 2004
+#------------------------------------------------------------------------
+
+* $Conf{BackupFilesOnly} and $Conf{BackupFilesExclude} now apply
+  to every share, rather than just the first, in the case where
+  they are arrays and there are multiple shares.  Suggested
+  by Andy Evans.
+
+* On the phase 2 retry pass with rsync, verify the cached checksums
+  if checksum caching is turned on.  This will catch the case of
+  cached checksums being incorrectly appended to the compressed
+  pool file.  Added new config parameter $Conf{RsyncCsumCacheVerifyProb}
+  so that cached checksums are verified with a selectable probability.
+  Also, increased File::RsyncP version number to 0.51.
+
+* configure.pl now supports an optional batch mode.  Command-line
+  options are used to specify all the information that configure.pl
+  needs.  This is useful for building auto-install packages.
+  Also, configure.pl now includes pod documentation, so you can do
+  "perldoc configure.pl" to see all the command-line options.
+  Suggested, tested and tweaked by Stuart Herbert for possible
+  Gentoo inclusion.
+
+* At each wakeup, clients are now queued based on how old the most
+  recent backup is.  Clients with errors are queued first, with
+  the oldest error times going first.  The rest of the clients are
+  queued next, with the clients with the oldest backup going first.
+  Previously the clients were simply queued in alphabetic order.
+  Suggested by Mike Trisko and Tony Nelson.
+
+* Added config parameter $Conf{PartialAgeMax} that controls whether
+  partials are saved at all, and if so, whether the partial will be
+  ignored at the next full backup if it is too old.
+
+* BackupPC_tarExtract now allows empty archives without reporting
+  an error.  Reported by Don Silvia.
+
+* Removed Browse Backups link from Nav Bar in Archive Info display.
+  Reported by Ralph Paßgang.
+
+* Fixed documentation display for regular users.  Reported by Ralph Paßgang.
+
+* Status and PC Summary now work for regular users and only show
+  that user's hosts.  Server general status information only appears
+  for admins.  Suggested by Ralph Paßgang.
+
+* Moved the last three navigation-bar links (docs, FAQ and SF) to
+  a new config parameter $Conf{CgiNavBarLinks}.  This allows
+  these links to be locally configured.  Based on a patch
+  submitted by Ralph Paßgang.
+
+* Allow the navigation bar search box to be disabled by
+  setting $Conf{CgiSearchBoxEnable} to 0.  Based on a patch
+  submitted by Ralph Paßgang.
+
+* Updates to de.pm from Ralph Paßgang.
+
+* Made the BackupPC icon a link to the SF BackupPC project page.
+
+#------------------------------------------------------------------------
+# Version 2.1.0beta1, 4 Apr 2004
+#------------------------------------------------------------------------
+
+* The CSS definition has been removed from the config.pl file and
+  is now a separate file, BackupPC_stnd.css.  A new config variable,
+  $Conf{CgiCSSFile}, gives the name of the CSS file to use.
+  Suggested by Ender Mathias.
+
+* Fixed the filling of the host name select box for admins.
+  The default $Conf{CgiNavBarAdminAllHosts} is now 1.
+  Reported by Doug Lytle.
+
+* Cleaned up warning message for restore using rsync when checksum
+  caching is on, but when file didn't have cached checksums.
+
+* Fixed BackupPC_archiveHost to support par2 (par2cmdline).
+  Patch submitted by Jaco Bongers and adapted by Josh Marshall.
+
+* Improved stat() usage in BackupPC_nightly, plus some other cleanup,
+  giving a significant performance improvement.  Patch submitted by
+  Wayne Scott.
+
+* Allow several BackupPC_nightly processes to run in parallel based
+  on new $Conf{BackupPCNightlyJobs} setting.  This speeds up the
+  traversal of the pool, reducing the overall run time for
+  BackupPC_nightly.
+
+* Allow BackupPC_nightly to split the pool traversal across several
+  nightly runs.  This improves the running time per night, at the expense
+  of a slight increase in disk storage as unused pool files might not
+  be deleted for a couple of days.  Controller by new config setting
+  $Conf{BackupPCNightlyPeriod}.
+
+#------------------------------------------------------------------------
+# Version 2.1.0beta0, 20 Mar 2004
+#------------------------------------------------------------------------
+
+* A failed full dump is now saved as a partial (incomplete) dump,
+  provided it includes some files.  This can be used for browsing,
+  restoring etc, and will also form the basis of resuming full
+  dumps.  Only one partial is kept, and it is removed as soon
+  as a successful full (or a new partial) is done.
+
+* Added support for resuming a full dump for rsync.  The partial
+  full is kept, and to resume an incremental is done against the
+  partial, and a full is done for the rest.
+
+* Added support for Rsync checksum caching.  Rsync checksum are
+  appended to the compressed pool files.  This means that block
+  and file checksums do not need to be recomputed on the server
+  when using rsync.  Requires a patch to rsync to support fixed
+  checksum seeds.  This patch is included in the cygwin-rsyncd
+  release on http://backuppc.sourceforge.net.
+
+* Major addition of Archive feature from Josh Marshall.  Special
+  clients can be configured to be archive targets (eg: tape drives,
+  CD-R).  Any subset of the backup clients can be selected and tar
+  archives are created, optionally compressed and split and written
+  to the output device.  Logs are maintained and are browsable.
+
+* Major changes from Ryan Kucera to add style sheets to the CGI
+  interface, allowing easy customization.  Added new icons and
+  BackupPC logo.  Numerous navigation improvements.
+
+* Added directory history display to BackupPC_Admin, allowing the
+  user to quickly see which files changed between backups on a
+  per-directory basis.
+
+* Added exponential expiry option for full dumps.  This allows you
+  to specify
+  
+   - how many fulls to keep at intervals of $Conf{FullPeriod}, followed by
+   - how many fulls to keep at intervals of 2 * $Conf{FullPeriod},
+   - how many fulls to keep at intervals of 4 * $Conf{FullPeriod},
+   - how many fulls to keep at intervals of 8 * $Conf{FullPeriod},
+   - how many fulls to keep at intervals of 16 * $Conf{FullPeriod},
+
+  and so on.  This allows you, for example, to keep 4 weekly fulls,
+  followed by 6 fulls every 4 weeks (approx 1 month) and 2 fulls at
+  16 weeks, for roughly 1 year of history.  This works by deleting
+  every other full as each expiry boundary is crossed.  Suggested
+  by David Cramblett.
+
+* Added Italian language translation it.pm from Lorenzo Cappelletti.
+
+* Major updates to language files for new features and tags changes.
+  Updated makeDist to do pedantic consistency checking of language
+  files.
+
+* Addition of administration options from Paul Lukins.  Initial
+  page allows server to be started/stopped/reloaded.  This still
+  needs some i18n work.  Currently the server start/stop is
+  commented out.
+
+* Split BackupPC_Admin into a set of modules, one for each major action.
+  Each action is now a seperate module in lib/BackupPC/CGI.
+
+* Allow the blackout period begin/end to span midnight.  Adapted
+  from patch submitted by David Smith.
+
+* Allow multiple blackout periods, with new config variable
+  $Conf{BlackoutPeriods} that replaces the old variables
+  $Conf{BlackoutHourBegin}, $Conf{BlackoutHourEnd}, and
+  $Conf{BlackoutWeekDays}.  Based on patch submitted by
+  Lorenzo Cappelletti.
+
+* Disabled alarms after forks to avoid timeouts in children that
+  do not reset their alarm.  Prompted by ideas from James Leu.
+
+* Added options for block size, buffer size and share wild-card to
+  BackupPC_tarCreate.  Also added negative backup number options
+  that are relative to the last (so -1 is the last), suggested by
+  William McKee and Carl Soderstrom.
+
+* The "Wrong user" message in BackupPC::Lib now goes to stderr, so that
+  the user is more likely to see the error with BackupPC_tarCreate.
+  Reported by Paul Fox.
+
+* Add creation of per-PC directory in BackupPC/CGI/Restore.pm in
+  case it doesn't already exist.
+
+* Added -q -x to all ssh commands in conf/config.pl.  Suggested by
+  SI Reasoning and Niranjan Ghate.
+
+* Changed restore code so that option #1 (direct restore) can be
+  disabled if the restore command is undefined.  Disabling direct
+  restore is necessary if the share is read-only.  Suggested by
+  Rich B from SAIC.
+
+* Changed regexp in lib/BackupPC/Smb.pm to allow numbers with both
+  a decimal point or comma for international versions of Samba.
+  Patch submitted by Frank Gard.
+
+* Browsing and directory history now sort the files in a
+  case-insensitive manner.
+
+* Changed exec() syntax to allow executing commands whose path
+  contains spaces.
+
+* BackupPC_dump no longer removes backups if $Conf{FullKeepCnt}
+  is zero or undefined.  The protects the existing backups in the
+  case of a bad config.pl file.  Suggested by Christian Warden.
+
+* Swapped the Server and Hosts sections on the Nav bar.  Moved the
+  host search text box to the top of the hosts section.  This was
+  done to move the variable-length part of the Nav bar (when all
+  hosts are displayed) to the bottom.
+
+* Fixed a bug in tar restore related to how the common prefix path is
+  removed.  Now ensure that the common path is at a directory boundary.
+  Reported by Patrick Neuner.
+
+* Added --chuid ${USER} to init.d/src/gentoo-backuppc.  Suggested by
+  SI Reasoning, Pascal Pochol, Michael Evanoff and others.
+
+* Added Suse notes to init.d/README from Bruno Vernay.
+
+* Added Apache 2 documentation fix from Michael Tuzi.
+
+#------------------------------------------------------------------------
+# Version 2.0.2, 6 Oct 2003
+#------------------------------------------------------------------------
+
+* Fixed stupid last-minute change in octal size conversion in
+  Backup_tarExtract.
+
+#-----------------------------------------------------------------------
+# Version 2.0.1, 5 Oct 2003
+#------------------------------------------------------------------------
+
+* Fixed handling of >= 8GB files in BackupPC_tarExtract and >= 4GB
+  files in BackupPC_tarCreate.
+
+* Removed smbclient size repair in BackupPC_tarExtract for files
+  between 2GB and 4GB.  This means that BackupPC_tarExtract 2.0.1
+  doesn't behave the same as 2.0.0 for file sizes between 2GB and 4GB
+  extacted using smbclient 2.2.x.  If you have problems backing up
+  files whose size is between 2GB and 4GB using smbclient 2.2.x
+  you should upgrade smbclient to 3.0, since it now generates
+  correct file sizes.
+
+* Replace PingClientPath with PingPath in configure.pl.
+
+* Removed -T (taint mode) on binaries installed in configure.pl.
+
+* Added support for smbclient from samba version 3.0.0.
+
+* Fixed $Conf{HardLinkMax} limit check in BackupPC::Lib; reported
+  by Ross Skaliotis.
+
+* In BackupPC_Admin, default REMOTE_USER to $Conf{BackupPCUser}
+  if it is not defined.  This allows the CGI interface to work
+  when AdminUsers = '*'.  Reported by Quentin Arce.
+
+* For SMB, code that detected files with a read-locked region (eg:
+  outlook .pst files), removed them and then tried to link with an
+  earlier version was broken.  This code missed a step of mangling
+  the file names.  This is now fixed.  Reported by Pierre Bourgin.
+
+* A backup of a share that has zero files is now considered
+  fatal. This is used to catch miscellaneous Xfer errors that
+  result in no files being backed up.  A new config parameter
+  $Conf{BackupZeroFilesIsFatal} (defaults to 1) and can be set to
+  zero to turn off this check.  Suggested by Guillaume Filion.
+  Additional change: this check only applies to a full dump.
+
+* SMB: now detect NT_STATUS_ACCESS_DENIED on entire share or BackupFilesOnly
+  (also ERRDOS - ERRnoaccess (Access denied.) for older versions of
+  smbclient.)  Suggested by Guillaume Filion.
+
+* SMB: now detects "tree connect failed: NT_STATUS_BAD_NETWORK_NAME" and
+  the dump is considered failed.
+
+* Rsync: Previously BackupFilesOnly = '/' did --include '/' --exclude '/*',
+  which just included the '/' directory and nothing below.  Now it
+  does just --include '/', which should include everything.
+  Reported by denon.
+
+* Add hostError to DumpPostUserCmd variable substitutions for both dump
+  and restore.
+
+* Verbose output in Lib.pm goes to STDERR, not STDOUT.  This now
+  makes BackupPC_dump -v work better.
+
+* Don't allow browsing with ".." in directory in case a user tries
+  to trick BackupPC_Admin into displaying directories outside where
+  they are allowed.
+
+* Required File::RsyncP version is now 0.44, since File::RsyncP 0.44
+  fixes large file (>2GB) bugs.  Large file bugs reported by Steve
+  Waltner.
+
+#------------------------------------------------------------------------
+# Version 2.0.0, 14 Jun 2003
+#------------------------------------------------------------------------
+
+* Minor tweaks to disable utf8 on utf8-capable machines (eg: RH8+).
+  Added "no utf8" to all programs, and added binmode() to relevant
+  file handles.
+
+#------------------------------------------------------------------------
+# Version 2.0.0beta3, 1 Jun 2003
+#------------------------------------------------------------------------
+
+* Several improvements to restore: cancel now reports the correct
+  message and cleans up correctly.
+
+* Rsync with whitespace and wildcard excludes fixed by replacing
+  argList with argList+ in config.pl plus a fix to Lib.pm for
+  shell escaping array arguments.
+
+* Fixed rsync restore for character and block special devices
+  (major and minor device numbers weren't correctly restored).
+
+* Fixed typo in bin/BackupPC_restore (XferLOG -> RestoreLOG).
+
+* (Re)-fixed "Bad command" in log file when restore via tar or zip
+  file download is done.
+
+* Added untaint to exec in Lib.pm to avoid tainted errors.
+
+* Applied additional tweak to hilight patch from Tim Demarest.
+
+* $Conf{CgiAdminUsers} = '*' now allows privileged even with REMOTE_USER
+  not set.
+
+* Don't display RsyncdPasswd when displaying config.pl files.
+
+* Replace pipe with socketpair in bin/BackupPC_dump and bin/BackupPC_restore,
+  which increases typical buffering from 4K to 16K-64K.  This improves the
+  performance.
+
+* Add check on $ENV{LANG} setting do configure.pl: if LANG includes utf
+  then a warning is printed.
+
+#------------------------------------------------------------------------
+# Version 2.0.0beta2, 11 May 2003
+#------------------------------------------------------------------------
+
 * Added German translation, provided by Manfred Herrmann.
 
 * Fixed large-file problem with rsync, reported by Manfred Herrmann.