What's cooking (2014/09 #06)
[alt-git.git] / whats-cooking.txt
blob9711505620e71e1fe15094bca4e61ba154950735
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 Subject: What's cooking in git.git (Sep 2014, #06; Wed, 24)
4 X-master-at: 97b8860c071898d9e162678ea1035a8ced2f8b1f
5 X-next-at: b8dfbefaa44d81ef4d724788e2b9e387ee7a8bf8
7 What's cooking in git.git (Sep 2014, #06; Wed, 24)
8 --------------------------------------------------
10 Here are the topics that have been cooking.  Commits prefixed with
11 '-' are only in 'pu' (proposed updates) while commits prefixed with
12 '+' are in 'next'.
14 You can find the changes described here in the integration branches
15 of the repositories listed at
17     http://git-blame.blogspot.com/p/git-public-repositories.html
19 --------------------------------------------------
20 [New Topics]
22 * nd/archive-pathspec (2014-09-22) 1 commit
23  - archive: support filtering paths with glob
25  "git archive" learned to filter what gets archived with pathspec.
27  Will merge to 'next'.
30 * rs/graph-simplify (2014-09-22) 1 commit
31   (merged to 'next' on 2014-09-23 at 72969e2)
32  + graph: simplify graph_padding_line()
34  Will merge to 'master'.
37 * rs/remote-simplify (2014-09-22) 1 commit
38   (merged to 'next' on 2014-09-23 at 176e316)
39  + remote: simplify match_name_with_pattern() using strbuf
41  Will merge to 'master'.
44 * sb/merge-recursive-copy-paste-fix (2014-09-23) 2 commits
45   (merged to 'next' on 2014-09-24 at b8dfbef)
46  + merge-recursive: remove stale commented debugging code
47  + merge-recursive: fix copy-paste mistake
49  "git merge-recursive" had a small bug that could have made it
50  mishandle "one side deleted, the other side did not touch it" in a
51  rare corner case, where the other side actually did touch to cause
52  the blob object names to be different but both blobs before and
53  after the change normalize to the same (e.g. correcting mistake to
54  check in a blob with CRLF line endings by replacing it with another
55  blob that records the same contents with LF line endings).
57  Will merge to 'master'.
60 * sb/t6031-typofix (2014-09-22) 1 commit
61   (merged to 'next' on 2014-09-23 at aec57a9)
62  + t6031-test-merge-recursive: do not forget to add file to be committed
64  Will merge to 'master'.
67 * sb/t9300-typofix (2014-09-22) 1 commit
68   (merged to 'next' on 2014-09-23 at aa519bd)
69  + t9300-fast-import: fix typo in test description
71  Will merge to 'master'.
74 * so/rebase-doc-fork-point (2014-09-22) 1 commit
75  - Documentation/git-rebase.txt: document when --fork-point is auto-enabled
78 * sk/tag-contains-wo-recursion (2014-09-23) 1 commit
79  - t7004: give the test a bit more stack space
82 * jt/itimer-autoconf (2014-08-29) 3 commits
83  - autoconf: check for setitimer()
84  - autoconf: check for struct itimerval
85  - git-compat-util.h: add missing semicolon after struct itimerval
86  (this branch is used by jt/timer-settime.)
88  Split the early part of jt/timer-settime topic out into a topic.
90  Will merge to 'next'.
92 --------------------------------------------------
93 [Stalled]
95 * rs/ref-transaction (2014-09-12) 20 commits
96  . remote rm/prune: print a message when writing packed-refs fails
97  . ref_transaction_commit: bail out on failure to remove a ref
98  . lockfile: remove unable_to_lock_error
99  . refs.c: do not permit err == NULL
100  . for-each-ref.c: improve message before aborting on broken ref
101  . refs.c: fix handling of badly named refs
102  . branch -d: avoid repeated symref resolution
103  . refs.c: change resolve_ref_unsafe reading argument to be a flags field
104  . refs.c: make write_ref_sha1 static
105  . fetch.c: change s_update_ref to use a ref transaction
106  . refs.c: ref_transaction_commit: distinguish name conflicts from other errors
107  . refs.c: pass a skip list to name_conflict_fn
108  . refs.c: call lock_ref_sha1_basic directly from commit
109  . refs.c: move the check for valid refname to lock_ref_sha1_basic
110  . rename_ref: don't ask read_ref_full where the ref came from
111  . refs.c: pass the ref log message to _create/delete/update instead of _commit
112  . refs.c: add an err argument to delete_ref_loose
113  . wrapper.c: add a new function unlink_or_msg
114  . wrapper.c: remove/unlink_or_warn: simplify, treat ENOENT as success
115  . mv test: recreate mod/ directory instead of relying on stale copy
117  Rerolled and was asked to wait.  Seems to break HEAD reflog
118  upon "checkout HEAD^0".
120  Expecting another reroll.
123 * tr/remerge-diff (2014-09-08) 8 commits
124  - log --remerge-diff: show what the conflict resolution changed
125  - name-hash: allow dir hashing even when !ignore_case
126  - merge-recursive: allow storing conflict hunks in index
127  - merge_diff_mode: fold all merge diff variants into an enum
128  - combine-diff: do not pass revs->dense_combined_merges redundantly
129  - merge-recursive: -Xindex-only to leave worktree unchanged
130  - merge-recursive: internal flag to avoid touching the worktree
131  - merge-recursive: remove dead conditional in update_stages()
133  "log -p" output learns a new way to let users inspect a merge
134  commit by showing the differences between the automerged result
135  with conflicts the person who recorded the merge would have seen
136  and the final conflict resolution that was recorded in the merge.
138  Review comments sent.
141 * hv/submodule-config (2014-06-30) 4 commits
142  - do not die on error of parsing fetchrecursesubmodules option
143  - use new config API for worktree configurations of submodules
144  - extract functions for submodule config set and lookup
145  - implement submodule config cache for lookup of submodule names
147  Kicked back to 'pu' per request ($gmane/255610).
150 * jt/timer-settime (2014-08-29) 6 commits
151  - use timer_settime() for new platforms
152  - autoconf: check for timer_settime()
153  - autoconf: check for struct itimerspec
154  - autoconf: check for struct sigevent
155  - autoconf: check for struct timespec
156  - autoconf: check for timer_t
157  (this branch uses jt/itimer-autoconf.)
159  Reviewed, discussed and wanting for a reroll.
162 * jk/pack-bitmap (2014-08-04) 1 commit
163  - pack-bitmap: do not use gcc packed attribute
165  Hold, waiting for Karsten's replacement.
168 * cb/mergetool-difftool (2014-07-21) 2 commits
169  - difftool: don't assume that default sh is sane
170  - mergetool: don't require a work tree for --tool-help
172  Update the way the "difftool --help" shows the help message that is
173  shared with the "mergetool" to reduce one shell dependency.
175  Will be rerolled.
178 * rr/mergetool-temporary-filename-tweak (2014-08-21) 1 commit
179  - Allow the user to change the temporary file name for mergetool
181  Needs rerolling (new paragraph in doc seems to be in a wrong place)
184 * jk/tag-contains (2014-06-30) 8 commits
185  . perf: add tests for tag --contains
186  . tag: use commit_contains
187  . commit: provide a fast multi-tip contains function
188  . string-list: add pos to iterator callback
189  . add functions for memory-efficient bitmaps
190  . paint_down_to_common: use prio_queue
191  . tag: factor out decision to stream tags
192  . tag: allow --sort with -n
194  Expecting a reroll.
197 * ab/add-interactive-show-diff-func-name (2014-05-12) 2 commits
198  - SQUASH??? git-add--interactive: Preserve diff heading when splitting hunks
199  - git-add--interactive: Preserve diff heading when splitting hunks
201  Waiting for a reroll.
204 * jn/gitweb-utf8-in-links (2014-05-27) 1 commit
205  - gitweb: Harden UTF-8 handling in generated links
207  $gmane/250758?
210 * rh/prompt-tests (2014-06-05) 11 commits
211  - t9904: new __git_ps1 tests for Zsh
212  - test-lib: make it possible to override how test code is eval'd
213  - lib-prompt-tests.sh: add variable for string that encodes percent in PS1
214  - lib-prompt-tests.sh: put all tests inside a function
215  - t9903: move prompt tests to a new lib-prompt-tests.sh file
216  - t9903: move PS1 color code variable definitions to lib-bash.sh
217  - t9903: include "Bash" in test names via new $shellname var
218  - t9903: run pc mode tests again with PS1 expansion disabled
219  - t9903: move test name prefix to a separate variable
220  - t9903: put the Bash pc mode prompt test cases in a function
221  - t9903: remove Zsh test from the suite of Bash prompt tests
223  Expecting a reroll to limit the damage to test_eval_; also reported
224  to be broken with older zsh that are still in the field ($gmane/251231).
227 * ss/userdiff-update-csharp-java (2014-06-02) 2 commits
228  - userdiff: support Java try keyword
229  - userdiff: support C# async methods and correct C# keywords
231  Reviews sent; waiting for a response.
234 * bg/rebase-off-of-previous-branch (2014-04-16) 1 commit
235  - git-rebase: print name of rev when using shorthand
237  Teach "git rebase -" to report the concrete name of the branch
238  (i.e. the previous one).
240  But it stops short and does not do the same for "git rebase @{-1}".
241  Expecting a reroll.
244 * jk/makefile (2014-02-05) 16 commits
245  . FIXUP
246  . move LESS/LV pager environment to Makefile
247  . Makefile: teach scripts to include make variables
248  . FIXUP
249  . Makefile: auto-build C strings from make variables
250  . Makefile: drop *_SQ variables
251  . FIXUP
252  . Makefile: add c-quote helper function
253  . Makefile: introduce sq function for shell-quoting
254  . Makefile: always create files via make-var
255  . Makefile: store GIT-* sentinel files in MAKE/
256  . Makefile: prefer printf to echo for GIT-*
257  . Makefile: use tempfile/mv strategy for GIT-*
258  . Makefile: introduce make-var helper function
259  . Makefile: fix git-instaweb dependency on gitweb
260  . Makefile: drop USE_GETTEXT_SCHEME from GIT-CFLAGS
262  Simplify the Makefile rules and macros that exist primarily for
263  quoting purposes, and make it easier to robustly express the
264  dependency rules.
266  Expecting a reroll.
269 * po/everyday-doc (2014-01-27) 1 commit
270  - Make 'git help everyday' work
272  This may make the said command to emit something, but the source is
273  not meant to be formatted into a manual pages to begin with, and
274  also its contents are a bit stale.  It may be a good first step in
275  the right direction, but needs more work to at least get the
276  mark-up right before public consumption.
278  Waiting for a reroll (thread ending at $gmane/254746)
281 * rb/merge-prepare-commit-msg-hook (2014-01-10) 4 commits
282  - merge: drop unused arg from abort_commit method signature
283  - merge: make prepare_to_commit responsible for write_merge_state
284  - t7505: ensure cleanup after hook blocks merge
285  - t7505: add missing &&
287  Expose more merge states (e.g. $GIT_DIR/MERGE_MODE) to hooks that
288  run during "git merge".  The log message stresses too much on one
289  hook, prepare-commit-msg, but it would equally apply to other hooks
290  like post-merge, I think.
292  Waiting for a reroll.
295 * jc/graph-post-root-gap (2013-12-30) 3 commits
296  - WIP: document what we want at the end
297  - graph: remove unused code a bit
298  - graph: stuff the current commit into graph->columns[]
300  This was primarily a RFH ($gmane/239580).
303 * tg/perf-lib-test-perf-cleanup (2013-09-19) 2 commits
304  - perf-lib: add test_perf_cleanup target
305  - perf-lib: split starting the test from the execution
307  Add test_perf_cleanup shell function to the perf suite, that allows
308  the script writers to define a test with a clean-up action.
310  Will hold.
313 * jc/show-branch (2014-03-24) 5 commits
314  - show-branch: use commit slab to represent bitflags of arbitrary width
315  - show-branch.c: remove "all_mask"
316  - show-branch.c: abstract out "flags" operation
317  - show-branch.c: lift all_mask/all_revs to a global static
318  - show-branch.c: update comment style
320  Waiting for the final step to lift the hard-limit before sending it out.
322 --------------------------------------------------
323 [Cooking]
325 * jk/faster-name-conflicts (2014-09-12) 1 commit
326   (merged to 'next' on 2014-09-19 at 34d2840)
327  + refs: speed up is_refname_available
329  Optimize the check to see if a ref $F can be created by making sure
330  no existing ref has $F/ as its prefix, which especially matters in
331  a repository with a large number of existing refs.
333  Will merge to 'master'.
336 * jk/write-packed-refs-via-stdio (2014-09-10) 1 commit
337   (merged to 'next' on 2014-09-19 at f1e94fb)
338  + refs: write packed_refs file using stdio
340  Optimize the code path to write out the packed-refs file, which
341  especially matters in a repository with a large number of refs.
343  Will merge to 'master'.
346 * da/include-compat-util-first-in-c (2014-09-15) 4 commits
347  - SQUASH???
348  - check-headers: add header usage checks for .c files
349  - Makefile: add check-headers target
350  - cleanups: ensure that git-compat-util.h is included first
353 * da/rev-parse-verify-quiet (2014-09-19) 4 commits
354   (merged to 'next' on 2014-09-23 at 5ed184a)
355  + stash: prefer --quiet over shell redirection of the standard error stream
356  + refs: make rev-parse --quiet actually quiet
357  + t1503: use test_must_be_empty
358  + Documentation: a note about stdout for git rev-parse --verify --quiet
360  "rev-parse --verify --quiet $name" is meant to quietly exit with a
361  non-zero status when $name is not a valid object name, but still
362  gave error messages in some cases.
364  Will merge to 'master'.
367 * hj/pretty-naked-decoration (2014-09-18) 1 commit
368   (merged to 'next' on 2014-09-23 at fb699c4)
369  + pretty: add %D format specifier
371  The pretty-format specifier "%d", which expanded to " (tagname)"
372  for a tagged commit, gained a cousin "%D" that just gives the
373  "tagname" without frills.
375  Will merge to 'master'.
378 * jc/ignore-sigpipe-while-running-hooks (2014-09-16) 1 commit
379   (merged to 'next' on 2014-09-19 at 7abf293)
380  + receive-pack: allow hooks to ignore its standard input stream
382  pre- and post-receive hooks are no longer required to read all
383  their inputs.
385  Will merge to 'master'.
388 * jk/close-stderr-of-credential-cache-deamon (2014-09-16) 1 commit
389   (merged to 'next' on 2014-09-19 at 51ba3be)
390  + credential-cache: close stderr in daemon process
392  Plug fd leaks.
394  Will merge to 'master'.
397 * jk/mbox-from-line (2014-09-22) 2 commits
398   (merged to 'next' on 2014-09-23 at 506b89b)
399  + mailinfo: work around -Wstring-plus-int warning
400   (merged to 'next' on 2014-09-19 at 314af77)
401  + mailinfo: make ">From" in-body header check more robust
403  Some MUAs mangled a line in a message that begins with "From " to
404  ">From " when writing to a mailbox file and feeding such an input
405  to "git am" used to lose such a line.
407  Will merge to 'master'.
410 * jk/prune-packed-server-info (2014-09-15) 4 commits
411   (merged to 'next' on 2014-09-19 at 5e6c398)
412  + repack: call prune_packed_objects() and update_server_info() directly
413  + server-info: clean up after writing info/packs
414  + make update-server-info more robust
415  + prune-packed: fix minor memory leak
417  Code cleanup.
419  Will merge to 'master'.
422 * pr/use-default-sigpipe-setting (2014-09-22) 2 commits
423   (merged to 'next' on 2014-09-24 at 2d678ed)
424  + mingw.h: add dummy functions for sigset_t operations
425  + unblock and unignore SIGPIPE
427  We used to get confused when a process called us with SIGPIPE
428  ignored; we do want to die with SIGPIPE when the output is not
429  read by default, and do ignore the signal when appropriate.
431  Will merge to 'master'.
434 * rs/realloc-array (2014-09-18) 2 commits
435   (merged to 'next' on 2014-09-23 at a5bb3a6)
436  + use REALLOC_ARRAY for changing the allocation size of arrays
437  + add macro REALLOC_ARRAY
439  Code cleanup.
441  Will merge to 'master'.
444 * jk/branch-verbose-merged (2014-09-18) 1 commit
445   (merged to 'next' on 2014-09-23 at d940d15)
446  + branch: clean up commit flags after merge-filter walk
448  The "--verbose" option no longer breaks "git branch --merged $it".
450  Will merge to 'master'.
453 * sb/help-unknown-command-sort-fix (2014-09-18) 1 commit
454   (merged to 'next' on 2014-09-23 at 6ab29ed)
455  + help: fix the size passed to qsort
457  Code cleanup.
459  Will merge to 'master'.
462 * jc/hash-object (2014-09-11) 3 commits
463   (merged to 'next' on 2014-09-19 at ea6ac62)
464  + hash-object: add --literally option
465  + hash-object: pass 'write_object' as a flag
466  + hash-object: reduce file-scope statics
467  (this branch is used by jc/hash-object-fsck-tag.)
469  "hash-object" learned a new "--literally" option to hash any random
470  garbage into a loose object, to allow us to create a test data for
471  mechanisms to catch corrupt objects.
473  Will merge to 'master'.
476 * jc/hash-object-fsck-tag (2014-09-12) 2 commits
477   (merged to 'next' on 2014-09-19 at f14a7fe)
478  + t1450: make sure fsck detects a malformed tagger line
479  + Merge branch 'js/fsck-tag-validation' into HEAD
480  (this branch uses jc/hash-object and js/fsck-tag-validation.)
482  Using "hash-object --literally", test one of the new breakages
483  js/fsck-tag-validation topic teaches "fsck" to catch is caught.
485  Will merge to 'master'.
488 * js/fsck-tag-validation (2014-09-12) 6 commits
489   (merged to 'next' on 2014-09-19 at 4a62182)
490  + Make sure that index-pack --strict checks tag objects
491  + Add regression tests for stricter tag fsck'ing
492  + fsck: check tag objects' headers
493  + Make sure fsck_commit_buffer() does not run out of the buffer
494  + fsck_object(): allow passing object data separately from the object itself
495  + Refactor type_from_string() to allow continuing after detecting an error
496  (this branch is used by jc/hash-object-fsck-tag.)
498  Teach "git fsck" to inspect the contents of annotated tag objects.
500  Will merge to 'master'.
503 * mh/lockfile (2014-09-16) 35 commits
504  - get_locked_file_path(): new function
505  - lockfile.c: rename static functions
506  - lockfile: rename LOCK_NODEREF to LOCK_NO_DEREF
507  - commit_locked_index(): extract a function commit_lock_file_to()
508  - trim_last_path_component(): replace last_path_elm()
509  - resolve_symlink(): take a strbuf parameter
510  - resolve_symlink(): use a strbuf for internal scratch space
511  - struct lock_file: change the filename member into a strbuf
512  - commit_lock_file(): use a strbuf to manage temporary space
513  - try_merge_strategy(): use a statically-allocated lock_file object
514  - try_merge_strategy(): remove redundant lock_file allocation
515  - struct lock_file: declare some fields volatile
516  - lockfile: avoid transitory invalid states
517  - git_config_set_multivar_in_file(): avoid call to rollback_lock_file()
518  - dump_marks(): remove a redundant call to rollback_lock_file()
519  - api-lockfile: document edge cases
520  - commit_lock_file(): rollback lock file on failure to rename
521  - commit_lock_file(): if close fails, roll back
522  - commit_lock_file(): die() if called for unlocked lockfile object
523  - commit_lock_file(): inline temporary variable
524  - remove_lock_file(): call rollback_lock_file()
525  - lock_file(): exit early if lockfile cannot be opened
526  - write_packed_entry_fn(): convert cb_data into a (const int *)
527  - prepare_index(): declare return value to be (const char *)
528  - delete_ref_loose(): don't muck around in the lock_file's filename
529  - cache.h: define constants LOCK_SUFFIX and LOCK_SUFFIX_LEN
530  - lockfile.c: document the various states of lock_file objects
531  - lock_file(): always add lock_file object to lock_file_list
532  - hold_lock_file_for_append(): release lock on errors
533  - lockfile: unlock file if lockfile permissions cannot be adjusted
534  - rollback_lock_file(): set fd to -1
535  - rollback_lock_file(): exit early if lock is not active
536  - rollback_lock_file(): do not clear filename redundantly
537  - api-lockfile: expand the documentation
538  - unable_to_lock_die(): rename function from unable_to_lock_index_die()
540  Rerolled, reviews in progress; it seems that we will see another reroll?
543 * nd/multiple-work-trees (2014-09-16) 32 commits
544  - t2025: add a test to make sure grafts is working from a linked checkout
545  - checkout: don't require a work tree when checking out into a new one
546  - git_path(): keep "info/sparse-checkout" per work-tree
547  - count-objects: report unused files in $GIT_DIR/worktrees/...
548  - gc: support prune --worktrees
549  - gc: factor out gc.pruneexpire parsing code
550  - gc: style change -- no SP before closing parenthesis
551  - checkout: clean up half-prepared directories in --to mode
552  - checkout: reject if the branch is already checked out elsewhere
553  - prune: strategies for linked checkouts
554  - checkout: support checking out into a new working directory
555  - use new wrapper write_file() for simple file writing
556  - wrapper.c: wrapper to open a file, fprintf then close
557  - setup.c: support multi-checkout repo setup
558  - setup.c: detect $GIT_COMMON_DIR check_repository_format_gently()
559  - setup.c: convert check_repository_format_gently to use strbuf
560  - setup.c: detect $GIT_COMMON_DIR in is_git_directory()
561  - setup.c: convert is_git_directory() to use strbuf
562  - git-stash: avoid hardcoding $GIT_DIR/logs/....
563  - *.sh: avoid hardcoding $GIT_DIR/hooks/...
564  - git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects
565  - $GIT_COMMON_DIR: a new environment variable
566  - commit: use SEQ_DIR instead of hardcoding "sequencer"
567  - fast-import: use git_path() for accessing .git dir instead of get_git_dir()
568  - reflog: avoid constructing .lock path with git_path
569  - *.sh: respect $GIT_INDEX_FILE
570  - git_path(): be aware of file relocation in $GIT_DIR
571  - path.c: group git_path(), git_pathdup() and strbuf_git_path() together
572  - path.c: rename vsnpath() to do_git_path()
573  - git_snpath(): retire and replace with strbuf_git_path()
574  - path.c: make get_pathname() call sites return const char *
575  - path.c: make get_pathname() return strbuf instead of static buffer
577  A replacement for contrib/workdir/git-new-workdir that does not
578  rely on symbolic links and make sharing of objects and refs safer
579  by making the borrowee and borrowers aware of each other.
581  Rerolled, reviews in progress; it seems that we will see another reroll?
584 * cc/interpret-trailers (2014-09-22) 11 commits
585  - Documentation: add documentation for 'git interpret-trailers'
586  - trailer: add tests for commands in config file
587  - trailer: execute command from 'trailer.<name>.command'
588  - trailer: add tests for "git interpret-trailers"
589  - trailer: add interpret-trailers command
590  - trailer: put all the processing together and print
591  - trailer: parse trailers from file or stdin
592  - trailer: process command line trailer arguments
593  - trailer: read and process config information
594  - trailer: process trailers from input message and arguments
595  - trailer: add data structures and basic functions
597  A new filter to programatically edit the tail end of the commit log
598  messages.
600  Discussion on the topic with Michael Tsirkin who wants to utilize
601  this machinery is going on.  Finally a real functionality review
602  that is very much welcomed ;-).
605 * sp/stream-clean-filter (2014-09-22) 7 commits
606  - sha1_file: don't convert off_t to size_t too early to avoid potential die()
607  - convert: stream from fd to required clean filter to reduce used address space
608  - copy_fd(): do not close the input file descriptor
609  - mmap_limit: introduce GIT_MMAP_LIMIT to allow testing expected mmap size
610  - memory_limit: use git_env_ulong() to parse GIT_ALLOC_LIMIT
611  - config.c: add git_env_ulong() to parse environment variable
612  - convert: drop arguments other than 'path' from would_convert_to_git()
614  Will merge to 'next'.
617 * jc/push-cert (2014-09-17) 23 commits
618   (merged to 'next' on 2014-09-24 at a99f5d8)
619  + signed push: allow stale nonce in stateless mode
620  + signed push: teach smart-HTTP to pass "git push --signed" around
621  + signed push: fortify against replay attacks
622  + signed push: add "pushee" header to push certificate
623  + signed push: remove duplicated protocol info
624  + send-pack: send feature request on push-cert packet
625  + receive-pack: GPG-validate push certificates
626  + push: the beginning of "git push --signed"
627  + pack-protocol doc: typofix for PKT-LINE
628  + gpg-interface: move parse_signature() to where it should be
629  + gpg-interface: move parse_gpg_output() to where it should be
630  + send-pack: clarify that cmds_sent is a boolean
631  + send-pack: refactor inspecting and resetting status and sending commands
632  + send-pack: rename "new_refs" to "need_pack_data"
633  + receive-pack: factor out capability string generation
634  + send-pack: factor out capability string generation
635  + send-pack: always send capabilities
636  + send-pack: refactor decision to send update per ref
637  + send-pack: move REF_STATUS_REJECT_NODELETE logic a bit higher
638  + receive-pack: factor out queueing of command
639  + receive-pack: do not reuse old_sha1[] for other things
640  + receive-pack: parse feature request a bit earlier
641  + receive-pack: do not overallocate command structure
643  Allow "git push" request to be signed, so that it can be verified and
644  audited, using the GPG signature of the person who pushed, that the
645  tips of branches at a public repository really point the commits
646  the pusher wanted to, without having to "trust" the server.
648  Will merge to 'master'.
651 * jc/test-lazy-prereq (2014-06-13) 1 commit
652  - tests: drop GIT_*_TIMING_TESTS environment variable support
654  Test-script clean-up.
656  Will merge to 'next'.
659 * mt/patch-id-stable (2014-06-10) 1 commit
660  - patch-id: change default to stable
662  Teaches "git patch-id" to compute the patch ID that does not change
663  when the files in a single patch is reordered. As this new algorithm
664  is backward incompatible, the last bit to flip it to be the default
665  is left out of 'master' for now.
667  Nobody seems to be jumping up & down requesting this last step,
668  which makes the result somewhat backward incompatible.
669  Will perhaps drop.