Git v2.12.3 Release Notes
=========================

Fixes since v2.12.2
-------------------

 * The "parse_config_key()" API function has been cleaned up.

 * An helper function to make it easier to append the result from
   real_path() to a strbuf has been added.

 * The t/perf performance test suite was not prepared to test not so
   old versions of Git, but now it covers versions of Git that are not
   so ancient.

 * Picking two versions of Git and running tests to make sure the
   older one and the newer one interoperate happily has now become
   possible.

 * Teach the "debug" helper used in the test framework that allows a
   command to run under "gdb" to make the session interactive.

 * "git repack --depth=<n>" for a long time busted the specified depth
   when reusing delta from existing packs.  This has been corrected.

 * user.email that consists of only cruft chars should consistently
   error out, but didn't.

 * A few tests were run conditionally under (rare) conditions where
   they cannot be run (like running cvs tests under 'root' account).

 * "git branch @" created refs/heads/@ as a branch, and in general the
   code that handled @{-1} and @{upstream} was a bit too loose in
   disambiguating.

 * "git fetch" that requests a commit by object name, when the other
   side does not allow such an request, failed without much
   explanation.

 * "git filter-branch --prune-empty" drops a single-parent commit that
   becomes a no-op, but did not drop a root commit whose tree is empty.

 * Recent versions of Git treats http alternates (used in dumb http
   transport) just like HTTP redirects and requires the client to
   enable following it, due to security concerns.  But we forgot to
   give a warning when we decide not to honor the alternates.

 * NO_PTHREADS build has been broken for some time; now fixed.

 * Fix for potential segv introduced in v2.11.0 and later (also
   v2.10.2).

 * A few unterminated here documents in tests were fixed, which in
   turn revealed incorrect expectations the tests make. These tests
   have been updated.

 * "git-shell" rejects a request to serve a repository whose name
   begins with a dash, which makes it no longer possible to get it
   confused into spawning service programs like "git-upload-pack" with
   an option like "--help", which in turn would spawn an interactive
   pager, instead of working with the repository user asked to access
   (i.e. the one whose name is "--help").

Also contains various documentation updates and code clean-ups.
