I am pleased to announce the release of Cedar Backup v2.0.

This release has been more than a year in the works.  During this time, the
main focus was to clean up the codebase and the documentation, making the
whole project easier to read, maintain, debug and enhance.  Another major
priority was validation, and the new implementation relies heavily on
automated regression testing.  Existing enhancement requests took a back
seat to this cleanup effort, but are planned for future releases.

The old v1.0 code tree will still be maintained for security support and
major bug fixes, but all new development will take place on the v2.0 code
tree.  

The new Debian package is called cedar-backup2 rather than cedar-backup.
The old and new packages cannot be installed at the same time, but you can
fall back to your existing cedar-backup package if you have problems with
the new cedar-backup2 package.

This should be considered a high-quality beta release.  It has been through
testing on my personal systems (all running various Debian releases), but
could still harbour unknown bugs.  

If you have time, please report back to the cedar-backup-users mailing list
about your experience with this new version, good or bad.


DOWNLOAD

Information about how to download Cedar Backup can be found on the Cedar
Solutions website:

   http://cedar-solutions.com/software/cedar-backup

Cedar Solutions provides binary packages for Debian 'sarge' and 'woody';
and source packages for other Linux platforms.  


DOCUMENTATION

The newly-rewritten Cedar Backup Software Manual can be found on the Cedar
Solutions website:
   
   Single-page HTML: 
         http://cedar-solutions.com/cedar-backup/manual/manual.html

   Multiple-page HTML:
         http://cedar-solutions.com/cedar-backup/manual/index.html

   Portable Document Format (PDF):
         http://cedar-solutions.com/cedar-backup/manual/manual.pdf

   Plaintext:
         http://cedar-solutions.com/cedar-backup/manual/manual.txt

Most users will want to look at the multiple-page HTML version.  Users who
wish to print the software manual should use the PDF version.


MAJOR IMPROVEMENTS IN THIS RELEASE

The v2.0 release represents a ground-up rewrite of the Cedar Backup
codebase using Python 2.3.  The following is a partial list of major
changes, enhancements and improvements:

- Code is better structured, with a sensible mix of classes and functions.
- Documentation has been completely rewritten from scratch in DocBook Lite.
- Unicode filenames are now natively supported without Python site changes.
- The runtime 'validate' action now checks for many more config problems.
- There are no longer any restrictions related to backups spanning midnite.
- Most lower-level code is intended to be general-purpose "library" code.
- Configuration is standardized in a common class, so 3rd parties can use it.
- Collect and stage configuration now support various additional options.
- Package now supports 3rd-party backup actions via an extension mechanism.
- Most library code is thoroughly tested via pyunit (1700+ individual tests).
- Code structure allows for easy addition of other backup types (i.e. DVD).
- Code now uses Python's integrated logging module, resulting in realtime logs.
- Collect action uses Python's tar module rather than shelling out to GNU tar.
- Internal use of pipes should now be more robust and less prone to problems.


USER-VISIBLE CHANGES IN THIS RELEASE 

Cedar Backup v2.0 requires Python 2.3 or better.  Cedar Backup v1.0 only
required Python 2.2.

Cedar Backup configuration files that were valid for the v1.0 release
should still be valid for the v2.0 release, with one exception: the tarz
(.tar.Z) backup format is no longer supported.  This because the Python tar
module does not support this format.  If there is sufficient interest, this
backup format could be added again via shelling to an external compress
program.

The Cedar Backup command-line interface has changed slightly, but the
changes should not present a problem for most users.  In Cedar Backup v1.0,
backup actions (collect, stage, store, purge) were specified on the command
line with switches, i.e. --collect.  This is not considered a good
practice, so v2.0 instead accepts actions as plain arguments specified
after all switches.  For instance, the v1.0 command "cback --full
--collect" is coverted to "cback --full collect" in v2.0.


WHAT IS CEDAR BACKUP?

Cedar Backup is a Python package that supports secure backups of files
on local and remote hosts to CD-R or CD-RW media.  The package is
focused around weekly backups to a single disc, with the expectation
that the disc will be changed or overwritten at the beginning of each
week.  If your hardware is new enough, the script can write multisession
discs, allowing you to add to a disc in a daily fashion.   Directories
are backed up using tar and may be compressed using gzip or bzip2.


