Git v2.10.3 Release Notes ========================= Fixes since v2.10.2 ------------------- * Extract a small helper out of the function that reads the authors script file "git am" internally uses. This by itself is not useful until a second caller appears in the future for "rebase -i" helper. * The command-line completion script (in contrib/) learned to complete "git cmd ^mas<HT>" to complete the negative end of reference to "git cmd ^master". * "git send-email" attempts to pick up valid e-mails from the trailers, but people in real world write non-addresses there, like "Cc: Stable <add@re.ss> # 4.8+", which broke the output depending on the availability and vintage of Mail::Address perl module. * The code that we have used for the past 10+ years to cycle 4-element ring buffers turns out to be not quite portable in theoretical world. * "git daemon" used fixed-length buffers to turn URL to the repository the client asked for into the server side directory path, using snprintf() to avoid overflowing these buffers, but allowed possibly truncated paths to the directory. This has been tightened to reject such a request that causes overlong path to be required to serve. * Recent update to git-sh-setup (a library of shell functions that are used by our in-tree scripted Porcelain commands) included another shell library git-sh-i18n without specifying where it is, relying on the $PATH. This has been fixed to be more explicit by prefixing $(git --exec-path) output in front. * Fix for a racy false-positive test failure. * Portability update and workaround for builds on recent Mac OS X. * Update to the test framework made in 2.9 timeframe broke running the tests under valgrind, which has been fixed. * Improve the rule to convert "unsigned char [20]" into "struct object_id *" in contrib/coccinelle/ * "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 minor documentation updates and code clean-ups.