What's cooking (2017/07 #04)

Junio C Hamano committed Jul 13, 2017 at 16:35 UTC 2fe0ac0767235793950e481d39b8071dae89a8b2
1 file changed +166 -200
whats-cooking.txt
+166 -200
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Jul 2017, #03; Mon, 10)
4 -X-master-at: 117ddefdb4dfd9b40ae60967a7327754d8ce7a87
5 -X-next-at: 49757e11198e539fd1f865512274d30d99f2fcdb
3 +Subject: What's cooking in git.git (Jul 2017, #04; Thu, 13)
4 +X-master-at: f3da2b79be9565779e4f76dc5812c68e156afdf0
5 +X-next-at: d933b75aa4527621ff2f4d20b22127619c6d28ba
6
7 -What's cooking in git.git (Jul 2017, #03; Mon, 10)
7 +What's cooking in git.git (Jul 2017, #04; Thu, 13)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -12,14 +12,10 @@ 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 -We also have tons of small updates in preparation for 2.13.3 on
16 -'maint'. All of them are topics that have been merged to 'master'
17 -more than a few days ago, but I do not know how well they are tested
18 -in the field by people using 'master' in their everyday workflow.
19 -Ideally, our release process wants to see more people using 'next'
20 -in their everyday workflow to keep 'master' more stable than any
21 -tagged release, but I do not have a good idea on how to encourage
22 -it more than we currently do.
15 +A maintenance release for 2.13.x series, and the first preview for
16 +2.14 series -rc0, have been tagged. Let's close the 'master' except
17 +for obvious fixes and clean-ups and concentrate on regressions from
18 +now on.
19
20 You can find the changes described here in the integration branches
21 of the repositories listed at
@@ -29,79 +25,29 @@ of the repositories listed at
25 --------------------------------------------------
26 [Graduated to "master"]
27
32 -* ab/sha1dc (2017-07-03) 2 commits
33 - (merged to 'next' on 2017-07-06 at 5a783032b7)
34 - + sha1collisiondetection: automatically enable when submodule is populated
35 - + sha1dc: optionally use sha1collisiondetection as a submodule
36 -
37 - The "collission-detecting" implementation of SHA-1 hash we borrowed
38 - from is replaced by directly binding the upstream project as our
39 - submodule. Glitches on minority platforms are still being worked out.
40 -
41 -
42 -* ab/wildmatch (2017-06-23) 1 commit
43 - (merged to 'next' on 2017-07-07 at 34482a9a4f)
44 - + wildmatch: remove unused wildopts parameter
45 -
46 - Minor code cleanup.
47 -
48 -
49 -* bb/unicode-10.0 (2017-07-07) 1 commit
50 - (merged to 'next' on 2017-07-07 at a9c46e097b)
51 - + unicode: update the width tables to Unicode 10
52 -
53 - Update the character width tables.
54 -
55 -
56 -* jk/reflog-walk-maint (2017-07-07) 4 commits
57 - (merged to 'next' on 2017-07-07 at 611554ba2f)
58 - + reflog-walk: include all fields when freeing complete_reflogs
59 - + reflog-walk: don't free reflogs added to cache
60 - + reflog-walk: duplicate strings in complete_reflogs list
61 - (merged to 'next' on 2017-07-06 at 7408dd80a1)
62 - + reflog-walk: skip over double-null oid due to HEAD rename
63 - (this branch is used by jk/reflog-walk.)
64 -
65 - After "git branch --move" of the currently checked out branch, the
66 - code to walk the reflog of HEAD via "log -g" and friends
67 - incorrectly stopped at the reflog entry that records the renaming
68 - of the branch.
69 -
70 -
71 -* ks/commit-assuming-only-warning-removal (2017-06-30) 2 commits
72 - (merged to 'next' on 2017-07-05 at 462a72df95)
73 - + commit-template: distinguish status information unconditionally
74 - + commit-template: remove outdated notice about explicit paths
75 -
76 - An old message shown in the commit log template was removed, as it
77 - has outlived its usefulness.
78 -
79 -
80 -* ks/typofix-commit-c-comment (2017-07-06) 1 commit
81 - (merged to 'next' on 2017-07-07 at 64e98fc832)
82 - + builtin/commit.c: fix a typo in the comment
83 -
84 - Typofix.
85 -
86 -
87 -* pw/unquote-path-in-git-pm (2017-06-30) 4 commits
88 - (merged to 'next' on 2017-07-05 at 538ab4d599)
89 - + t9700: add tests for Git::unquote_path()
90 - + Git::unquote_path(): throw an exception on bad path
91 - + Git::unquote_path(): handle '\a'
92 - + add -i: move unquote_path() to Git.pm
28 +* ab/grep-lose-opt-regflags (2017-06-30) 6 commits
29 + (merged to 'next' on 2017-07-05 at 375c0b92ea)
30 + + grep: remove redundant REG_NEWLINE when compiling fixed regex
31 + + grep: remove regflags from the public grep_opt API
32 + + grep: remove redundant and verbose re-assignments to 0
33 + + grep: remove redundant "fixed" field re-assignment to 0
34 + + grep: adjust a redundant grep pattern type assignment
35 + + grep: remove redundant double assignment to 0
36
94 - Code refactoring.
37 + Code cleanup.
38
39
97 -* rs/free-and-null (2017-06-29) 1 commit
98 - (merged to 'next' on 2017-07-06 at 9c9e1d59a2)
99 - + coccinelle: polish FREE_AND_NULL rules
40 +* jk/build-with-asan (2017-07-10) 5 commits
41 + (merged to 'next' on 2017-07-10 at 49757e1119)
42 + + Makefile: disable unaligned loads with UBSan
43 + + Makefile: turn off -fomit-frame-pointer with sanitizers
44 + + Makefile: add helper for compiling with -fsanitize
45 + + test-lib: turn on ASan abort_on_error by default
46 + + test-lib: set ASAN_OPTIONS variable before we run git
47
101 - Code cleanup.
48 + The build procedure has been improved to allow building and testing
49 + Git with address sanitizer more easily.
50
103 ---------------------------------------------------
104 -[New Topics]
51
52 * kn/ref-filter-branch-list (2017-07-10) 4 commits
53 (merged to 'next' on 2017-07-10 at 35fd25c0dd)
@@ -114,7 +60,12 @@ of the repositories listed at
60 that happened in v2.13 regressed its handling of color.branch.local;
61 this has been fixed.
62
117 - Will merge to 'master'.
63 +
64 +* ks/fix-rebase-doc-picture (2017-07-10) 1 commit
65 + (merged to 'next' on 2017-07-10 at 3acb856b17)
66 + + doc: correct a mistake in an illustration
67 +
68 + Doc update.
69
70
71 * rs/apply-avoid-over-reading (2017-07-09) 1 commit
@@ -123,29 +74,6 @@ of the repositories listed at
74
75 Code cleanup.
76
126 - Will merge to 'master'.
127 -
128 -
129 -* rs/progress-overall-throughput-at-the-end (2017-07-09) 1 commit
130 - - progress: show overall rate in last update
131 -
132 - The progress meter did not give a useful output when we haven't had
133 - 0.5 seconds to measure the throughput during the interval. Instead
134 - show the overall throughput rate at the end, which is a much more
135 - useful number.
136 -
137 - Will merge to 'next'.
138 -
139 -
140 -* rs/sha1-file-micro-optim (2017-07-09) 2 commits
141 - - SQUASH???
142 - - sha1_file: add slash once in for_each_file_in_obj_subdir()
143 -
144 - Code cleanup.
145 -
146 - Perhaps drop.
147 - cf. <f59c8256-716b-9305-2a4f-d4fe49f666ff@web.de>
148 -
77
78 * rs/urlmatch-cleanup (2017-07-09) 1 commit
79 (merged to 'next' on 2017-07-10 at 2dd3e7cab0)
@@ -153,8 +81,6 @@ of the repositories listed at
81
82 Code cleanup.
83
156 - Will merge to 'master'.
157 -
84
85 * rs/use-div-round-up (2017-07-10) 1 commit
86 (merged to 'next' on 2017-07-10 at accb7919da)
@@ -162,8 +88,6 @@ of the repositories listed at
88
89 Code cleanup.
90
165 - Will merge to 'master'.
166 -
91
92 * rs/wt-status-cleanup (2017-07-10) 1 commit
93 (merged to 'next' on 2017-07-10 at d8939f683a)
@@ -171,41 +95,94 @@ of the repositories listed at
95
96 Code cleanup.
97
174 - Will merge to 'master'.
98
99 +* sb/hashmap-customize-comparison (2017-06-30) 3 commits
100 + (merged to 'next' on 2017-07-06 at cc420805f3)
101 + + hashmap: migrate documentation from Documentation/technical into header
102 + + patch-ids.c: use hashmap correctly
103 + + hashmap.h: compare function has access to a data field
104 + (this branch is used by sb/diff-color-move and sb/hashmap-cleanup.)
105
177 -* ks/prepare-commit-msg-sample (2017-07-10) 3 commits
178 - - hook: add sign-off using "interpret-trailers"
179 - - hook: name the positional variables
180 - - hook: cleanup script
106 + Update the hashmap API so that data to customize the behaviour of
107 + the comparison function can be specified at the time a hashmap is
108 + initialized.
109
182 - Remove an example that is now obsolete from a sample hook,
183 - and improve an old example in it that added a sign-off manually
184 - to use the interpret-trailers command.
110
111 +* sb/pull-rebase-submodule (2017-06-27) 4 commits
112 + (merged to 'next' on 2017-07-09 at 48d2c3a51c)
113 + + builtin/fetch cleanup: always set default value for submodule recursing
114 + + pull: optionally rebase submodules (remote submodule changes only)
115 + + builtin/fetch: parse recurse-submodules-default at default options parsing
116 + + builtin/fetch: factor submodule recurse parsing out to submodule config
117
187 -* jk/build-with-asan (2017-07-10) 5 commits
188 - (merged to 'next' on 2017-07-10 at 49757e1119)
189 - + Makefile: disable unaligned loads with UBSan
190 - + Makefile: turn off -fomit-frame-pointer with sanitizers
191 - + Makefile: add helper for compiling with -fsanitize
192 - + test-lib: turn on ASan abort_on_error by default
193 - + test-lib: set ASAN_OPTIONS variable before we run git
118 + "git pull --rebase --recurse-submodules" learns to rebase the
119 + branch in the submodules to an updated base.
120
195 - The build procedure has been improved to allow building and testing
196 - Git with address sanitizer more easily.
121 +
122 +* sb/submodule-doc (2017-06-22) 1 commit
123 + (merged to 'next' on 2017-07-09 at fda0ceec31)
124 + + submodules: overhaul documentation
125 +
126 + Doc update.
127 +
128 +--------------------------------------------------
129 +[New Topics]
130 +
131 +* jn/hooks-pre-rebase-sample-fix (2017-07-11) 1 commit
132 + (merged to 'next' on 2017-07-12 at ed86887454)
133 + + pre-rebase hook: capture documentation in a <<here document
134 +
135 + Code clean-up, that makes us in sync with Debian by one patch.
136
137 Will merge to 'master'.
138
139
201 -* ks/fix-rebase-doc-picture (2017-07-10) 1 commit
202 - (merged to 'next' on 2017-07-10 at 3acb856b17)
203 - + doc: correct a mistake in an illustration
140 +* jk/gc-pre-detach-under-hook (2017-07-12) 1 commit
141 + (merged to 'next' on 2017-07-12 at 9cf44c2b07)
142 + + gc: run pre-detach operations under lock
143
205 - Doc update.
144 + We run an early part of "git gc" that deals with refs before
145 + daemonising (and not under lock) even when running a background
146 + auto-gc, which caused multiple gc processes attempting to run the
147 + early part at the same time. This is now prevented by running the
148 + early part also under the GC lock.
149
150 Will merge to 'master'.
151
152 +
153 +* jk/ref-filter-colors (2017-07-13) 15 commits
154 + - ref-filter: consult want_color() before emitting colors
155 + - pretty: respect color settings for %C placeholders
156 + - rev-list: pass diffopt->use_colors through to pretty-print
157 + - for-each-ref: load config earlier
158 + - color: check color.ui in git_default_config()
159 + - ref-filter: pass ref_format struct to atom parsers
160 + - ref-filter: factor out the parsing of sorting atoms
161 + - ref-filter: make parse_ref_filter_atom a private function
162 + - ref-filter: provide a function for parsing sort options
163 + - ref-filter: move need_color_reset_at_eol into ref_format
164 + - ref-filter: abstract ref format into its own struct
165 + - ref-filter: simplify automatic color reset
166 + - t: use test_decode_color rather than literal ANSI codes
167 + - docs/for-each-ref: update pointer to color syntax
168 + - check return value of verify_ref_format()
169 +
170 + "%C(color name)" in the pretty print format always produced ANSI
171 + color escape codes, which was an early design mistake. They now
172 + honor the configuration (e.g. "color.ui = never") and also tty-ness
173 + of the output medium.
174 +
175 + Will merge to and cook in 'next'.
176 +
177 +
178 +* sb/object-id (2017-07-13) 2 commits
179 + - tag: convert gpg_verify_tag to use struct object_id
180 + - commit: convert lookup_commit_graft to struct object_id
181 +
182 + Conversion from uchar[20] to struct object_id continues.
183 +
184 + Will merge to 'next'.
185 +
186 --------------------------------------------------
187 [Stalled]
188
@@ -272,6 +249,39 @@ of the repositories listed at
249 --------------------------------------------------
250 [Cooking]
251
252 +* rs/progress-overall-throughput-at-the-end (2017-07-09) 1 commit
253 + (merged to 'next' on 2017-07-11 at f5168e975b)
254 + + progress: show overall rate in last update
255 +
256 + The progress meter did not give a useful output when we haven't had
257 + 0.5 seconds to measure the throughput during the interval. Instead
258 + show the overall throughput rate at the end, which is a much more
259 + useful number.
260 +
261 + Will merge to 'master'.
262 +
263 +
264 +* rs/sha1-file-micro-optim (2017-07-09) 2 commits
265 + - SQUASH???
266 + - sha1_file: add slash once in for_each_file_in_obj_subdir()
267 +
268 + Code cleanup.
269 +
270 + Perhaps drop.
271 + cf. <f59c8256-716b-9305-2a4f-d4fe49f666ff@web.de>
272 +
273 +
274 +* ks/prepare-commit-msg-sample (2017-07-12) 4 commits
275 + - hook: add a simple first example
276 + - hook: add sign-off using "interpret-trailers"
277 + - hook: name the positional variables
278 + - hook: cleanup script
279 +
280 + Remove an example that is now obsolete from a sample hook,
281 + and improve an old example in it that added a sign-off manually
282 + to use the interpret-trailers command.
283 +
284 +
285 * jc/allow-lazy-cas (2017-07-06) 1 commit
286 - push: disable lazy --force-with-lease by default
287
@@ -284,6 +294,11 @@ of the repositories listed at
294
295 Will wait for feedback, then merge to and cook in 'next'.
296
297 + Independent from disabling the feature by default, this stirred up
298 + a discussion to replace the DWIM heuristics with a better one, which
299 + deserves to be its own topic.
300 + cf. <alpine.DEB.2.21.1.1707131435220.4193@virtualbox>
301 +
302
303 * bc/object-id (2017-07-04) 12 commits
304 - sha1_name: convert GET_SHA1* flags to GET_OID*
@@ -324,17 +339,17 @@ of the repositories listed at
339
340
341 * sb/hashmap-cleanup (2017-07-05) 10 commits
327 - - t/helper/test-hashmap: use custom data instead of duplicate cmp functions
328 - - name-hash.c: drop hashmap_cmp_fn cast
329 - - submodule-config.c: drop hashmap_cmp_fn cast
330 - - remote.c: drop hashmap_cmp_fn cast
331 - - patch-ids.c: drop hashmap_cmp_fn cast
332 - - convert/sub-process: drop cast to hashmap_cmp_fn
333 - - config.c: drop hashmap_cmp_fn cast
334 - - builtin/describe: drop hashmap_cmp_fn cast
335 - - builtin/difftool.c: drop hashmap_cmp_fn cast
336 - - attr.c: drop hashmap_cmp_fn cast
337 - (this branch uses sb/hashmap-customize-comparison; is tangled with sb/diff-color-move.)
342 + (merged to 'next' on 2017-07-12 at ce31d06165)
343 + + t/helper/test-hashmap: use custom data instead of duplicate cmp functions
344 + + name-hash.c: drop hashmap_cmp_fn cast
345 + + submodule-config.c: drop hashmap_cmp_fn cast
346 + + remote.c: drop hashmap_cmp_fn cast
347 + + patch-ids.c: drop hashmap_cmp_fn cast
348 + + convert/sub-process: drop cast to hashmap_cmp_fn
349 + + config.c: drop hashmap_cmp_fn cast
350 + + builtin/describe: drop hashmap_cmp_fn cast
351 + + builtin/difftool.c: drop hashmap_cmp_fn cast
352 + + attr.c: drop hashmap_cmp_fn cast
353
354 Many uses of comparision callback function the hashmap API uses
355 cast the callback function type when registering it to
@@ -343,11 +358,12 @@ of the repositories listed at
358 The callback implementations have been updated to take "void *"
359 pointers and cast them to the type they expect instead.
360
346 - Will merge to 'next'.
361 + Will cook in 'next'.
362
363
364 * tb/push-to-cygwin-unc-path (2017-07-05) 1 commit
350 - - cygwin: allow pushing to UNC paths
365 + (merged to 'next' on 2017-07-11 at 4d9c3f82bd)
366 + + cygwin: allow pushing to UNC paths
367
368 On Cygwin, similar to Windows, "git push //server/share/repository"
369 ought to mean a repository on a network share that can be accessed
@@ -359,45 +375,18 @@ of the repositories listed at
375 not just the code to decide if the push destination is local. There
376 may be unexpected fallouts in the path normalization.
377
362 - Will merge to 'next'.
363 -
364 -
365 -* ab/grep-lose-opt-regflags (2017-06-30) 6 commits
366 - (merged to 'next' on 2017-07-05 at 375c0b92ea)
367 - + grep: remove redundant REG_NEWLINE when compiling fixed regex
368 - + grep: remove regflags from the public grep_opt API
369 - + grep: remove redundant and verbose re-assignments to 0
370 - + grep: remove redundant "fixed" field re-assignment to 0
371 - + grep: adjust a redundant grep pattern type assignment
372 - + grep: remove redundant double assignment to 0
373 -
374 - Code cleanup.
375 -
378 Will merge to 'master'.
379
380
379 -* sb/hashmap-customize-comparison (2017-06-30) 3 commits
380 - (merged to 'next' on 2017-07-06 at cc420805f3)
381 - + hashmap: migrate documentation from Documentation/technical into header
382 - + patch-ids.c: use hashmap correctly
383 - + hashmap.h: compare function has access to a data field
384 - (this branch is used by sb/diff-color-move and sb/hashmap-cleanup.)
385 -
386 - Update the hashmap API so that data to customize the behaviour of
387 - the comparison function can be specified at the time a hashmap is
388 - initialized.
389 -
390 - Will merge to 'master'.
391 -
392 -
393 -* mt/p4-parse-G-output (2017-07-05) 1 commit
394 - . git-p4: parse marshal output "p4 -G" in p4 changes
381 +* mt/p4-parse-G-output (2017-07-13) 3 commits
382 + - git-p4: filter for {'code':'info'} in p4CmdList
383 + - git-p4: parse marshal output "p4 -G" in p4 changes
384 + - git-p4: git-p4 tests with p4 triggers
385
386 Use "p4 -G" to make "p4 changes" output more Python-friendly
387 to parse.
388
399 - Needs review/ack from git-p4 folks.
400 - It still seems to break when merged to 'pu'.
389 + Wait to see Travis is OK with this and merge to 'next'
390
391
392 * ex/deprecate-empty-pathspec-as-match-all (2017-06-23) 2 commits
@@ -416,19 +405,6 @@ of the repositories listed at
405 Will cook in 'next'.
406
407
419 -* sb/pull-rebase-submodule (2017-06-27) 4 commits
420 - (merged to 'next' on 2017-07-09 at 48d2c3a51c)
421 - + builtin/fetch cleanup: always set default value for submodule recursing
422 - + pull: optionally rebase submodules (remote submodule changes only)
423 - + builtin/fetch: parse recurse-submodules-default at default options parsing
424 - + builtin/fetch: factor submodule recurse parsing out to submodule config
425 -
426 - "git pull --rebase --recurse-submodules" learns to rebase the
427 - branch in the submodules to an updated base.
428 -
429 - Will merge to 'master'.
430 -
431 -
408 * mh/packed-ref-store (2017-07-03) 30 commits
409 (merged to 'next' on 2017-07-05 at 6c68c603cc)
410 + read_packed_refs(): die if `packed-refs` contains bogus data
@@ -464,16 +440,7 @@ of the repositories listed at
440
441 The "ref-store" code reorganization continues.
442
467 - Will merge to 'master'.
468 -
469 -
470 -* sb/submodule-doc (2017-06-22) 1 commit
471 - (merged to 'next' on 2017-07-09 at fda0ceec31)
472 - + submodules: overhaul documentation
473 -
474 - Doc update.
475 -
476 - Will merge to 'master'.
443 + Will cook in 'next'.
444
445
446 * sd/branch-copy (2017-06-18) 3 commits
@@ -505,7 +472,7 @@ of the repositories listed at
472 The filter-process interface learned to allow a process with long
473 latency give a "delayed" response.
474
508 - Will merge to 'master'.
475 + Will cook in 'next'.
476
477
478 * bp/fsmonitor (2017-06-12) 6 commits
@@ -550,13 +517,12 @@ of the repositories listed at
517 + diff.c: move line ending check into emit_hunk_header
518 + diff.c: readability fix
519 + Merge branch 'sb/hashmap-customize-comparison' into sb/diff-color-move
553 - (this branch uses sb/hashmap-customize-comparison; is tangled with sb/hashmap-cleanup.)
520
521 "git diff" has been taught to optionally paint new lines that are
522 the same as deleted lines elsewhere differently from genuinely new
523 lines.
524
559 - Will merge to 'master'.
525 + Will cook in 'next'.
526
527 --------------------------------------------------
528 [Discarded]