]> git.ipfire.org Git - thirdparty/git.git/commitdiff
What's cooking (2016/07 #02)
authorJunio C Hamano <gitster@pobox.com>
Wed, 6 Jul 2016 21:32:42 +0000 (14:32 -0700)
committerJunio C Hamano <gitster@pobox.com>
Wed, 6 Jul 2016 21:32:42 +0000 (14:32 -0700)
whats-cooking.txt

index 03bf42b0a02c1c132f60546425e0142b2e424d62..dc413697470b8de583e302e02b9dc6c38aefe0c7 100644 (file)
@@ -1,10 +1,10 @@
 To: git@vger.kernel.org
 Bcc: lwn@lwn.net
-Subject: What's cooking in git.git (Jul 2016, #01; Fri, 1)
-X-master-at: cf4c2cfe52be5bd973a4838f73a35d3959ce2f43
-X-next-at: fa5e50e3639a0a6cbe9c3df13ce7aa2e6f3a4fcb
+Subject: What's cooking in git.git (Jul 2016, #02; Wed, 6)
+X-master-at: 5c589a73de4394ad125a4effac227b3aec856fa1
+X-next-at: 281e4d64a61b891e32e0344654b580b4203effa6
 
-What's cooking in git.git (Jul 2016, #01; Fri, 1)
+What's cooking in git.git (Jul 2016, #02; Wed, 6)
 --------------------------------------------------
 
 Here are the topics that have been cooking.  Commits prefixed with
@@ -20,45 +20,325 @@ of the repositories listed at
 
     http://git-blame.blogspot.com/p/git-public-repositories.html
 
+--------------------------------------------------
+[Graduated to "master"]
+
+* ak/t7800-wo-readlink (2016-06-21) 1 commit
+  (merged to 'next' on 2016-06-28 at 403bbbb)
+ + t7800: readlink may not be available
+
+ One among four invocations of readlink(1) in our test suite has
+ been rewritten so that the test can run on systems without the
+ command (others are in valgrind test framework and t9802).
+
+
+* ao/p4-has-branch-prefix-fix (2016-06-22) 1 commit
+  (merged to 'next' on 2016-06-28 at 333f90d)
+ + git-p4: correct hasBranchPrefix verbose output
+
+ A bug, which caused "git p4" while running under verbose mode to
+ report paths that are omitted due to branch prefix incorrectly, has
+ been fixed; the command said "Ignoring file outside of prefix" for
+ paths that are _inside_.
+
+
+* cb/t7810-test-label-fix (2016-06-21) 1 commit
+  (merged to 'next' on 2016-06-28 at 4d85a00)
+ + t7810: fix duplicated test title
+
+ Test clean-up.
+
+
+* ep/http-curl-trace (2016-05-24) 2 commits
+  (merged to 'next' on 2016-06-27 at c290515)
+ + imap-send.c: introduce the GIT_TRACE_CURL enviroment variable
+ + http.c: implement the GIT_TRACE_CURL environment variable
+
+ HTTP transport gained an option to produce more detailed debugging
+ trace.
+
+
+* ew/mboxrd-format-am (2016-06-06) 3 commits
+  (merged to 'next' on 2016-06-28 at ee0a088)
+ + am: support --patch-format=mboxrd
+ + mailsplit: support unescaping mboxrd messages
+ + pretty: support "mboxrd" output format
+
+ Teach format-patch and mailsplit (hence "am") how a line that
+ happens to begin with "From " in the e-mail message is quoted with
+ ">", so that these lines can be restored to their original shape.
+
+
+* jc/t2300-setup (2016-06-22) 1 commit
+  (merged to 'next' on 2016-06-28 at 62b902a)
+ + t2300: "git --exec-path" is not usable in $PATH on Windows as-is
+
+ Portability fix for Windows.
+
+
+* jk/add-i-diff-compact-heuristics (2016-06-16) 1 commit
+  (merged to 'next' on 2016-06-27 at 568f892)
+ + add--interactive: respect diff.compactionHeuristic
+
+ "git add -i/-p" learned to honor diff.compactionHeuristic
+ experimental knob, so that the user can work on the same hunk split
+ as "git diff" output.
+
+
+* jk/bisect-show-tree (2016-06-16) 1 commit
+  (merged to 'next' on 2016-06-27 at 6970f87e)
+ + bisect: always call setup_revisions after init_revisions
+
+ "git bisect" makes an internal call to "git diff-tree" when
+ bisection finds the culprit, but this call did not initialize the
+ data structure to pass to the diff-tree API correctly.
+
+
+* jk/gpg-interface-cleanup (2016-06-17) 7 commits
+  (merged to 'next' on 2016-06-28 at eed3498)
+ + gpg-interface: check gpg signature creation status
+ + sign_buffer: use pipe_command
+ + verify_signed_buffer: use pipe_command
+ + run-command: add pipe_command helper
+ + verify_signed_buffer: use tempfile object
+ + verify_signed_buffer: drop pbuf variable
+ + gpg-interface: use child_process.args
+
+ A new run-command API function pipe_command() is introduced to
+ sanely feed data to the standard input while capturing data from
+ the standard output and the standard error of an external process,
+ which is cumbersome to hand-roll correctly without deadlocking.
+
+ The codepath to sign data in a prepared buffer with GPG has been
+ updated to use this API to read from the status-fd to check for
+ errors (instead of relying on GPG's exit status).
+
+
+* jk/parseopt-string-list (2016-06-13) 3 commits
+  (merged to 'next' on 2016-06-27 at 27462e6)
+ + blame,shortlog: don't make local option variables static
+ + interpret-trailers: don't duplicate option strings
+ + parse_opt_string_list: stop allocating new strings
+ (this branch is used by jk/string-list-static-init.)
+
+ The command line argument parsing that uses OPT_STRING_LIST() often
+ made a copy of the argv[] element, which was unnecessary.
+
+
+* jk/repack-keep-unreachable (2016-06-14) 3 commits
+  (merged to 'next' on 2016-06-28 at 802b849)
+ + repack: extend --keep-unreachable to loose objects
+ + repack: add --keep-unreachable option
+ + repack: document --unpack-unreachable option
+
+ "git repack" learned the "--keep-unreachable" option, which sends
+ loose unreachable objects to a pack instead of leaving them loose.
+ This helps heuristics based on the number of loose objects
+ (e.g. "gc --auto").
+
+
+* jk/send-pack-stdio (2016-06-10) 2 commits
+  (merged to 'next' on 2016-06-27 at 2cfb0ff)
+ + write_or_die: remove the unused write_or_whine() function
+ + send-pack: use buffered I/O to talk to pack-objects
+
+ Code clean-up.
+
+
+* jk/string-list-static-init (2016-06-13) 2 commits
+  (merged to 'next' on 2016-06-27 at 3d4b2fa)
+ + use string_list initializer consistently
+ + Merge branch 'jk/parseopt-string-list' into jk/string-list-static-init
+ (this branch uses jk/parseopt-string-list.)
+
+ Instead of taking advantage of a struct string_list that is
+ allocated with all NULs happens to be STRING_LIST_INIT_NODUP kind,
+ initialize them explicitly as such, to document their behaviour
+ better.
+
+
+* jk/tzoffset-fix (2016-06-20) 3 commits
+  (merged to 'next' on 2016-06-28 at 08ec8c5)
+ + local_tzoffset: detect errors from tm_to_time_t
+ + t0006: test various date formats
+ + t0006: rename test-date's "show" to "relative"
+
+ The internal code used to show local timezone offset is not
+ prepared to handle timestamps beyond year 2100, and gave a
+ bogus offset value to the caller.  Use a more benign looking
+ +0000 instead and let "git log" going in such a case, instead
+ of aborting.
+
+
+* jk/upload-pack-hook (2016-06-02) 7 commits
+  (merged to 'next' on 2016-06-28 at e5e5bb6)
+ + upload-pack: provide a hook for running pack-objects
+ + t1308: do not get fooled by symbolic links to the source tree
+ + config: add a notion of "scope"
+ + config: return configset value for current_config_ functions
+ + config: set up config_source for command-line config
+ + git_config_parse_parameter: refactor cleanup code
+ + git_config_with_options: drop "found" counting
+
+ "upload-pack" allows a custom "git pack-objects" replacement when
+ responding to "fetch/clone" via the uploadpack.packObjectsHook.
+
+
+* js/mingw-parameter-less-c-functions (2016-06-20) 1 commit
+  (merged to 'next' on 2016-06-28 at e673c65)
+ + mingw: let the build succeed with DEVELOPER=1
+
+ Some platform-specific code had non-ANSI strict declarations of C
+ functions that do not take any parameters, which has been
+ corrected.
+
+
+* js/perf-on-apple (2016-06-21) 1 commit
+  (merged to 'next' on 2016-06-28 at 83529b9)
+ + perf: accommodate for MacOSX
+
+ t/perf needs /usr/bin/time with GNU extension; the invocation of it
+ is updated to "gtime" on Darwin.
+
+
+* km/fetch-do-not-free-remote-name (2016-06-14) 1 commit
+  (merged to 'next' on 2016-06-27 at 4bc34c4)
+ + builtin/fetch.c: don't free remote->name after fetch
+
+ The ownership rule for the piece of memory that hold references to
+ be fetched in "git fetch" was screwy, which has been cleaned up.
+
+
+* lc/shell-default-value-noexpand (2016-06-19) 1 commit
+  (merged to 'next' on 2016-06-28 at 2dc7727)
+ + sh-setup: enclose setting of ${VAR=default} in double-quotes
+
+ Fix unnecessarily waste in the idiomatic use of ': ${VAR=default}'
+ to set the default value, without enclosing it in double quotes.
+
+
+* lf/sideband-returns-void (2016-06-16) 2 commits
+  (merged to 'next' on 2016-06-27 at 558c781)
+ + upload-pack.c: make send_client_data() return void
+ + sideband.c: make send_sideband() return void
+
+ A small internal API cleanup.
+
+
+* mg/signature-doc (2016-06-17) 4 commits
+  (merged to 'next' on 2016-06-28 at 2732a37)
+ + Documentation/technical: signed merge tag format
+ + Documentation/technical: signed commit format
+ + Documentation/technical: signed tag format
+ + Documentation/technical: describe signature formats
+
+ Formats of the various data (and how to validate them) where we use
+ GPG signature have been documented.
+
+
+* nd/graph-width-padded (2016-06-16) 2 commits
+  (merged to 'next' on 2016-06-28 at 0f733ef)
+ + pretty.c: support <direction>|(<negative number>) forms
+ + pretty: pass graph width to pretty formatting for use in '%>|(N)'
+
+ "log --graph --format=" learned that "%>|(N)" specifies the width
+ relative to the terminal's left edge, not relative to the area to
+ draw text that is to the right of the ancestry-graph section.  It
+ also now accepts negative N that means the column limit is relative
+ to the right border.
+
+
+* nd/test-lib-httpd-show-error-log-in-verbose (2016-06-13) 1 commit
+  (merged to 'next' on 2016-06-27 at 9793d81)
+ + lib-httpd.sh: print error.log on error
+
+ HTTPd tests learned to show the server error log to help diagnosing
+ a failing tests.
+
+
+* nd/worktree-cleanup-post-head-protection (2016-05-24) 6 commits
+  (merged to 'next' on 2016-06-28 at 55414fa)
+ + worktree: simplify prefixing paths
+ + worktree: avoid 0{40}, too many zeroes, hard to read
+ + worktree.c: use is_dot_or_dotdot()
+ + git-worktree.txt: keep subcommand listing in alphabetical order
+ + worktree.c: rewrite mark_current_worktree() to avoid strbuf
+ + completion: support git-worktree
+ (this branch is used by nd/worktree-lock.)
+
+ Further preparatory clean-up for "worktree" feature continues.
+
+
+* pb/commit-editmsg-path (2016-06-09) 1 commit
+  (merged to 'next' on 2016-06-27 at 0f01ce1)
+ + builtin/commit.c: memoize git-path for COMMIT_EDITMSG
+
+ Code clean-up.
+
+
+* sb/clone-shallow-passthru (2016-06-20) 1 commit
+  (merged to 'next' on 2016-06-28 at d515d7d)
+ + clone: do not let --depth imply --shallow-submodules
+ (this branch is used by sb/t5614-modernize.)
+
+ Fix an unintended regression in v2.9 that breaks "clone --depth"
+ that recurses down to submodules by forcing the submodules to also
+ be cloned shallowly, which many server instances that host upstream
+ of the submodules are not prepared for.
+
+
+* sb/t5614-modernize (2016-06-21) 1 commit
+  (merged to 'next' on 2016-06-28 at ee05326)
+ + t5614: don't use subshells
+ (this branch uses sb/clone-shallow-passthru.)
+
+ Test clean-up.
+
 --------------------------------------------------
 [New Topics]
 
-* jk/common-main (2016-07-01) 1 commit
- - Merge branch 'jk/common-main-2.8' into jk/common-main
- (this branch uses jk/common-main-2.8.)
+* ak/lazy-prereq-mktemp (2016-07-06) 1 commit
+ - t7610: test for mktemp before test execution
 
+ A test that unconditionally used "mktemp" learned that the command
+ is not necessarily available everywhere.
 
-* jk/common-main-2.8 (2016-07-01) 5 commits
- - common-main: call git_setup_gettext()
- - common-main: call restore_sigpipe_to_default()
- - common-main: call sanitize_stdfds()
- - common-main: call git_extract_argv0_path()
- - add an extra level of indirection to main()
- (this branch is used by jk/common-main.)
+ Will merge to 'next'.
 
- There are certain house-keeping tasks that need to be performed at
- the very beginning of any Git program, and programs that are not
- built-in commands had to do them exactly the same way as "git"
- potty does.  It was easy to make mistakes in one-off standalone
- programs (like test helpers).  A common "main()" function that
- calls cmd_main() of individual program has been introduced to
- make it harder to make mistakes.
 
+* ew/svn-bad-ref (2016-07-06) 1 commit
+ - git-svn: warn instead of dying when commit data is missing
 
-* nd/ita-cleanup (2016-07-01) 3 commits
- - grep: fix grepping for "intent to add" files
- - t7810-grep.sh: fix a whitespace inconsistency
- - t7810-grep.sh: fix duplicated test name
+ An earlier update to "git svn" tightened the parsing of refs given
+ as the command line arguments too much.  This has been fixed by
+ loosening the check a bit.
+
+ I'm likely to discard this, favouring a direct pull request from
+ the subsystem maintainer directly going to 'master'.
+
+
+* jk/difftool-in-subdir (2016-07-06) 1 commit
+ - difftool: fix argument handling in subdirs
+
+ "git difftool <paths>..." started in a subdirectory failed to
+ interpret the paths relative to that directory, which has been
+ fixed.
+
+ Waiting for an ack.
 
- Git does not know what the contents in the index should be for a
- path added with "git add -N" yet, so "git grep --cached" should not
- show hits (or show lack of hits, with -L) in such a path.  But we
- did by mistake, which has been corrected.
+
+* nd/test-helpers (2016-07-06) 2 commits
+ - Makefile: use VCSSVN_LIB to refer to svn library
+ - Makefile: drop extra dependencies for test helpers
+
+ Build clean-up.
+
+ Will merge to 'next'.
 
 --------------------------------------------------
 [Stalled]
 
-* jh/clean-smudge-annex (2016-06-22) 10 commits
+* jh/clean-smudge-annex (2016-07-06) 10 commits
  - SQUASH???
  - use smudgeToFile filter in recursive merge
  - use smudgeToFile filter in git am
@@ -78,17 +358,9 @@ of the repositories listed at
  the filesystem directly.
 
 
-* dk/blame-move-no-reason-for-1-line-context (2016-05-29) 1 commit
- - blame: require 0 context lines while finding moved lines with -M
-
- "git blame -M" missed a single line that was moved within the file.
-
- We may want to squash a test or two to this commit.  Volunteers?
-
-
-* tb/convert-peek-in-index (2016-06-07) 3 commits
- - correct ce_compare_data() in a middle of a merge
+* tb/convert-peek-in-index (2016-07-06) 3 commits
  - read-cache: factor out get_sha1_from_index() helper
+ - correct ce_compare_data() in a middle of a merge
  - convert: unify the "auto" handling of CRLF
  (this branch is used by jh/clean-smudge-annex.)
 
@@ -193,6 +465,56 @@ of the repositories listed at
 --------------------------------------------------
 [Cooking]
 
+* dk/blame-move-no-reason-for-1-line-context (2016-05-29) 1 commit
+  (merged to 'next' on 2016-07-06 at 087490c)
+ + blame: require 0 context lines while finding moved lines with -M
+
+ "git blame -M" missed a single line that was moved within the file.
+
+ We may want to squash a test or two to this commit.  Volunteers?
+
+
+* jk/common-main (2016-07-06) 1 commit
+ - Merge branch 'jk/common-main-2.8' into jk/common-main
+ (this branch uses jk/common-main-2.8.)
+
+ Prepare jk/commin-main-2.8 topic to be mergeable to 2.9 and later.
+
+ Will merge to 'master'.
+
+
+* jk/common-main-2.8 (2016-07-06) 6 commits
+ - mingw: declare main()'s argv as const
+ - common-main: call git_setup_gettext()
+ - common-main: call restore_sigpipe_to_default()
+ - common-main: call sanitize_stdfds()
+ - common-main: call git_extract_argv0_path()
+ - add an extra level of indirection to main()
+ (this branch is used by jk/common-main.)
+
+ There are certain house-keeping tasks that need to be performed at
+ the very beginning of any Git program, and programs that are not
+ built-in commands had to do them exactly the same way as "git"
+ potty does.  It was easy to make mistakes in one-off standalone
+ programs (like test helpers).  A common "main()" function that
+ calls cmd_main() of individual program has been introduced to
+ make it harder to make mistakes.
+
+
+* nd/ita-cleanup (2016-07-01) 3 commits
+  (merged to 'next' on 2016-07-06 at f15aeba)
+ + grep: fix grepping for "intent to add" files
+ + t7810-grep.sh: fix a whitespace inconsistency
+ + t7810-grep.sh: fix duplicated test name
+
+ Git does not know what the contents in the index should be for a
+ path added with "git add -N" yet, so "git grep --cached" should not
+ show hits (or show lack of hits, with -L) in such a path.  But we
+ did by mistake, which has been corrected.
+
+ Will merge to 'master'.
+
+
 * cc/apply-am (2016-06-28) 41 commits
  - apply: use error_errno() where possible
  - builtin/am: use apply api in run_apply()
@@ -263,19 +585,23 @@ of the repositories listed at
 
 
 * js/sign-empty-commit-fix (2016-06-29) 1 commit
- - commit -S: avoid invalid pointer with empty message
+  (merged to 'next' on 2016-07-06 at 448da1b)
+ + commit -S: avoid invalid pointer with empty message
 
  "git commit --amend --allow-empty-message -S" for a commit without
  any message body could have misidentified where the header of the
  commit object ends.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * js/t3404-grammo-fix (2016-06-29) 1 commit
- - t3404: fix a grammo (commands are ran -> commands are run)
+  (merged to 'next' on 2016-07-06 at 4378654)
+ + t3404: fix a grammo (commands are ran -> commands are run)
 
- Will merge to 'next'.
+ Grammofix.
+
+ Will merge to 'master'.
 
 
 * ls/p4-tmp-refs (2016-06-29) 1 commit
@@ -298,24 +624,26 @@ of the repositories listed at
 
 
 * ps/rebase-i-auto-unstash-upon-abort (2016-06-29) 1 commit
- - rebase -i: restore autostash on abort
+  (merged to 'next' on 2016-07-06 at 0fdcedb)
+ + rebase -i: restore autostash on abort
 
  "git rebase -i --autostash" did not restore the auto-stashed change
  when the operation was aborted.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * dg/subtree-rebase-test (2016-06-28) 1 commit
- - contrib/subtree: Add a test for subtree rebase that loses commits
+  (merged to 'next' on 2016-07-06 at 4dec1ad)
+ + contrib/subtree: Add a test for subtree rebase that loses commits
 
  This is just a test to specify the desired behaviour that currently
  is not available.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
-* jk/test-match-signal (2016-06-24) 4 commits
+* jk/test-match-signal (2016-07-06) 4 commits
  - t/lib-git-daemon: use test_match_signal
  - test_must_fail: use test_match_signal
  - t0005: use test_match_signal as appropriate
@@ -324,41 +652,46 @@ of the repositories listed at
  The test framework learned a new helper test_match_signal to check
  an exit code from getting killed by an expected signal.
 
- HOLD
- ($gmane/298523)
+ Is this what everybody can agree on?
 
 
 * ah/unpack-trees-advice-messages (2016-06-27) 1 commit
- - unpack-trees: fix English grammar in do-this-before-that messages
+  (merged to 'next' on 2016-07-06 at 4254fc2)
+ + unpack-trees: fix English grammar in do-this-before-that messages
 
- Will merge to 'next'.
+ Grammofix.
+
+ Will merge to 'master'.
 
 
 * ew/gc-auto-pack-limit-fix (2016-06-27) 1 commit
- - gc: fix off-by-one error with gc.autoPackLimit
+  (merged to 'next' on 2016-07-06 at aa023d3)
+ + gc: fix off-by-one error with gc.autoPackLimit
 
  "gc.autoPackLimit" when set to 1 should not trigger a repacking
  when there is only one pack, but the code counted poorly and did
  so.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
-* nd/connect-ssh-command-config (2016-06-28) 2 commits
- - SQUASH???
- connect: read $GIT_SSH_COMMAND from config file
+* nd/connect-ssh-command-config (2016-07-06) 1 commit
+  (merged to 'next' on 2016-07-06 at 6eac316)
+ connect: read $GIT_SSH_COMMAND from config file
 
  A new configuration variable core.sshCommand to specify what value
  for GIT_SSH_COMMAND to use per repository.
 
- Is everybody happy with the SQUASH???
- If so will merge to 'next'.
+ Will merge to 'master'.
 
 
 * nd/doc-new-command (2016-06-27) 1 commit
- - new-command.txt: correct the command description file
+  (merged to 'next' on 2016-07-06 at 1404b64)
+ + new-command.txt: correct the command description file
 
- Will merge to 'next'.
+ Typofix in a doc.
+
+ Will merge to 'master'.
 
 
 * po/range-doc (2016-07-01) 3 commits
@@ -377,33 +710,35 @@ of the repositories listed at
 
 
 * sb/submodule-parallel-fetch (2016-06-27) 2 commits
- - xwrite: poll on non-blocking FDs
- - xread: retry after poll on EAGAIN/EWOULDBLOCK
+  (merged to 'next' on 2016-07-06 at de5fd35)
+ + xwrite: poll on non-blocking FDs
+ + xread: retry after poll on EAGAIN/EWOULDBLOCK
 
  Fix a recently introduced codepaths that are involved in parallel
  submodule operations, which gave up on reading too early, and
  could have wasted CPU while attempting to write under a corner case
  condition.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
 * mm/doc-tt (2016-06-28) 7 commits
- - doc: typeset HEAD and variants as literal
- - CodingGuidelines: formatting HEAD in documentation
- - doc: typeset long options with argument as literal
- - doc: typeset '--' as literal
- - doc: typeset long command-line options as literal
- - doc: typeset short command-line options as literal
- - Documentation/git-mv.txt: fix whitespace indentation
+  (merged to 'next' on 2016-07-06 at a8c74bd)
+ + doc: typeset HEAD and variants as literal
+ + CodingGuidelines: formatting HEAD in documentation
+ + doc: typeset long options with argument as literal
+ + doc: typeset '--' as literal
+ + doc: typeset long command-line options as literal
+ + doc: typeset short command-line options as literal
+ + Documentation/git-mv.txt: fix whitespace indentation
 
  More mark-up updates to typeset strings that are expected to
  literally typed by the end user in fixed-width font.
 
- Will merge to 'next'.
+ Will merge to 'master'.
 
 
-* nd/fetch-ref-summary (2016-06-27) 5 commits
+* nd/fetch-ref-summary (2016-07-06) 5 commits
  - fetch: reduce duplicate in ref update status lines with placeholder
  - fetch: align all "remote -> local" output
  - fetch: change flag code for displaying tag update and deleted ref
@@ -413,68 +748,7 @@ of the repositories listed at
  Improve the look of the way "git fetch" reports what happened to
  each ref that was fetched.
 
- Still being discussed.
-
-
-* ak/t7800-wo-readlink (2016-06-21) 1 commit
-  (merged to 'next' on 2016-06-28 at 403bbbb)
- + t7800: readlink may not be available
-
- One among four invocations of readlink(1) in our test suite has
- been rewritten so that the test can run on systems without the
- command (others are in valgrind test framework and t9802).
-
- Will merge to 'master'.
-
-
-* js/perf-on-apple (2016-06-21) 1 commit
-  (merged to 'next' on 2016-06-28 at 83529b9)
- + perf: accommodate for MacOSX
-
- t/perf needs /usr/bin/time with GNU extension; the invocation of it
- is updated to "gtime" on Darwin.
-
- Will merge to 'master'.
-
-
-* sb/t5614-modernize (2016-06-21) 1 commit
-  (merged to 'next' on 2016-06-28 at ee05326)
- + t5614: don't use subshells
- (this branch uses sb/clone-shallow-passthru.)
-
- Test clean-up.
-
- Will merge to 'master'.
-
-
-* ao/p4-has-branch-prefix-fix (2016-06-22) 1 commit
-  (merged to 'next' on 2016-06-28 at 333f90d)
- + git-p4: correct hasBranchPrefix verbose output
-
- A bug, which caused "git p4" while running under verbose mode to
- report paths that are omitted due to branch prefix incorrectly, has
- been fixed; the command said "Ignoring file outside of prefix" for
- paths that are _inside_.
-
- Will merge to 'master'.
-
-
-* cb/t7810-test-label-fix (2016-06-21) 1 commit
-  (merged to 'next' on 2016-06-28 at 4d85a00)
- + t7810: fix duplicated test title
-
- Test clean-up.
-
- Will merge to 'master'.
-
-
-* jc/t2300-setup (2016-06-22) 1 commit
-  (merged to 'next' on 2016-06-28 at 62b902a)
- + t2300: "git --exec-path" is not usable in $PATH on Windows as-is
-
- Portability fix for Windows.
-
- Will merge to 'master'.
+ Will merge to 'next'.
 
 
 * jk/perf-any-version (2016-06-22) 2 commits
@@ -545,44 +819,17 @@ of the repositories listed at
  "git grep -i" has been taught to fold case in non-ascii locales
  correctly.
 
- Will merge to 'next'.
-
-
-* mj/log-show-signature-conf (2016-06-24) 3 commits
-  (merged to 'next' on 2016-06-28 at c8b3347)
- + log: add log.showSignature configuration variable
- + log: add "--no-show-signature" command line option
- + t4202: refactor test
-
- "git log" learns log.showSignature configuration variable, and a
- command line option "--no-show-signature" to countermand it.
-
- Will merge to 'master'.
-
-
-* mg/signature-doc (2016-06-17) 4 commits
-  (merged to 'next' on 2016-06-28 at 2732a37)
- + Documentation/technical: signed merge tag format
- + Documentation/technical: signed commit format
- + Documentation/technical: signed tag format
- + Documentation/technical: describe signature formats
-
- Formats of the various data (and how to validate them) where we use
- GPG signature have been documented.
-
- Will merge to 'master'.
+ Will merge to 'next'.
 
 
-* jk/string-list-static-init (2016-06-13) 2 commits
-  (merged to 'next' on 2016-06-27 at 3d4b2fa)
- + use string_list initializer consistently
- + Merge branch 'jk/parseopt-string-list' into jk/string-list-static-init
- (this branch uses jk/parseopt-string-list.)
+* mj/log-show-signature-conf (2016-06-24) 3 commits
+  (merged to 'next' on 2016-06-28 at c8b3347)
+ + log: add log.showSignature configuration variable
+ + log: add "--no-show-signature" command line option
+ + t4202: refactor test
 
- Instead of taking advantage of a struct string_list that is
- allocated with all NULs happens to be STRING_LIST_INIT_NODUP kind,
- initialize them explicitly as such, to document their behaviour
- better.
+ "git log" learns log.showSignature configuration variable, and a
+ command line option "--no-show-signature" to countermand it.
 
  Will merge to 'master'.
 
@@ -651,29 +898,6 @@ of the repositories listed at
  If so, will merge to 'next'.
 
 
-* lc/shell-default-value-noexpand (2016-06-19) 1 commit
-  (merged to 'next' on 2016-06-28 at 2dc7727)
- + sh-setup: enclose setting of ${VAR=default} in double-quotes
-
- Fix unnecessarily waste in the idiomatic use of ': ${VAR=default}'
- to set the default value, without enclosing it in double quotes.
-
- Will merge to 'master'.
-
-
-* sb/clone-shallow-passthru (2016-06-20) 1 commit
-  (merged to 'next' on 2016-06-28 at d515d7d)
- + clone: do not let --depth imply --shallow-submodules
- (this branch is used by sb/t5614-modernize.)
-
- Fix an unintended regression in v2.9 that breaks "clone --depth"
- that recurses down to submodules by forcing the submodules to also
- be cloned shallowly, which many server instances that host upstream
- of the submodules are not prepared for.
-
- Will merge to 'master'.
-
-
 * js/find-commit-subject-ignore-leading-blanks (2016-06-29) 5 commits
   (merged to 'next' on 2016-06-29 at 9717e00)
  + reset --hard: skip blank lines when reporting the commit subject
@@ -692,17 +916,18 @@ of the repositories listed at
 
 
 * js/log-to-diffopt-file (2016-06-28) 11 commits
- - diff: do not color output when --color=auto and --output=<file> is given
- - t4211: ensure that log respects --output=<file>
- - shortlog: respect the --output=<file> setting
- - format-patch: use stdout directly
- - format-patch: avoid freopen()
- - format-patch: explicitly switch off color when writing to files
- - shortlog: support outputting to streams other than stdout
- - graph: respect the diffopt.file setting
- - line-log: respect diffopt's configured output file stream
- - log-tree: respect diffopt's configured output file stream
- - log: prepare log/log-tree to reuse the diffopt.close_file attribute
+  (merged to 'next' on 2016-07-06 at 39e7a5f)
+ + diff: do not color output when --color=auto and --output=<file> is given
+ + t4211: ensure that log respects --output=<file>
+ + shortlog: respect the --output=<file> setting
+ + format-patch: use stdout directly
+ + format-patch: avoid freopen()
+ + format-patch: explicitly switch off color when writing to files
+ + shortlog: support outputting to streams other than stdout
+ + graph: respect the diffopt.file setting
+ + line-log: respect diffopt's configured output file stream
+ + log-tree: respect diffopt's configured output file stream
+ + log: prepare log/log-tree to reuse the diffopt.close_file attribute
 
  The commands in the "log/diff" family had an FILE* pointer in the
  data structure they pass around for a long time, but some codepaths
@@ -711,177 +936,50 @@ of the repositories listed at
  codepaths have been updated to consistently write into that FILE*
  instead.
 
- Will merge to 'next'.
-
-
-* js/mingw-parameter-less-c-functions (2016-06-20) 1 commit
-  (merged to 'next' on 2016-06-28 at e673c65)
- + mingw: let the build succeed with DEVELOPER=1
-
- Some platform-specific code had non-ANSI strict declarations of C
- functions that do not take any parameters, which has been
- corrected.
-
  Will merge to 'master'.
 
 
 * bc/cocci (2016-06-28) 11 commits
- - diff: convert prep_temp_blob() to struct object_id
- - merge-recursive: convert merge_recursive_generic() to object_id
- - merge-recursive: convert leaf functions to use struct object_id
- - merge-recursive: convert struct merge_file_info to object_id
- - merge-recursive: convert struct stage_data to use object_id
- - diff: rename struct diff_filespec's sha1_valid member
- - diff: convert struct diff_filespec to struct object_id
- - coccinelle: apply object_id Coccinelle transformations
- - coccinelle: convert hashcpy() with null_sha1 to hashclr()
- - contrib/coccinelle: add basic Coccinelle transforms
- - hex: add oid_to_hex_r()
+  (merged to 'next' on 2016-07-06 at f2e8e2a)
+ + diff: convert prep_temp_blob() to struct object_id
+ + merge-recursive: convert merge_recursive_generic() to object_id
+ + merge-recursive: convert leaf functions to use struct object_id
+ + merge-recursive: convert struct merge_file_info to object_id
+ + merge-recursive: convert struct stage_data to use object_id
+ + diff: rename struct diff_filespec's sha1_valid member
+ + diff: convert struct diff_filespec to struct object_id
+ + coccinelle: apply object_id Coccinelle transformations
+ + coccinelle: convert hashcpy() with null_sha1 to hashclr()
+ + contrib/coccinelle: add basic Coccinelle transforms
+ + hex: add oid_to_hex_r()
 
  Conversion from unsigned char sha1[20] to struct object_id
  continues.
 
- Needs review.
-
-
-* jk/tzoffset-fix (2016-06-20) 3 commits
-  (merged to 'next' on 2016-06-28 at 08ec8c5)
- + local_tzoffset: detect errors from tm_to_time_t
- + t0006: test various date formats
- + t0006: rename test-date's "show" to "relative"
-
- The internal code used to show local timezone offset is not
- prepared to handle timestamps beyond year 2100, and gave a
- bogus offset value to the caller.  Use a more benign looking
- +0000 instead and let "git log" going in such a case, instead
- of aborting.
-
- Will merge to 'master'.
-
-
-* jk/add-i-diff-compact-heuristics (2016-06-16) 1 commit
-  (merged to 'next' on 2016-06-27 at 568f892)
- + add--interactive: respect diff.compactionHeuristic
-
- "git add -i/-p" learned to honor diff.compactionHeuristic
- experimental knob, so that the user can work on the same hunk split
- as "git diff" output.
-
- Will merge to 'master'.
+ Will cook a bit in 'next' and then merge to 'master'.
 
 
 * jk/big-and-future-archive-tar (2016-07-01) 5 commits
- - archive-tar: drop return value
- - archive-tar: write extended headers for far-future mtime
- - archive-tar: write extended headers for file sizes >= 8GB
- - t5000: test tar files that overflow ustar headers
- - t9300: factor out portable "head -c" replacement
+  (merged to 'next' on 2016-07-06 at 89f3835)
+ + archive-tar: drop return value
+ + archive-tar: write extended headers for far-future mtime
+ + archive-tar: write extended headers for file sizes >= 8GB
+ + t5000: test tar files that overflow ustar headers
+ + t9300: factor out portable "head -c" replacement
 
  "git archive" learned to handle files that are larger than 8GB and
  commits far in the future than expressible by the traditional US-TAR
  format.
 
- Will merge to 'next'.
-
-
-* jk/gpg-interface-cleanup (2016-06-17) 7 commits
-  (merged to 'next' on 2016-06-28 at eed3498)
- + gpg-interface: check gpg signature creation status
- + sign_buffer: use pipe_command
- + verify_signed_buffer: use pipe_command
- + run-command: add pipe_command helper
- + verify_signed_buffer: use tempfile object
- + verify_signed_buffer: drop pbuf variable
- + gpg-interface: use child_process.args
-
- A new run-command API function pipe_command() is introduced to
- sanely feed data to the standard input while capturing data from
- the standard output and the standard error of an external process,
- which is cumbersome to hand-roll correctly without deadlocking.
-
- The codepath to sign data in a prepared buffer with GPG has been
- updated to use this API to read from the status-fd to check for
- errors (instead of relying on GPG's exit status).
-
- Will merge to 'master'.
-
-
-* lf/sideband-returns-void (2016-06-16) 2 commits
-  (merged to 'next' on 2016-06-27 at 558c781)
- + upload-pack.c: make send_client_data() return void
- + sideband.c: make send_sideband() return void
-
- A small internal API cleanup.
-
- Will merge to 'master'.
-
-
-* nd/graph-width-padded (2016-06-16) 2 commits
-  (merged to 'next' on 2016-06-28 at 0f733ef)
- + pretty.c: support <direction>|(<negative number>) forms
- + pretty: pass graph width to pretty formatting for use in '%>|(N)'
-
- "log --graph --format=" learned that "%>|(N)" specifies the width
- relative to the terminal's left edge, not relative to the area to
- draw text that is to the right of the ancestry-graph section.  It
- also now accepts negative N that means the column limit is relative
- to the right border.
-
- Will merge to 'master'.
-
-
-* jk/bisect-show-tree (2016-06-16) 1 commit
-  (merged to 'next' on 2016-06-27 at 6970f87e)
- + bisect: always call setup_revisions after init_revisions
-
- "git bisect" makes an internal call to "git diff-tree" when
- bisection finds the culprit, but this call did not initialize the
- data structure to pass to the diff-tree API correctly.
-
- Will merge to 'master'.
-
-
-* jk/parseopt-string-list (2016-06-13) 3 commits
-  (merged to 'next' on 2016-06-27 at 27462e6)
- + blame,shortlog: don't make local option variables static
- + interpret-trailers: don't duplicate option strings
- + parse_opt_string_list: stop allocating new strings
- (this branch is used by jk/string-list-static-init.)
-
- The command line argument parsing that uses OPT_STRING_LIST() often
- made a copy of the argv[] element, which was unnecessary.
-
- Will merge to 'master'.
-
-
-* jk/repack-keep-unreachable (2016-06-14) 3 commits
-  (merged to 'next' on 2016-06-28 at 802b849)
- + repack: extend --keep-unreachable to loose objects
- + repack: add --keep-unreachable option
- + repack: document --unpack-unreachable option
-
- "git repack" learned the "--keep-unreachable" option, which sends
- loose unreachable objects to a pack instead of leaving them loose.
- This helps heuristics based on the number of loose objects
- (e.g. "gc --auto").
-
  Will merge to 'master'.
 
 
-* lf/recv-sideband-cleanup (2016-07-01) 1 commit
- - sideband.c: refactor recv_sideband()
-
- Code simplification.  It however seems to add unnecessary trailing
- output in some cases.
-
- Will merge to 'next'.
-
-
-* nd/test-lib-httpd-show-error-log-in-verbose (2016-06-13) 1 commit
-  (merged to 'next' on 2016-06-27 at 9793d81)
- + lib-httpd.sh: print error.log on error
+* lf/recv-sideband-cleanup (2016-07-06) 2 commits
+  (merged to 'next' on 2016-07-06 at d527bcb)
+ + sideband.c: small optimization of strbuf usage
+ + sideband.c: refactor recv_sideband()
 
Debugging aid.
Code simplification.
 
  Will merge to 'master'.
 
@@ -910,16 +1008,6 @@ of the repositories listed at
  Any supporters?  Otherwise will drop.
 
 
-* km/fetch-do-not-free-remote-name (2016-06-14) 1 commit
-  (merged to 'next' on 2016-06-27 at 4bc34c4)
- + builtin/fetch.c: don't free remote->name after fetch
-
- The ownership rule for the piece of memory that hold references to
- be fetched in "git fetch" was screwy, which has been cleaned up.
-
- Will merge to 'master'.
-
-
 * nd/shallow-deepen (2016-06-13) 27 commits
  - fetch, upload-pack: --deepen=N extends shallow boundary by N commits
  - upload-pack: add get_reachable_list()
@@ -963,25 +1051,6 @@ of the repositories listed at
  would think.
 
 
-* jk/send-pack-stdio (2016-06-10) 2 commits
-  (merged to 'next' on 2016-06-27 at 2cfb0ff)
- + write_or_die: remove the unused write_or_whine() function
- + send-pack: use buffered I/O to talk to pack-objects
-
- Code clean-up.
-
- Will merge to 'master'.
-
-
-* pb/commit-editmsg-path (2016-06-09) 1 commit
-  (merged to 'next' on 2016-06-27 at 0f01ce1)
- + builtin/commit.c: memoize git-path for COMMIT_EDITMSG
-
- Code clean-up.
-
- Will merge to 'master'.
-
-
 * jc/attr-more (2016-06-09) 8 commits
  - attr.c: outline the future plans by heavily commenting
  - attr.c: always pass check[] to collect_some_attrs()
@@ -1022,19 +1091,6 @@ of the repositories listed at
  If so, will merge to 'next'.
 
 
-* ew/mboxrd-format-am (2016-06-06) 3 commits
-  (merged to 'next' on 2016-06-28 at ee0a088)
- + am: support --patch-format=mboxrd
- + mailsplit: support unescaping mboxrd messages
- + pretty: support "mboxrd" output format
-
- Teach format-patch and mailsplit (hence "am") how a line that
- happens to begin with "From " in the e-mail message is quoted with
- ">", so that these lines can be restored to their original shape.
-
- Will merge to 'master'.
-
-
 * mh/connect (2016-06-06) 10 commits
  - connect: [host:port] is legacy for ssh
  - connect: move ssh command line preparation to a separate function
@@ -1113,7 +1169,6 @@ of the repositories listed at
  - worktree.c: add is_worktree_locked()
  - worktree.c: add is_main_worktree()
  - worktree.c: add find_worktree()
- (this branch uses nd/worktree-cleanup-post-head-protection.)
 
  "git worktree prune" protected worktrees that are marked as
  "locked" by creating a file in a known location.  "git worktree"
@@ -1123,22 +1178,6 @@ of the repositories listed at
  Need to squash one fixup before merging to 'next'.
 
 
-* jk/upload-pack-hook (2016-06-02) 7 commits
-  (merged to 'next' on 2016-06-28 at e5e5bb6)
- + upload-pack: provide a hook for running pack-objects
- + t1308: do not get fooled by symbolic links to the source tree
- + config: add a notion of "scope"
- + config: return configset value for current_config_ functions
- + config: set up config_source for command-line config
- + git_config_parse_parameter: refactor cleanup code
- + git_config_with_options: drop "found" counting
-
- Allow a custom "git upload-pack" replacement to respond to
- "fetch/clone" request.
-
- Will merge to 'master'.
-
-
 * sb/submodule-default-paths (2016-06-20) 5 commits
  - completion: clone can recurse into submodules
  - clone: add --init-submodule=<pathspec> switch
@@ -1151,17 +1190,6 @@ of the repositories listed at
  the command line of "git clone" that clones the superproject.
 
 
-* ep/http-curl-trace (2016-05-24) 2 commits
-  (merged to 'next' on 2016-06-27 at c290515)
- + imap-send.c: introduce the GIT_TRACE_CURL enviroment variable
- + http.c: implement the GIT_TRACE_CURL environment variable
-
- HTTP transport gained an option to produce more detailed debugging
- trace.
-
- Will merge to 'master'.
-
-
 * jc/attr (2016-05-25) 18 commits
  - attr: support quoting pathname patterns in C style
  - attr: expose validity check for attribute names
@@ -1223,21 +1251,6 @@ of the repositories listed at
  not thread-ready.
 
 
-* nd/worktree-cleanup-post-head-protection (2016-05-24) 6 commits
-  (merged to 'next' on 2016-06-28 at 55414fa)
- + worktree: simplify prefixing paths
- + worktree: avoid 0{40}, too many zeroes, hard to read
- + worktree.c: use is_dot_or_dotdot()
- + git-worktree.txt: keep subcommand listing in alphabetical order
- + worktree.c: rewrite mark_current_worktree() to avoid strbuf
- + completion: support git-worktree
- (this branch is used by nd/worktree-lock.)
-
- Further preparatory clean-up for "worktree" feature.
-
- Will merge to 'master'.
-
-
 * mh/split-under-lock (2016-06-13) 33 commits
  - lock_ref_sha1_basic(): only handle REF_NODEREF mode
  - commit_ref_update(): remove the flags parameter
@@ -1321,9 +1334,8 @@ of the repositories listed at
  This also really needs review.
 
 
-* dt/index-helper (2016-06-27) 21 commits
- - unix-socket.c: add stub implementation when unix sockets are not supported
- - index-helper: indexhelper.exitafter config
+* dt/index-helper (2016-07-06) 21 commits
+ - index-helper: indexhelper.exitAfter config
  - trace: measure where the time is spent in the index-heavy operations
  - index-helper: optionally automatically run
  - index-helper: autorun mode
@@ -1340,6 +1352,7 @@ of the repositories listed at
  - daemonize(): set a flag before exiting the main process
  - index-helper: add --strict
  - index-helper: new daemon for caching index and related stuff
+ - unix-socket.c: add stub implementation when unix sockets are not supported
  - pkt-line: add gentle version of packet_write
  - read-cache: allow to keep mmap'd memory after reading
  - read-cache.c: fix constness of verify_hdr()
@@ -1349,8 +1362,8 @@ of the repositories listed at
  optionally interface with the watchman daemon to further reduce the
  refresh cost.
 
- Expecting a reroll.
($gmane/298331, $gmane/298319).
+ Is everybody happy with this version?
At v14.
 
 
 * jc/bundle (2016-03-03) 6 commits