rsnapshot TODO list:

for version 1.1.x
------------------------------------------------------------------------------
- Add interactive mode to generate config files.

- Add warning about link_dest and unmounted volumes.

- Is it possible to have 'mv hourly.N  hourly.tmp' as the first step and
  then, once the rsync is completed successfully, a call can go out to delete
  hourly.tmp, even backgrounding the process? At present, if the job fails
  at the rsync stage, the oldest hourly is already gone, and rollback is not
  possible.

- Figure out a good solution to this: when an rsync transfer fails, and
  link_dest is being used, the smallest interval files are still moved up
  one. This requires a full transfer next time. What's the cleanest way to
  handle this?

- Figure out a way to do transfers the other way: from clients to the server
  instead of just from the server to the clients. Of course it will have to
  be very secure. Ideally we could support chroot environments for the
  connecting clients. This will probably result in a "backup_sync" parameter,
  as well as a designated root directory to allow clients to rsync into, that
  will then be synced into the main snapshots. This sync directory will need
  to be on the same filesystem as the actual snapshots, to allow hard links.

- Think of a way to be able to backup different backup points at different
  speeds. I.E. some things would get backed up hourly, whereas other backup
  points would get backed up daily.

- Add a feature to allow users to add .rsnapshot.exclude files in directories.
  Would this exclude the directory the file was included in, or contain a
  list of things for rsync to parse? If it's the latter, we would need to
  prevent the user from compromising other parts of the backup with rogue
  instructions.

- Update string manipulations and comparisons of paths to use File::Spec and
  File::Basename functions where possible. Double check they're fully
  compatible with Perl 5.004.

- Add an option to prevent rsnapshot from creating the snapshot_root directory
  if it doesn't exist.

for version 2.0.x
------------------------------------------------------------------------------
- Possibly rewrite it in C, if there's time or inclination. This would be a
  lot of work! However, it would allow all the benefits of GNU cp combined
  with total compatibility.
