What's cooking (2016/06 #09)

Junio C Hamano committed Jun 27, 2016 at 16:20 UTC 2b74c924987b025d1312833f302c691a62445be2
1 file changed +436 -362
whats-cooking.txt
+436 -362
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Jun 2016, #08; Thu, 23)
4 -X-master-at: ab7797dbe95fff38d9265869ea367020046db118
5 -X-next-at: 44ae68fed1736e48fe3c8224731bdda76bb82e75
3 +Subject: What's cooking in git.git (Jun 2016, #09; Mon, 27)
4 +X-master-at: cf4c2cfe52be5bd973a4838f73a35d3959ce2f43
5 +X-next-at: 760e8615f44f1ce38bfde1e76620c8f8fb1bd5c2
6
7 -What's cooking in git.git (Jun 2016, #08; Thu, 23)
7 +What's cooking in git.git (Jun 2016, #09; Mon, 27)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -22,110 +22,309 @@ of the repositories listed at
22 http://git-blame.blogspot.com/p/git-public-repositories.html
23
24 --------------------------------------------------
25 -[New Topics]
25 +[Graduated to "master"]
26
27 -* ak/t7800-wo-readlink (2016-06-21) 1 commit
28 - - t7800: readlink may not be available
27 +* ap/git-svn-propset-doc (2016-06-15) 1 commit
28 + (merged to 'next' on 2016-06-22 at 5a34f7d)
29 + + git-svn: document the 'git svn propset' command
30
30 - One among four invocations of readlink(1) in our test suite has
31 - been rewritten so that the test can run on systems without the
32 - command (others are in valgrind test framework and t9802).
31 + "git svn propset" subcommand that was added in 2.3 days is
32 + documented now.
33
34 - Will merge to 'next'.
34
35 +* cc/apply-introduce-state (2016-06-06) 50 commits
36 + (merged to 'next' on 2016-06-20 at 4f205b8)
37 + + builtin/apply: remove misleading comment on lock_file field
38 + + builtin/apply: move 'newfd' global into 'struct apply_state'
39 + + builtin/apply: add 'lock_file' pointer into 'struct apply_state'
40 + + builtin/apply: move applying patches into apply_all_patches()
41 + + builtin/apply: move 'state' check into check_apply_state()
42 + + builtin/apply: move 'symlink_changes' global into 'struct apply_state'
43 + + builtin/apply: move 'fn_table' global into 'struct apply_state'
44 + + builtin/apply: move 'state_linenr' global into 'struct apply_state'
45 + + builtin/apply: move 'max_change' and 'max_len' into 'struct apply_state'
46 + + builtin/apply: move 'ws_ignore_action' into 'struct apply_state'
47 + + builtin/apply: move 'ws_error_action' into 'struct apply_state'
48 + + builtin/apply: move 'applied_after_fixing_ws' into 'struct apply_state'
49 + + builtin/apply: move 'squelch_whitespace_errors' into 'struct apply_state'
50 + + builtin/apply: remove whitespace_option arg from set_default_whitespace_mode()
51 + + builtin/apply: move 'whitespace_option' into 'struct apply_state'
52 + + builtin/apply: move 'whitespace_error' global into 'struct apply_state'
53 + + builtin/apply: move 'root' global into 'struct apply_state'
54 + + builtin/apply: move 'p_value_known' global into 'struct apply_state'
55 + + builtin/apply: move 'p_value' global into 'struct apply_state'
56 + + builtin/apply: move 'has_include' global into 'struct apply_state'
57 + + builtin/apply: move 'limit_by_name' global into 'struct apply_state'
58 + + builtin/apply: move 'patch_input_file' global into 'struct apply_state'
59 + + builtin/apply: move 'apply' global into 'struct apply_state'
60 + + builtin/apply: move 'p_context' global into 'struct apply_state'
61 + + builtin/apply: move 'fake_ancestor' global into 'struct apply_state'
62 + + builtin/apply: move 'line_termination' global into 'struct apply_state'
63 + + builtin/apply: move 'unsafe_paths' global into 'struct apply_state'
64 + + builtin/apply: move 'no_add' global into 'struct apply_state'
65 + + builtin/apply: move 'threeway' global into 'struct apply_state'
66 + + builtin/apply: move 'summary' global into 'struct apply_state'
67 + + builtin/apply: move 'numstat' global into 'struct apply_state'
68 + + builtin/apply: move 'diffstat' global into 'struct apply_state'
69 + + builtin/apply: move 'cached' global into 'struct apply_state'
70 + + builtin/apply: move 'allow_overlap' global into 'struct apply_state'
71 + + builtin/apply: move 'update_index' global into 'struct apply_state'
72 + + builtin/apply: move 'apply_verbosely' global into 'struct apply_state'
73 + + builtin/apply: move 'apply_with_reject' global into 'struct apply_state'
74 + + builtin/apply: move 'apply_in_reverse' global into 'struct apply_state'
75 + + builtin/apply: move 'check_index' global into 'struct apply_state'
76 + + builtin/apply: move 'check' global into 'struct apply_state'
77 + + builtin/apply: move 'unidiff_zero' global into 'struct apply_state'
78 + + builtin/apply: move 'state' init into init_apply_state()
79 + + builtin/apply: introduce 'struct apply_state' to start libifying
80 + + builtin/apply: move 'read_stdin' global into cmd_apply()
81 + + builtin/apply: move 'options' variable into cmd_apply()
82 + + builtin/apply: extract line_by_line_fuzzy_match() from match_fragment()
83 + + builtin/apply: avoid local variable shadowing 'len' parameter
84 + + builtin/apply: avoid parameter shadowing 'linenr' global
85 + + builtin/apply: avoid parameter shadowing 'p_value' global
86 + + builtin/apply: make gitdiff_verify_name() return void
87
37 -* js/perf-on-apple (2016-06-21) 1 commit
38 - - perf: accommodate for MacOSX
88 + Originally merged to 'next' on 2016-06-06
89
40 - t/perf needs /usr/bin/time with GNU extension; the invocation of it
41 - is updated to "gtime" on Darwin.
90 + The "git apply" standalone program is being libified; this is the
91 + first step to move many state variables into a structure that can
92 + be explicitly (re)initialized to make the machinery callable more
93 + than once.
94
43 - Will merge to 'next'.
95 + The next step that moves some remaining state variables into the
96 + structure and turns die()s into an error return that propagates up
97 + to the caller is not queued yet but in flight. It would be good to
98 + review the above first and give the remainder of the series a solid
99 + base to build on.
100
101
46 -* sb/t5614-modernize (2016-06-21) 1 commit
47 - - t5614: don't use subshells
48 - (this branch uses sb/clone-shallow-passthru.)
102 +* dn/gpg-doc (2016-06-16) 1 commit
103 + (merged to 'next' on 2016-06-22 at f467355)
104 + + Documentation: GPG capitalization
105
50 - Test clean-up.
106 + The documentation tries to consistently spell "GPG"; when
107 + referring to the specific program name, "gpg" is used.
108
52 - Will merge to 'next'.
109
110 +* em/newer-freebsd-shells-are-fine-with-returns (2016-06-17) 1 commit
111 + (merged to 'next' on 2016-06-22 at dbee33c)
112 + + rebase: update comment about FreeBSD /bin/sh
113
55 -* ao/p4-has-branch-prefix-fix (2016-06-22) 1 commit
56 - - git-p4: correct hasBranchPrefix verbose output
114 + Comments about misbehaving FreeBSD shells have been clarified with
115 + the version number (9.x and before are broken, newer ones are OK).
116
58 - A bug, which caused "git p4" while running under verbose mode to
59 - report paths that are omitted due to branch prefix incorrectly, has
60 - been fixed; the command said "Ignoring file outside of prefix" for
61 - paths that are _inside_.
117
63 - Will merge to 'next'.
118 +* et/add-chmod-x (2016-06-07) 1 commit
119 + (merged to 'next' on 2016-06-22 at 71d65a0)
120 + + add: add --chmod=+x / --chmod=-x options
121
122 + "git update-index --add --chmod=+x file" may be usable as an escape
123 + hatch, but not a friendly thing to force for people who do need to
124 + use it regularly. "git add --chmod=+x file" can be used instead.
125
66 -* cb/t7810-test-label-fix (2016-06-21) 1 commit
67 - - t7810: fix duplicated test title
126
69 - Test clean-up.
127 +* jc/deref-tag (2016-06-14) 1 commit
128 + (merged to 'next' on 2016-06-22 at 1075713)
129 + + blame, line-log: do not loop around deref_tag()
130
71 - Will merge to 'next'.
131 + Code clean-up.
132
133
74 -* jc/t2300-setup (2016-06-22) 1 commit
75 - - t2300: "git --exec-path" is not usable in $PATH on Windows as-is
134 +* jk/avoid-unbounded-alloca (2016-06-07) 1 commit
135 + (merged to 'next' on 2016-06-22 at 93feb23)
136 + + tree-diff: avoid alloca for large allocations
137
77 - Portability fix for Windows.
138 + A codepath that used alloca(3) to place an unbounded amount of data
139 + on the stack has been updated to avoid doing so.
140
79 - Will merge to 'next'.
141
142 +* jk/fetch-prune-doc (2016-06-14) 1 commit
143 + (merged to 'next' on 2016-06-22 at 6563376)
144 + + fetch: document that pruning happens before fetching
145 +
146 + Minor doc update.
147
82 -* jk/perf-any-version (2016-06-22) 2 commits
83 - - p4211: explicitly disable renames in no-rename test
84 - - t/perf: fix regression in testing older versions of git
148
86 - Allow t/perf framework to use the features from the most recent
87 - version of Git even when testing an older installed version.
149 +* lf/receive-pack-auto-gc-to-client (2016-06-06) 1 commit
150 + (merged to 'next' on 2016-06-22 at 92162f5)
151 + + receive-pack: send auto-gc output over sideband 2
152 +
153 + Messages that are generated by auto gc during "git push" on the
154 + receiving end are now passed back to the sending end in such a way
155 + that they are shown with "remote: " prefix to avoid confusing the
156 + users.
157 +
158 +
159 +* lv/status-say-working-tree-not-directory (2016-06-09) 1 commit
160 + (merged to 'next' on 2016-06-22 at c65c7c1)
161 + + Use "working tree" instead of "working directory" for git status
162 +
163 + "git status" used to say "working directory" when it meant "working
164 + tree".
165 +
166 +
167 +* mg/cherry-pick-multi-on-unborn (2016-06-06) 1 commit
168 + (merged to 'next' on 2016-06-22 at 183295b)
169 + + cherry-pick: allow to pick to unborn branches
170 +
171 + "git cherry-pick A" worked on an unborn branch, but "git
172 + cherry-pick A..B" didn't.
173 +
174 +
175 +* nb/gnome-keyring-build (2016-06-14) 1 commit
176 + (merged to 'next' on 2016-06-22 at 0dfb90c)
177 + + gnome-keyring: Don't hard-code pkg-config executable
178 +
179 + Build improvements for gnome-keyring (in contrib/)
180 +
181 +
182 +* pb/strbuf-read-file-doc (2016-06-14) 1 commit
183 + (merged to 'next' on 2016-06-22 at 10e4b4f)
184 + + strbuf: describe the return value of strbuf_read_file
185 +
186 + Minor doc update.
187 +
188 +
189 +* pc/occurred (2016-06-10) 2 commits
190 + (merged to 'next' on 2016-06-22 at ce0b944)
191 + + config.c: fix misspelt "occurred" in an error message
192 + + refs.h: fix misspelt "occurred" in a comment
193 +
194 + Typofix.
195 +
196 +
197 +* rj/compat-regex-size-max-fix (2016-06-06) 1 commit
198 + (merged to 'next' on 2016-06-22 at 376c5b1)
199 + + regex: fix a SIZE_MAX macro redefinition warning
200 +
201 + A compilation fix.
202 +
203 +
204 +* sg/reflog-past-root (2016-06-06) 1 commit
205 + (merged to 'next' on 2016-06-22 at c5d4e29)
206 + + reflog: continue walking the reflog past root commits
207 +
208 + "git reflog" stopped upon seeing an entry that denotes a branch
209 + creation event (aka "unborn"), which made it appear as if the
210 + reflog was truncated.
211 +
212 +
213 +* tb/complete-status (2016-06-10) 3 commits
214 + (merged to 'next' on 2016-06-22 at 44ae68f)
215 + + completion: add git status
216 + + completion: add __git_get_option_value helper
217 + + completion: factor out untracked file modes into a variable
218 +
219 + The completion script (in contrib/) learned to complete "git
220 + status" options.
221 +
222 +
223 +* tr/doc-tt (2016-06-08) 4 commits
224 + (merged to 'next' on 2016-06-22 at dc6df3b)
225 + + doc: change configuration variables format
226 + + doc: more consistency in environment variables format
227 + + doc: change environment variables format
228 + + doc: clearer rule about formatting literals
229 +
230 + The documentation set has been updated so that literal commands,
231 + configuration variables and environment variables are consistently
232 + typeset in fixed-width font and bold in manpages.
233 +
234 +
235 +* vs/prompt-avoid-unset-variable (2016-06-06) 1 commit
236 + (merged to 'next' on 2016-06-22 at 8bf21d3)
237 + + git-prompt.sh: Don't error on null ${ZSH,BASH}_VERSION, $short_sha
238 +
239 + The git-prompt scriptlet (in contrib/) was not friendly with those
240 + who uses "set -u", which has been fixed.
241 +
242 +--------------------------------------------------
243 +[New Topics]
244 +
245 +* jk/test-match-signal (2016-06-24) 4 commits
246 + - t/lib-git-daemon: use test_match_signal
247 + - test_must_fail: use test_match_signal
248 + - t0005: use test_match_signal as appropriate
249 + - tests: factor portable signal check out of t0005
250 +
251 + The test framework learned a new helper test_match_signal to check
252 + an exit code from getting killed by an expected signal.
253
254 Will merge to 'next'.
255
256
92 -* jn/preformatted-doc-url (2016-06-22) 1 commit
93 - - doc: git-htmldocs.googlecode.com is no more
257 +* ah/unpack-trees-advice-messages (2016-06-27) 1 commit
258 + - unpack-trees: fix English grammar in do-this-before-that messages
259
260 Will merge to 'next'.
261
262
98 -* ex/deprecate-empty-pathspec-as-match-all (2016-06-22) 1 commit
99 - - pathspec: warn on empty strings as pathspec
263 +* ew/gc-auto-pack-limit-fix (2016-06-27) 1 commit
264 + - gc: fix off-by-one error with gc.autoPackLimit
265
101 - An empty string used as a pathspec element has always meant
102 - 'everything matches', but it is too easy to write a script that
103 - finds a path to remove in $path and run 'git rm "$paht"', which
104 - ends up removing everything. Start warning about this use of an
105 - empty string used for 'everything matches' and ask users to use a
106 - more explicit '.' for that instead.
266 + "gc.autoPackLimit" when set to 1 should not trigger a repacking
267 + when there is only one pack, but the code counted poorly and did
268 + so.
269
108 - The hope is that existing users will not mind this change, and
109 - eventually the warning can be turned into a hard error, upgrading
110 - the deprecation into removal of this (mis)feature.
270 + Will merge to 'next'.
271
112 - Will wait for further comments for a bit before merging to 'next'.
272
273 +* nd/connect-ssh-command-config (2016-06-27) 1 commit
274 + - connect: read $GIT_SSH_COMMAND from config file
275
115 -* jk/ansi-color (2016-06-23) 7 commits
116 - - color: support strike-through attribute
117 - - color: support "italic" attribute
118 - - color: allow "no-" for negating attributes
119 - - color: refactor parse_attr
120 - - add skip_prefix_mem helper
121 - - doc: refactor description of color format
122 - - color: fix max-size comment
276 + A new configuration variable core.sshCommand to specify what value
277 + for GIT_SSH_COMMAND to use per repository.
278
124 - The output coloring scheme learned two new attributes, italic and
125 - strike, in addition to existing bold, reverse, etc.
279 +
280 +* nd/doc-new-command (2016-06-27) 1 commit
281 + - new-command.txt: correct the command description file
282 +
283 + Will merge to 'next'.
284 +
285 +
286 +* po/range-doc (2016-06-27) 3 commits
287 + - doc: give headings for the two and three dot notations
288 + - doc: show the actual left, right, and boundary marks
289 + - doc: use 'symmetric difference' consistently
290 +
291 +
292 +* sb/submodule-parallel-fetch (2016-06-27) 2 commits
293 + - xwrite: poll on non-blocking FDs
294 + - xread: retry after poll on EAGAIN/EWOULDBLOCK
295 +
296 + Fix a recently introduced codepaths that are involved in parallel
297 + submodule operations, which gave up on reading too early, and
298 + could have wasted CPU while attempting to write under a corner case
299 + condition.
300
301 Will merge to 'next'.
302
303 +
304 +* mm/doc-tt (2016-06-27) 6 commits
305 + - doc: typeset HEAD and variants as litteral
306 + - CodingGuidelines: formatting HEAD in documentation
307 + - doc: typeset long options with argument as litteral
308 + - doc: typeset -- as litteral
309 + - doc: typeset long command-line options as literal
310 + - doc: typeset short command-line options as literal
311 +
312 + More mark-up updates to typeset strings that are expected to
313 + literally typed by the end user in fixed-width font.
314 +
315 +
316 +* nd/fetch-ref-summary (2016-06-27) 5 commits
317 + - fetch: reduce duplicate in ref update status lines with placeholder
318 + - fetch: align all "remote -> local" output
319 + - fetch: change flag code for displaying tag update and deleted ref
320 + - fetch: refactor ref update status formatting code
321 + - git-fetch.txt: document fetch output
322 +
323 + Improve the look of the way "git fetch" reports what happened to
324 + each ref that was fetched.
325 +
326 + Still being discussed.
327 +
328 --------------------------------------------------
329 [Stalled]
330
@@ -244,13 +443,118 @@ of the repositories listed at
443 --------------------------------------------------
444 [Cooking]
445
247 -* nd/icase (2016-06-23) 11 commits
446 +* ak/t7800-wo-readlink (2016-06-21) 1 commit
447 + - t7800: readlink may not be available
448 +
449 + One among four invocations of readlink(1) in our test suite has
450 + been rewritten so that the test can run on systems without the
451 + command (others are in valgrind test framework and t9802).
452 +
453 + Will merge to 'next'.
454 +
455 +
456 +* js/perf-on-apple (2016-06-21) 1 commit
457 + - perf: accommodate for MacOSX
458 +
459 + t/perf needs /usr/bin/time with GNU extension; the invocation of it
460 + is updated to "gtime" on Darwin.
461 +
462 + Will merge to 'next'.
463 +
464 +
465 +* sb/t5614-modernize (2016-06-21) 1 commit
466 + - t5614: don't use subshells
467 + (this branch uses sb/clone-shallow-passthru.)
468 +
469 + Test clean-up.
470 +
471 + Will merge to 'next'.
472 +
473 +
474 +* ao/p4-has-branch-prefix-fix (2016-06-22) 1 commit
475 + - git-p4: correct hasBranchPrefix verbose output
476 +
477 + A bug, which caused "git p4" while running under verbose mode to
478 + report paths that are omitted due to branch prefix incorrectly, has
479 + been fixed; the command said "Ignoring file outside of prefix" for
480 + paths that are _inside_.
481 +
482 + Will merge to 'next'.
483 +
484 +
485 +* cb/t7810-test-label-fix (2016-06-21) 1 commit
486 + - t7810: fix duplicated test title
487 +
488 + Test clean-up.
489 +
490 + Will merge to 'next'.
491 +
492 +
493 +* jc/t2300-setup (2016-06-22) 1 commit
494 + - t2300: "git --exec-path" is not usable in $PATH on Windows as-is
495 +
496 + Portability fix for Windows.
497 +
498 + Will merge to 'next'.
499 +
500 +
501 +* jk/perf-any-version (2016-06-22) 2 commits
502 + - p4211: explicitly disable renames in no-rename test
503 + - t/perf: fix regression in testing older versions of git
504 +
505 + Allow t/perf framework to use the features from the most recent
506 + version of Git even when testing an older installed version.
507 +
508 + Will merge to 'next'.
509 +
510 +
511 +* jn/preformatted-doc-url (2016-06-22) 1 commit
512 + - doc: git-htmldocs.googlecode.com is no more
513 +
514 + Will merge to 'next'.
515 +
516 +
517 +* ex/deprecate-empty-pathspec-as-match-all (2016-06-22) 1 commit
518 + - pathspec: warn on empty strings as pathspec
519 +
520 + An empty string used as a pathspec element has always meant
521 + 'everything matches', but it is too easy to write a script that
522 + finds a path to remove in $path and run 'git rm "$paht"', which
523 + ends up removing everything. Start warning about this use of an
524 + empty string used for 'everything matches' and ask users to use a
525 + more explicit '.' for that instead.
526 +
527 + The hope is that existing users will not mind this change, and
528 + eventually the warning can be turned into a hard error, upgrading
529 + the deprecation into removal of this (mis)feature.
530 +
531 + Will wait for further comments for a bit before merging to 'next'.
532 +
533 +
534 +* jk/ansi-color (2016-06-23) 7 commits
535 + - color: support strike-through attribute
536 + - color: support "italic" attribute
537 + - color: allow "no-" for negating attributes
538 + - color: refactor parse_attr
539 + - add skip_prefix_mem helper
540 + - doc: refactor description of color format
541 + - color: fix max-size comment
542 +
543 + The output coloring scheme learned two new attributes, italic and
544 + strike, in addition to existing bold, reverse, etc.
545 +
546 + Will merge to 'next'.
547 +
548 +
549 +* nd/icase (2016-06-27) 13 commits
550 + - SQUASH???
551 - grep.c: reuse "icase" variable
552 - diffcore-pickaxe: support case insensitive match on non-ascii
250 - - diffcore-pickaxe: "share" regex error handling code
553 + - diffcore-pickaxe: Add regcomp_or_die()
554 - grep/pcre: support utf-8
555 - gettext: add is_utf8_locale()
556 - grep/pcre: prepare locale-dependent tables for icase matching
557 + - grep: rewrite an if/else condition to avoid duplicate expression
558 - grep/icase: avoid kwsset when -F is specified
559 - grep/icase: avoid kwsset on literal non-ascii strings
560 - test-regex: expose full regcomp() to the command line
@@ -263,25 +567,15 @@ of the repositories listed at
567 Modulo minor possible nits, this round looked mostly sensible.
568
569
266 -* mj/log-show-signature-conf (2016-06-22) 3 commits
267 - - log: add log.showSignature configuration variable
268 - - log: add "--no-show-signature" command line option
269 - - t4202: refactor test
270 -
271 - "git log" learns log.showSignature configuration variable, and a
272 - command line option "--no-show-signature" to countermand it.
273 -
274 - The value of the first step is unclear. The top two looked OK.
275 -
276 -
277 -* em/newer-freebsd-shells-are-fine-with-returns (2016-06-17) 1 commit
278 - (merged to 'next' on 2016-06-22 at dbee33c)
279 - + rebase: update comment about FreeBSD /bin/sh
570 +* mj/log-show-signature-conf (2016-06-24) 3 commits
571 + - log: add log.showSignature configuration variable
572 + - log: add "--no-show-signature" command line option
573 + - t4202: refactor test
574
281 - Comments about misbehaving FreeBSD shells have been clarified with
282 - the version number (9.x and before are broken, newer ones are OK).
575 + "git log" learns log.showSignature configuration variable, and a
576 + command line option "--no-show-signature" to countermand it.
577
284 - Will merge to 'master'.
578 + Will merge to 'next'.
579
580
581 * mg/signature-doc (2016-06-17) 4 commits
@@ -297,8 +591,9 @@ of the repositories listed at
591
592
593 * jk/string-list-static-init (2016-06-13) 2 commits
300 - - use string_list initializer consistently
301 - - Merge branch 'jk/parseopt-string-list' into jk/string-list-static-init
594 + (merged to 'next' on 2016-06-27 at 3d4b2fa)
595 + + use string_list initializer consistently
596 + + Merge branch 'jk/parseopt-string-list' into jk/string-list-static-init
597 (this branch uses jk/parseopt-string-list.)
598
599 Instead of taking advantage of a struct string_list that is
@@ -306,7 +601,7 @@ of the repositories listed at
601 initialize them explicitly as such, to document their behaviour
602 better.
603
309 - Will merge to 'next'.
604 + Will merge to 'master'.
605
606
607 * mh/ref-store (2016-06-20) 38 commits
@@ -424,7 +719,9 @@ of the repositories listed at
719 Will merge to 'next'.
720
721
427 -* js/log-to-diffopt-file (2016-06-21) 9 commits
722 +* js/log-to-diffopt-file (2016-06-24) 10 commits
723 + - t4211: ensure that log respects --output=<file>
724 + - shortlog: respect the --output=<file> setting
725 - format-patch: use stdout directly
726 - format-patch: avoid freopen()
727 - format-patch: explicitly switch off color when writing to files
@@ -432,15 +729,14 @@ of the repositories listed at
729 - graph: respect the diffopt.file setting
730 - line-log: respect diffopt's configured output file stream
731 - log-tree: respect diffopt's configured output file stream
435 - - Disallow diffopt.close_file when using the log_tree machinery
436 - - am: stop ignoring errors reported by log_tree_diff()
732 + - log: prepare log/log-tree to reuse the diffopt.close_file attribute
733
438 - The commands in the "log/diff" family had an optional FILE* pointer
439 - in the data structure they pass around for a long time, but some
440 - codepaths used to always write to the standard output. As a
441 - preparatory step to make "git format-patch" available to the
442 - internal callers, these codepaths have been updated to consistently
443 - write into that FILE* instead.
734 + The commands in the "log/diff" family had an FILE* pointer in the
735 + data structure they pass around for a long time, but some codepaths
736 + used to always write to the standard output. As a preparatory step
737 + to make "git format-patch" available to the internal callers, these
738 + codepaths have been updated to consistently write into that FILE*
739 + instead.
740
741
742 * js/mingw-parameter-less-c-functions (2016-06-20) 1 commit
@@ -481,24 +777,15 @@ of the repositories listed at
777 Will merge to 'next'.
778
779
484 -* ap/git-svn-propset-doc (2016-06-15) 1 commit
485 - (merged to 'next' on 2016-06-22 at 5a34f7d)
486 - + git-svn: document the 'git svn propset' command
487 -
488 - "git svn propset" subcommand that was added in 2.3 days is
489 - documented now.
490 -
491 - Will merge to 'master'.
492 -
493 -
780 * jk/add-i-diff-compact-heuristics (2016-06-16) 1 commit
495 - - add--interactive: respect diff.compactionHeuristic
781 + (merged to 'next' on 2016-06-27 at 568f892)
782 + + add--interactive: respect diff.compactionHeuristic
783
784 "git add -i/-p" learned to honor diff.compactionHeuristic
785 experimental knob, so that the user can work on the same hunk split
786 as "git diff" output.
787
501 - Will merge to 'next'.
788 + Will merge to 'master'.
789
790
791 * jk/big-and-future-archive-tar (2016-06-21) 2 commits
@@ -510,6 +797,7 @@ of the repositories listed at
797 format.
798
799 Expecting a reroll.
800 + ($gmane/298119)
801
802
803 * jk/gpg-interface-cleanup (2016-06-17) 7 commits
@@ -534,12 +822,13 @@ of the repositories listed at
822
823
824 * lf/sideband-returns-void (2016-06-16) 2 commits
537 - - upload-pack.c: make send_client_data() return void
538 - - sideband.c: make send_sideband() return void
825 + (merged to 'next' on 2016-06-27 at 558c781)
826 + + upload-pack.c: make send_client_data() return void
827 + + sideband.c: make send_sideband() return void
828
829 A small internal API cleanup.
830
542 - Will merge to 'next'.
831 + Will merge to 'master'.
832
833
834 * nd/graph-width-padded (2016-06-16) 2 commits
@@ -555,46 +844,28 @@ of the repositories listed at
844 Will merge to 'next'.
845
846
558 -* dn/gpg-doc (2016-06-16) 1 commit
559 - (merged to 'next' on 2016-06-22 at f467355)
560 - + Documentation: GPG capitalization
561 -
562 - The documentation tries to consistently spell "GPG"; when
563 - referring to the specific program name, "gpg" is used.
564 -
565 - Will merge to 'master'.
566 -
567 -
847 * jk/bisect-show-tree (2016-06-16) 1 commit
569 - - bisect: always call setup_revisions after init_revisions
848 + (merged to 'next' on 2016-06-27 at 6970f87e)
849 + + bisect: always call setup_revisions after init_revisions
850
851 "git bisect" makes an internal call to "git diff-tree" when
852 bisection finds the culprit, but this call did not initialize the
853 data structure to pass to the diff-tree API correctly.
854
575 - Will merge to 'next'.
576 -
577 -
578 -* lv/status-say-working-tree-not-directory (2016-06-09) 1 commit
579 - (merged to 'next' on 2016-06-22 at c65c7c1)
580 - + Use "working tree" instead of "working directory" for git status
581 -
582 - "git status" used to say "working directory" when it meant "working
583 - tree".
584 -
855 Will merge to 'master'.
856
857
858 * jk/parseopt-string-list (2016-06-13) 3 commits
589 - - blame,shortlog: don't make local option variables static
590 - - interpret-trailers: don't duplicate option strings
591 - - parse_opt_string_list: stop allocating new strings
859 + (merged to 'next' on 2016-06-27 at 27462e6)
860 + + blame,shortlog: don't make local option variables static
861 + + interpret-trailers: don't duplicate option strings
862 + + parse_opt_string_list: stop allocating new strings
863 (this branch is used by jk/string-list-static-init.)
864
865 The command line argument parsing that uses OPT_STRING_LIST() often
866 made a copy of the argv[] element, which was unnecessary.
867
597 - Will merge to 'next'.
868 + Will merge to 'master'.
869
870
871 * jk/repack-keep-unreachable (2016-06-14) 3 commits
@@ -621,18 +892,11 @@ of the repositories listed at
892
893
894 * nd/test-lib-httpd-show-error-log-in-verbose (2016-06-13) 1 commit
624 - - lib-httpd.sh: print error.log on error
895 + (merged to 'next' on 2016-06-27 at 9793d81)
896 + + lib-httpd.sh: print error.log on error
897
898 Debugging aid.
899
628 - Will merge to 'next'.
629 -
630 -
631 -* pc/occurred (2016-06-10) 2 commits
632 - (merged to 'next' on 2016-06-22 at ce0b944)
633 - + config.c: fix misspelt "occurred" in an error message
634 - + refs.h: fix misspelt "occurred" in a comment
635 -
900 Will merge to 'master'.
901
902
@@ -659,40 +923,12 @@ of the repositories listed at
923 Any supporters? Otherwise will drop.
924
925
662 -* jc/deref-tag (2016-06-14) 1 commit
663 - (merged to 'next' on 2016-06-22 at 1075713)
664 - + blame, line-log: do not loop around deref_tag()
665 -
666 - Code clean-up.
667 -
668 - Will merge to 'master'.
669 -
670 -
671 -* jk/fetch-prune-doc (2016-06-14) 1 commit
672 - (merged to 'next' on 2016-06-22 at 6563376)
673 - + fetch: document that pruning happens before fetching
674 -
675 - Will merge to 'master'.
676 -
677 -
926 * km/fetch-do-not-free-remote-name (2016-06-14) 1 commit
679 - - builtin/fetch.c: don't free remote->name after fetch
680 -
681 - Will merge to 'next'.
682 -
683 -
684 -* nb/gnome-keyring-build (2016-06-14) 1 commit
685 - (merged to 'next' on 2016-06-22 at 0dfb90c)
686 - + gnome-keyring: Don't hard-code pkg-config executable
687 -
688 - Build improvements for gnome-keyring (in contrib/)
927 + (merged to 'next' on 2016-06-27 at 4bc34c4)
928 + + builtin/fetch.c: don't free remote->name after fetch
929
690 - Will merge to 'master'.
691 -
692 -
693 -* pb/strbuf-read-file-doc (2016-06-14) 1 commit
694 - (merged to 'next' on 2016-06-22 at 10e4b4f)
695 - + strbuf: describe the return value of strbuf_read_file
930 + The ownership rule for the piece of memory that hold references to
931 + be fetched in "git fetch" was screwy, which has been cleaned up.
932
933 Will merge to 'master'.
934
@@ -739,28 +975,23 @@ of the repositories listed at
975 would think.
976
977
742 -* jk/avoid-unbounded-alloca (2016-06-07) 1 commit
743 - (merged to 'next' on 2016-06-22 at 93feb23)
744 - + tree-diff: avoid alloca for large allocations
745 -
746 - Will merge to 'master'.
747 -
748 -
978 * jk/send-pack-stdio (2016-06-10) 2 commits
750 - - write_or_die: remove the unused write_or_whine() function
751 - - send-pack: use buffered I/O to talk to pack-objects
979 + (merged to 'next' on 2016-06-27 at 2cfb0ff)
980 + + write_or_die: remove the unused write_or_whine() function
981 + + send-pack: use buffered I/O to talk to pack-objects
982
983 Code clean-up.
984
755 - Will merge to 'next'.
985 + Will merge to 'master'.
986
987
988 * pb/commit-editmsg-path (2016-06-09) 1 commit
759 - - builtin/commit.c: memoize git-path for COMMIT_EDITMSG
989 + (merged to 'next' on 2016-06-27 at 0f01ce1)
990 + + builtin/commit.c: memoize git-path for COMMIT_EDITMSG
991
992 Code clean-up.
993
763 - Will merge to 'next'.
994 + Will merge to 'master'.
995
996
997 * jc/attr-more (2016-06-09) 8 commits
@@ -814,95 +1045,6 @@ of the repositories listed at
1045 Will merge to 'next'.
1046
1047
817 -* lf/receive-pack-auto-gc-to-client (2016-06-06) 1 commit
818 - (merged to 'next' on 2016-06-22 at 92162f5)
819 - + receive-pack: send auto-gc output over sideband 2
820 -
821 - Allow messages that are generated by auto gc during "git push" on
822 - the receiving end to be explicitly passed back to the sending end
823 - over sideband, so that they are shown with "remote: " prefix to
824 - avoid confusing the users.
825 -
826 - Will merge to 'master'.
827 -
828 -
829 -* mg/cherry-pick-multi-on-unborn (2016-06-06) 1 commit
830 - (merged to 'next' on 2016-06-22 at 183295b)
831 - + cherry-pick: allow to pick to unborn branches
832 -
833 - "git cherry-pick A" worked on an unborn branch, but "git
834 - cherry-pick A..B" didn't.
835 -
836 - Will merge to 'master'.
837 -
838 -
839 -* sg/reflog-past-root (2016-06-06) 1 commit
840 - (merged to 'next' on 2016-06-22 at c5d4e29)
841 - + reflog: continue walking the reflog past root commits
842 -
843 - "git reflog" stopped upon seeing an entry that denotes a branch
844 - creation event (aka "unborn"), which made it appear as if the
845 - reflog was truncated.
846 -
847 - Will merge to 'master'.
848 -
849 -
850 -* tb/complete-status (2016-06-10) 3 commits
851 - (merged to 'next' on 2016-06-22 at 44ae68f)
852 - + completion: add git status
853 - + completion: add __git_get_option_value helper
854 - + completion: factor out untracked file modes into a variable
855 -
856 - The completion script (in contrib/) learned to complete "git
857 - status" options.
858 -
859 - Will merge to 'master'.
860 -
861 -
862 -* tr/doc-tt (2016-06-08) 4 commits
863 - (merged to 'next' on 2016-06-22 at dc6df3b)
864 - + doc: change configuration variables format
865 - + doc: more consistency in environment variables format
866 - + doc: change environment variables format
867 - + doc: clearer rule about formatting literals
868 -
869 - The documentation set has been updated so that literal commands,
870 - configuration variables and environment variables are consistently
871 - typeset in fixed-width font and bold in manpages.
872 -
873 - Will merge to 'master'.
874 -
875 -
876 -* vs/prompt-avoid-unset-variable (2016-06-06) 1 commit
877 - (merged to 'next' on 2016-06-22 at 8bf21d3)
878 - + git-prompt.sh: Don't error on null ${ZSH,BASH}_VERSION, $short_sha
879 -
880 - The git-prompt scriptlet (in contrib/) was not friendly with those
881 - who uses "set -u", which has been fixed.
882 -
883 - Will merge to 'master'.
884 -
885 -
886 -* rj/compat-regex-size-max-fix (2016-06-06) 1 commit
887 - (merged to 'next' on 2016-06-22 at 376c5b1)
888 - + regex: fix a SIZE_MAX macro redefinition warning
889 -
890 - A compilation fix.
891 -
892 - Will merge to 'master'.
893 -
894 -
895 -* et/add-chmod-x (2016-06-07) 1 commit
896 - (merged to 'next' on 2016-06-22 at 71d65a0)
897 - + add: add --chmod=+x / --chmod=-x options
898 -
899 - "git update-index --add --chmod=+x file" may be usable as an escape
900 - hatch, but not a friendly thing to force for people who do need to
901 - use it regularly. "git add --chmod=+x file" can be used instead.
902 -
903 - Will merge to 'master'.
904 -
905 -
1048 * mh/connect (2016-06-06) 10 commits
1049 - connect: [host:port] is legacy for ssh
1050 - connect: move ssh command line preparation to a separate function
@@ -918,8 +1060,6 @@ of the repositories listed at
1060 Rewrite Git-URL parsing routine (hopefully) without changing any
1061 behaviour.
1062
921 - Will merge to 'next'???
922 -
1063
1064 * va/i18n-even-more (2016-06-17) 38 commits
1065 - i18n: branch: mark comment when editing branch description for translation
@@ -1024,13 +1164,14 @@ of the repositories listed at
1164
1165
1166 * ep/http-curl-trace (2016-05-24) 2 commits
1027 - - imap-send.c: introduce the GIT_TRACE_CURL enviroment variable
1028 - - http.c: implement the GIT_TRACE_CURL environment variable
1167 + (merged to 'next' on 2016-06-27 at c290515)
1168 + + imap-send.c: introduce the GIT_TRACE_CURL enviroment variable
1169 + + http.c: implement the GIT_TRACE_CURL environment variable
1170
1171 HTTP transport gained an option to produce more detailed debugging
1172 trace.
1173
1033 - Will merge to 'next'.
1174 + Will merge to 'master'.
1175
1176
1177 * jc/attr (2016-05-25) 18 commits
@@ -1064,85 +1205,18 @@ of the repositories listed at
1205 back-burner the threading enhancement to another day.
1206
1207
1067 -* cc/apply-introduce-state (2016-06-06) 50 commits
1068 - (merged to 'next' on 2016-06-20 at 4f205b8)
1069 - + builtin/apply: remove misleading comment on lock_file field
1070 - + builtin/apply: move 'newfd' global into 'struct apply_state'
1071 - + builtin/apply: add 'lock_file' pointer into 'struct apply_state'
1072 - + builtin/apply: move applying patches into apply_all_patches()
1073 - + builtin/apply: move 'state' check into check_apply_state()
1074 - + builtin/apply: move 'symlink_changes' global into 'struct apply_state'
1075 - + builtin/apply: move 'fn_table' global into 'struct apply_state'
1076 - + builtin/apply: move 'state_linenr' global into 'struct apply_state'
1077 - + builtin/apply: move 'max_change' and 'max_len' into 'struct apply_state'
1078 - + builtin/apply: move 'ws_ignore_action' into 'struct apply_state'
1079 - + builtin/apply: move 'ws_error_action' into 'struct apply_state'
1080 - + builtin/apply: move 'applied_after_fixing_ws' into 'struct apply_state'
1081 - + builtin/apply: move 'squelch_whitespace_errors' into 'struct apply_state'
1082 - + builtin/apply: remove whitespace_option arg from set_default_whitespace_mode()
1083 - + builtin/apply: move 'whitespace_option' into 'struct apply_state'
1084 - + builtin/apply: move 'whitespace_error' global into 'struct apply_state'
1085 - + builtin/apply: move 'root' global into 'struct apply_state'
1086 - + builtin/apply: move 'p_value_known' global into 'struct apply_state'
1087 - + builtin/apply: move 'p_value' global into 'struct apply_state'
1088 - + builtin/apply: move 'has_include' global into 'struct apply_state'
1089 - + builtin/apply: move 'limit_by_name' global into 'struct apply_state'
1090 - + builtin/apply: move 'patch_input_file' global into 'struct apply_state'
1091 - + builtin/apply: move 'apply' global into 'struct apply_state'
1092 - + builtin/apply: move 'p_context' global into 'struct apply_state'
1093 - + builtin/apply: move 'fake_ancestor' global into 'struct apply_state'
1094 - + builtin/apply: move 'line_termination' global into 'struct apply_state'
1095 - + builtin/apply: move 'unsafe_paths' global into 'struct apply_state'
1096 - + builtin/apply: move 'no_add' global into 'struct apply_state'
1097 - + builtin/apply: move 'threeway' global into 'struct apply_state'
1098 - + builtin/apply: move 'summary' global into 'struct apply_state'
1099 - + builtin/apply: move 'numstat' global into 'struct apply_state'
1100 - + builtin/apply: move 'diffstat' global into 'struct apply_state'
1101 - + builtin/apply: move 'cached' global into 'struct apply_state'
1102 - + builtin/apply: move 'allow_overlap' global into 'struct apply_state'
1103 - + builtin/apply: move 'update_index' global into 'struct apply_state'
1104 - + builtin/apply: move 'apply_verbosely' global into 'struct apply_state'
1105 - + builtin/apply: move 'apply_with_reject' global into 'struct apply_state'
1106 - + builtin/apply: move 'apply_in_reverse' global into 'struct apply_state'
1107 - + builtin/apply: move 'check_index' global into 'struct apply_state'
1108 - + builtin/apply: move 'check' global into 'struct apply_state'
1109 - + builtin/apply: move 'unidiff_zero' global into 'struct apply_state'
1110 - + builtin/apply: move 'state' init into init_apply_state()
1111 - + builtin/apply: introduce 'struct apply_state' to start libifying
1112 - + builtin/apply: move 'read_stdin' global into cmd_apply()
1113 - + builtin/apply: move 'options' variable into cmd_apply()
1114 - + builtin/apply: extract line_by_line_fuzzy_match() from match_fragment()
1115 - + builtin/apply: avoid local variable shadowing 'len' parameter
1116 - + builtin/apply: avoid parameter shadowing 'linenr' global
1117 - + builtin/apply: avoid parameter shadowing 'p_value' global
1118 - + builtin/apply: make gitdiff_verify_name() return void
1119 -
1120 - Originally merged to 'next' on 2016-06-06
1121 -
1122 - The "git apply" standalone program is being libified; this is the
1123 - first step to move many state variables into a structure that can
1124 - be explicitly (re)initialized to make the machinery callable more
1125 - than once.
1126 -
1127 - The next step that moves some remaining state variables into the
1128 - structure and turns die()s into an error return that propagates up
1129 - to the caller is not queued yet but in flight. It would be good to
1130 - review the above first and give the remainder of the series a solid
1131 - base to build on.
1132 -
1133 - Will merge to 'master'.
1134 -
1135 -
1136 -* pb/bisect (2016-05-24) 3 commits
1208 +* pb/bisect (2016-06-27) 9 commits
1209 + - bisect--helper: `bisect_write` shell function in C
1210 + - bisect--helper: `is_expected_rev` & `check_expected_revs` shell function in C
1211 + - bisect--helper: `bisect_reset` shell function in C
1212 + - wrapper: move is_empty_file() and rename it as is_empty_or_missing_file()
1213 + - t6030: explicitly test for bisection cleanup
1214 + - bisect--helper: `bisect_clean_state` shell function in C
1215 - bisect--helper: `write_terms` shell function in C
1216 - bisect: rewrite `check_term_format` shell function in C
1217 - bisect--helper: use OPT_CMDMODE instead of OPT_BOOL
1218
1141 - Beginning of GSoC "git bisect" project.
1142 -
1143 - I know another topic is getting rerolled many times on top of this;
1144 - are people happy with these three patches? If so, will merge to
1145 - 'next'.
1219 + GSoC "bisect" topic.
1220
1221
1222 * sb/pathspec-label (2016-06-03) 6 commits
@@ -1256,7 +1330,8 @@ of the repositories listed at
1330 This also really needs review.
1331
1332
1259 -* dt/index-helper (2016-05-20) 20 commits
1333 +* dt/index-helper (2016-06-27) 21 commits
1334 + - unix-socket.c: add stub implementation when unix sockets are not supported
1335 - index-helper: indexhelper.exitafter config
1336 - trace: measure where the time is spent in the index-heavy operations
1337 - index-helper: optionally automatically run
@@ -1283,9 +1358,8 @@ of the repositories listed at
1358 optionally interface with the watchman daemon to further reduce the
1359 refresh cost.
1360
1286 - Belated review comments still trickling in.
1287 - Will hold.
1288 - ($gmane/295106).
1361 + Expecting a reroll.
1362 + ($gmane/298331, $gmane/298319).
1363
1364
1365 * jc/bundle (2016-03-03) 6 commits