What's cooking (2014/05 #04)
[git.git] / whats-cooking.txt
blobd7d6fdd142b5c862434dd3a6ac3ca5e5d1b9e09a
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 Subject: What's cooking in git.git (May 2014, #04; Wed, 21)
4 X-master-at: 4a28f169ad29ba452e0e7bea2583914c10c58322
5 X-next-at: daf83cafd8ed3cb640a2047d5069cdbf9d18e7c0
7 What's cooking in git.git (May 2014, #04; Wed, 21)
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 The tip of the 'master' branch has past v2.0.0-rc4, as there were
15 last minute regressions to be taken care of.  Hopefully we can tag
16 v2.0.0 final soonish.
18 You can find the changes described here in the integration branches
19 of the repositories listed at
21     http://git-blame.blogspot.com/p/git-public-repositories.html
23 --------------------------------------------------
24 [New Topics]
26 * sk/wincred (2014-05-14) 2 commits
27   (merged to 'next' on 2014-05-21 at a3b9ca3)
28  + wincred: avoid overwriting configured variables
29  + wincred: add install target
31  Will keep in 'next' for the remainder of the cycle.
34 * as/pretty-truncate (2014-05-21) 5 commits
35  - pretty.c: format string with truncate respects logOutputEncoding
36  - t4205, t6006: add tests that fail with i18n.logOutputEncoding set
37  - t4205 (log-pretty-format): use `tformat` rather than `format`
38  - t4041, t4205, t6006, t7102: don't hardcode tested encoding value
39  - t4205 (log-pretty-formats): don't hardcode SHA-1 in expected outputs
41  Will merge to 'next' and keep it there for the rest of this cycle.
44 * cc/replace-graft (2014-05-19) 1 commit
45   (merged to 'next' on 2014-05-21 at 7d90c4e)
46  + replace: add --graft option
47  (this branch uses cc/replace-edit.)
49  Will keep in 'next' for the remainder of the cycle.
53 * jk/argv-array-for-child-process (2014-05-15) 7 commits
54   (merged to 'next' on 2014-05-21 at 5b2fa64)
55  + argv-array: drop "detach" code
56  + get_importer: use run-command's internal argv_array
57  + get_exporter: use argv_array
58  + get_helper: use run-command's internal argv_array
59  + git_connect: use argv_array
60  + run_column_filter: use argv_array
61  + run-command: store an optional argv_array
63  Will keep in 'next' for the remainder of the cycle.
66 * jk/diff-files-assume-unchanged (2014-05-15) 1 commit
67   (merged to 'next' on 2014-05-21 at 142d2c8)
68  + run_diff_files: do not look at uninitialized stat data
70  Will keep in 'next' for the remainder of the cycle.
73 * jk/report-fail-to-read-objects-better (2014-05-15) 1 commit
74   (merged to 'next' on 2014-05-21 at 77c89fe)
75  + open_sha1_file: report "most interesting" errno
77  Will keep in 'next' for the remainder of the cycle.
80 * mt/rebase-i-keep-empty-test (2014-05-19) 1 commit
81   (merged to 'next' on 2014-05-21 at d87d266)
82  + rebase --keep-empty -i: add test
84  Will keep in 'next' for the remainder of the cycle.
87 * nd/status-auto-comment-char (2014-05-19) 2 commits
88   (merged to 'next' on 2014-05-21 at f762e62)
89  + commit: allow core.commentChar=auto for character auto selection
90  + config: be strict on core.commentChar
92  Will keep in 'next' for the remainder of the cycle.
95 * rr/rebase-autostash-fix (2014-05-20) 2 commits
96   (merged to 'next' on 2014-05-21 at ca4aa40)
97  + rebase -i: test "Nothing to do" case with autostash
98  + rebase -i: handle "Nothing to do" case with autostash
100  Will keep in 'next' for the remainder of the cycle.
103 * sk/spawn-less-case-insensitively-from-grep-O-i (2014-05-15) 1 commit
104   (merged to 'next' on 2014-05-21 at eb28305)
105  + git grep -O -i: if the pager is 'less', pass the '-I' option
107  Will keep in 'next' for the remainder of the cycle.
110 * sk/windows-unc-path (2014-05-20) 1 commit
111   (merged to 'next' on 2014-05-21 at d1f1350)
112  + Windows: Allow using UNC path for git repository
114  Will keep in 'next' for the remainder of the cycle.
117 * jk/diff-follow-must-take-one-pathspec (2014-05-20) 1 commit
118  - move "--follow needs one pathspec" rule to diff_setup_done
120  Will merge to 'next' and keep it there for the rest of this cycle.
122 --------------------------------------------------
123 [Stalled]
125 * tr/merge-recursive-index-only (2014-02-05) 3 commits
126  - merge-recursive: -Xindex-only to leave worktree unchanged
127  - merge-recursive: internal flag to avoid touching the worktree
128  - merge-recursive: remove dead conditional in update_stages()
129  (this branch is used by tr/remerge-diff.)
131  Will hold.
134 * tr/remerge-diff (2014-02-26) 5 commits
135  . log --remerge-diff: show what the conflict resolution changed
136  . name-hash: allow dir hashing even when !ignore_case
137  . merge-recursive: allow storing conflict hunks in index
138  . revision: fold all merge diff variants into an enum merge_diff_mode
139  . combine-diff: do not pass revs->dense_combined_merges redundantly
140  (this branch uses tr/merge-recursive-index-only.)
142  "log -p" output learns a new way to let users inspect a merge
143  commit by showing the differences between the automerged result
144  with conflicts the person who recorded the merge would have seen
145  and the final conflict resolution that was recorded in the merge.
147  Needs to be rebased, now kb/fast-hashmap topic is in.
150 * jk/makefile (2014-02-05) 16 commits
151  . FIXUP
152  . move LESS/LV pager environment to Makefile
153  . Makefile: teach scripts to include make variables
154  . FIXUP
155  . Makefile: auto-build C strings from make variables
156  . Makefile: drop *_SQ variables
157  . FIXUP
158  . Makefile: add c-quote helper function
159  . Makefile: introduce sq function for shell-quoting
160  . Makefile: always create files via make-var
161  . Makefile: store GIT-* sentinel files in MAKE/
162  . Makefile: prefer printf to echo for GIT-*
163  . Makefile: use tempfile/mv strategy for GIT-*
164  . Makefile: introduce make-var helper function
165  . Makefile: fix git-instaweb dependency on gitweb
166  . Makefile: drop USE_GETTEXT_SCHEME from GIT-CFLAGS
168  Simplify the Makefile rules and macros that exist primarily for
169  quoting purposes, and make it easier to robustly express the
170  dependency rules.
172  Expecting a reroll.
175 * po/everyday-doc (2014-01-27) 1 commit
176  - Make 'git help everyday' work
178  This may make the said command to emit something, but the source is
179  not meant to be formatted into a manual pages to begin with, and
180  also its contents are a bit stale.  It may be a good first step in
181  the right direction, but needs more work to at least get the
182  mark-up right before public consumption.
184  Will hold.
187 * jk/branch-at-publish-rebased (2014-01-17) 5 commits
188  . t1507 (rev-parse-upstream): fix typo in test title
189  . implement @{publish} shorthand
190  . branch_get: provide per-branch pushremote pointers
191  . branch_get: return early on error
192  . sha1_name: refactor upstream_mark
194  Give an easier access to the tracking branches from "other" side in
195  a triangular workflow by introducing B@{publish} that works in a
196  similar way to how B@{upstream} does.
198  Meant to be used as a basis for whatever Ram wants to build on.
200  Ejected from 'pu' to unclutter.
203 * fc/publish-vs-upstream (2014-04-21) 8 commits
204  . sha1_name: add support for @{publish} marks
205  . sha1_name: simplify track finding
206  . sha1_name: cleanup interpret_branch_name()
207  . branch: display publish branch
208  . push: add --set-publish option
209  . branch: add --set-publish-to option
210  . Add concept of 'publish' branch
211  . t5516 (fetch-push): fix test restoration
213  Add branch@{publish}; it seems that this is somewhat different from
214  Ram and Peff started working on.  At least the tip needs to be
215  rerolled not to squat on @{p} which @{push} and possibly @{pull}
216  may want to share.
218  Ejected from 'pu' to unclutter.
221 * rb/merge-prepare-commit-msg-hook (2014-01-10) 4 commits
222  - merge: drop unused arg from abort_commit method signature
223  - merge: make prepare_to_commit responsible for write_merge_state
224  - t7505: ensure cleanup after hook blocks merge
225  - t7505: add missing &&
227  Expose more merge states (e.g. $GIT_DIR/MERGE_MODE) to hooks that
228  run during "git merge".  The log message stresses too much on one
229  hook, prepare-commit-msg, but it would equally apply to other hooks
230  like post-merge, I think.
232  Waiting for a reroll.
235 * jl/submodule-recursive-checkout (2013-12-26) 5 commits
236  - Teach checkout to recursively checkout submodules
237  - submodule: teach unpack_trees() to update submodules
238  - submodule: teach unpack_trees() to repopulate submodules
239  - submodule: teach unpack_trees() to remove submodule contents
240  - submodule: prepare for recursive checkout of submodules
242  An RFCv2 exists ($gmane/241455) with sizable review comments.
243  Expecting a reroll.
246 * jc/graph-post-root-gap (2013-12-30) 3 commits
247  - WIP: document what we want at the end
248  - graph: remove unused code a bit
249  - graph: stuff the current commit into graph->columns[]
251  This was primarily a RFH ($gmane/239580).
254 * np/pack-v4 (2013-09-18) 90 commits
255  . packv4-parse.c: add tree offset caching
256  . t1050: replace one instance of show-index with verify-pack
257  . index-pack, pack-objects: allow creating .idx v2 with .pack v4
258  . unpack-objects: decode v4 trees
259  . unpack-objects: allow to save processed bytes to a buffer
260  - ...
262  Nico and Duy advancing the eternal vaporware pack-v4.  This is here
263  primarily for wider distribution of the preview edition.
265  Needs to be rebased, now the pack-bitmap series is in.
268 * tg/perf-lib-test-perf-cleanup (2013-09-19) 2 commits
269  - perf-lib: add test_perf_cleanup target
270  - perf-lib: split starting the test from the execution
272  Add test_perf_cleanup shell function to the perf suite, that allows
273  the script writers to define a test with a clean-up action.
275  Will hold.
278 * jc/show-branch (2014-03-24) 5 commits
279  - show-branch: use commit slab to represent bitflags of arbitrary width
280  - show-branch.c: remove "all_mask"
281  - show-branch.c: abstract out "flags" operation
282  - show-branch.c: lift all_mask/all_revs to a global static
283  - show-branch.c: update comment style
285  Waiting for the final step to lift the hard-limit before sending it out.
287 --------------------------------------------------
288 [Cooking]
290 * ab/add-interactive-show-diff-func-name (2014-05-12) 2 commits
291  - SQUASH??? git-add--interactive: Preserve diff heading when splitting hunks
292  - git-add--interactive: Preserve diff heading when splitting hunks
294  Waiting for a reroll.
297 * jk/do-not-run-httpd-tests-as-root (2014-05-12) 1 commit
298   (merged to 'next' on 2014-05-21 at 676392b)
299  + t/lib-httpd: require SANITY prereq
301  Will keep in 'next' for the remainder of the cycle.
304 * jk/index-pack-report-missing (2014-05-12) 1 commit
305   (merged to 'next' on 2014-05-14 at 72d40e1)
306  + index-pack: distinguish missing objects from type errors
308  Will keep in 'next' for the remainder of the cycle.
311 * tb/unicode-6.3-zero-width (2014-05-12) 2 commits
312   (merged to 'next' on 2014-05-14 at 08e0171)
313  + utf8: make it easier to auto-update git_wcwidth()
314  + utf8.c: use a table for double_width
316  Update the logic to compute the display width needed for utf8
317  strings and allow us to more easily maintain the tables used in
318  that logic.
320  We may want to let the users choose if codepoints with ambiguous
321  widths are treated as a double or single width in a follow-up patch.
323  Will keep in 'next' for the remainder of the cycle.
326 * mk/show-s-no-extra-blank-line-for-merges (2014-05-15) 1 commit
327   (merged to 'next' on 2014-05-21 at 3b98b35)
328  + git-show: fix 'git show -s' to not add extra terminator after merge commit
330  Will keep in 'next' for the remainder of the cycle.
333 * wk/doc-clarify-upstream (2014-05-13) 1 commit
334   (merged to 'next' on 2014-05-14 at 6c8fb52)
335  + Documentation: mention config sources for @{upstream}
337  Will keep in 'next' for the remainder of the cycle.
340 * dk/raise-core-deltabasecachelimit (2014-05-06) 1 commit
341   (merged to 'next' on 2014-05-12 at 97ec92a)
342  + Bump core.deltaBaseCacheLimit to 96m
344  The original 16 MiB limit for the in-core delta-base-cache
345  introduced in 18bdec11 (Limit the size of the new delta_base_cache,
346  2007-03-19) is turning too small.
348  Will keep in 'next' for the remainder of the cycle.
351 * fc/status-printf-squelch-format-zero-length-warnings (2014-05-07) 1 commit
352   (merged to 'next' on 2014-05-12 at 6b04e23)
353  + silence a bunch of format-zero-length warnings
355  Will keep in 'next' for the remainder of the cycle.
358 * jk/grep-tell-run-command-to-cd-when-running-pager (2014-05-07) 1 commit
359   (merged to 'next' on 2014-05-12 at 065cb22)
360  + grep: use run-command's "dir" option for --open-files-in-pager
362  Will keep in 'next' for the remainder of the cycle.
365 * jk/squelch-compiler-warning-from-funny-error-macro (2014-05-06) 2 commits
366   (merged to 'next' on 2014-05-12 at d9daf8d)
367  + let clang use the constant-return error() macro
368  + inline constant return from error() function
370  Will keep in 'next' for the remainder of the cycle.
373 * rs/reflog-exists (2014-05-08) 2 commits
374   (merged to 'next' on 2014-05-12 at 24a1d01)
375  + checkout.c: use ref_exists instead of file_exist
376  + refs.c: add new functions reflog_exists and delete_reflog
378  Will keep in 'next' for the remainder of the cycle.
381 * tg/tag-state-tag-name-in-editor-hints (2014-05-07) 1 commit
382   (merged to 'next' on 2014-05-12 at 0b7db32)
383  + builtin/tag.c: show tag name to hint in the message editor
385  Will keep in 'next' for the remainder of the cycle.
388 * sk/submodules-absolute-path-on-windows (2014-05-08) 1 commit
389   (merged to 'next' on 2014-05-14 at 83a05d9)
390  + Revert "submodules: fix ambiguous absolute paths under Windows"
392  Will keep in 'next' for the remainder of the cycle.
395 * jn/contrib-remove-diffall (2014-05-09) 1 commit
396   (merged to 'next' on 2014-05-12 at 416009e)
397  + contrib: remove git-diffall
399  Spring cleaning of contrib/.
401  Will keep in 'next' for the remainder of the cycle.
404 * jn/contrib-remove-vim (2014-05-09) 1 commit
405   (merged to 'next' on 2014-05-12 at 9e727c8)
406  + contrib: remove vim support instructions
408  Spring cleaning of contrib/.
410  Will keep in 'next' for the remainder of the cycle.
413 * ss/howto-manage-trunk (2014-05-09) 8 commits
414  - SQUASH describe what the picture shows
415  - SQUASH minor typographic fix
416  - SQUASH clarify the informal description of 'trunk'
417  - SQUASH typeset literal commands with `git command`
418  - SQUASH use a better URL
419  - SQUASH mark-up fix
420  - SQUASH typofix
421  - How to keep a project's canonical history correct.
423  Will squash and then merge to 'next'.
426 * wg/svn-fe-style-fixes (2014-05-12) 1 commit
427   (merged to 'next' on 2014-05-12 at 88c0e0d)
428  + svn-fe: conform to pep8
430  Will keep in 'next' for the remainder of the cycle.
433 * bg/strbuf-trim (2014-05-06) 2 commits
434   (merged to 'next' on 2014-05-07 at 978f378)
435  + api-strbuf.txt: add docs for _trim and _ltrim
436  + strbuf: use _rtrim and _ltrim in strbuf_trim
438  Will keep in 'next' for the remainder of the cycle.
441 * cb/byte-order (2014-05-02) 2 commits
442   (merged to 'next' on 2014-05-07 at f55c040)
443  + compat/bswap.h: restore preference __BIG_ENDIAN over BIG_ENDIAN
444  + compat/bswap.h: detect endianness on more platforms that don't use BYTE_ORDER
446  Compatibility enhancement for Solaris.
448  Will keep in 'next' for the remainder of the cycle.
451 * dt/api-doc-setup-gently (2014-04-30) 1 commit
452   (merged to 'next' on 2014-05-07 at 6054b08)
453  + docs: document RUN_SETUP_GENTLY and clarify RUN_SETUP
455  Will keep in 'next' for the remainder of the cycle.
458 * dt/merge-recursive-case-insensitive (2014-05-08) 2 commits
459   (merged to 'next' on 2014-05-12 at 820d524)
460  + mv: allow renaming to fix case on case insensitive filesystems
461  + merge-recursive.c: fix case-changing merge bug
463  On a case insensitive filesystem, merge-recursive incorrectly
464  deleted the file that is to be renamed to a name that is the same
465  except for case differences.
467  Will keep in 'next' for the remainder of the cycle.
470 * ew/config-protect-mode (2014-05-06) 1 commit
471   (merged to 'next' on 2014-05-07 at 8443093)
472  + config: preserve config file permissions on edits
474  Will keep in 'next' for the remainder of the cycle.
477 * fc/rerere-conflict-style (2014-04-30) 1 commit
478   (merged to 'next' on 2014-05-07 at bde7fd0)
479  + rerere: fix for merge.conflictstyle
481  Will keep in 'next' for the remainder of the cycle.
484 * jc/coding-guidelines (2014-05-20) 9 commits
485  - CodingGuidelines: avoid "test <cond> -a/-o <cond>"
486   (merged to 'next' on 2014-05-12 at e1fcf62)
487  + CodingGuidelines: on splitting a long line
488  + CodingGuidelines: on comparison
489  + CodingGuidelines: do not call the conditional statement "if()"
490  + CodingGuidelines: give an example for shell function preamble
491  + CodingGuidelines: give an example for control statements
492  + CodingGuidelines: give an example for redirection
493  + CodingGuidelines: give an example for case/esac statement
494  + CodingGuidelines: once it is in, it is not worth the code churn
496  Will merge to 'next' and keep it there for the rest of this cycle.
499 * jd/subtree (2014-05-13) 6 commits
500   (merged to 'next' on 2014-05-14 at 977db74)
501  + contrib/subtree: allow adding an annotated tag
502   (merged to 'next' on 2014-05-07 at 81b375d)
503  + contrib/subtree/Makefile: clean up rule for "clean"
504  + contrib/subtree/Makefile: clean up rules to generate documentation
505  + contrib/subtree/Makefile: s/libexecdir/gitexecdir/
506  + contrib/subtree/Makefile: use GIT-VERSION-FILE
507  + contrib/subtree/Makefile: scrap unused $(gitdir)
509  Will keep in 'next' for the remainder of the cycle.
512 * jk/commit-date-approxidate (2014-05-02) 4 commits
513   (merged to 'next' on 2014-05-07 at 7ec8f7d)
514  + commit: accept more date formats for "--date"
515  + commit: print "Date" line when the user has set date
516  + pretty: make show_ident_date public
517  + commit: use split_ident_line to compare author/committer
519  Will keep in 'next' for the remainder of the cycle.
522 * mm/pager-less-sans-S (2014-05-07) 1 commit
523   (merged to 'next' on 2014-05-07 at 66ce999)
524  + pager: remove 'S' from $LESS by default
526  Will keep in 'next' for the remainder of the cycle.
529 * sk/msvc-dynlink-crt (2014-05-06) 1 commit
530   (merged to 'next' on 2014-05-07 at 20f4839)
531  + MSVC: link dynamically to the CRT
533  Will keep in 'next' for the remainder of the cycle.
536 * cc/replace-edit (2014-05-19) 10 commits
537   (merged to 'next' on 2014-05-19 at fcdd83f)
538  + Documentation: replace: describe new --edit option
539  + replace: add --edit to usage string
540  + replace: add tests for --edit
541  + replace: die early if replace ref already exists
542  + replace: refactor checking ref validity
543  + replace: make sure --edit results in a different object
544   (merged to 'next' on 2014-05-12 at 71449bf)
545  + replace: add --edit option
546  + replace: factor object resolution out of replace_object
547  + replace: use OPT_CMDMODE to handle modes
548  + replace: refactor command-mode determination
549  (this branch is used by cc/replace-graft.)
551  "git replace" learns a new "--edit" option.
553  Will keep in 'next' for the remainder of the cycle.
556 * da/imap-send-use-credential-helper (2014-04-29) 1 commit
557   (merged to 'next' on 2014-05-12 at b0698a5)
558  + imap-send: use git-credential
560  "git imap-send" learns to ask the credential helper for
561  authentication material.
563  Will keep in 'next' for the remainder of the cycle.
566 * dk/blame-reorg (2014-04-28) 1 commit
567   (merged to 'next' on 2014-05-14 at 354a0e3)
568  + blame: large-scale performance rewrite
570  Will keep in 'next' for the remainder of the cycle.
573 * je/pager-do-not-recurse (2014-04-28) 1 commit
574   (merged to 'next' on 2014-05-12 at 32de470)
575  + pager: do allow spawning pager recursively
577  We used to unconditionally disabled the pager in the pager process
578  we spawn to feed out output, but that prevents people who want to
579  run less within less from doing so.
581  Will keep in 'next' for the remainder of the cycle.
584 * jk/commit-C-pick-empty (2014-04-28) 1 commit
585   (merged to 'next' on 2014-05-12 at c187e1e)
586  + commit: do not complain of empty messages from -C
588  "git commit --allow-empty-message -C $commit" did not work when the
589  commit did not have any log message.
591  Will keep in 'next' for the remainder of the cycle.
594 * jk/utf8-switch-between-nfd-and-nfc (2014-04-29) 1 commit
595   (merged to 'next' on 2014-05-12 at 948823c)
596  + t3910: show failure of core.precomposeunicode with decomposed filenames
598  Document a known breakage with a test.
600  Will keep in 'next' for the remainder of the cycle.
603 * mt/send-email-cover-to-cc (2014-04-29) 2 commits
604   (merged to 'next' on 2014-05-12 at b696006)
605  + test/send-email: to-cover, cc-cover tests
606  + git-send-email: two new options: to-cover, cc-cover
608  Will keep in 'next' for the remainder of the cycle.
611 * nd/split-index (2014-04-29) 33 commits
612  - SQUASH???
613  - t1700: new tests for split-index mode
614  - t2104: make sure split index mode is off for the version test
615  - read-cache: force split index mode with GIT_TEST_SPLIT_INDEX
616  - read-tree: note about dropping split-index mode or index version
617  - read-tree: force split-index mode off on --index-output
618  - rev-parse: add --shared-index-path to get shared index path
619  - update-index --split-index: do not split if $GIT_DIR is read only
620  - update-index: new options to enable/disable split index mode
621  - split-index: strip pathname of on-disk replaced entries
622  - split-index: do not invalidate cache-tree at read time
623  - split-index: the reading part
624  - split-index: the writing part
625  - read-cache: mark updated entries for split index
626  - read-cache: save deleted entries in split index
627  - read-cache: mark new entries for split index
628  - read-cache: split-index mode
629  - read-cache: save index SHA-1 after reading
630  - entry.c: update cache_changed if refresh_cache is set in checkout_entry()
631  - cache-tree: mark istate->cache_changed on prime_cache_tree()
632  - cache-tree: mark istate->cache_changed on cache tree update
633  - cache-tree: mark istate->cache_changed on cache tree invalidation
634  - unpack-trees: be specific what part of the index has changed
635  - resolve-undo: be specific what part of the index has changed
636  - update-index: be specific what part of the index has changed
637  - read-cache: be specific what part of the index has changed
638  - read-cache: be strict about "changed" in remove_marked_cache_entries()
639  - read-cache: store in-memory flags in the first 12 bits of ce_flags
640  - read-cache: relocate and unexport commit_locked_index()
641  - read-cache: new API write_locked_index instead of write_index/write_cache
642  - sequencer: do not update/refresh index if the lock cannot be held
643  - ewah: delete unused ewah_read_mmap_native declaration
644  - ewah: fix constness of ewah_read_mmap
646  The tip one is a reminder that needs to be squashed to squelch
647  a "may be unused" compilation warning that is a false positive.
650 * tl/relax-in-poll-emulation (2014-04-29) 1 commit
651   (merged to 'next' on 2014-05-12 at 9369b08)
652  + compat/poll: sleep 1 millisecond to avoid busy wait
654  Will keep in 'next' for the remainder of the cycle.
657 * bc/blame-crlf-test (2014-05-08) 1 commit
658   (merged to 'next' on 2014-05-14 at b819505)
659  + blame: correctly handle files regardless of autocrlf
661  If a file contained CRLF line endings in a repository with
662  core.autocrlf=input, then blame always marked lines as "Not
663  Committed Yet", even if they were unmodified.
665  Will keep in 'next' for the remainder of the cycle.
668 * ep/shell-command-substitution (2014-04-30) 41 commits
669   (merged to 'next' on 2014-05-07 at e9952c7)
670  + t5000-tar-tree.sh: use the $( ... ) construct for command substitution
671  + t4204-patch-id.sh: use the $( ... ) construct for command substitution
672  + t4119-apply-config.sh: use the $( ... ) construct for command substitution
673  + t4116-apply-reverse.sh: use the $( ... ) construct for command substitution
674  + t4057-diff-combined-paths.sh: use the $( ... ) construct for command substitution
675  + t4038-diff-combined.sh: use the $( ... ) construct for command substitution
676  + t4036-format-patch-signer-mime.sh: use the $( ... ) construct for command substitution
677  + t4014-format-patch.sh: use the $( ... ) construct for command substitution
678  + t4013-diff-various.sh: use the $( ... ) construct for command substitution
679  + t4012-diff-binary.sh: use the $( ... ) construct for command substitution
680  + t4010-diff-pathspec.sh: use the $( ... ) construct for command substitution
681  + t4006-diff-mode.sh: use the $( ... ) construct for command substitution
682  + t3910-mac-os-precompose.sh: use the $( ... ) construct for command substitution
683  + t3905-stash-include-untracked.sh: use the $( ... ) construct for command substitution
684  + t1050-large.sh: use the $( ... ) construct for command substitution
685  + t1020-subdirectory.sh: use the $( ... ) construct for command substitution
686  + t1004-read-tree-m-u-wf.sh: use the $( ... ) construct for command substitution
687  + t1003-read-tree-prefix.sh: use the $( ... ) construct for command substitution
688  + t1002-read-tree-m-u-2way.sh: use the $( ... ) construct for command substitution
689  + t1001-read-tree-m-2way.sh: use the $( ... ) construct for command substitution
690  + t1000-read-tree-m-3way.sh: use the $( ... ) construct for command substitution
691  + t0300-credentials.sh: use the $( ... ) construct for command substitution
692  + t0030-stripspace.sh: use the $( ... ) construct for command substitution
693  + t0026-eol-config.sh: use the $( ... ) construct for command substitution
694  + t0025-crlf-auto.sh: use the $( ... ) construct for command substitution
695  + t0020-crlf.sh: use the $( ... ) construct for command substitution
696  + t0010-racy-git.sh: use the $( ... ) construct for command substitution
697  + t0001-init.sh: use the $( ... ) construct for command substitution
698  + p5302-pack-index.sh: use the $( ... ) construct for command substitution
699  + lib-gpg.sh: use the $( ... ) construct for command substitution
700  + lib-cvs.sh: use the $( ... ) construct for command substitution
701  + lib-credential.sh: use the $( ... ) construct for command substitution
702  + git-web--browse.sh: use the $( ... ) construct for command substitution
703  + git-stash.sh: use the $( ... ) construct for command substitution
704  + git-rebase.sh: use the $( ... ) construct for command substitution
705  + git-rebase--merge.sh: use the $( ... ) construct for command substitution
706  + git-pull.sh: use the $( ... ) construct for command substitution
707  + appp.sh: use the $( ... ) construct for command substitution
708  + t7900-subtree.sh: use the $( ... ) construct for command substitution
709  + test-gitmw-lib.sh: use the $( ... ) construct for command substitution
710  + t9365-continuing-queries.sh: use the $( ... ) construct for command substitution
712  Adjust shell scripts to use $(cmd) instead of `cmd`.
714  Will keep in 'next' for the remainder of the cycle.
717 * ib/test-selectively-run (2014-05-06) 3 commits
718  - test-lib: '--run' to run only specific tests
719  - test-lib: tests skipped by GIT_SKIP_TESTS say so
720  - test-lib: Document short options in t/README
722  Allow specifying only certain individual test pieces to be run
723  using a range notation (e.g. "t1234-test.sh --run='1-4 6 8 9-'").
725  Needs a reroll/squash to fix bash-isms.
728 * mm/mediawiki-encoding-fix (2014-04-23) 2 commits
729   (merged to 'next' on 2014-05-02 at 7744361)
730  + git-remote-mediawiki: fix encoding issue for UTF-8 media files
731  + git-remote-mediawiki: allow stop/start-ing the test server
733  Will keep in 'next' for the remainder of the cycle.
736 * sk/tag-contains-wo-recursion (2014-04-25) 1 commit
737   (merged to 'next' on 2014-04-25 at f320750)
738  + git tag --contains: avoid stack overflow
740  Will keep in 'next' for the remainder of the cycle.
743 * fc/remote-helper-refmap (2014-04-21) 8 commits
744   (merged to 'next' on 2014-04-22 at fb5a4c2)
745  + transport-helper: remove unnecessary strbuf resets
746  + transport-helper: add support to delete branches
747  + fast-export: add support to delete refs
748  + fast-import: add support to delete refs
749  + transport-helper: add support to push symbolic refs
750  + transport-helper: add support for old:new refspec
751  + fast-export: add new --refspec option
752  + fast-export: improve argument parsing
754  Allow remote-helper/fast-import based transport to rename the refs
755  while transferring the history.
757  Will keep in 'next' for the remainder of the cycle.
760 * jk/external-diff-use-argv-array (2014-04-21) 5 commits
761   (merged to 'next' on 2014-04-22 at e6d92d7)
762  + run_external_diff: refactor cmdline setup logic
763  + run_external_diff: hoist common bits out of conditional
764  + run_external_diff: drop fflush(NULL)
765  + run_external_diff: clean up error handling
766  + run_external_diff: use an argv_array for the environment
768  Code clean-up (and a bugfix which has been merged for 2.0).
770  Will keep in 'next' for the remainder of the cycle.
773 * jx/blame-align-relative-time (2014-04-23) 2 commits
774   (merged to 'next' on 2014-04-23 at 858df39)
775  + blame: dynamic blame_date_width for different locales
776  + blame: fix broken time_buf paddings in relative timestamp
778  "git blame" miscounted number of columns needed to show localized
779  timestamps, resulting in jaggy left-side-edge of the source code
780  lines in its output.
782  Will keep in 'next' for the remainder of the cycle.
785 * fc/merge-default-to-upstream (2014-04-22) 1 commit
786   (merged to 'next' on 2014-04-22 at 4f98483)
787  + merge: enable defaulttoupstream by default
789  "git merge" without argument, even when there is an upstream
790  defined for the current branch, refused to run until
791  merge.defaultToUpstream is set to true. Flip the default of that
792  configuration variable to true.
794  Will keep in 'next' for the remainder of the cycle.
797 * fc/mergetool-prompt (2014-04-24) 2 commits
798   (merged to 'next' on 2014-05-02 at a554691)
799  + mergetool: document the default for --[no-]prompt
800   (merged to 'next' on 2014-04-22 at dcaec94)
801  + mergetool: run prompt only if guessed tool
803  mergetool.prompt used to default to 'true', always causing a confirmation
804  "do you really want to run the tool on this path" to be shown.
806  Among the two purposes the prompt serves, ignore the use case to
807  confirm that the user wants to view particular path with the named
808  tool, and make the prompt only to confirm the choice of the tool
809  made by autodetection and defaulting.  For those who configured the
810  tool explicitly, the prompt shown for the latter purpose is simply
811  annoying.
813  Strictly speaking, this is a backward incompatible change and the
814  users need to explicitly set the variable to 'true' if they want to
815  resurrect the now-ignored use case.
817  Will keep in 'next' for the remainder of the cycle.
820 * fc/mergetools-vimdiff3 (2014-04-22) 1 commit
821   (merged to 'next' on 2014-04-22 at d843e75)
822  + mergetools: add vimdiff3 mode
824  Will keep in 'next' for the remainder of the cycle.
827 * lr/git-run-setup-gently (2014-04-22) 1 commit
828   (merged to 'next' on 2014-04-22 at 5c2523f)
829  + git.c: treat RUN_SETUP_GENTLY and RUN_SETUP as mutually exclusive
831  Will keep in 'next' for the remainder of the cycle.
834 * jl/git-gui-show-added-submodule-changes (2014-04-15) 1 commit
835  - git-gui: show staged submodules regardless of ignore config
837  Tentatively queued what I expect to receive via Pat Thoyts.
840 * jl/gitk-show-added-submodule-changes (2014-04-15) 3 commits
841  - gitk: show staged submodules regardless of ignore config
842  - gitk: Merge branch 'new' of https://github.com/vnwildman/gitk
843  - l10n: Init Vietnamese translation
845  Tentatively queued what I expect to receive via Paul Mackerras.
848 * bg/rebase-off-of-previous-branch (2014-04-16) 1 commit
849  - git-rebase: print name of rev when using shorthand
851  Teach "git rebase -" to report the concrete name of the branch
852  (i.e. the previous one).
854  But it stops short and does not do the same for "git rebase @{-1}".
855  Expecting a reroll.
858 * ef/send-email-absolute-path-to-the-command (2014-04-23) 2 commits
859   (merged to 'next' on 2014-04-23 at a657e5e)
860  + send-email: windows drive prefix (e.g. C:) appears only at the beginning
861   (merged to 'next' on 2014-04-21 at 43bebb5)
862  + send-email: recognize absolute path on Windows
864  Will keep in 'next' for the remainder of the cycle.
867 * jh/submodule-tests (2014-04-17) 1 commit
868  - t7410: 210 tests for various 'git submodule update' scenarios
871 * rs/ref-update-check-errors-early (2014-04-17) 2 commits
872   (merged to 'next' on 2014-04-21 at acc62aa)
873  + commit.c: check for lock error and return early
874  + sequencer.c: check for lock failure and bail early in fast_forward_to
876  Will keep in 'next' for the remainder of the cycle.
879 * sk/svn-parse-datestamp (2014-04-17) 1 commit
880   (merged to 'next' on 2014-04-21 at 5ff519f)
881  + SVN.pm::parse_svn_date: allow timestamps with a single-digit hour
883  Will keep in 'next' for the remainder of the cycle.
886 * nd/index-pack-one-fd-per-thread (2014-04-16) 1 commit
887   (merged to 'next' on 2014-04-16 at b38d5a9)
888  + index-pack: work around thread-unsafe pread()
890  Enable threaded index-pack on platforms without thread-unsafe
891  pread() emulation.
893  Will keep in 'next' for the remainder of the cycle.
896 * ym/fix-opportunistic-index-update-race (2014-04-10) 2 commits
897   (merged to 'next' on 2014-04-16 at cb92f4f)
898  + read-cache.c: verify index file before we opportunistically update it
899  + wrapper.c: add xpread() similar to xread()
901  Read-only operations such as "git status" that internally refreshes
902  the index write out the refreshed index to the disk to optimize
903  future accesses to the working tree, but this could race with a
904  "read-write" operation that modify the index while it is running.
905  Detect such a race and avoid overwriting the index.
907  Duy raised a good point that we may need to do the same for the
908  normal writeout codepath, not just the "opportunistic" update
909  codepath.  While that is true, nobody sane would be running two
910  simultaneous operations that are clearly write-oriented competing
911  with each other against the same index file.  So in that sense that
912  can be done as a less urgent follow-up for this topic.
914  Will keep in 'next' for the remainder of the cycle.
917 * jl/status-added-submodule-is-never-ignored (2014-04-07) 2 commits
918  - commit -m: commit staged submodules regardless of ignore config
919  - status/commit: show staged submodules regardless of ignore config
921  There also are a few patches Ronald Weiss and Jens are working on
922  polishing around this topic, and a patch from Jens each for gitk
923  and git-gui.
925  Waiting for the dust to settle until picking them up all.
928 * mh/lockfile (2014-04-15) 25 commits
929  - trim_last_path_elm(): replace last_path_elm()
930  - resolve_symlink(): take a strbuf parameter
931  - resolve_symlink(): use a strbuf for internal scratch space
932  - change lock_file::filename into a strbuf
933  - commit_lock_file(): use a strbuf to manage temporary space
934  - try_merge_strategy(): use a statically-allocated lock_file object
935  - try_merge_strategy(): remove redundant lock_file allocation
936  - struct lock_file: declare some fields volatile
937  - lockfile: avoid transitory invalid states
938  - commit_lock_file(): die() if called for unlocked lockfile object
939  - commit_lock_file(): inline temporary variable
940  - remove_lock_file(): call rollback_lock_file()
941  - lock_file(): exit early if lockfile cannot be opened
942  - write_packed_entry_fn(): convert cb_data into a (const int *)
943  - prepare_index(): declare return value to be (const char *)
944  - delete_ref_loose(): don't muck around in the lock_file's filename
945  - cache.h: define constants LOCK_SUFFIX and LOCK_SUFFIX_LEN
946  - lockfile.c: document the various states of lock_file objects
947  - lock_file(): always add lock_file object to lock_file_list
948  - hold_lock_file_for_append(): release lock on errors
949  - lockfile: unlock file if lockfile permissions cannot be adjusted
950  - rollback_lock_file(): set fd to -1
951  - rollback_lock_file(): do not clear filename redundantly
952  - api-lockfile: expand the documentation
953  - unable_to_lock_die(): rename function from unable_to_lock_index_die()
955  Refactor and fix corner-case bugs in the lockfile API, all looked
956  sensible.
958  Expecting a reroll.
961 * mt/patch-id-stable (2014-05-06) 6 commits
962   (merged to 'next' on 2014-05-07 at 6ade68e)
963  + test doc: test_write_lines does not split its arguments
964   (merged to 'next' on 2014-05-02 at cfa251b)
965  + t4204-patch-id.sh: default is now stable
966  + patch-id: change default to stable
967   (merged to 'next' on 2014-05-02 at b69326a)
968  + patch-id-test: test stable and unstable behaviour
969  + test: add test_write_lines helper
970  + patch-id: make it stable against hunk reordering
972  Introduce a new way to compute patch-id for a patch that is not
973  affected by the order of the paths that appear in the input.
975  Will keep in 'next' for the remainder of the cycle.
978 * mh/ref-transaction (2014-04-07) 27 commits
979   (merged to 'next' on 2014-04-16 at a99f84d)
980  + ref_transaction_commit(): work with transaction->updates in place
981  + struct ref_update: add a type field
982  + struct ref_update: add a lock field
983  + ref_transaction_commit(): simplify code using temporary variables
984  + struct ref_update: store refname as a FLEX_ARRAY
985  + struct ref_update: rename field "ref_name" to "refname"
986  + refs: remove API function update_refs()
987  + update-ref --stdin: reimplement using reference transactions
988  + refs: add a concept of a reference transaction
989  + update-ref --stdin: harmonize error messages
990  + update-ref --stdin: improve the error message for unexpected EOF
991  + t1400: test one mistake at a time
992  + update-ref --stdin -z: deprecate interpreting the empty string as zeros
993  + update-ref.c: extract a new function, parse_next_sha1()
994  + t1400: test that stdin -z update treats empty <newvalue> as zeros
995  + update-ref --stdin: simplify error messages for missing oldvalues
996  + update-ref --stdin: make error messages more consistent
997  + update-ref --stdin: improve error messages for invalid values
998  + update-ref.c: extract a new function, parse_refname()
999  + parse_cmd_verify(): copy old_sha1 instead of evaluating <oldvalue> twice
1000  + update-ref --stdin: read the whole input at once
1001  + update_refs(): fix constness
1002  + refs.h: rename the action_on_err constants
1003  + t1400: add some more tests involving quoted arguments
1004  + parse_arg(): really test that argument is properly terminated
1005  + t1400: provide more usual input to the command
1006  + t1400: fix name and expected result of one test
1008  Update "update-ref --stdin [-z]" and then introduce a transactional
1009  support for (multi-)reference updates.
1011  Will keep in 'next' for the remainder of the cycle.
1014 * jc/apply-ignore-whitespace (2014-03-26) 1 commit
1015   (merged to 'next' on 2014-04-04 at 53779a7)
1016  + apply --ignore-space-change: lines with and without leading whitespaces do not match
1018  "--ignore-space-change" option of "git apply" ignored the
1019  spaces at the beginning of line too aggressively, which is
1020  inconsistent with the option of the same name "diff" and "git diff"
1021  have.
1023  Will keep in 'next' for the remainder of the cycle.
1026 * as/grep-fullname-config (2014-03-20) 1 commit
1027   (merged to 'next' on 2014-03-28 at 810a076)
1028  + grep: add grep.fullName config variable
1030  Add a configuration variable to force --full-name to be default for
1031  "git grep".
1033  This may cause regressions on scripted users that do not expect
1034  this new behaviour.
1036  Will keep in 'next' for the remainder of the cycle.
1039 * nd/multiple-work-trees (2014-03-25) 28 commits
1040  - count-objects: report unused files in $GIT_DIR/repos/...
1041  - gc: support prune --repos
1042  - gc: style change -- no SP before closing bracket
1043  - prune: strategies for linked checkouts
1044  - checkout: detach if the branch is already checked out elsewhere
1045  - checkout: clean up half-prepared directories in --to mode
1046  - checkout: support checking out into a new working directory
1047  - use new wrapper write_file() for simple file writing
1048  - wrapper.c: wrapper to open a file, fprintf then close
1049  - setup.c: support multi-checkout repo setup
1050  - setup.c: detect $GIT_COMMON_DIR check_repository_format_gently()
1051  - setup.c: convert check_repository_format_gently to use strbuf
1052  - setup.c: detect $GIT_COMMON_DIR in is_git_directory()
1053  - setup.c: convert is_git_directory() to use strbuf
1054  - git-stash: avoid hardcoding $GIT_DIR/logs/....
1055  - *.sh: avoid hardcoding $GIT_DIR/hooks/...
1056  - git-sh-setup.sh: use rev-parse --git-path to get $GIT_DIR/objects
1057  - $GIT_COMMON_DIR: a new environment variable
1058  - commit: use SEQ_DIR instead of hardcoding "sequencer"
1059  - fast-import: use git_path() for accessing .git dir instead of get_git_dir()
1060  - reflog: avoid constructing .lock path with git_path
1061  - *.sh: respect $GIT_INDEX_FILE
1062  - git_path(): be aware of file relocation in $GIT_DIR
1063  - path.c: group git_path(), git_pathdup() and strbuf_git_path() together
1064  - path.c: rename vsnpath() to do_git_path()
1065  - git_snpath(): retire and replace with strbuf_git_path()
1066  - path.c: make get_pathname() call sites return const char *
1067  - path.c: make get_pathname() return strbuf instead of static buffer
1069  A replacement for contrib/workdir/git-new-workdir that does not
1070  rely on symbolic links and make sharing of objects and refs safer
1071  by making the borrowee and borrowers aware of each other.
1073  Will hold.
1076 * ks/tree-diff-nway (2014-04-09) 20 commits
1077   (merged to 'next' on 2014-04-09 at c17228e)
1078  + mingw: activate alloca
1079   (merged to 'next' on 2014-04-08 at 6b74773)
1080  + combine-diff: speed it up, by using multiparent diff tree-walker directly
1081  + tree-diff: rework diff_tree() to generate diffs for multiparent cases as well
1082  + Portable alloca for Git
1083   (merged to 'next' on 2014-03-31 at 16a7bd4)
1084  + tree-diff: reuse base str(buf) memory on sub-tree recursion
1085  + tree-diff: no need to call "full" diff_tree_sha1 from show_path()
1086  + tree-diff: rework diff_tree interface to be sha1 based
1087  + tree-diff: diff_tree() should now be static
1088  + tree-diff: remove special-case diff-emitting code for empty-tree cases
1089   (merged to 'next' on 2014-03-25 at cfcbdac)
1090  + tree-diff: simplify tree_entry_pathcmp
1091  + tree-diff: show_path prototype is not needed anymore
1092  + tree-diff: rename compare_tree_entry -> tree_entry_pathcmp
1093  + tree-diff: move all action-taking code out of compare_tree_entry()
1094  + tree-diff: don't assume compare_tree_entry() returns -1,0,1
1095   (merged to 'next' on 2014-03-21 at d872679)
1096  + tree-diff: consolidate code for emitting diffs and recursion in one place
1097  + tree-diff: show_tree() is not needed
1098  + tree-diff: no need to pass match to skip_uninteresting()
1099  + tree-diff: no need to manually verify that there is no mode change for a path
1100  + combine-diff: move changed-paths scanning logic into its own function
1101  + combine-diff: move show_log_first logic/action out of paths scanning
1103  Instead of running N pair-wise diff-trees when inspecting a
1104  N-parent merge, find the set of paths that were touched by walking
1105  N+1 trees in parallel.  These set of paths can then be turned into
1106  N pair-wise diff-tree results to be processed through rename
1107  detections and such.  And N=2 case nicely degenerates to the usual
1108  2-way diff-tree, which is very nice.
1110  Will keep in 'next' for the remainder of the cycle.
1113 * cc/interpret-trailers (2014-04-29) 11 commits
1114  - Documentation: add documentation for 'git interpret-trailers'
1115  - trailer: add tests for commands in config file
1116  - trailer: execute command from 'trailer.<name>.command'
1117  - trailer: add tests for "git interpret-trailers"
1118  - trailer: add interpret-trailers command
1119  - trailer: put all the processing together and print
1120  - trailer: parse trailers from file or stdin
1121  - trailer: process command line trailer arguments
1122  - trailer: read and process config information
1123  - trailer: process trailers from input message and arguments
1124  - trailer: add data structures and basic functions
1126  A new filter to programatically edit the tail end of the commit log
1127  messages.
1129 --------------------------------------------------
1130 [Discarded]
1132 * jc/format-patch (2013-04-22) 2 commits
1133  . format-patch: --inline-single
1134  . format-patch: rename "no_inline" field
1136  A new option to send a single patch to the standard output to be
1137  appended at the bottom of a message.  I personally have no need for
1138  this, but it was easy enough to cobble together.  Tests, docs and
1139  stripping out more MIMEy stuff are left as exercises to interested
1140  parties.
1143 * jc/graduate-remote-hg-bzr (2014-05-19) 1 commit
1144   (merged to 'next' on 2014-05-19 at eeb9af6)
1145  + remote-helpers: give short instructions to download the latest
1147  Reverted from 'next'.
1150 * mt/rebase-i-ack (2014-05-19) 6 commits
1151  . git-ack: record an ack
1152  . rebase: test ack
1153  . git-rebase: document ack
1154  . rebase -i: add ack action
1155  + test: add test_write_lines helper
1156  + patch-id: make it stable against hunk reordering
1157  (this branch is tangled with mt/patch-id-stable.)
1159  Will be rerolled post 2.0
1162 * fc/remote-hg-fixes-for-hg-3.0 (2014-05-08) 5 commits
1163  . [DONTMERGE-not signed-off] remote-hg: work with older versions of mercurial
1164  . remote-hg: add support for hg v3.0
1165  . t: remote-hg: trivial cleanups and fixes
1166  . t: remote-hg: add file operation tests
1167  . remote-hg: add more tests
1169  No longer relevant, as 'master' unbundles contrib/remote-helpers/.
1172 * rs/ref-transaction (2014-04-29) 27 commits
1173  . refs.c: make lock_ref_sha1 static
1174  . refs.c: make write_ref_sha1 static
1175  . walker.c: use ref transaction for ref updates
1176  . fast-import.c: use a ref transaction when dumping tags
1177  . receive-pack.c: use a reference transaction for updating the refs
1178  . fetch.c: use a single ref transaction for all ref updates
1179  . fetch.c: change s_update_ref to use a ref transaction
1180  . fetch.c: clear errno before calling functions that might set it
1181  . refs.c: ref_transaction_commit should not free the transaction
1182  . refs.c: free the transaction before returning when number of updates is 0
1183  . refs.c: change update_ref to use a transaction
1184  . branch.c: use ref transaction for all ref updates
1185  . fast-import.c: change update_branch to use ref transactions
1186  . sequencer.c: use ref transactions for all ref updates
1187  . commit.c: use ref transactions for updates
1188  . replace.c: use the ref transaction functions for updates
1189  . tag.c: use ref transactions when doing updates
1190  . refs.c: ref_transaction_delete to check for error and return status
1191  . refs.c: change ref_transaction_create to do error checking and return status
1192  . refs.c: change ref_transaction_update() to do error checking and return status
1193  . refs.c: remove the onerr argument to ref_transaction_commit
1194  . refs.c: make update_ref_write update a strbuf on failure
1195  . update-ref.c: log transaction error from the update_ref
1196  . refs.c: make ref_update_reject_duplicates take a strbuf argument for errors
1197  . refs.c: add a strbuf argument to ref_transaction_commit for error logging
1198  . refs.c: allow passing NULL to ref_transaction_free
1199  . refs.c: constify the sha arguments for ref_transaction_create|delete|update
1200  (this branch uses mh/ref-transaction; is tangled with rs/ref-transaction-2.)
1202  Temporarily dropped; there are a lot of conflicts with topics in
1203  flight, and the topic is still being worked on with frequent
1204  rerolls.  Will pick up a reroll once things settle down a bit after
1205  the release.
1208 * fc/remote-helpers-hg-bzr-graduation (2014-04-29) 11 commits
1209  . remote-hg: trivial cleanups
1210  . remote-hg: make sure we omit multiple heads
1211  . git-remote-hg: use internal clone's hgrc
1212  . t: remote-hg: split into setup test
1213  . remote-hg: properly detect missing contexts
1214  . remote-{hg,bzr}: store marks only on success
1215  . remote-hg: update to 'public' phase when pushing
1216  . remote-hg: fix parsing of custom committer
1217   (merged to 'next' on 2014-04-22 at fed170a)
1218  + remote-helpers: move tests out of contrib
1219  + remote-helpers: move out of contrib
1220  + remote-helpers: squelch python import exceptions
1222  No longer relevant, as 'master' unbundles contrib/remote-helpers/.