2.0.0:

  [REFACTOR]

    * The code has undergone major refactoring.  It should be backwards compatible.

  [ENHANCEMENTS]

    * "internal" options, e.g. the options provided by ots-build
      (excluding --prefix and --exec-prefix) are now available prior
      to calling the option_before hooks.  This allows drivers to
      e.g., use --import-root to find plugins relative to the location
      of the build script.

1.3.18:

  [BUG FIX]

    * properly recognize bash versions <= 3.1
    * fix typo resulting in incorrect pkgdatadir
    * don't evaluate variables which aren't set when generating a dump

  [TEST FIX]

    * make compatible with newer versions of bash which provide more
      granular status codes upon error

1.3.17:

  [ENHANCEMENT]

    * recognize * .tar.xz archives

1.3.16:

  [BUG FIX]

    * improve handling of unset variables if the calling script uses -e


1.3.15: 2017-07-06T14:11:49-0400

  [BUG FIX]

    * empty shell variables were incorrectly being treated as set in
      code trying to normalize set/unset behavior for versions of bash
      with and without a bug which treated declared variables as being
      set even when no value is specified.

1.3.14:	2016-08-30T12:48:15-04:00

  [BUG FIX]

    * 1.3.13 broke the options parser creator
    * funcmod.sh:before evaluated the modifiers in the wrong order

1.3.13: 2016-07-27T14:53:12-0400

  [BUG FIX]

    * make src/ots-build more set -u compliant

1.3.12: 2016-07-01T16:31:38-0400

  [BUG FIX]

    * 1.3.11 broke funcmods.sh's around function

1.3.11:	2016-06-21T17:41:15-0400

  [BUG FIX]
    * share/funcmods.sh was not set -u compliant

1.3.10:	2016-02-09T17:19:05-05:00

  [ENHANCEMENT]

    * --package, --package-name, and --package-version options now available
      for general use via share/set-package.sh

    * otsb_source - only source a file if it hasn't already been sourced

  [BUG FIX]

    * if otsb_{die,warn,error} was called before otsb_init, output wasn't
      going to the appropriate place.

1.3.9:	2015-10-19T16:05:14-04:00

  [API CHANGE]

    * ots-build-cmake no longer automatically starts the otsb-build
      process.  invoke the otsb-build-cmake function to do so

    * cmake test is no longer hardwired to "make test"; set the
      make_test_args array to the correct make arguments.

1.3.8:	2015-10-16T20:38:54-04:00

  [BUG FIXES]
    * share/ots-build-autoconf was distributed instead of
      share/ots-build-autoconf.in, thus hardwiring
      the dev environment instead of the prod environment.

  [ENHANCEMENT]
    * support cmake

1.3.7:	2015-05-05T16:38:56-04:00

  [BUG FIXES]

    * directories created with --tmpdir were not deleted if the
      unpack command was followed by other commands

    * when --logconsole and any other type of logging were specified
      simultaneously, command errors were not properly caught.

    * share/ots-build-autoconf declared ots_pkg, ots_pkg_name,
      ots_pkg_version without checking if they had already been
      declared.

1.3.6:	2015-05-01T16:24:52-04:00

  [ENHANCEMENT]

    * share/ots-build-autoconf no longer uses pkg-config to find
      ots-build.

1.3.5:	2015-04-21T16:49:23-04:00

  [ENHANCEMENT]

    * new options --package, --package-name, and --package-version to
      override automatically derived versions of pkg, pkg_name and
      pkg_version

1.3.4:	2014-05-01T13:44:05-04:00

  [BUG FIX]

    * fix bug in options processor which picked up on files in
      local directory ending in a ')'


1.3.3:	2014-03-10T17:43:43-04:00

  [ENHANCEMENT]

    * otsb_setarr config-default-opts will override the standard
      --prefix=$prefix --exec-prefix=$exec_prefix passed to configure


1.3.2:	2013-09-27T07:22:25-04:00

  [BUG FIX]

    * fix use of undefined variable if no commands specified

1.3.1:	2013-09-09T17:31:16-04:00

  [BUG FIX]

    * --dont-run was broken in 1.3.0

1.3.0:	2013-07-02T17:33:42-04:00

  [BUG FIX]

    * combined logs (via --logsingle) were not written to the correct file
    * errors in commands run after an unpack were reported as being in unpack
    * combined logs for commands run after an unpack were discarded

1.2.1_05:	2013-02-28T14:42:43-05:00

  [ENHANCEMENT]

    * new option --rsync-stow-src-prefix to change $destdir/$prefix
      for install-with-stow

1.2.1_04:	2013-02-19T17:24:08-05:00

  [ENHANCEMENT]

    * add support for Perl Build install phase w/ destdir

1.2.1_03:	2013-02-19T16:52:09-05:00

  [BUG FIX]

    * hooks to commands run as part of running the "all" command were not run
      in the parent shell, making it impossible for them to modify the parent environment.

  [ENHANCEMENTS]

    * additional stow options possible via stow-opt config array
    * add datadir and datarootdir variables and revise others to use them
    * when running the "all" command, the --dont-run option can be used
      to indicate which commands not to run
    * new option --install-targets for ots-build-autoconf's install

    * dump output may be redirected to a file (--dump-file), may have
      different formats (--dump-fmt) and may be limited to specific variables
      (--dump-vars)

1.2.1_02:	2012-10-05T16:23:19-04:00

this is incomplete

  [INCOMPATIBLE CHANGES]

    * API to customize wrapper libraries has changed from wrapping
      functions to adding code to hooks

    * bash 3.1 is a prerequisite

  [ENHANCEMENTs]

    * package archives may now be unpacked

    * command line parsing code is eval'd only once rather than once per
      command line argument

    * new option --srcdir, used to chdir before running important bits

    * can now specify commands which will not be bundled into the
      "all" command (via otsb_opt_commands)

1.2.1:	2011-09-10T21:28:42-04:00

  [BUG FIX]

    * 1.2.0 set $package in otsb_set_build_options().  some environments
      require knowing $package prior to calling that function; $package is
      now created via otsb_pkg(), which may be called prior to
      otsb_set_build_options() (or overriden)

1.2.0:	2011-08-18T11:27:49-04:00

  [CHANGES]

    * some build variables (import_root, package, package_name,
      package_version, patchfile) were set in otsb_init(), before
      command line options were parsed, making it impossible to change
      them from the command line.  they are now set in
      otsb_set_build_options

  [BUG FIXES]

    * the all command did nothing

  [ENHANCEMENTS]

    * Documentation is more explicit as to when variables need to be
      overridden


1.1.0:	2011-07-26T11:35:35-04:00

    * otsb_trap_err manages error traps in command functions
    * otsb_is_false didn't exclude non-false values

1.0.1:	2011-05-05T14:48:04-04:00

    * package version is now determined by re-defineable otsb_version function

1.0.0:	2010-11-16T16:13:45-05:00

    * initial public release
