What's cooking (2016/12 #02)

Junio C Hamano committed Dec 12, 2016 at 13:11 UTC fe4ec4929b0a5e2966359e9d81d2043699458c5f
1 file changed +369 -235
whats-cooking.txt
+369 -235
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Dec 2016, #01; Tue, 6)
3 +Subject: What's cooking in git.git (Dec 2016, #02; Mon, 12)
4 X-master-at: 8d7a455ed52e2a96debc080dfc011b6bb00db5d2
5 -X-next-at: fb549caa12ec67f9448f8f6b29b102ee5ec54c82
5 +X-next-at: 91ed5b3cf342af96e9d9acb6af19e59b39d46658
6
7 -What's cooking in git.git (Dec 2016, #01; Tue, 6)
7 +What's cooking in git.git (Dec 2016, #02; Mon, 12)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -12,237 +12,128 @@ Here are the topics that have been cooking. Commits prefixed with
12 '+' are in 'next'. The ones marked with '.' do not appear in any of
13 the integration branches, but I am still holding onto them.
14
15 -The 'next' branch has been rewound, 'maint' now is for maintenance
16 -fixes post v2.11 release.
15 +Quite a many topics that have been waiting before the most recent
16 +release have now been merged to 'next'; hopefully they will be ready
17 +for 'master' in a week or two.
18
19 You can find the changes described here in the integration branches
20 of the repositories listed at
21
22 http://git-blame.blogspot.com/p/git-public-repositories.html
23
23 ---------------------------------------------------
24 -[Graduated to "master"]
25 -
26 -* jk/common-main (2016-11-29) 1 commit
27 - (merged to 'next' on 2016-11-29 at 2985e7efba)
28 - + common-main: stop munging argv[0] path
29 -
30 - Fix for a small regression in a topic already in 'master'.
31 -
24 --------------------------------------------------
25 [New Topics]
26
35 -* ak/lazy-prereq-mktemp (2016-11-29) 1 commit
36 - - t7610: clean up foo.XXXXXX tmpdir
37 -
38 - Test code clean-up.
39 -
40 - Will merge to 'next'.
41 -
42 -
43 -* da/mergetool-trust-exit-code (2016-11-29) 2 commits
44 - - mergetools/vimdiff: trust Vim's exit code
45 - - mergetool: honor mergetool.$tool.trustExitCode for built-in tools
46 -
47 - mergetool.<tool>.trustExitCode configuration variable did not apply
48 - to built-in tools, but now it does.
49 -
50 - Will merge to 'next'.
51 -
52 -
53 -* jb/diff-no-index-no-abbrev (2016-11-29) 1 commit
54 - - diff: handle --no-abbrev outside of repository
55 -
56 - "git diff --no-index" did not take "--no-abbrev" option.
57 -
58 - Will merge to 'next'.
59 -
60 -
61 -* vk/p4-submit-shelve (2016-11-29) 1 commit
62 - - git-p4: allow submit to create shelved changelists.
63 - (this branch is used by ld/p4-update-shelve.)
64 -
65 - Will merge to 'next'.
66 -
67 -
68 -* jk/http-walker-limit-redirect-2.9 (2016-12-06) 5 commits
69 - - http: treat http-alternates like redirects
70 - - http: make redirects more obvious
71 - - remote-curl: rename shadowed options variable
72 - - http: always update the base URL for redirects
73 - - http: simplify update_url_from_redirect
74 - (this branch is used by jk/http-walker-limit-redirect.)
75 -
76 - Transport with dumb http can be fooled into following foreign URLs
77 - that the end user does not intend to, especially with the server
78 - side redirects and http-alternates mechanism, which can lead to
79 - security issues. Tighten the redirection and make it more obvious
80 - to the end user when it happens.
81 -
82 - Will merge to 'next'.
27 +* jc/lock-report-on-error (2016-12-07) 3 commits
28 + - lockfile: LOCK_REPORT_ON_ERROR
29 + - hold_locked_index(): align error handling with hold_lockfile_for_update()
30 + - wt-status: implement opportunisitc index update correctly
31
84 -
85 -* jk/http-walker-limit-redirect (2016-12-06) 2 commits
86 - - http-walker: complain about non-404 loose object errors
87 - - Merge branch 'ew/http-walker' into jk/http-walker-limit-redirect
88 - (this branch uses jk/http-walker-limit-redirect-2.9.)
89 -
90 - Update the error messages from the dumb-http client when it fails
91 - to obtain loose objects; we used to give sensible error message
92 - only upon 404 but we now forbid unexpected redirects that needs to
93 - be reported with something sensible.
32 + Git 2.11 had a minor regression in "merge --ff-only" that competed
33 + with another process that simultanously attempted to update the
34 + index. We used to explain what went wrong with an error message,
35 + but the new code silently failed. This resurrects the error
36 + message.
37
38 Will merge to 'next'.
39
40
98 -* ah/grammos (2016-12-05) 3 commits
99 - - clone,fetch: explain the shallow-clone option a little more clearly
100 - - receive-pack: improve English grammar of denyCurrentBranch message
101 - - bisect: improve English grammar of not-ancestors message
41 +* nd/shallow-fixup (2016-12-07) 6 commits
42 + - shallow.c: remove useless code
43 + - shallow.c: bit manipulation tweaks
44 + - shallow.c: avoid theoretical pointer wrap-around
45 + - shallow.c: make paint_alloc slightly more robust
46 + - shallow.c: stop abusing COMMIT_SLAB_SIZE for paint_info's memory pools
47 + - shallow.c: rename fields in paint_info to better express their purposes
48
103 - A few messages have been fixed for their grammatical errors.
104 -
105 - Will merge to 'next'.
106 -
107 -
108 -* ak/commit-only-allow-empty (2016-12-05) 1 commit
109 - - commit: make --only --allow-empty work without paths
110 -
111 - "git commit --allow-empty --only" (no pathspec) with dirty index
112 - ought to be an acceptable way to create a new commit that does not
113 - change any paths, but it was forbidden (perhaps because nobody
114 - needed it).
49 + Code cleanup in shallow boundary computation.
50
51 Will merge to 'next'.
52
53
119 -* bb/unicode-9.0 (2016-12-05) 3 commits
120 - - unicode_width.h: update the tables to Unicode 9.0
121 - - update_unicode.sh: strip the plane offsets from the double_width[] table
122 - - update_unicode.sh: automatically download newer definition files
54 +* sb/sequencer-abort-safety (2016-12-09) 5 commits
55 + - sequencer: remove useless get_dir() function
56 + - sequencer: make sequencer abort safer
57 + - t3510: test that cherry-pick --abort does not unsafely change HEAD
58 + - am: change safe_to_abort()'s not rewinding error into a warning
59 + - am: fix filename in safe_to_abort() error message
60
124 - The character width table has been updated to match Unicode 9.0
61 + Unlike "git am --abort", "git cherry-pick --abort" moved HEAD back
62 + to where cherry-pick started while picking multiple changes, when
63 + the cherry-pick stopped to ask for help from the user, and the user
64 + did "git reset --hard" to a different commit in order to re-attempt
65 + the operation.
66
67 Will merge to 'next'.
68
69
129 -* ld/p4-update-shelve (2016-12-05) 1 commit
130 - - git-p4: support updating an existing shelved changelist
131 - (this branch uses vk/p4-submit-shelve.)
70 +* kh/tutorial-grammofix (2016-12-09) 4 commits
71 + - doc: omit needless "for"
72 + - doc: make the intent of sentence clearer
73 + - doc: add verb in front of command to run
74 + - doc: add articles (grammar)
75
76 Will merge to 'next'.
77
78
136 -* ld/p4-worktree (2016-12-05) 1 commit
137 - - git-p4: support secondary working trees managed by "git worktree"
79 +* da/mergetool-xxdiff-hotkey (2016-12-11) 1 commit
80 + - mergetools: fix xxdiff hotkeys
81
139 - Iffy.
140 - cf. <20161202224319.5385-2-luke@diamand.org>
141 -
142 -
143 -* ls/p4-empty-file-on-lfs (2016-12-05) 1 commit
144 - - git-p4: fix empty file processing for large file system backend GitLFS
145 -
146 - "git p4" LFS support was broken when LFS stores an empty blob.
82 + The way to specify hotkeys to "xxdiff" that is used by "git
83 + mergetool" has been modernized to match recent versions of xxdiff.
84
85 Will merge to 'next'.
86
87
151 -* ls/p4-retry-thrice (2016-12-05) 1 commit
152 - - git-p4: add config to retry p4 commands; retry 3 times by default
153 -
154 - Will merge to 'next'.
155 -
156 -
157 -* ls/t0021-fixup (2016-12-05) 1 commit
158 - - t0021: minor filter process test cleanup
159 -
160 - Will merge to 'next'.
161 -
162 -
163 -* ls/travis-update-p4-and-lfs (2016-12-05) 1 commit
164 - - travis-ci: update P4 to 16.2 and GitLFS to 1.5.2 in Linux build
165 -
166 - The default Travis-CI configuration specifies newer P4 and GitLFS.
167 -
168 - Will merge to 'next'.
169 -
170 -
171 -* sb/t3600-cleanup (2016-12-05) 1 commit
172 - - t3600: remove useless redirect
173 -
174 - Code cleanup.
175 -
176 - Will merge to 'next'.
177 -
178 -
179 -* sb/unpack-trees-grammofix (2016-12-05) 1 commit
180 - - unpack-trees: fix grammar for untracked files in directories
181 -
182 - Will merge to 'next'.
183 -
184 -
185 -* da/difftool-dir-diff-fix (2016-12-06) 1 commit
88 +* jk/difftool-in-subdir (2016-12-11) 4 commits
89 + - difftool: rename variables for consistency
90 + - difftool: chdir as early as possible
91 + - difftool: sanitize $workdir as early as possible
92 - difftool: fix dir-diff index creation when in a subdirectory
93
188 - "git difftool --dir-diff" had a minor regression when started from
189 - a subdirectory, which has been fixed.
94 + Even though an fix was attempted in Git 2.9.3 days, but running
95 + "git difftool --dir-diff" from a subdirectory never worked. This
96 + has been fixed.
97
98 Will merge to 'next'.
99
100
194 -* jc/lockfile-silent-on-error (2016-12-06) 1 commit
195 - - lockfile: LOCK_SILENT_ON_ERROR
101 +* js/mingw-isatty (2016-12-11) 1 commit
102 + (merged to 'next' on 2016-12-12 at 60c1da6676)
103 + + mingw: intercept isatty() to handle /dev/null as Git expects it
104
197 - Recent change to use "hold_lock*()" without die-on-error in the
198 - merge machinery made an error from "git merge" harder to spot.
199 - Introduce an opt-in "be silent because it has been verified that
200 - this particular caller produces a sensible error message itself"
201 - flag, and make everybody else show the error message when it
202 - returns to the caller with -1 without dying.
105 + We often decide if a session is interactive by checking if the
106 + standard I/O streams are connected to a TTY, but isatty() emulation
107 + on Windows incorrectly returned true if it is used on NUL (i.e. an
108 + equivalent to /dev/null). This has been fixed.
109
110 + Will merge to 'master'.
111
205 -* jk/stash-disable-renames-internally (2016-12-06) 1 commit
206 - - stash: prefer plumbing over git-diff
112
208 - When diff.renames configuration is on (and with Git 2.9 and later,
209 - it is enabled by default, which made it worse), "git stash"
210 - misbehaved if a file is removed and another file with a very
211 - similar content is added.
113 +* ew/svn-fixes (2016-12-12) 2 commits
114 + (merged to 'next' on 2016-12-12 at 91ed5b3cf3)
115 + + git-svn: document useLogAuthor and addAuthorFrom config keys
116 + + git-svn: allow "0" in SVN path components
117
213 - Will merge to 'next'.
118 + Will merge to 'master'.
119
120
216 -* jk/xdiff-drop-xdl-fast-hash (2016-12-06) 1 commit
217 - - xdiff: drop XDL_FAST_HASH
218 -
219 - Retire the "fast hash" that had disastrous performance issues in
220 - some corner cases.
221 -
222 - Will cook in 'next'.
223 -
224 -
225 -* ls/filter-process (2016-12-06) 1 commit
226 - - docs: warn about possible '=' in clean/smudge filter process values
227 -
228 - Doc update.
121 +* lr/doc-fix-cet (2016-12-12) 1 commit
122 + - date-formats.txt: Typo fix
123
124 Will merge to 'next'.
125
126
233 -* nd/for-each-ref-ignore-case (2016-12-05) 1 commit
234 - - tag, branch, for-each-ref: add --ignore-case for sorting and filtering
127 +* vs/submodule-clone-nested-submodules-alternates (2016-12-12) 1 commit
128 + - submodule--helper: set alternateLocation for cloned submodules
129
236 - "git branch --list" and friends learned "--ignore-case" option to
237 - optionally sort branches and tags case insensitively.
238 -
239 - Will merge to 'next'.
240 -
241 -
242 -* rj/git-version-gen-do-not-force-abbrev (2016-12-06) 1 commit
243 - - GIT-VERSION-GEN: do not force abbreviation length used by 'describe'
244 -
245 - A minor build update.
130 + "git clone --reference $there --recurse-submodules $super" has been
131 + taught to guess repositories usable as references for submodules of
132 + $super that are embedded in $there while making a clone of the
133 + superproject borrow objects from $there; extend the mechanism to
134 + also allow submodules of these submodules to borrow repositories
135 + embedded in these clones of the submodules embedded in the clone of
136 + the superproject.
137
138 Will merge to 'next'.
139
@@ -386,16 +277,245 @@ of the repositories listed at
277 --------------------------------------------------
278 [Cooking]
279
280 +* ak/lazy-prereq-mktemp (2016-11-29) 1 commit
281 + (merged to 'next' on 2016-12-12 at f346d1f053)
282 + + t7610: clean up foo.XXXXXX tmpdir
283 +
284 + Test code clean-up.
285 +
286 + Will merge to 'master'.
287 +
288 +
289 +* da/mergetool-trust-exit-code (2016-11-29) 2 commits
290 + (merged to 'next' on 2016-12-12 at 28ae202868)
291 + + mergetools/vimdiff: trust Vim's exit code
292 + + mergetool: honor mergetool.$tool.trustExitCode for built-in tools
293 +
294 + mergetool.<tool>.trustExitCode configuration variable did not apply
295 + to built-in tools, but now it does.
296 +
297 + Will merge to 'master'.
298 +
299 +
300 +* jb/diff-no-index-no-abbrev (2016-12-08) 1 commit
301 + (merged to 'next' on 2016-12-12 at 959981ef50)
302 + + diff: handle --no-abbrev in no-index case
303 +
304 + "git diff --no-index" did not take "--no-abbrev" option.
305 +
306 + Will merge to 'master'.
307 +
308 +
309 +* vk/p4-submit-shelve (2016-11-29) 1 commit
310 + (merged to 'next' on 2016-12-12 at 3fce6df117)
311 + + git-p4: allow submit to create shelved changelists.
312 + (this branch is used by ld/p4-update-shelve.)
313 +
314 + Will merge to 'master'.
315 +
316 +
317 +* jk/http-walker-limit-redirect-2.9 (2016-12-06) 5 commits
318 + (merged to 'next' on 2016-12-12 at 3e4bcd7bca)
319 + + http: treat http-alternates like redirects
320 + + http: make redirects more obvious
321 + + remote-curl: rename shadowed options variable
322 + + http: always update the base URL for redirects
323 + + http: simplify update_url_from_redirect
324 + (this branch is used by jk/http-walker-limit-redirect.)
325 +
326 + Transport with dumb http can be fooled into following foreign URLs
327 + that the end user does not intend to, especially with the server
328 + side redirects and http-alternates mechanism, which can lead to
329 + security issues. Tighten the redirection and make it more obvious
330 + to the end user when it happens.
331 +
332 + Will merge to 'master'.
333 +
334 +
335 +* jk/http-walker-limit-redirect (2016-12-06) 2 commits
336 + (merged to 'next' on 2016-12-12 at 8b58025e3a)
337 + + http-walker: complain about non-404 loose object errors
338 + + Merge branch 'ew/http-walker' into jk/http-walker-limit-redirect
339 + (this branch uses jk/http-walker-limit-redirect-2.9.)
340 +
341 + Update the error messages from the dumb-http client when it fails
342 + to obtain loose objects; we used to give sensible error message
343 + only upon 404 but we now forbid unexpected redirects that needs to
344 + be reported with something sensible.
345 +
346 + Will merge to 'master'.
347 +
348 +
349 +* ah/grammos (2016-12-05) 3 commits
350 + (merged to 'next' on 2016-12-12 at 13ad487b28)
351 + + clone,fetch: explain the shallow-clone option a little more clearly
352 + + receive-pack: improve English grammar of denyCurrentBranch message
353 + + bisect: improve English grammar of not-ancestors message
354 +
355 + A few messages have been fixed for their grammatical errors.
356 +
357 + Will merge to 'master'.
358 +
359 +
360 +* ak/commit-only-allow-empty (2016-12-09) 2 commits
361 + (merged to 'next' on 2016-12-12 at 54188ab23c)
362 + + commit: remove 'Clever' message for --only --amend
363 + + commit: make --only --allow-empty work without paths
364 +
365 + "git commit --allow-empty --only" (no pathspec) with dirty index
366 + ought to be an acceptable way to create a new commit that does not
367 + change any paths, but it was forbidden (perhaps because nobody
368 + needed it).
369 +
370 + Will merge to 'master'.
371 +
372 +
373 +* bb/unicode-9.0 (2016-12-11) 6 commits
374 + - update_unicode.sh: restore hexadecimal output
375 + - update_unicode.sh: remove the plane filters
376 + - update_unicode.sh: update the uniset repo if it exists
377 + - unicode_width.h: update the tables to Unicode 9.0
378 + - update_unicode.sh: strip the plane offsets from the double_width[] table
379 + - update_unicode.sh: automatically download newer definition files
380 +
381 + The character width table has been updated to match Unicode 9.0
382 +
383 + Will merge to 'next'.
384 +
385 +
386 +* ld/p4-update-shelve (2016-12-05) 1 commit
387 + (merged to 'next' on 2016-12-12 at 22f6bec94c)
388 + + git-p4: support updating an existing shelved changelist
389 + (this branch uses vk/p4-submit-shelve.)
390 +
391 + Will merge to 'master'.
392 +
393 +
394 +* ld/p4-worktree (2016-12-05) 1 commit
395 + - git-p4: support secondary working trees managed by "git worktree"
396 +
397 + Iffy.
398 + cf. <20161202224319.5385-2-luke@diamand.org>
399 +
400 +
401 +* ls/p4-empty-file-on-lfs (2016-12-05) 1 commit
402 + (merged to 'next' on 2016-12-12 at 1fce8e037a)
403 + + git-p4: fix empty file processing for large file system backend GitLFS
404 +
405 + "git p4" LFS support was broken when LFS stores an empty blob.
406 +
407 + Will merge to 'master'.
408 +
409 +
410 +* ls/p4-retry-thrice (2016-12-05) 1 commit
411 + (merged to 'next' on 2016-12-12 at 9462e660a8)
412 + + git-p4: add config to retry p4 commands; retry 3 times by default
413 +
414 + Will merge to 'master'.
415 +
416 +
417 +* ls/t0021-fixup (2016-12-05) 1 commit
418 + (merged to 'next' on 2016-12-12 at db652e691a)
419 + + t0021: minor filter process test cleanup
420 +
421 + Will merge to 'master'.
422 +
423 +
424 +* ls/travis-update-p4-and-lfs (2016-12-05) 1 commit
425 + (merged to 'next' on 2016-12-12 at 5496caa048)
426 + + travis-ci: update P4 to 16.2 and GitLFS to 1.5.2 in Linux build
427 +
428 + The default Travis-CI configuration specifies newer P4 and GitLFS.
429 +
430 + Will merge to 'master'.
431 +
432 +
433 +* sb/t3600-cleanup (2016-12-05) 1 commit
434 + (merged to 'next' on 2016-12-12 at d9996af5e8)
435 + + t3600: remove useless redirect
436 +
437 + Code cleanup.
438 +
439 + Will merge to 'master'.
440 +
441 +
442 +* sb/unpack-trees-grammofix (2016-12-05) 1 commit
443 + (merged to 'next' on 2016-12-12 at 29e536f590)
444 + + unpack-trees: fix grammar for untracked files in directories
445 +
446 + Will merge to 'master'.
447 +
448 +
449 +* da/difftool-dir-diff-fix (2016-12-08) 1 commit
450 + (merged to 'next' on 2016-12-12 at fd31a92ad6)
451 + + difftool: fix dir-diff index creation when in a subdirectory
452 +
453 + "git difftool --dir-diff" had a minor regression when started from
454 + a subdirectory, which has been fixed.
455 +
456 + Will merge to 'master'.
457 +
458 +
459 +* jk/stash-disable-renames-internally (2016-12-06) 1 commit
460 + (merged to 'next' on 2016-12-12 at e2b97aae68)
461 + + stash: prefer plumbing over git-diff
462 +
463 + When diff.renames configuration is on (and with Git 2.9 and later,
464 + it is enabled by default, which made it worse), "git stash"
465 + misbehaved if a file is removed and another file with a very
466 + similar content is added.
467 +
468 + Will merge to 'master'.
469 +
470 +
471 +* jk/xdiff-drop-xdl-fast-hash (2016-12-06) 1 commit
472 + - xdiff: drop XDL_FAST_HASH
473 +
474 + Retire the "fast hash" that had disastrous performance issues in
475 + some corner cases.
476 +
477 + Will merge to 'next'.
478 +
479 +
480 +* ls/filter-process (2016-12-06) 1 commit
481 + (merged to 'next' on 2016-12-12 at 8ed1f9eb02)
482 + + docs: warn about possible '=' in clean/smudge filter process values
483 +
484 + Doc update.
485 +
486 + Will merge to 'master'.
487 +
488 +
489 +* nd/for-each-ref-ignore-case (2016-12-05) 1 commit
490 + (merged to 'next' on 2016-12-12 at 527cc4f275)
491 + + tag, branch, for-each-ref: add --ignore-case for sorting and filtering
492 +
493 + "git branch --list" and friends learned "--ignore-case" option to
494 + optionally sort branches and tags case insensitively.
495 +
496 + Will merge to 'master'.
497 +
498 +
499 +* rj/git-version-gen-do-not-force-abbrev (2016-12-06) 1 commit
500 + (merged to 'next' on 2016-12-12 at e37970c3f5)
501 + + GIT-VERSION-GEN: do not force abbreviation length used by 'describe'
502 +
503 + A minor build update.
504 +
505 + Will merge to 'master'.
506 +
507 +
508 * jc/renormalize-merge-kill-safer-crlf (2016-12-01) 4 commits
390 - - convert: git cherry-pick -Xrenormalize did not work
391 - - Merge branch 'tb/t0027-raciness-fix' into jc/renormalize-merge-kill-safer-crlf
392 - - merge-recursive: handle NULL in add_cacheinfo() correctly
393 - - cherry-pick: demonstrate a segmentation fault
509 + (merged to 'next' on 2016-12-12 at 041b834f81)
510 + + convert: git cherry-pick -Xrenormalize did not work
511 + + Merge branch 'tb/t0027-raciness-fix' into jc/renormalize-merge-kill-safer-crlf
512 + + merge-recursive: handle NULL in add_cacheinfo() correctly
513 + + cherry-pick: demonstrate a segmentation fault
514
515 Fix a corner case in merge-recursive regression that crept in
516 during 2.10 development cycle.
517
398 - Will merge to 'next'.
518 + Will merge to 'master'.
519
520
521 * js/difftool-builtin (2016-11-28) 2 commits
@@ -408,71 +528,79 @@ of the repositories listed at
528
529
530 * nd/qsort-in-merge-recursive (2016-11-28) 1 commit
411 - - merge-recursive.c: use string_list_sort instead of qsort
531 + (merged to 'next' on 2016-12-12 at e9700f5b93)
532 + + merge-recursive.c: use string_list_sort instead of qsort
533
534 Code simplification.
535
415 - Will merge to 'next'.
536 + Will merge to 'master'.
537
538
539 * bw/push-dry-run (2016-11-23) 2 commits
419 - - push: fix --dry-run to not push submodules
420 - - push: --dry-run updates submodules when --recurse-submodules=on-demand
540 + (merged to 'next' on 2016-12-12 at bde7a0f9ae)
541 + + push: fix --dry-run to not push submodules
542 + + push: --dry-run updates submodules when --recurse-submodules=on-demand
543 (this branch uses hv/submodule-not-yet-pushed-fix; is tangled with sb/push-make-submodule-check-the-default.)
544
545 "git push --dry-run --recurse-submodule=on-demand" wasn't
546 "--dry-run" in the submodules.
547
426 - Will merge to 'next'.
548 + Will merge to 'master'.
549
550
551 * sb/push-make-submodule-check-the-default (2016-11-29) 2 commits
430 - - push: change submodule default to check when submodules exist
431 - - submodule add: extend force flag to add existing repos
552 + (merged to 'next' on 2016-12-12 at 1863e05af5)
553 + + push: change submodule default to check when submodules exist
554 + + submodule add: extend force flag to add existing repos
555 (this branch uses hv/submodule-not-yet-pushed-fix; is tangled with bw/push-dry-run.)
556
557 Turn the default of "push.recurseSubmodules" to "check" when
558 submodules seem to be in use.
559
437 - Will merge to 'next'.
560 + Will merge to 'master'.
561
562
563 * jk/rev-parse-symbolic-parents-fix (2016-11-16) 1 commit
441 - - rev-parse: fix parent shorthands with --symbolic
564 + (merged to 'next' on 2016-12-12 at 6839c1ea28)
565 + + rev-parse: fix parent shorthands with --symbolic
566
567 "git rev-parse --symbolic" failed with a more recent notation like
568 "HEAD^-1" and "HEAD^!".
569
446 - Will merge to 'next'.
570 + Will merge to 'master'.
571
572
573 * nd/worktree-list-fixup (2016-11-28) 5 commits
450 - - worktree list: keep the list sorted
451 - - worktree.c: get_worktrees() takes a new flag argument
452 - - get_worktrees() must return main worktree as first item even on error
453 - - worktree: reorder an if statement
454 - - worktree.c: zero new 'struct worktree' on allocation
574 + (merged to 'next' on 2016-12-12 at 1f46421a59)
575 + + worktree list: keep the list sorted
576 + + worktree.c: get_worktrees() takes a new flag argument
577 + + get_worktrees() must return main worktree as first item even on error
578 + + worktree: reorder an if statement
579 + + worktree.c: zero new 'struct worktree' on allocation
580 (this branch is used by nd/worktree-move and sb/submodule-embed-gitdir.)
581
582 The output from "git worktree list" was made in readdir() order,
583 and was unstable.
584
460 - Will merge to 'next'.
585 + Will merge to 'master'.
586
587
463 -* jk/trailers-placeholder-in-pretty (2016-11-21) 2 commits
464 - - ref-filter: add support to display trailers as part of contents
465 - - pretty: add %(trailers) format for displaying trailers of a commit message
588 +* jk/trailers-placeholder-in-pretty (2016-12-11) 2 commits
589 + (merged to 'next' on 2016-12-12 at 57de4e699a)
590 + + ref-filter: add support to display trailers as part of contents
591 + + pretty: add %(trailers) format for displaying trailers of a commit message
592 + (this branch uses jt/use-trailer-api-in-commands.)
593
594 In addition to %(subject), %(body), "log --pretty=format:..."
595 learned a new placeholder %(trailers).
596
470 - Will merge to 'next'.
597 + Will merge to 'master'.
598
599
473 -* sb/submodule-embed-gitdir (2016-12-05) 5 commits
474 - - submodule: add embed-git-dir function
475 - - worktree: get worktrees from submodules
600 +* sb/submodule-embed-gitdir (2016-12-09) 6 commits
601 + - submodule: add absorb-git-dir function
602 + - move connect_work_tree_and_git_dir to dir.h
603 + - worktree: have a function to check if worktrees are in use
604 - test-lib-functions.sh: teach test_commit -C <dir>
605 - submodule helper: support super prefix
606 - submodule: use absolute path for computing relative path connecting
@@ -483,17 +611,19 @@ of the repositories listed at
611 superproject to .git/modules/ (and point the latter with the former
612 that is turned into a "gitdir:" file) has been added.
613
486 - Waiting for review.
614 + Waiting for review to conclude.
615 + cf. <20161208014623.7588-1-sbeller@google.com>
616
617
618 * dt/empty-submodule-in-merge (2016-11-17) 1 commit
490 - - submodules: allow empty working-tree dirs in merge/cherry-pick
619 + (merged to 'next' on 2016-12-12 at 6de2350b2b)
620 + + submodules: allow empty working-tree dirs in merge/cherry-pick
621
622 An empty directory in a working tree that can simply be nuked used
623 to interfere while merging or cherry-picking a change to create a
624 submodule directory there, which has been fixed..
625
496 - Will merge to 'next'.
626 + Will merge to 'master'.
627
628
629 * bw/grep-recurse-submodules (2016-11-22) 6 commits
@@ -582,15 +712,16 @@ of the repositories listed at
712 Will cook in 'next'.
713
714
585 -* kn/ref-filter-branch-list (2016-11-15) 18 commits
586 - - for-each-ref: do not segv with %(HEAD) on an unborn branch
715 +* kn/ref-filter-branch-list (2016-12-08) 20 commits
716 - branch: implement '--format' option
717 - branch: use ref-filter printing APIs
718 - branch, tag: use porcelain output
719 - ref-filter: allow porcelain to translate messages in the output
591 - - ref-filter: add `:dir` and `:base` options for ref printing atoms
720 + - ref-filter: add an 'rstrip=<N>' option to atoms which deal with refnames
721 + - ref-filter: modify the 'lstrip=<N>' option to work with negative '<N>'
722 + - ref-filter: rename the 'strip' option to 'lstrip'
723 - ref-filter: make remote_ref_atom_parser() use refname_atom_parser_internal()
593 - - ref-filter: introduce symref_atom_parser() and refname_atom_parser()
724 + - ref-filter: introduce refname_atom_parser()
725 - ref-filter: introduce refname_atom_parser_internal()
726 - ref-filter: make "%(symref)" atom work with the ':short' modifier
727 - ref-filter: add support for %(upstream:track,nobracket)
@@ -601,15 +732,12 @@ of the repositories listed at
732 - ref-filter: implement %(if:equals=<string>) and %(if:notequals=<string>)
733 - ref-filter: include reference to 'used_atom' within 'atom_value'
734 - ref-filter: implement %(if), %(then), and %(else) atoms
735 + - for-each-ref: do not segv with %(HEAD) on an unborn branch
736
737 The code to list branches in "git branch" has been consolidated
738 with the more generic ref-filter API.
739
740 Rerolled, reviewed, looking good.
609 - Expecting a reroll.
610 - cf. <20161108201211.25213-1-Karthik.188@gmail.com>
611 - cf. <CAOLa=ZQqe3vEj_428d41vd_4kfjzsm87Wam6Zm2dhXWkPdJ8Rw@mail.gmail.com>
612 - cf. <xmqq7f84tqa7.fsf_-_@gitster.mtv.corp.google.com>
741
742
743 * bw/transport-protocol-policy (2016-12-05) 5 commits
@@ -664,28 +792,31 @@ of the repositories listed at
792
793
794 * jt/use-trailer-api-in-commands (2016-11-29) 5 commits
667 - - sequencer: use trailer's trailer layout
668 - - trailer: have function to describe trailer layout
669 - - trailer: avoid unnecessary splitting on lines
670 - - commit: make ignore_non_trailer take buf/len
671 - - trailer: be stricter in parsing separators
795 + (merged to 'next' on 2016-12-12 at da1f140ad4)
796 + + sequencer: use trailer's trailer layout
797 + + trailer: have function to describe trailer layout
798 + + trailer: avoid unnecessary splitting on lines
799 + + commit: make ignore_non_trailer take buf/len
800 + + trailer: be stricter in parsing separators
801 + (this branch is used by jk/trailers-placeholder-in-pretty.)
802
803 Commands that operate on a log message and add lines to the trailer
804 blocks, such as "format-patch -s", "cherry-pick (-x|-s)", and
805 "commit -s", have been taught to use the logic of and share the
806 code with "git interpret-trailer".
807
678 - Will merge to 'next'.
808 + Will merge to 'master'.
809
810
681 -* nd/rebase-forget (2016-11-28) 1 commit
682 - - rebase: add --forget to cleanup rebase, leave everything else untouched
811 +* nd/rebase-forget (2016-12-11) 1 commit
812 + (merged to 'next' on 2016-12-12 at 50b5d28af4)
813 + + rebase: add --quit to cleanup rebase, leave everything else untouched
814
815 "git rebase" learned "--forget" option, which allows a user to
816 remove the metadata left by an earlier "git rebase" that was
817 manually aborted without using "git rebase --abort".
818
688 - Will merge to 'next'.
819 + Will merge to 'master'.
820
821
822 * jc/git-open-cloexec (2016-11-02) 3 commits
@@ -891,8 +1022,11 @@ of the repositories listed at
1022 Will cook in 'next'.
1023
1024
894 -* sg/fix-versioncmp-with-common-suffix (2016-09-08) 5 commits
895 - - versioncmp: cope with common leading parts in versionsort.prereleaseSuffix
1025 +* sg/fix-versioncmp-with-common-suffix (2016-12-08) 8 commits
1026 + - versioncmp: generalize version sort suffix reordering
1027 + - squash! versioncmp: use earliest-longest contained suffix to determine sorting order
1028 + - versioncmp: use earliest-longest contained suffix to determine sorting order
1029 + - versioncmp: cope with common part overlapping with prerelease suffix
1030 - versioncmp: pass full tagnames to swap_prereleases()
1031 - t7004-tag: add version sort tests to show prerelease reordering issues
1032 - t7004-tag: use test_config helper
@@ -903,8 +1037,8 @@ of the repositories listed at
1037 same release were present (e.g. when 2.0, 2.0-beta1, and 2.0-beta2
1038 are there and the code needs to compare 2.0-beta1 and 2.0-beta2).
1039
906 - Waiting for a reroll.
907 - cf. <20160908223727.Horde.jVOOJ278ssZ3qkyjkmyqZD-@webmail.informatik.kit.edu>
1040 + Waiting for review.
1041 + cf. <20161208142401.1329-1-szeder.dev@gmail.com>
1042
1043
1044 * jc/pull-rebase-ff (2016-11-29) 1 commit