What's cooking (2016/09 #08)

Junio C Hamano committed Sep 27, 2016 at 16:19 UTC 282784bb23c321541747cc53c69c738ef5d3ae09
1 file changed +377 -224
whats-cooking.txt
+377 -224
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Sep 2016, #07; Fri, 23)
4 -X-master-at: 6fe1b1407ed91823daa5d487abe457ff37463349
5 -X-next-at: 0d124844aa5dddf553b9ab078d43c935bb585135
3 +Subject: What's cooking in git.git (Sep 2016, #08; Tue, 27)
4 +X-master-at: 21f862b498925194f8f1ebe8203b7a7df756555b
5 +X-next-at: 59e95dbc0e21ff4f326eb160a9f4c21e1a059f56
6
7 -What's cooking in git.git (Sep 2016, #07; Fri, 23)
7 +What's cooking in git.git (Sep 2016, #08; Tue, 27)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -12,22 +12,52 @@ 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 -A bunch of topics have graduated to 'next', including a few that
16 -were so far marked as "needs review" or "will hold", as I think
17 -giving them a greater visibility and guinea pigs would be the most
18 -efficient way to get feedback from the real world ;-) Some of them
19 -may be "Meh" topic, which might be why they weren't getting any
20 -feedback so far, but at least this way we'd know if there are
21 -breakages in them (in which case we can just revert and discard
22 -them).
23 -
15 You can find the changes described here in the integration branches
16 of the repositories listed at
17
18 http://git-blame.blogspot.com/p/git-public-repositories.html
19
20 --------------------------------------------------
30 -[New Topics]
21 +[Graduated to "master"]
22 +
23 +* mh/diff-indent-heuristic (2016-09-19) 8 commits
24 + (merged to 'next' on 2016-09-22 at e71d742)
25 + + blame: honor the diff heuristic options and config
26 + + parse-options: add parse_opt_unknown_cb()
27 + + diff: improve positioning of add/delete blocks in diffs
28 + + xdl_change_compact(): introduce the concept of a change group
29 + + recs_match(): take two xrecord_t pointers as arguments
30 + + is_blank_line(): take a single xrecord_t as argument
31 + + xdl_change_compact(): only use heuristic if group can't be matched
32 + + xdl_change_compact(): fix compaction heuristic to adjust ixo
33 +
34 + Output from "git diff" can be made easier to read by selecting
35 + which lines are common and which lines are added/deleted
36 + intelligently when the lines before and after the changed section
37 + are the same. A command line option is added to help with the
38 + experiment to find a good heuristics.
39 + * mh/diff-indent-heuristic (2016-09-27) 1 commit
40 + - xdiff: rename "struct group" to "struct xdlgroup"
41 +
42 + Clean-up for a recently graduated topic.
43 +
44 +
45 +* rs/cocci (2016-09-15) 3 commits
46 + (merged to 'next' on 2016-09-22 at aa54fa4)
47 + + use strbuf_addstr() for adding constant strings to a strbuf, part 2
48 + + add coccicheck make target
49 + + contrib/coccinelle: fix semantic patch for oid_to_hex_r()
50 +
51 + Code cleanup.
52 +
53 +
54 +* ep/doc-check-ref-format-example (2016-09-21) 1 commit
55 + (merged to 'next' on 2016-09-22 at 6d0d79e)
56 + + git-check-ref-format.txt: fixup documentation
57 +
58 + A shell script example in check-ref-format documentation has been
59 + fixed.
60 +
61
62 * jk/clone-recursive-progress (2016-09-22) 1 commit
63 (merged to 'next' on 2016-09-22 at 8310c42)
@@ -36,8 +66,6 @@ of the repositories listed at
66 "git clone --recurse-submodules" lost the progress eye-candy in
67 recent update, which has been corrected.
68
39 - Will merge to 'master'.
40 -
69
70 * jk/doc-cvs-update (2016-09-22) 3 commits
71 (merged to 'next' on 2016-09-22 at c0f949f)
@@ -47,29 +75,73 @@ of the repositories listed at
75
76 Documentation around tools to import from CVS was fairly outdated.
77
50 - Will merge to 'master'.
78
79 +* js/regexec-buf (2016-09-21) 3 commits
80 + (merged to 'next' on 2016-09-22 at 2ee2477)
81 + + regex: use regexec_buf()
82 + + regex: add regexec_buf() that can work on a non NUL-terminated string
83 + + regex: -G<pattern> feeds a non NUL-terminated string to regexec() and fails
84
53 -* jk/verify-packfile-gently (2016-09-22) 1 commit
54 - - verify_packfile: check pack validity before accessing data
85 + Some codepaths in "git diff" used regexec(3) on a buffer that was
86 + mmap(2)ed, which may not have a terminating NUL, leading to a read
87 + beyond the end of the mapped region. This was fixed by introducing
88 + a regexec_buf() helper that takes a <ptr,len> pair with REG_STARTEND
89 + extension.
90
56 - A low-level function verify_packfile() was meant to show errors
57 - detected without dying itself, but under some conditions it didn't
58 - and died instead, which has been fixed.
91
60 - Will merge to 'next'.
92 +* jt/format-patch-rfc (2016-09-21) 1 commit
93 + (merged to 'next' on 2016-09-22 at 3b39442)
94 + + format-patch: add "--rfc" for the common case of [RFC PATCH]
95
96 + In some projects, it is common to use "[RFC PATCH]" as the subject
97 + prefix for a patch meant for discussion rather than application. A
98 + new option "--rfc" was a short-hand for "--subject-prefix=RFC PATCH"
99 + to help the participants of such projects.
100
63 -* jt/fetch-pack-in-vain-count-with-stateless (2016-09-23) 1 commit
64 - - fetch-pack: do not reset in_vain on non-novel acks
101
66 - When "git fetch" tries to find where the history it has diverged
67 - from what the other side has, it has a mechanism to avoid digging
68 - too deep into irrelevant side branches. This however did not work
69 - well over the "smart-http" transport due to a design bug, which has
70 - been fixed.
102 +* ls/travis-homebrew-path-fix (2016-09-22) 1 commit
103 + (merged to 'next' on 2016-09-22 at 310e620)
104 + + travis-ci: ask homebrew for its path instead of hardcoding it
105 +
106 + The procedure to build Git on Mac OS X for Travis CI hardcoded the
107 + internal directory structure we assumed HomeBrew uses, which was a
108 + no-no. The procedure has been updated to ask HomeBrew things we
109 + need to know to fix this.
110
72 - Will merge to 'next'.
111 +
112 +* mm/config-color-ui-default-to-auto (2016-09-16) 1 commit
113 + (merged to 'next' on 2016-09-22 at 4eac0cb)
114 + + Documentation/config: default for color.* is color.ui
115 +
116 + Documentation for individual configuration variables to control use
117 + of color (like `color.grep`) said that their default value is
118 + 'false', instead of saying their default is taken from `color.ui`.
119 + When we updated the default value for color.ui from 'false' to
120 + 'auto' quite a while ago, all of them broke. This has been
121 + corrected.
122 +
123 +
124 +* nd/checkout-disambiguation (2016-09-21) 3 commits
125 + (merged to 'next' on 2016-09-22 at ebfa365)
126 + + checkout: fix ambiguity check in subdir
127 + + checkout.txt: document a common case that ignores ambiguation rules
128 + + checkout: add some spaces between code and comment
129 +
130 + "git checkout <word>" does not follow the usual disambiguation
131 + rules when the <word> can be both a rev and a path, to allow
132 + checking out a branch 'foo' in a project that happens to have a
133 + file 'foo' in the working tree without having to disambiguate.
134 + This was poorly documented and the check was incorrect when the
135 + command was run from a subdirectory.
136 +
137 +
138 +* rs/c-auto-resets-attributes (2016-09-19) 1 commit
139 + (merged to 'next' on 2016-09-22 at 68f2e4a)
140 + + pretty: let %C(auto) reset all attributes
141 +
142 + The pretty-format specifier "%C(auto)" used by the "log" family of
143 + commands to enable coloring of the output is taught to also issue a
144 + color-reset sequence to the output.
145
146
147 * rs/checkout-init-macro (2016-09-22) 1 commit
@@ -78,29 +150,220 @@ of the repositories listed at
150
151 Code cleanup.
152
153 +
154 +* rt/rebase-i-broken-insn-advise (2016-09-07) 1 commit
155 + (merged to 'next' on 2016-09-23 at 0d12484)
156 + + rebase -i: improve advice on bad instruction lines
157 +
158 + When "git rebase -i" is given a broken instruction, it told the
159 + user to fix it with "--edit-todo", but didn't say what the step
160 + after that was (i.e. "--continue").
161 +
162 +
163 +* tg/add-chmod+x-fix (2016-09-21) 6 commits
164 + (merged to 'next' on 2016-09-22 at 6afdd21)
165 + + t3700-add: do not check working tree file mode without POSIXPERM
166 + + t3700-add: create subdirectory gently
167 + + add: modify already added files when --chmod is given
168 + + read-cache: introduce chmod_index_entry
169 + + update-index: add test for chmod flags
170 + + Merge branch 'ib/t3700-add-chmod-x-updates' into tg/add-chmod+x-fix
171 +
172 + "git add --chmod=+x <pathspec>" added recently only toggled the
173 + executable bit for paths that are either new or modified. This has
174 + been corrected to flip the executable bit for all paths that match
175 + the given pathspec.
176 +
177 +
178 +* va/i18n-more (2016-09-21) 6 commits
179 + (merged to 'next' on 2016-09-22 at bea26e8)
180 + + i18n: stash: mark messages for translation
181 + + i18n: notes-merge: mark die messages for translation
182 + + i18n: ident: mark hint for translation
183 + + i18n: i18n: diff: mark die messages for translation
184 + + i18n: connect: mark die messages for translation
185 + + i18n: commit: mark message for translation
186 +
187 + Even more i18n.
188 +
189 +--------------------------------------------------
190 +[New Topics]
191 +
192 +* mh/diff-indent-heuristic (2016-09-27) 1 commit
193 + (merged to 'next' on 2016-09-27 at 3d6fb66)
194 + + xdiff: rename "struct group" to "struct xdlgroup"
195 +
196 + Clean-up for a recently graduated topic.
197 +
198 Will merge to 'master'.
199
200
84 -* ik/gitweb-force-highlight (2016-09-23) 2 commits
85 - - gitweb: use highlight's shebang detection
86 - - gitweb: remove unused paarmeter from guess_file_syntax()
201 +* rs/cocci (2016-09-27) 3 commits
202 + - use strbuf_add_unique_abbrev() for adding short hashes, part 2
203 + - use strbuf_addstr() instead of strbuf_addf() with "%s", part 2
204 + - gitignore: ignore output files of coccicheck make target
205
88 - "gitweb" can spawn "highlight" to show blob contents with
89 - (programming) language-specific syntax highlighting, but only
90 - when the language is known. "highlight" can however be told
91 - to make the guess itself by giving it "--force" option, which
92 - has been enabled.
206 + Code clean-up with help from coccinelle tool continues.
207
94 - Waiting for the discussion to conclude.
95 - cf. <2a4c3efb-2145-b699-c980-3079f165a6e1@gmail.com>
208 + Will merge to 'next'.
209
210
98 -* jk/ident-ai-canonname-could-be-null (2016-09-23) 1 commit
99 - - ident: handle NULL ai_canonname
211 +* jc/verify-loose-object-header (2016-09-26) 2 commits
212 + (merged to 'next' on 2016-09-27 at 2947f95)
213 + + unpack_sha1_header(): detect malformed object header
214 + + streaming: make sure to notice corrupt object
215 +
216 + Codepaths that read from an on-disk loose object were too loose in
217 + validating what they are reading is a proper object file and
218 + sometimes read past the data they read from the disk, which has
219 + been corrected. H/t to Gustavo Grieco for reporting.
220 +
221 + Will merge to 'master'.
222 +
223 +
224 +* jk/ambiguous-short-object-names (2016-09-27) 11 commits
225 + - get_short_sha1: make default disambiguation configurable
226 + - get_short_sha1: list ambiguous objects on error
227 + - for_each_abbrev: drop duplicate objects
228 + - sha1_array: let callbacks interrupt iteration
229 + - get_short_sha1: mark ambiguity error for translation
230 + - get_short_sha1: NUL-terminate hex prefix
231 + - get_short_sha1: refactor init of disambiguation code
232 + - get_short_sha1: parse tags when looking for treeish
233 + - get_sha1: propagate flags to child functions
234 + - get_sha1: avoid repeating ourselves via ONLY_TO_DIE
235 + - get_sha1: detect buggy calls with multiple disambiguators
236 +
237 + When given an abbreviated object name that is not (or more
238 + realistically, "no longer") unique, we gave a fatal error
239 + "ambiguous argument". This error is now accompanied by hints that
240 + lists the objects that begins with the given prefix. During the
241 + course of development of this new feature, numerous minor bugs were
242 + uncovered and corrected, the most notable one of which is that we
243 + gave "short SHA1 xxxx is ambiguous." twice without good reason.
244 +
245 + Will merge to 'next'.
246 +
247 +
248 +* rs/copy-array (2016-09-25) 2 commits
249 + (merged to 'next' on 2016-09-27 at c92e020)
250 + + use COPY_ARRAY
251 + + add COPY_ARRAY
252 +
253 + Code cleanup.
254 +
255 + Will merge to 'master'.
256 +
257 +
258 +* rs/git-gui-use-modern-git-merge-syntax (2016-09-26) 2 commits
259 + (merged to 'next' on 2016-09-27 at f55850d)
260 + + Merge branch 'rs/use-modern-git-merge-syntax' of git-gui into rs/git-gui-use-modern-git-merge-syntax
261 + + git-gui: stop using deprecated merge syntax
262 +
263 + The original command line syntax for "git merge", which was "git
264 + merge <msg> HEAD <parent>...", has been deprecated for quite some
265 + time, and "git gui" was the last in-tree user of the syntax. This
266 + is finally fixed, so that we can move forward with the deprecation.
267 +
268 + Will merge to 'master'.
269
101 - In the codepath that comes up with the hostname to be used in an
102 - e-mail when the user didn't tell us, we looked at ai_canonname
103 - field in struct addrinfo without making sure it is not NULL first.
270 +
271 +* va/git-gui-i18n (2016-09-26) 3 commits
272 + (merged to 'next' on 2016-09-27 at ab0f66f)
273 + + Merge branch 'va/i18n' of ../git-gui into va/git-gui-i18n
274 + + git-gui: l10n: add Portuguese translation
275 + + git-gui i18n: mark strings for translation
276 +
277 + "git gui" l10n to Portuguese.
278 +
279 + Will merge to 'master'.
280 +
281 +
282 +* va/i18n-perl-scripts (2016-09-25) 11 commits
283 + - i18n: difftool: mark warnings for translation
284 + - i18n: send-email: mark string with interpolation for translation
285 + - i18n: send-email: mark warnings and errors for translation
286 + - i18n: send-email: mark strings for translation
287 + - i18n: add--interactive: mark edit_hunk_manually message for translation
288 + - i18n: add--interactive: i18n of help_patch_cmd
289 + - i18n: add--interactive: mark message for translation
290 + - i18n: add--interactive: mark plural strings
291 + - i18n: add--interactive: mark strings with interpolation for translation
292 + - i18n: add--interactive: mark simple here documents for translation
293 + - i18n: add--interactive: mark strings for translation
294 +
295 + Porcelain scripts written in Perl are getting internationalized.
296 +
297 + Waiting for a reroll.
298 + cf. <1474913721.1035.9.camel@sapo.pt>
299 +
300 +
301 +* vn/revision-shorthand-for-side-branch-log (2016-09-27) 1 commit
302 + - revision: new rev^-n shorthand for rev^n..rev
303 +
304 + "git log rev^..rev" is an often-used revision range specification
305 + to show what was done on a side branch merged at rev, which has
306 + gained a short-hand "rev^-1". In general "rev^-$n" is the same as
307 + "^rev^$n rev", i.e. what was done while the history leading to nth
308 + parent was looking the other way.
309 +
310 + Will merge to 'next'.
311 +
312 +
313 +* dt/mailinfo (2016-09-26) 1 commit
314 + (merged to 'next' on 2016-09-27 at 59e95db)
315 + + add David Turner's Two Sigma address
316 +
317 + Will merge to 'master'.
318 +
319 +
320 +* dt/tree-fsck (2016-09-27) 2 commits
321 + - fsck: handle bad trees like other errors
322 + - tree-walk: be more specific about corrupt tree errors
323 +
324 + The codepath in "git fsck" to detect malformed tree objects has
325 + been updated not to die but keep going after detecting them.
326 +
327 + Will merge to 'next'.
328 +
329 +
330 +* jc/latin-1 (2016-09-26) 2 commits
331 + - utf8: accept "latin-1" as ISO-8859-1
332 + - utf8: refactor code to decide fallback encoding
333 +
334 + Some platforms no longer understand "latin-1" that is still seen in
335 + the wild in e-mail headers; replace them with "iso-8859-1" that is
336 + more widely known when conversion fails from/to it.
337 +
338 + Will merge to 'next'.
339 +
340 +
341 +* jc/worktree-config (2016-09-27) 1 commit
342 + - worktree: honor configuration variables
343 +
344 + "git worktree", even though it used the default_abbrev setting that
345 + ought to be affected by core.abbrev configuration variable, ignored
346 + the variable setting. The command has been taught to read the
347 + default set of configuration variables to correct this.
348 +
349 + Will merge to 'next'.
350 +
351 +
352 +* mg/gpg-richer-status (2016-09-27) 1 commit
353 + - gpg-interface: use more status letters
354 +
355 + The GPG verification status shown in "%G?" pretty format specifier
356 + was not rich enough to differentiate a signature made by an expired
357 + key, a signature made by a revoked key, etc. New output letters
358 + have been assigned to express them.
359 +
360 + Will merge to 'next'.
361 +
362 +
363 +* pb/rev-list-reverse-with-count (2016-09-27) 1 commit
364 + - rev-list-options: clarify the usage of --reverse
365 +
366 + Doc update.
367
368 Will merge to 'next'.
369
@@ -405,73 +668,75 @@ of the repositories listed at
668 --------------------------------------------------
669 [Cooking]
670
408 -* jc/blame-reverse (2016-06-14) 2 commits
409 - (merged to 'next' on 2016-09-22 at d1a8e9c)
410 - + blame: dwim "blame --reverse OLD" as "blame --reverse OLD.."
411 - + blame: improve diagnosis for "--reverse NEW"
671 +* jk/verify-packfile-gently (2016-09-22) 1 commit
672 + (merged to 'next' on 2016-09-26 at f5abba5)
673 + + verify_packfile: check pack validity before accessing data
674
413 - It is a common mistake to say "git blame --reverse OLD path",
414 - expecting that the command line is dwimmed as if asking how lines
415 - in path in an old revision OLD have survived up to the current
416 - commit.
675 + A low-level function verify_packfile() was meant to show errors
676 + that were detected without dying itself, but under some conditions
677 + it didn't and died instead, which has been fixed.
678
418 - Will hold to see if it is broken.
679 + Will merge to 'master'.
680
681
421 -* ep/doc-check-ref-format-example (2016-09-21) 1 commit
422 - (merged to 'next' on 2016-09-22 at 6d0d79e)
423 - + git-check-ref-format.txt: fixup documentation
682 +* jt/fetch-pack-in-vain-count-with-stateless (2016-09-23) 1 commit
683 + (merged to 'next' on 2016-09-26 at 9645629)
684 + + fetch-pack: do not reset in_vain on non-novel acks
685
425 - A shell script example in check-ref-format documentation has been
426 - fixed.
686 + When "git fetch" tries to find where the history of the repository
687 + it runs inhas diverged from what the other side has, it has a
688 + mechanism to avoid digging too deep into irrelevant side branches.
689 + This however did not work well over the "smart-http" transport due
690 + to a design bug, which has been fixed.
691
692 Will merge to 'master'.
693
694
431 -* js/regexec-buf (2016-09-21) 3 commits
432 - (merged to 'next' on 2016-09-22 at 2ee2477)
433 - + regex: use regexec_buf()
434 - + regex: add regexec_buf() that can work on a non NUL-terminated string
435 - + regex: -G<pattern> feeds a non NUL-terminated string to regexec() and fails
695 +* ik/gitweb-force-highlight (2016-09-25) 2 commits
696 + (merged to 'next' on 2016-09-27 at cbb8391)
697 + + gitweb: use highlight's shebang detection
698 + + gitweb: remove unused guess_file_syntax() parameter
699
437 - Some codepaths in "git diff" used regexec(3) on a buffer that was
438 - mmap(2)ed, which may not have a terminating NUL, leading to a read
439 - beyond the end of the mapped region. This was fixed by introducing
440 - a regexec_buf() helper that takes a <ptr,len> pair with REG_STARTEND
441 - extension.
700 + "gitweb" can spawn "highlight" to show blob contents with
701 + (programming) language-specific syntax highlighting, but only
702 + when the language is known. "highlight" can however be told
703 + to make the guess itself by giving it "--force" option, which
704 + has been enabled.
705
706 Will merge to 'master'.
707
708
446 -* jt/format-patch-rfc (2016-09-21) 1 commit
447 - (merged to 'next' on 2016-09-22 at 3b39442)
448 - + format-patch: add "--rfc" for the common case of [RFC PATCH]
709 +* jk/ident-ai-canonname-could-be-null (2016-09-23) 1 commit
710 + (merged to 'next' on 2016-09-26 at 0eefb29)
711 + + ident: handle NULL ai_canonname
712
450 - In some projects, it is common to use "[RFC PATCH]" as the subject
451 - prefix for a patch meant for discussion rather than application. A
452 - new option "--rfc" was a short-hand for "--subject-prefix=RFC PATCH"
453 - to help the participants of such projects.
713 + In the codepath that comes up with the hostname to be used in an
714 + e-mail when the user didn't tell us, we looked at ai_canonname
715 + field in struct addrinfo without making sure it is not NULL first.
716
717 Will merge to 'master'.
718
719
458 -* ls/travis-homebrew-path-fix (2016-09-22) 1 commit
459 - (merged to 'next' on 2016-09-22 at 310e620)
460 - + travis-ci: ask homebrew for its path instead of hardcoding it
720 +* jc/blame-reverse (2016-06-14) 2 commits
721 + (merged to 'next' on 2016-09-22 at d1a8e9c)
722 + + blame: dwim "blame --reverse OLD" as "blame --reverse OLD.."
723 + + blame: improve diagnosis for "--reverse NEW"
724
462 - The procedure to build Git on Mac OS X for Travis CI hardcoded the
463 - internal directory structure we assumed HomeBrew uses, which was a
464 - no-no. The procedure has been updated to ask HomeBrew things we
465 - need to know to fix this.
725 + It is a common mistake to say "git blame --reverse OLD path",
726 + expecting that the command line is dwimmed as if asking how lines
727 + in path in an old revision OLD have survived up to the current
728 + commit.
729
467 - Will merge to 'master'.
730 + Will hold to see if it is broken.
731
732
470 -* nd/init-core-worktree-in-multi-worktree-world (2016-09-23) 4 commits
471 - - init: combine set_git_dir_init() and init_db() into one
472 - - init: reuse original_git_dir in set_git_dir_init()
473 - - init: do not set core.worktree more often than necessary
474 - - init: correct re-initialization from a linked worktree
733 +* nd/init-core-worktree-in-multi-worktree-world (2016-09-25) 5 commits
734 + (merged to 'next' on 2016-09-27 at 619f7f3)
735 + + init: kill git_link variable
736 + + init: do not set unnecessary core.worktree
737 + + init: kill set_git_dir_init()
738 + + init: call set_git_dir_init() from within init_db()
739 + + init: correct re-initialization from a linked worktree
740
741 "git init" tried to record core.worktree in the repository's
742 'config' file when GIT_WORK_TREE environment variable was set and
@@ -480,83 +745,34 @@ of the repositories listed at
745 at the real place, causing trouble in working trees that are
746 managed by "git worktree". This has been corrected.
747
483 - The fourth one seems to need a bit more polishing.
484 - cf. <xmqqshsqz0s1.fsf@gitster.mtv.corp.google.com>
485 -
486 -
487 -* mm/config-color-ui-default-to-auto (2016-09-16) 1 commit
488 - (merged to 'next' on 2016-09-22 at 4eac0cb)
489 - + Documentation/config: default for color.* is color.ui
490 -
491 - Documentation for individual configuration variables to control use
492 - of color (like `color.grep`) said that their default value was
493 - 'false', instead of saying their default is taken from `color.ui`.
494 - When we updated the default value for color.ui from 'false' to
495 - 'auto' quite a while ago, all of them broke. This has been
496 - corrected.
497 -
498 - Will merge to 'master'.
499 -
500 -
501 -* rs/c-auto-resets-attributes (2016-09-19) 1 commit
502 - (merged to 'next' on 2016-09-22 at 68f2e4a)
503 - + pretty: let %C(auto) reset all attributes
504 -
505 - The pretty-format specifier used by the "log" family of commands
506 - have "%C(auto)" to enable coloring of the output is taught to also
507 - issue a color-reset sequence to the output.
508 -
509 - Will merge to 'master'.
510 -
511 -
512 -* rs/cocci (2016-09-15) 3 commits
513 - (merged to 'next' on 2016-09-22 at aa54fa4)
514 - + use strbuf_addstr() for adding constant strings to a strbuf, part 2
515 - + add coccicheck make target
516 - + contrib/coccinelle: fix semantic patch for oid_to_hex_r()
517 -
518 - Code cleanup.
519 -
520 - Will merge to 'master'.
521 -
522 -
523 -* va/i18n-more (2016-09-21) 6 commits
524 - (merged to 'next' on 2016-09-22 at bea26e8)
525 - + i18n: stash: mark messages for translation
526 - + i18n: notes-merge: mark die messages for translation
527 - + i18n: ident: mark hint for translation
528 - + i18n: i18n: diff: mark die messages for translation
529 - + i18n: connect: mark die messages for translation
530 - + i18n: commit: mark message for translation
531 -
532 - Even more i18n.
533 -
748 Will merge to 'master'.
749
750
751 * jt/mailinfo-fold-in-body-headers (2016-09-21) 3 commits
538 - - mailinfo: handle in-body header continuations
539 - - mailinfo: make is_scissors_line take plain char *
540 - - mailinfo: separate in-body header processing
752 + (merged to 'next' on 2016-09-26 at 4235eb6)
753 + + mailinfo: handle in-body header continuations
754 + + mailinfo: make is_scissors_line take plain char *
755 + + mailinfo: separate in-body header processing
756
757 When "git format-patch --stdout" output is placed as an in-body
543 - header and it used the RFC2822 header folding, "git am" failed to
544 - notice and put the header line back into a single logical line.
545 - The underlying "git mailinfo" was taught to handle this properly.
758 + header and it uses the RFC2822 header folding, "git am" failed to
759 + put the header line back into a single logical line. The
760 + underlying "git mailinfo" was taught to handle this properly.
761
547 - Will merge to 'next'.
762 + Will merge to 'master'.
763
764
550 -* kd/mailinfo-quoted-string (2016-09-19) 2 commits
765 +* kd/mailinfo-quoted-string (2016-09-26) 3 commits
766 - mailinfo: unescape quoted-pair in header fields
767 + - SQUASH???
768 - t5100-mailinfo: replace common path prefix with variable
769
770 An e-mail author named that spelled a backslash-quoted double quote
771 in the human readable part "My \"double quoted\" name" was not
772 unquoted correctly.
773
558 - Waiting for the discussion to conclude.
559 - cf. <20160920035710.qw2byl3qeqwih7t5@sigill.intra.peff.net>
774 + Waiting for a reroll.
775 + cf. <20160926194455.GB19089@ikke.info>
776
777
778 * js/libify-require-clean-work-tree (2016-09-12) 5 commits
@@ -576,23 +792,6 @@ of the repositories listed at
792 cf. <xmqqpoo92bdr.fsf@gitster.mtv.corp.google.com>
793
794
579 -* tg/add-chmod+x-fix (2016-09-21) 6 commits
580 - (merged to 'next' on 2016-09-22 at 6afdd21)
581 - + t3700-add: do not check working tree file mode without POSIXPERM
582 - + t3700-add: create subdirectory gently
583 - + add: modify already added files when --chmod is given
584 - + read-cache: introduce chmod_index_entry
585 - + update-index: add test for chmod flags
586 - + Merge branch 'ib/t3700-add-chmod-x-updates' into tg/add-chmod+x-fix
587 -
588 - "git add --chmod=+x <pathspec>" added recently only toggled the
589 - executable bit for paths that are either new or modified. This has
590 - been corrected to flip the executable bit for all paths that match
591 - the given pathspec.
592 -
593 - Will merge to 'master'.
594 -
595 -
795 * bw/ls-files-recurse-submodules (2016-09-21) 2 commits
796 - ls-files: add pathspec matching for submodules
797 - ls-files: optionally recurse into submodules
@@ -627,13 +826,8 @@ of the repositories listed at
826 all filtering need is served by this single process for multiple
827 paths, reducing the process creation overhead.
828
630 - Is this one ready to be merged?
631 -
829
633 -* hv/submodule-not-yet-pushed-fix (2016-09-15) 5 commits
634 - . SQUASH??? -Wdecl-after-stmt
635 - . use actual start hashes for submodule push check instead of local refs
636 - . batch check whether submodule needs pushing into one call
830 +* hv/submodule-not-yet-pushed-fix (2016-09-14) 2 commits
831 - serialize collection of refs that contain submodule changes
832 - serialize collection of changed submodules
833
@@ -641,37 +835,12 @@ of the repositories listed at
835 superproject binds a commit in a submodule that hasn't been pushed
836 out was overly inefficient, making it unusable even for a small
837 project that does not have any submodule but have a reasonable
644 - number of refs. This has been optimized.
838 + number of refs.
839
840 The last two in the original series seem to break a few tests when
647 - queued to 'pu'.
648 -
841 + queued to 'pu', and dropped for now.
842
650 -* rt/rebase-i-broken-insn-advise (2016-09-07) 1 commit
651 - (merged to 'next' on 2016-09-23 at 0d12484)
652 - + rebase -i: improve advice on bad instruction lines
653 -
654 - When "git rebase -i" is given a broken instruction, it told the
655 - user to fix it with "--edit-todo", but didn't say what the step
656 - after that was (i.e. "--continue").
657 -
658 - Will merge to 'master'.
659 -
660 -
661 -* nd/checkout-disambiguation (2016-09-21) 3 commits
662 - (merged to 'next' on 2016-09-22 at ebfa365)
663 - + checkout: fix ambiguity check in subdir
664 - + checkout.txt: document a common case that ignores ambiguation rules
665 - + checkout: add some spaces between code and comment
666 -
667 - "git checkout <word>" does not follow the usual disambiguation
668 - rules when the <word> can be both a rev and a path, to allow
669 - checking out a branch 'foo' in a project that happens to have a
670 - file 'foo' in the working tree without having to disambiguate.
671 - This was poorly documented and the check was incorrect when the
672 - command was run from a subdirectory.
673 -
674 - Will merge to 'master'.
843 + Waiting for a reroll.
844
845
846 * sg/fix-versioncmp-with-common-suffix (2016-09-08) 5 commits
@@ -706,8 +875,10 @@ of the repositories listed at
875
876 Turn the default of "push.recurseSubmodules" to "check".
877
709 - Alas, this reveals that the "check" mode is too inefficient to use
710 - in real projects, even in ones as small as git itself.
878 + Will hold to wait for hv/submodule-not-yet-pushed-fix
879 +
880 + This reveals that the "check" mode is too inefficient to use in
881 + real projects, even in ones as small as git itself.
882 cf. <xmqqh9aaot49.fsf@gitster.mtv.corp.google.com>
883
884
@@ -723,26 +894,6 @@ of the repositories listed at
894 Will hold to see if it is broken.
895
896
726 -* mh/diff-indent-heuristic (2016-09-19) 8 commits
727 - (merged to 'next' on 2016-09-22 at e71d742)
728 - + blame: honor the diff heuristic options and config
729 - + parse-options: add parse_opt_unknown_cb()
730 - + diff: improve positioning of add/delete blocks in diffs
731 - + xdl_change_compact(): introduce the concept of a change group
732 - + recs_match(): take two xrecord_t pointers as arguments
733 - + is_blank_line(): take a single xrecord_t as argument
734 - + xdl_change_compact(): only use heuristic if group can't be matched
735 - + xdl_change_compact(): fix compaction heuristic to adjust ixo
736 -
737 - Output from "git diff" can be made easier to read by selecting
738 - which lines are common and which lines are added/deleted
739 - intelligently when the lines before and after the changed section
740 - are the same. A command line option is added to help with the
741 - experiment to find a good heuristics.
742 -
743 - Will merge to 'master'.
744 -
745 -
897 * jk/pack-objects-optim-mru (2016-08-11) 4 commits
898 (merged to 'next' on 2016-09-21 at 97b919b)
899 + pack-objects: use mru list when iterating over packs
@@ -852,6 +1003,8 @@ of the repositories listed at
1003 which needs to be fixed before this final step can proceed.
1004 cf. <5671DB28.8020901@kdbg.org>
1005
1006 + Will hold to wait for rs/git-gui-use-modern-git-merge-syntax
1007 +
1008 --------------------------------------------------
1009 [Discarded]
1010