What's cooking (2020/12 #05)

Junio C Hamano committed Dec 28, 2020 at 09:01 UTC 7f28a501c341dbc2eb163637bdcd481d04472682
1 file changed +169 -135
whats-cooking.txt
+169 -135
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Dec 2020, #04; Tue, 22)
4 -X-master-at: 6d3ef5b467eccd2769f1aa1c555d317d3c8dc707
5 -X-next-at: acce13e5c41814e6303336cb470967b5b6cc9211
3 +Subject: What's cooking in git.git (Dec 2020, #05; Mon, 28)
4 +X-master-at: 71ca53e8125e36efbda17293c50027d31681a41f
5 +X-next-at: d98b1dd5eaa7327399716162c746c9bd3cac3866
6
7 -What's cooking in git.git (Dec 2020, #04; Tue, 22)
7 +What's cooking in git.git (Dec 2020, #05; Mon, 28)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with '-' are
@@ -12,7 +12,9 @@ only in 'seen' (formerly 'pu'---proposed updates) while commits prefixed
12 with '+' 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 -Hopefully, the second release candidate -rc2 can be tagged tomorrow.
15 +Git 2.30 final is out. I expect things will quiet down while people
16 +celebrate year-end and new year, unless a bad regression is found
17 +post release.
18
19 Copies of the source code to Git live in many repositories, and the
20 following is a list of the ones I push into or their mirrors. Some
@@ -43,7 +45,7 @@ Release tarballs are available at:
45 https://www.kernel.org/pub/software/scm/git/
46
47 --------------------------------------------------
46 -[New Topics]
48 +[Graduated to 'master']
49
50 * dl/checkout-p-merge-base (2020-12-21) 1 commit
51 (merged to 'next' on 2020-12-21 at 595dd32b56)
@@ -51,27 +53,30 @@ Release tarballs are available at:
53
54 Fix to a regression introduced during this cycle.
55
54 - Will merge to 'master'.
55 -
56 -
57 -* es/worktree-repair-both-moved (2020-12-21) 1 commit
58 - - worktree: teach `repair` to fix multi-directional breakage
59 -
60 - "git worktree repair" learned to take advantage of the fact that it
61 - knows both ends (i.e. the main repository is found in the location
62 - the command runs, the worktrees are given as arguments) to deal
63 - with the case where both the repository and the worktree moved.
56
65 - Will merge to 'next'.
57 +* js/no-more-prepare-for-main-in-test (2020-12-16) 11 commits
58 + (merged to 'next' on 2020-12-18 at d15a382d4d)
59 + + tests: drop the `PREPARE_FOR_MAIN_BRANCH` prereq
60 + + t9902: use `main` as initial branch name
61 + + t6302: use `main` as initial branch name
62 + + t5703: use `main` as initial branch name
63 + + t5510: use `main` as initial branch name
64 + + t5505: finalize transitioning to using the branch name `main`
65 + + t3205: finalize transitioning to using the branch name `main`
66 + + t3203: complete the transition to using the branch name `main`
67 + + t3201: finalize transitioning to using the branch name `main`
68 + + t3200: finish transitioning to the initial branch name `main`
69 + + t1400: use `main` as initial branch name
70
71 + Test coverage fix.
72
68 -* fc/t6030-bisect-reset-removes-auxiliary-files (2020-12-21) 1 commit
69 - - test: bisect-porcelain: fix location of files
73
71 - A 3-year old test that was not testing anything useful has been
72 - corrected.
74 +* jx/pack-redundant-on-single-pack (2020-12-16) 1 commit
75 + (merged to 'next' on 2020-12-18 at b819311529)
76 + + pack-redundant: fix crash when one packfile in repo
77
74 - Will merge to 'next'.
78 + "git pack-redandant" when there is only one packfile used to crash,
79 + which has been corrected.
80
81
82 * ma/maintenance-crontab-fix (2020-12-21) 3 commits
@@ -82,46 +87,63 @@ Release tarballs are available at:
87
88 Hotfix for a topic of this cycle.
89
85 - Will merge to 'master'.
90
91 +* nk/refspecs-negative-fix (2020-12-21) 2 commits
92 + (merged to 'next' on 2020-12-21 at 7d88169236)
93 + + negative-refspec: improve comment on query_matches_negative_refspec
94 + + negative-refspec: fix segfault on : refspec
95
88 -* mr/bisect-in-c-4 (2020-12-21) 7 commits
89 - - bisect--helper: retire `--check-and-set-terms` subcommand
90 - - bisect--helper: reimplement `bisect_skip` shell function in C
91 - - bisect--helper: retire `--bisect-auto-next` subcommand
92 - - bisect--helper: use `res` instead of return in BISECT_RESET case option
93 - - bisect--helper: retire `--bisect-write` subcommand
94 - - bisect--helper: reimplement `bisect_replay` shell function in C
95 - - bisect--helper: reimplement `bisect_log` shell function in C
96 + Hotfix for recent regression.
97
97 - Piecemeal of rewrite of "git bisect" in C continues.
98
99 +* pb/doc-git-linkit-fix (2020-12-22) 1 commit
100 + (merged to 'next' on 2020-12-22 at 240a7a227c)
101 + + git.txt: fix typos in 'linkgit' macro invocation
102
100 -* jt/clone-unborn-head (2020-12-21) 3 commits
101 - . clone: respect remote unborn HEAD
102 - . connect, transport: add no-op arg for future patch
103 - . ls-refs: report unborn targets of symrefs
103 + Docfix.
104
105 - "git clone" tries to locally check out the branch pointed at by
106 - HEAD of the remote repository after it is done, but the protocol
107 - did not convey the information necessary to do so when copying an
108 - empty repository. The protocol v2 learned how to do so.
105 +--------------------------------------------------
106 +[New Topics]
107
110 - Seems to break tests when merged to 'seen'.
108 +* es/perf-export-fix (2020-12-22) 1 commit
109 + (merged to 'next' on 2020-12-22 at d06b0379d9)
110 + + t/perf: avoid unnecessary test_export() recursion
111
112 + Tweak unneeded recursion from a test framework helper function.
113
113 -* nk/refspecs-negative-fix (2020-12-21) 2 commits
114 - (merged to 'next' on 2020-12-21 at 7d88169236)
115 - + negative-refspec: improve comment on query_matches_negative_refspec
116 - + negative-refspec: fix segfault on : refspec
114 + Will cook in 'next'.
115
118 - Hotfix for recent regression.
116
120 - Will merge to 'master'.
117 +* dl/p4-encode-after-kw-expansion (2020-12-23) 1 commit
118 + - git-p4: fix syncing file types with pattern
119 +
120 + Text encoding fix for "git p4".
121 +
122 +
123 +* fc/mergetool-automerge (2020-12-22) 1 commit
124 + - mergetool: add automerge configuration
125 +
126 + "git mergetool" feeds three versions (base, local and remote) of
127 + a conflicted path unmodified. The command learned to optionally
128 + prepare these files with unconflicted parts already resolved.
129
130 --------------------------------------------------
131 [Stalled]
132
133 +* ss/submodule-add-in-c (2020-12-15) 3 commits
134 + . t7400: add test to check 'submodule add' for tracked paths
135 + . submodule: port submodule subcommand 'add' from shell to C
136 + . dir: change the scope of function 'directory_exists_in_index()'
137 +
138 + "git submodule add" being rewritten in C.
139 +
140 + Expecting a reroll.
141 + The patches are split incorrectly; part of 1/3 belongs to 2/3
142 + cf. <nycvar.QRO.7.76.6.2012190104140.56@tvgsbejvaqbjf.bet>
143 + It seems to introduce a segfault on 'seen'.
144 + cf. <xmqqft3xflw7.fsf@gitster.c.googlers.com>
145 +
146 +
147 * ak/corrected-commit-date (2020-10-08) 10 commits
148 - doc: add corrected commit date info
149 - commit-reach: use corrected commit dates in paint_down_to_common()
@@ -227,16 +249,6 @@ Release tarballs are available at:
249 cf. <20200925170256.11490-1-shubhunic@gmail.com>
250
251
230 -* ew/decline-core-abbrev (2020-09-01) 1 commit
231 - - core.abbrev <off|false|no> disables abbreviations
232 -
233 - Allow the configuration to specify no abbreviation regardless of
234 - the hash algorithm.
235 -
236 - Expecting a reroll. The intent is very good.
237 - cf. <20200901144323.GA14554@dcvr>
238 -
239 -
252 * ar/fetch-transfer-ipversion (2020-09-16) 1 commit
253 - config: option transfer.ipversion to set transport protocol version for network fetches
254
@@ -275,16 +287,6 @@ Release tarballs are available at:
287 --------------------------------------------------
288 [Needs Review]
289
278 -* ss/submodule-add-in-c (2020-12-15) 3 commits
279 - - t7400: add test to check 'submodule add' for tracked paths
280 - - submodule: port submodule subcommand 'add' from shell to C
281 - - dir: change the scope of function 'directory_exists_in_index()'
282 -
283 - "git submodule add" being rewritten in C.
284 -
285 - Needs review.
286 -
287 -
290 * ag/merge-strategies-in-c (2020-11-24) 13 commits
291 - sequencer: use the "octopus" merge strategy without forking
292 - sequencer: use the "resolve" strategy without forking
@@ -308,13 +310,66 @@ Release tarballs are available at:
310 --------------------------------------------------
311 [Cooking]
312
311 -* fc/bash-completion-post-2.29 (2020-12-19) 4 commits
312 - - completion: bash: fix for multiple dash commands
313 - - completion: bash: fix for suboptions with value
314 - - completion: bash: add correct suffix in variables
315 - - completion: bash: fix prefix detection in branch.*
313 +* ew/decline-core-abbrev (2020-12-23) 1 commit
314 + - core.abbrev=no disables abbreviations
315
317 - Needs review.
316 + Allow the configuration to specify no abbreviation regardless of
317 + the hash algorithm.
318 +
319 + Will merge to 'next'.
320 +
321 +
322 +* es/worktree-repair-both-moved (2020-12-21) 1 commit
323 + (merged to 'next' on 2020-12-22 at 9eaae4f5c0)
324 + + worktree: teach `repair` to fix multi-directional breakage
325 +
326 + "git worktree repair" learned to deal with the case where both the
327 + repository and the worktree moved.
328 +
329 + Will cook in 'next'.
330 +
331 +
332 +* fc/t6030-bisect-reset-removes-auxiliary-files (2020-12-21) 1 commit
333 + (merged to 'next' on 2020-12-22 at 2ab78ef1e1)
334 + + test: bisect-porcelain: fix location of files
335 +
336 + A 3-year old test that was not testing anything useful has been
337 + corrected.
338 +
339 + Will cook in 'next'.
340 +
341 +
342 +* mr/bisect-in-c-4 (2020-12-21) 7 commits
343 + - bisect--helper: retire `--check-and-set-terms` subcommand
344 + - bisect--helper: reimplement `bisect_skip` shell function in C
345 + - bisect--helper: retire `--bisect-auto-next` subcommand
346 + - bisect--helper: use `res` instead of return in BISECT_RESET case option
347 + - bisect--helper: retire `--bisect-write` subcommand
348 + - bisect--helper: reimplement `bisect_replay` shell function in C
349 + - bisect--helper: reimplement `bisect_log` shell function in C
350 +
351 + Piecemeal of rewrite of "git bisect" in C continues.
352 +
353 +
354 +* jt/clone-unborn-head (2020-12-22) 3 commits
355 + - clone: respect remote unborn HEAD
356 + - connect, transport: add no-op arg for future patch
357 + - ls-refs: report unborn targets of symrefs
358 +
359 + "git clone" tries to locally check out the branch pointed at by
360 + HEAD of the remote repository after it is done, but the protocol
361 + did not convey the information necessary to do so when copying an
362 + empty repository. The protocol v2 learned how to do so.
363 +
364 +
365 +* fc/bash-completion-post-2.29 (2020-12-23) 4 commits
366 + . completion: bash: add correct suffix in variables
367 + . completion: bash: fix for multiple dash commands
368 + . completion: bash: fix for suboptions with value
369 + . completion: bash: fix prefix detection in branch.*
370 +
371 + Seems to break tests on Windows
372 + cf. https://github.com/git/git/runs/1597682180#step:5:35614
373
374
375 * jc/config-pretend-gitdir (2020-12-15) 1 commit
@@ -332,46 +387,18 @@ Release tarballs are available at:
387
388
389 * en/merge-ort-recursive (2020-12-16) 4 commits
335 - - merge-ort: implement merge_incore_recursive()
336 - - merge-ort: make clear_internal_opts() aware of partial clearing
337 - - merge-ort: copy a few small helper functions from merge-recursive.c
338 - - commit: move reverse_commit_list() from merge-recursive
390 + (merged to 'next' on 2020-12-22 at 0dbf60011f)
391 + + merge-ort: implement merge_incore_recursive()
392 + + merge-ort: make clear_internal_opts() aware of partial clearing
393 + + merge-ort: copy a few small helper functions from merge-recursive.c
394 + + commit: move reverse_commit_list() from merge-recursive
395 (this branch uses en/merge-ort-2 and en/merge-ort-impl; is tangled with en/merge-ort-3.)
396
397 The ORT merge strategy learned to synthesize virtual ancestor tree
398 by recursively merging multiple merge bases together, just like the
399 recursive backend has done for years.
400
345 - Will merge to 'next'.
346 -
347 -
348 -* js/no-more-prepare-for-main-in-test (2020-12-16) 11 commits
349 - (merged to 'next' on 2020-12-18 at d15a382d4d)
350 - + tests: drop the `PREPARE_FOR_MAIN_BRANCH` prereq
351 - + t9902: use `main` as initial branch name
352 - + t6302: use `main` as initial branch name
353 - + t5703: use `main` as initial branch name
354 - + t5510: use `main` as initial branch name
355 - + t5505: finalize transitioning to using the branch name `main`
356 - + t3205: finalize transitioning to using the branch name `main`
357 - + t3203: complete the transition to using the branch name `main`
358 - + t3201: finalize transitioning to using the branch name `main`
359 - + t3200: finish transitioning to the initial branch name `main`
360 - + t1400: use `main` as initial branch name
361 -
362 - Test coverage fix.
363 -
364 - Will merge to 'master'.
365 -
366 -
367 -* jx/pack-redundant-on-single-pack (2020-12-16) 1 commit
368 - (merged to 'next' on 2020-12-18 at b819311529)
369 - + pack-redundant: fix crash when one packfile in repo
370 -
371 - "git pack-redandant" when there is only one packfile used to crash,
372 - which has been corrected.
373 -
374 - Will merge to 'master'.
401 + Will cook in 'next'.
402
403
404 * mt/parallel-checkout-part-1 (2020-12-16) 9 commits
@@ -407,32 +434,20 @@ Release tarballs are available at:
434 Rename detection is added to the "ORT" merge strategy.
435
436
410 -* jk/disambiguate-equal-in-config-param (2020-12-09) 3 commits
411 - - config: store "git -c" variables using more robust format
412 - - config: parse more robust format in GIT_CONFIG_PARAMETERS
413 - - quote: make sq_dequote_step() a public function
414 - (this branch uses ps/config-env-pairs.)
415 -
416 - The quoting rules used to pass "git -c var=val" configuration
417 - across processes have been updated in a backward compatible way, so
418 - that the value read from an environment variable can contain an
419 - equal sign when using the "git --config-env var=env" feature.
420 -
421 - We may want to make this just a middle part of the
422 - ps/config-env-pairs topic with a bit of patch shuffling.
423 -
424 -
425 -* ps/config-env-pairs (2020-12-09) 6 commits
437 +* ps/config-env-pairs (2020-12-23) 9 commits
438 + - SQUASH???
439 - config: allow specifying config entries via envvar pairs
427 - - config: refactor parsing of GIT_CONFIG_PARAMETERS
440 + - environment: make `getenv_safe()` a public function
441 + - config: parse more robust format in GIT_CONFIG_PARAMETERS
442 + - config: store "git -c" variables using more robust format
443 - config: extract function to parse config pairs
429 - - environment: make `getenv_safe()` non-static
444 + - quote: make sq_dequote_step() a public function
445 - config: add new way to pass config via `--config-env`
446 - git: add `--super-prefix` to usage string
432 - (this branch is used by jk/disambiguate-equal-in-config-param.)
447
448 Introduce two new ways to feed configuration variable-value pairs
435 - via environment variables.
449 + via environment variables, and tweak the way GIT_CONFIG_PARAMETERS
450 + encodes variable/value pairs to make it more robust.
451
452
453 * bc/hashed-mailmap (2020-12-12) 1 commit
@@ -490,6 +505,8 @@ Release tarballs are available at:
505 "git rev-parse" can be explicitly told to give output as absolute
506 or relative path.
507
508 + Will merge to 'next'.
509 +
510
511 * en/merge-ort-impl (2020-12-13) 21 commits
512 (merged to 'next' on 2020-12-21 at c551d7bda9)
@@ -583,24 +600,33 @@ Release tarballs are available at:
600 The "reftable" backend for the refs API.
601
602
586 -* ab/mktag (2020-12-09) 11 commits
587 - - SQUASH???
603 +* ab/mktag (2020-12-22) 20 commits
604 + - mktag: add a --no-strict option
605 + - mktag: mark strings for translation
606 + - mktag: convert to parse-options
607 + - mktag: allow omitting the header/body \n separator
608 - mktag: allow turning off fsck.extraHeaderEntry
609 - fsck: make fsck_config() re-usable
590 - - mktag doc: update to explain why to use this
610 - mktag: use fsck instead of custom verify_tag()
611 + - mktag: use puts(str) instead of printf("%s\n", str)
612 + - mktag: remove redundant braces in one-line body "if"
613 + - mktag: use default strbuf_read() hint
614 + - mktag tests: test "hash-object" compatibility
615 + - mktag tests: stress test whitespace handling
616 + - mktag tests: don't create "mytag" twice
617 + - mktag tests: don't pipe to stderr needlessly
618 - mktag tests: improve verify_object() test coverage
619 - mktag tests: remove needless SHA-1 hardcoding
620 - mktag tests: don't needlessly use a subshell
595 - - mktag: remove redundant braces in one-line body "if"
596 - - mktag: use default strbuf_read() hint
621 + - mktag doc: update to explain why to use this
622 + - mktag doc: grammar fix, when exists -> when it exists
623 - mktag doc: say <hash> not <sha1>
624
625 "git mktag" validates its input using its own rules before writing
626 a tag object---it has been updated to share the logic with "git
627 fsck".
628
603 - Expecting a reroll, but it seems getting closer.
629 + cf. <20201223013606.7972-1-avarab@gmail.com>
630
631
632 * ab/trailers-extra-format (2020-12-09) 5 commits
@@ -683,6 +709,8 @@ Release tarballs are available at:
709 "git stash" did not work well in a sparsely checked out working
710 tree.
711
712 + Will merge to 'next'.
713 +
714
715 * tb/pack-bitmap (2020-12-08) 24 commits
716 (merged to 'next' on 2020-12-15 at 773268c2fb)
@@ -773,12 +801,11 @@ Release tarballs are available at:
801 which does not consider having untracked files in the working tree
802 as source of dirtiness. The inconsistency has been fixed.
803
776 -
804 --------------------------------------------------
805 [Discarded]
806
807 * dr/push-remoteref-fix (2020-04-23) 1 commit
781 - - remote.c: fix handling of %(push:remoteref)
808 + . remote.c: fix handling of %(push:remoteref)
809
810 The "%(push:remoteref)" placeholder in the "--format=" argument of
811 "git format-patch" (and friends) only showed what got explicitly
@@ -790,3 +817,10 @@ Release tarballs are available at:
817 cf. <xmqqv9gu7c61.fsf@gitster.c.googlers.com>
818 cf. <20200911214358.acl3hy2e763begoo@feanor>
819
820 +
821 +* jk/disambiguate-equal-in-config-param (2020-12-09) 3 commits
822 + . config: store "git -c" variables using more robust format
823 + . config: parse more robust format in GIT_CONFIG_PARAMETERS
824 + . quote: make sq_dequote_step() a public function
825 +
826 + Absorbed by the ps/config-env-pairs topic.