bubblegum-1.12
    * support for directory recursion if a filename is a directory and ends
      with a '/' (request from doood@bigpond.com)
    * port to solaris
    * build fix for redhat

bubblegum-1.11c
    * new parseargv() function
    * contrib/bgm.sh can append the ouput of a command to the message body
    * a small automake fix

bubblegum-1.11b
    * manual page cleanups
    * install binary to bindir and not sbindir and manual page to section 1

bubblegum-1.11a
    * fix for stupid use of sprintf() causing segfault on some systems

bubblegum-1.11
    * use sprintf(NULL, ...) to get buffer size of log file (fixes MacOS X)
    * the time difference format has changed to type:days:hours:mins:secs
      where type is the latest change being one of M, A or C for atime, mtime
      or ctime
    * created common.h
    * contrib/bgm.sh exits with the return value from `mail'
    * contrib/bgm.sh uses $LOGNAME@localhost as the default address
    * now uses automake
    * added pid options -p and -q
    * can specify log and pid files with BUBBLEGUM_LOG and BUBBLEGUM_PID
      environment variables
    * if no logging or command is specified then show usage
    * use err[x]() and warn[cx]() instead of ERROR macro
    * added option -M to check md5 checksums for systems with libmd
    * initialize change type enumeration to zero rather than one
    * freopen() std[in/out/err] to /dev/null

bubblegum-1.10
    * port to macos x

bubblegum-1.9
    * update the daemon pid for logging after the initial fork()
    * if LINE_MAX isn't defined use _POSIX2_LINEMAX
    * dump help to stdout
    * when logging to syslogd log the invoking username on startup
    * ignore signals when others are busy (SIG_IGN)
    * fork command twice to avoid zombies
    * restore signal default actions in the child process

bubblegum-1.8
    * fix for contrib/bgm.sh (better, see bgm.sh -h)
    * only call getpid() once
    * move file stuff to file.c
    * can escape double quotes and backslash in a command line (\" and \\)
    * use SA_NOCLDWAIT only on systems that support it 
    * fix for linux zombie processes
    * fix for linux segfault when specifying -e

bubblegum-1.7
    * Makefile fix
    * S_ISWHT() isn't #defined in Linux

bubblegum-1.6
    * added command expansions %F and %m to show filetype and permissions
    * dont try to chdir() before running command (no need)
    * logging errors is now optional via the -E command line option
    * added command line option -A which is a shortcut -amcE
    * bugfix for options -m and -c
    * dont show to exit status of fork()ed commands anymore (not reliable) and
      sa_flags = SA_NOCLDWAIT
    * a better manual page

bubblegum-1.5
    * SIGHUP will only reload a file list without resetting changed bits on
      old files or resetting command runs
    * only fork once and use execvp() rather than system() to run a command
      (your old command using stdin/out/pipe wont work anymore. use a shell
      script instead)
    * unknowns are marked with "-" rather than " " (NONE_STR)
    * check for duplicate files when [re]loading a file list

bubblegum-1.4
    * SIGHUP reloads a filelist (resets changed bits and command runs, but not
      total command runs), SIGUSR1 resets changed bits, SIGUSR2 resets changed
      bits and resets both command runs and total runs
    * better memory management (hopefully)
    * portability fix for bitfield
    * added command expansion '%r' to show run number and total (ie: 1/4)
    * added command expansion '%i' to show time difference
    * miscellaneous cleanups and bugfixes
    * renamed contrib/bgmailer.sh to contrib/bgm.sh

bubblegum-1.3
    * the log format has changed to log all changes on one line with the time
      difference being the latest change if multiple changes are detected
    * a log level of zero will disable regular file logging, log level one
      will log only the first change of a file, and log level 2 will log all
      changes (the new default; level 3 is gone)
    * added logging the type of change if available (user, permissions, etc)
      for CTIME changes
    * added '%y' command expansion for type of change
    * added '%s' command expansion to show daemon status
    * added '%d' command expansion to show the time of when the change was
      detected
    * updated contrib/bgmailer.sh

bubblegum-1.2
    * chdir() before grandchild fork()
    * dont exit if chdir() fails
    * setpriority() before filling filelist structure
    * cleaner changelog() function
    * added 'dont follow links' option -k 
    * when an error dissappears reset filelist->staterrno

bubblegum-1.1
    * Makefile fix for installing manual page
    * manual page cleanups
    * sending signal SIGALRM will expire a timer and force the next check
    * dont block SIGBUS, SIGILL and SIGFPE
    * chdir() to working directory before system() of command (-e)
    * make sure logfile can be opened (-l)

bubblegum-1.0
    * detach from terminal after forking (setsid())
    * use select() instead of sleep()
    * seconds must be greater than zero
    * _exit() from command after fork() rather than exit()
 
bubblegum-0.6
    * initialize struct sigaction (fixes signal handler)
    * really fix zombie processes (-e)
    * signal SIGUSR1 will reload the file specified with -f and reset command
      runs and changed bits for each file
    * signal SIGUSR2 will reset only the filelist->changed bits for all files 
      (useful for log levels 1 and 2)
    * use is_file() to make sure filename (-f) is a file
    * added option '-n' to set niceless level of daemon and command (-e)
    * added a manual page

bubblegum-0.5
    * fix for memory corruption when getting filelist
    * dont assume change times are greater than the previous
    * added total runs option '-t'
    * logging displays difference of last change
    * better mail wrapper in contrib/bgmailer.sh

bubblegum-0.4
    * Makefile fix for Linux (-D_GNU_SOURCE)
    * dropped time spec option '-t' (use find)
    * flists->changes is now global (saves a little bit of memory with lots of
      files)
    * dynamically allocate flists->filename to save memory
    * when a stat() error occurs, log the error once unless errno differs from 
      flists->staterrno
    * the changes expansion '%c' format for more than one change is comma
      separated (fixes parsing for command '-e')
    * added option '-s' to enable logging to syslogd(8) with facility DAEMON
      and priority NOTICE (this disables logging to logfile)

bubblegum-0.3
    * fullpath() bugfix
    * the default logfile is stored in users home directory
    * added option -# (1-3) to define the level of logging
    * files are checked based on the time of execution until a change is
      detected, then the file is checked against the last change
    * if an error occurs while stat()'ing, dont check the file anymore
    * renamed REMOVED change to ERROR (will log the error)
    * added expansion '%e' for error information
    * added expansion '%b' for base time (time of comparison)
    * cleanups and miscellaneous improvements

bubblegum-0.2
    * fixed zombie processes (-e)
    * the full path of filenames are used when logging and with %f
    * added expansion %p for daemon PID
    * better logit() function

bubblegum-0.1
    * initial release
