Fri, 09 Oct 2009 10:32:10 -0700  Google Inc. <opensource@google.com>

  Release version 0.7 with the following changes:
  * Fix a case in which VarintBE::Parse would read off the end of available
    input if the variable-length integer began with leading zero bytes
    with their continuation bits set (0x80 bytes.)
  * Define std::string as string only within namespaces and class definitions
    in case there is a string class defined at the outermost scope.  If that
    is the case, the HAS_GLOBAL_STRING label should be defined manually.
  * Update with changes to gflags package as of 2009/07/23.

Thu, 09 Apr 2009 09:16:58 -0700  Google Inc. <opensource@google.com>

  Release version 0.6 with the following changes:
  * Issue #9: Add option to optimize VCDIFF decoder when VCD_TARGET will not be
              used as source segment.
    Add new interface SetAllowVcdTarget to control whether the VCD_TARGET flag
    may be used.  If this option is set to false and the decoder finds a
    VCD_TARGET flag, it will issue an error and refuse to continue decoding.
  * Issue #19: ERROR: Length of target window (100001916) exceeds limit of
               67108864 bytes
    Remove the limit of INT32_MAX on the value of --max_target_file_size, since
    the new SetAllowVcdTarget feature means that the entire target file will not
    need to be kept in memory.  Separate vcdecoder_test into five test targets,
    one of which is devoted to the new SetAllowVcdTarget feature.  Get rid of
    kMaxBufferSize and kDefaultBufferSize, which were used ambiguously.  A new
    constant kDefaultMaxTargetSize provides the default values for the
    --max_target_file_size and --max_target_window_size options.  The
    --buffersize option, if specified, should control the buffer size used,
    without limits on its value.
  * Issue #21: Fail to test on MinGW 5.1.4
    The wrapper executables produced by libtool failed on MinGW with the error
    "File /bin/sh not found".  Add the option AC_DISABLE_FAST_INSTALL to avoid
    creating wrapper executables.  The option implies an extra link step during
    "make install", but the package is small enough that this does not take
    long.
  * Remove the annotated-output feature from the decoder.
  * Automatically detect and work around a Solaris 10 bug which causes the error
    "libstdc++.la is not a valid libtool archive".
        http://whocares.de/2006/05/solaris-10-fixup-for-libstdcla-is-not-a-valid-libtool-archive/
  * Update with latest changes to gflags package.
  * Fix type-conversion warning in vcdiff_main.cc in 32-bit Visual Studio build.

Wed, 18 Mar 2009 14:28:23 -0700  Google Inc. <opensource@google.com>

  * Issue #14: HashedDictionary may free memory twice if implicitly copied.
    * Add private copy constructor and assignment operator for HashedDictionary.
  * Issue #18: Building RPM package fails on Fedora 9: Installed (but
    unpackaged) file vcdiff.1.gz.
    * Some OS, including Fedora 9, automatically compress man pages that are
      installed using /usr/bin/install.  This confuses the RPM packager, which
      expects a file named "vcdiff.1" and finds one named "vcdiff.1.gz" instead.
      Use a wild-card character to accept either of these two alternatives.
  * Change the VCDIFF block size to 16, but have the encoder discard all matches
    smaller than 32 bytes.  This doubles the CPU and memory needed by the
    encoder, but finds better string matches, producing a more efficient
    encoding.  Loosen the timing test limit in blockhash_test.cc for the debug
    build only.
  * Make the code table writer a virtual interface.
  * Add an interface SetTargetMatching() to the simple encoder class
    VCDEncoder.
  * Remove all references to LOG and logging.h from the unit tests and
    command-line client.
  * Remove all special cases for kBlockSize < 4.  kBlockSize must be a multiple
    of the machine word size (see blockhash.cc), so it will never be smaller
    than 4.
  * Use version 1.10 of Automake.
  * Incorporate recent changes to gflags package
    (http://code.google.com/p/google-gflags/)
  * Fix Visual Studio type-mismatch warning in vcdecoder4_test.cc.
  * Use address cache helper functions IsSameMode(), IsHereMode(), etc. to
    simplify test code.
  * Add contributor's name to THANKS file.

Thu, 23 Oct 2008 09:03:56 -0700  Google Inc. <opensource@google.com>

  * Issue #6: vcdiff crashes with zero-size dictionary
    * Add special cases for empty dictionary file in vcdiff_main.cc.
  * Issue #7: vcdiff incorrect binary I/O on Windows
    * Change stdin/stdout file type to binary in vcdiff_main.cc.
  * Issue #13: Add unit test for vcdiff command-line executable
    * Unit test vcdiff_test.bat added for Visual Studio testing of vcdiff.exe.
      Includes regression tests for issues #6 and #7.
  * Issue #15: open-vcdiff fails to compile on Fedora 9
    * Apply patch sent by Daniel Kegel
    * Add header <string.h> to src/vcdiffengine.cc, which uses memcpy.
    * Remove const qualifier from integral return types to fix gcc 4.3.1
      warning.
  * Add contributors' names to THANKS file.

Fri, 10 Oct 2008 11:16:23 -0700  Google Inc. <opensource@google.com>

  * Issue #15: open-vcdiff fails to compile on Fedora 9
    * Add header <string.h> to source files that use memcmp, memset, memcpy,
      and/or strlen.
    * Change C++-style includes like <cstdlib> to C-style includes like
      <stdlib.h> so that function names are guaranteed to be defined
      in the global namespace.
  * Issue #8: Decoder should not crash if it runs out of memory
    * Add a new interface that places a limit on the maximum bytes allowed in
      a single target window or a target file.
  * Issue #13: Add unit test for vcdiff command-line executable
    * Unit test vcdiff_test.sh added for Linux and Mac builds.
    * Still need to add a Windows version of this test.

Tue, 02 Sep 2008 09:27:54 -0700  Google Inc. <opensource@google.com>

  * Fix problems found on OpenBSD platform.
    * Issue #1: vcdiff command-line executable crashes on startup.
      This was a problem with the stub intended to replace pthread_once if the
      package was not linked with the pthreads library.  Simplify gflags.cc to
      assume single-threaded execution.
    * Issue #2: Unit test blockhash_test fails.
      Define VCDIFF_USE_BLOCK_COMPARE_WORDS for BSD platforms to ensure that
      the most efficient version of memcmp is used in the encoder's inner loop.
  * Fix compilation warnings in gtest-filepath.cc: "warning: missing
    initializer for member 'stat::...'"

Mon, 16 Jun 2008 15:15:51 -0700  Google Inc. <opensource@google.com>

  * open-vcdiff: initial release:
  The open-vcdiff package provides an encoder and decoder for the VCDIFF format
  described in RFC 3284 (http://www.ietf.org/rfc/rfc3284.txt).
