What's cooking (2016/11 #04)

Junio C Hamano committed Nov 21, 2016 at 14:18 UTC 096138e680c212836a6d5812bfd4accceba3692a
1 file changed +169 -85
whats-cooking.txt
+169 -85
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Nov 2016, #03; Wed, 16)
4 -X-master-at: 3ab228137f980ff72dbdf5064a877d07bec76df9
5 -X-next-at: 51e66c2fa76b5b5131e8804974eee02d13e08b0f
3 +Subject: What's cooking in git.git (Nov 2016, #04; Mon, 21)
4 +X-master-at: 1310affe024fba407bff55dbe65cd6d670c8a32d
5 +X-next-at: d50252334705fce146cd91a5045ecc87fd6ea92e
6
7 -What's cooking in git.git (Nov 2016, #03; Wed, 16)
7 +What's cooking in git.git (Nov 2016, #04; Mon, 21)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -20,72 +20,74 @@ of the repositories listed at
20 --------------------------------------------------
21 [New Topics]
22
23 -* dt/empty-submodule-in-merge (2016-11-12) 1 commit
24 - - submodules: allow empty working-tree dirs in merge/cherry-pick
23 +* jc/for-each-ref-head-segfault-fix (2016-11-18) 1 commit
24 + (merged to 'next' on 2016-11-21 at 3c1f352316)
25 + + for-each-ref: do not segv with %(HEAD) on an unborn branch
26
26 - An empty directory in a working tree that can simply be nuked used
27 - to interfere while merging or cherry-picking a change to create a
28 - submodule directory there, which has been fixed..
27 + Using a %(HEAD) placeholder in "for-each-ref --format=" option
28 + caused the command to segfault when on an unborn branch.
29
30 + Will cook in 'next'.
31
31 -* bw/grep-recurse-submodules (2016-11-14) 6 commits
32 - - grep: search history of moved submodules
33 - - grep: enable recurse-submodules to work on <tree> objects
34 - - grep: optionally recurse into submodules
35 - - grep: add submodules as a grep source type
36 - - submodules: load gitmodules file from commit sha1
37 - - submodules: add helper functions to determine presence of submodules
32
39 - "git grep" learns to optionally recurse into submodules
33 +* js/prepare-sequencer (2016-11-21) 1 commit
34 + (merged to 'next' on 2016-11-21 at 7cdf4ca421)
35 + + i18n: fix unmatched single quote in error message
36
37 + Fix for an error message string.
38 + Will merge to 'master'.
39
42 -* dt/smart-http-detect-server-going-away (2016-11-14) 2 commits
43 - - upload-pack: optionally allow fetching any sha1
44 - - remote-curl: don't hang when a server dies before any output
40
46 - When the http server gives an incomplete response to a smart-http
47 - rpc call, it could lead to client waiting for a full response that
48 - will never come. Teach the client side to notice this condition
49 - and abort the transfer.
41 +* js/rebase-i-commentchar-fix (2016-11-21) 3 commits
42 + - rebase -i: handle core.commentChar=auto
43 + - stripspace: respect repository config
44 + - rebase -i: highlight problems with core.commentchar
45
51 - An improvement counterproposal exists.
52 - cf. <20161114194049.mktpsvgdhex2f4zv@sigill.intra.peff.net>
46 + "git rebase -i" did not work well with core.commentchar
47 + configuration variable for two reasons, both of which have been
48 + fixed.
49
50 + Waiting for an ack for updates.
51 + Hopefully we can merge this before 2.11 final, as one of the
52 + breakages is a recent regression.
53
55 -* mm/push-social-engineering-attack-doc (2016-11-14) 1 commit
56 - (merged to 'next' on 2016-11-16 at b7c1b27563)
57 - + doc: mention transfer data leaks in more places
54
59 - Doc update on fetching and pushing.
55 +* jc/cache-tree-wip (2016-11-18) 4 commits
56 + - cache-tree: freshen the tree object at the top level
57 + - cache-tree: retire cache_tree_fully_valid() API function
58 + - commit: remove redundant check for active_cache_changed
59 + - freshen_object(): factor out a helper function
60
61 - Will cook in 'next'.
61
62 +* jk/trailers-placeholder-in-pretty (2016-11-21) 2 commits
63 + - ref-filter: add support to display trailers as part of contents
64 + - pretty: add %(trailers) format for displaying trailers of a commit message
65
64 -* nd/worktree-lock (2016-11-13) 1 commit
65 - (merged to 'next' on 2016-11-16 at 67b731de07)
66 - + git-worktree.txt: fix typo "to"/"two", and add comma
66
68 - Typofix.
67 +* jt/trailer-with-cruft (2016-11-21) 1 commit
68 + - doc: mention user-configured trailers
69
70 - Will merge to 'master'.
70
71 +* sb/submodule-intern-gitdir (2016-11-21) 3 commits
72 + - submodule--helper: add intern-git-dir function
73 + - test-lib-functions.sh: teach test_commit -C <dir>
74 + - submodule: use absolute path for computing relative path connecting
75
73 -* nd/worktree-move (2016-11-12) 11 commits
74 - . worktree remove: new command
75 - . worktree move: refuse to move worktrees with submodules
76 - . worktree move: accept destination as directory
77 - . worktree move: new command
78 - . worktree.c: add update_worktree_location()
79 - . worktree.c: add validate_worktree()
80 - . copy.c: convert copy_file() to copy_dir_recursively()
81 - . copy.c: style fix
82 - . copy.c: convert bb_(p)error_msg to error(_errno)
83 - . copy.c: delete unused code in copy_file()
84 - . copy.c: import copy_file() from busybox
76 +--------------------------------------------------
77 +[Graduated to "master"]
78
86 - "git worktree" learned move and remove subcommands.
79 +* jk/create-branch-remove-unused-param (2016-11-09) 1 commit
80 + (merged to 'next' on 2016-11-16 at 621254c832)
81 + + create_branch: drop unused "head" parameter
82
88 - Seems to break a test or two.
83 + Code clean-up.
84 +
85 +
86 +* nd/worktree-lock (2016-11-13) 1 commit
87 + (merged to 'next' on 2016-11-16 at 67b731de07)
88 + + git-worktree.txt: fix typo "to"/"two", and add comma
89 +
90 + Typofix.
91
92
93 * tk/diffcore-delta-remove-unused (2016-11-14) 1 commit
@@ -94,27 +96,6 @@ of the repositories listed at
96
97 Code cleanup.
98
97 - Will merge to 'master'.
98 -
99 -
100 -* jc/compression-config (2016-11-15) 1 commit
101 - - compression: unify pack.compression configuration parsing
102 -
103 - Compression setting for producing packfiles were spread across
104 - three codepaths, one of which did not honor any configuration.
105 - Unify these so that all of them honor core.compression and
106 - pack.compression variables the same way.
107 -
108 - Needs tests for pack-objects and fast-import.
109 -
110 -
111 -* mm/gc-safety-doc (2016-11-16) 1 commit
112 - - git-gc.txt: expand discussion of races with other processes
113 -
114 - Doc update.
115 -
116 - Will merge to 'next'.
117 -
99 --------------------------------------------------
100 [Stalled]
101
@@ -215,11 +196,99 @@ of the repositories listed at
196 --------------------------------------------------
197 [Cooking]
198
199 +* dt/empty-submodule-in-merge (2016-11-17) 1 commit
200 + - submodules: allow empty working-tree dirs in merge/cherry-pick
201 +
202 + An empty directory in a working tree that can simply be nuked used
203 + to interfere while merging or cherry-picking a change to create a
204 + submodule directory there, which has been fixed..
205 +
206 + Waiting for review.
207 +
208 +
209 +* bw/grep-recurse-submodules (2016-11-18) 6 commits
210 + - grep: search history of moved submodules
211 + - grep: enable recurse-submodules to work on <tree> objects
212 + - grep: optionally recurse into submodules
213 + - grep: add submodules as a grep source type
214 + - submodules: load gitmodules file from commit sha1
215 + - submodules: add helper functions to determine presence of submodules
216 +
217 + "git grep" learns to optionally recurse into submodules
218 +
219 + Waiting for review.
220 +
221 +
222 +* dt/smart-http-detect-server-going-away (2016-11-18) 2 commits
223 + (merged to 'next' on 2016-11-21 at d502523347)
224 + + upload-pack: optionally allow fetching any sha1
225 + + remote-curl: don't hang when a server dies before any output
226 +
227 + When the http server gives an incomplete response to a smart-http
228 + rpc call, it could lead to client waiting for a full response that
229 + will never come. Teach the client side to notice this condition
230 + and abort the transfer.
231 +
232 + An improvement counterproposal has failed.
233 + cf. <20161114194049.mktpsvgdhex2f4zv@sigill.intra.peff.net>
234 +
235 + Will cook in 'next'.
236 +
237 +
238 +* mm/push-social-engineering-attack-doc (2016-11-14) 1 commit
239 + (merged to 'next' on 2016-11-16 at b7c1b27563)
240 + + doc: mention transfer data leaks in more places
241 +
242 + Doc update on fetching and pushing.
243 +
244 + Will cook in 'next'.
245 +
246 +
247 +* nd/worktree-move (2016-11-12) 11 commits
248 + . worktree remove: new command
249 + . worktree move: refuse to move worktrees with submodules
250 + . worktree move: accept destination as directory
251 + . worktree move: new command
252 + . worktree.c: add update_worktree_location()
253 + . worktree.c: add validate_worktree()
254 + . copy.c: convert copy_file() to copy_dir_recursively()
255 + . copy.c: style fix
256 + . copy.c: convert bb_(p)error_msg to error(_errno)
257 + . copy.c: delete unused code in copy_file()
258 + . copy.c: import copy_file() from busybox
259 +
260 + "git worktree" learned move and remove subcommands.
261 +
262 + Waiting for a reroll.
263 + Seems to break a test or two.
264 +
265 +
266 +* jc/compression-config (2016-11-15) 1 commit
267 + - compression: unify pack.compression configuration parsing
268 +
269 + Compression setting for producing packfiles were spread across
270 + three codepaths, one of which did not honor any configuration.
271 + Unify these so that all of them honor core.compression and
272 + pack.compression variables the same way.
273 +
274 + Needs tests for pack-objects and fast-import.
275 +
276 +
277 +* mm/gc-safety-doc (2016-11-16) 1 commit
278 + (merged to 'next' on 2016-11-17 at fc0d225b6b)
279 + + git-gc.txt: expand discussion of races with other processes
280 +
281 + Doc update.
282 +
283 + Will cook in 'next'.
284 +
285 +
286 * hv/submodule-not-yet-pushed-fix (2016-11-16) 4 commits
219 - - submodule_needs_pushing(): explain the behaviour when we cannot answer
220 - - batch check whether submodule needs pushing into one call
221 - - serialize collection of refs that contain submodule changes
222 - - serialize collection of changed submodules
287 + (merged to 'next' on 2016-11-21 at 1a599af962)
288 + + submodule_needs_pushing(): explain the behaviour when we cannot answer
289 + + batch check whether submodule needs pushing into one call
290 + + serialize collection of refs that contain submodule changes
291 + + serialize collection of changed submodules
292
293 The code in "git push" to compute if any commit being pushed in the
294 superproject binds a commit in a submodule that hasn't been pushed
@@ -227,7 +296,7 @@ of the repositories listed at
296 project that does not have any submodule but have a reasonable
297 number of refs.
298
230 - Looking good.
299 + Will cook in 'next'.
300
301
302 * kn/ref-filter-branch-list (2016-11-15) 18 commits
@@ -272,15 +341,6 @@ of the repositories listed at
341 Will cook in 'next'.
342
343
275 -* jk/create-branch-remove-unused-param (2016-11-09) 1 commit
276 - (merged to 'next' on 2016-11-16 at 621254c832)
277 - + create_branch: drop unused "head" parameter
278 -
279 - Code clean-up.
280 -
281 - Will merge to 'master'.
282 -
283 -
344 * jt/fetch-no-redundant-tag-fetch-map (2016-11-11) 1 commit
345 (merged to 'next' on 2016-11-16 at 5846c27cc5)
346 + fetch: do not redundantly calculate tag refmap
@@ -296,10 +356,14 @@ of the repositories listed at
356 - SQUASH???
357 - diff: retire the original experimental "compaction" heuristics
358
359 + Waiting for a reroll.
360 +
361
362 * jc/abbrev-autoscale-config (2016-11-01) 1 commit
363 - config.abbrev: document the new default that auto-scales
364
365 + Waiting for a reroll.
366 +
367
368 * jk/nofollow-attr-ignore (2016-11-02) 5 commits
369 - exclude: do not respect symlinks for in-tree .gitignore
@@ -308,12 +372,23 @@ of the repositories listed at
372 - attr: convert "macro_ok" into a flags field
373 - add open_nofollow() helper
374
375 + As we do not follow symbolic links when reading control files like
376 + .gitignore and .gitattributes from the index, match the behaviour
377 + and not follow symbolic links when reading them from the working
378 + tree. This also tightens security a bit by not leaking contents of
379 + an unrelated file in the error messages when it is pointed at by
380 + one of these files that is a symbolic link.
381 +
382 + Perhaps we want to cover .gitmodules too with the same mechanism?
383 +
384
385 * sb/submodule-config-cleanup (2016-11-02) 3 commits
386 - submodule-config: clarify parsing of null_sha1 element
387 - submodule-config: rename commit_sha1 to commit_or_tree
388 - submodule config: inline config_from_{name, path}
389
390 + What's the doneness of this topic?
391 +
392
393 * jc/push-default-explicit (2016-10-31) 2 commits
394 (merged to 'next' on 2016-11-01 at 8dc3a6cf25)
@@ -340,6 +415,8 @@ of the repositories listed at
415 "commit -s", have been taught to use the logic of and share the
416 code with "git interpret-trailer".
417
418 + What's the doneness of this topic?
419 +
420
421 * nd/rebase-forget (2016-10-28) 1 commit
422 - rebase: add --forget to cleanup rebase, leave HEAD untouched
@@ -382,6 +459,10 @@ of the repositories listed at
459 looking at the combined diff. "git reset" learned a new
460 "--unmerge" option to recover from this situation.
461
462 + Will discard.
463 + This may not be needed, given that update-index has a similar
464 + option.
465 +
466
467 * jc/merge-base-fp-only (2016-10-19) 8 commits
468 . merge-base: fp experiment
@@ -396,6 +477,9 @@ of the repositories listed at
477 An experiment of merge-base that ignores common ancestors that are
478 not on the first parent chain.
479
480 + Will discard.
481 + The whole premise feels wrong.
482 +
483
484 * tb/convert-stream-check (2016-10-27) 2 commits
485 - convert.c: stream and fast search for binary