What's cooking (2022/08 #06)

Junio C Hamano committed Aug 17, 2022 at 16:06 UTC 44710445da73cffbd810bff65c2871055b8a2d1b
1 file changed +77 -142
whats-cooking.txt
+77 -142
@@ -1,9 +1,9 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Aug 2022, #05; Mon, 15)
2 +Subject: What's cooking in git.git (Aug 2022, #06; Wed, 17)
3 X-master-at: 9bf691b78cf906751e65d65ba0c6ffdcd9a5a12c
4 -X-next-at: c19287026c9b940f7f43d34e6dacbd5c34e4a2e0
4 +X-next-at: 91fe8e635439f67be8837601cbf4bd61eddc41b4
5
6 -What's cooking in git.git (Aug 2022, #05; Mon, 15)
6 +What's cooking in git.git (Aug 2022, #06; Wed, 17)
7 --------------------------------------------------
8
9 Here are the topics that have been cooking in my tree. Commits
@@ -13,7 +13,7 @@ release). Commits prefixed with '-' are only in 'seen', and aren't
13 considered "accepted" at all. A topic without enough support may be
14 discarded after a long period of no activity.
15
16 -We are at the beginning of the week #6 of a 12-week cycle (cf.
16 +We are in the middle of the week #6 of a 12-week cycle (cf.
17 https://tinyurl.com/gitCal).
18
19 Copies of the source code to Git live in many repositories, and the
@@ -45,119 +45,48 @@ Release tarballs are available at:
45 https://www.kernel.org/pub/software/scm/git/
46
47 --------------------------------------------------
48 -[Graduated to 'master']
49 -
50 -* ab/hooks-regression-fix (2022-08-05) 1 commit
51 - (merged to 'next' on 2022-08-08 at f5a3f88983)
52 - + hook API: don't segfault on strbuf_addf() to NULL "out"
53 -
54 - A follow-up fix to a fix for a regression in 2.36.
55 - source: <patch-1.1-2450e3e65cf-20220805T141402Z-avarab@gmail.com>
56 -
57 -
58 -* ab/leak-check (2022-07-27) 15 commits
59 - (merged to 'next' on 2022-08-05 at 2a6b9c8432)
60 - + CI: use "GIT_TEST_SANITIZE_LEAK_LOG=true" in linux-leaks
61 - + upload-pack: fix a memory leak in create_pack_file()
62 - + leak tests: mark passing SANITIZE=leak tests as leak-free
63 - + leak tests: don't skip some tests under SANITIZE=leak
64 - + test-lib: have the "check" mode for SANITIZE=leak consider leak logs
65 - + test-lib: add a GIT_TEST_PASSING_SANITIZE_LEAK=check mode
66 - + test-lib: simplify by removing test_external
67 - + tests: move copy/pasted PERL + Test::More checks to a lib-perl.sh
68 - + t/Makefile: don't remove test-results in "clean-except-prove-cache"
69 - + test-lib: add a SANITIZE=leak logging mode
70 - + t/README: reword the "GIT_TEST_PASSING_SANITIZE_LEAK" description
71 - + test-lib: add a --invert-exit-code switch
72 - + test-lib: fix GIT_EXIT_OK logic errors, use BAIL_OUT
73 - + test-lib: don't set GIT_EXIT_OK before calling test_atexit_handler
74 - + test-lib: use $1, not $@ in test_known_broken_{ok,failure}_
75 -
76 - Extend SANITIZE=leak checking and declare more tests "currently leak-free".
77 - source: <cover-v3-00.15-00000000000-20220727T230800Z-avarab@gmail.com>
78 -
79 -
80 -* ab/plug-revisions-leak (2022-08-03) 6 commits
81 - (merged to 'next' on 2022-08-05 at d1ca88976f)
82 - + revisions API: don't leak memory on argv elements that need free()-ing
83 - + bisect.c: partially fix bisect_rev_setup() memory leak
84 - + log: refactor "rev.pending" code in cmd_show()
85 - + log: fix a memory leak in "git show <revision>..."
86 - + test-fast-rebase helper: use release_revisions() (again)
87 - + bisect.c: add missing "goto" for release_revisions()
88 -
89 - Plug a bit more leaks in the revisions API.
90 - source: <cover-v3-0.6-00000000000-20220802T152925Z-avarab@gmail.com>
91 -
92 -
93 -* ab/tech-docs-to-help (2022-08-04) 12 commits
94 - (merged to 'next' on 2022-08-08 at 65c9ec7308)
95 - + docs: move http-protocol docs to man section 5
96 - + docs: move cruft pack docs to gitformat-pack
97 - + docs: move pack format docs to man section 5
98 - + docs: move signature docs to man section 5
99 - + docs: move index format docs to man section 5
100 - + docs: move protocol-related docs to man section 5
101 - + docs: move commit-graph format docs to man section 5
102 - + git docs: add a category for file formats, protocols and interfaces
103 - + git docs: add a category for user-facing file, repo and command UX
104 - + git help doc: use "<doc>" instead of "<guide>"
105 - + help.c: remove common category behavior from drop_prefix() behavior
106 - + help.c: refactor drop_prefix() to use a "switch" statement"
107 -
108 - Expose a lot of "tech docs" via "git help" interface.
109 - source: <cover-v8-00.12-00000000000-20220804T162138Z-avarab@gmail.com>
110 -
111 -
112 -* gc/git-reflog-doc-markup (2022-08-01) 1 commit
113 - (merged to 'next' on 2022-08-05 at f2d8721ab2)
114 - + Documentation/git-reflog: remove unneeded \ from \{
48 +[New Topics]
49
116 - Doc mark-up fix.
117 - source: <pull.1304.git.git.1659387885711.gitgitgadget@gmail.com>
50 +* vd/scalar-enables-fsmonitor (2022-08-16) 5 commits
51 + - scalar: update technical doc roadmap with FSMonitor support
52 + - scalar unregister: stop FSMonitor daemon
53 + - scalar: enable built-in FSMonitor on `register`
54 + - scalar-[un]register: clearly indicate source of error
55 + - scalar-unregister: handle error codes greater than 0
56
57 + "scalar" now enables built-in fsmonitor on enlisted repositories,
58 + when able.
59
120 -* jc/rerere-autoupdate-doc (2022-08-03) 2 commits
121 - (merged to 'next' on 2022-08-08 at 6407091d13)
122 - + doc: clarify rerere-autoupdate
123 - + doc: consolidate --rerere-autoupdate description
60 + Will merge to 'next'?
61 + source: <pull.1324.v2.git.1660694290.gitgitgadget@gmail.com>
62
125 - Update documentation on the "--[no-]rerere-autoupdate" option.
126 - source: <xmqq35f2ysd9.fsf@gitster.g>
63
64 +* en/ancestry-path-in-a-range (2022-08-17) 2 commits
65 + - revision: allow --ancestry-path to take an argument
66 + - rev-list-options.txt: fix simple typo
67
129 -* js/safe-directory-plus (2022-08-08) 5 commits
130 - (merged to 'next' on 2022-08-10 at 3d32a87210)
131 - + mingw: handle a file owned by the Administrators group correctly
132 - + mingw: be more informative when ownership check fails on FAT32
133 - + mingw: provide details about unsafe directories' ownership
134 - + setup: prepare for more detailed "dubious ownership" messages
135 - + setup: fix some formatting
68 + "git rev-list --ancestry-path=C A..B" is a natural extension of
69 + "git rev-list A..B"; instead of choosing a subset of A..B to those
70 + that have ancestry relationship with A, it lets a subset with
71 + ancestry relationship with C.
72
137 - Platform-specific code that determines if a directory is OK to use
138 - as a repository has been taught to report more details, especially
139 - on Windows.
140 - source: <pull.1286.v2.git.1659965270.gitgitgadget@gmail.com>
73 + Will merge to 'next'?
74 + source: <pull.1303.git.1660704498.gitgitgadget@gmail.com>
75
76
143 -* lt/symbolic-ref-sanity (2022-08-01) 1 commit
144 - (merged to 'next' on 2022-08-03 at 443647b94a)
145 - + symbolic-ref: refuse to set syntactically invalid target
77 +* en/submodule-merge-messages-fixes (2022-08-17) 3 commits
78 + - merge-ort: provide helpful submodule update message when possible
79 + - merge-ort: add comment to avoid surprise with new sub_flag variable
80 + - merge-ort: remove translator lego in new "submodule conflict suggestion"
81 + (this branch uses cw/submodule-merge-messages.)
82
147 - "git symbolic-ref symref non..sen..se" is now diagnosed as an error.
148 - source: <YugYNzQYWqDCmOqN@coredump.intra.peff.net>
83 + Further update the help messages given while merging submodules.
84
150 -
151 -* pw/use-glibc-tunable-for-malloc-optim (2022-08-04) 1 commit
152 - (merged to 'next' on 2022-08-08 at 1300f84dc4)
153 - + tests: cache glibc version check
154 -
155 - Avoid repeatedly running getconf to ask libc version in the test
156 - suite, and instead just as it once per script.
157 - source: <pull.1311.git.1659620305757.gitgitgadget@gmail.com>
85 + Will merge to 'next'?
86 + source: <pull.1325.v2.git.1660718028.gitgitgadget@gmail.com>
87
88 --------------------------------------------------
160 -[New Topics]
89 +[Cooking]
90
91 * ll/disk-usage-humanise (2022-08-11) 1 commit
92 (merged to 'next' on 2022-08-14 at 3873a83f90)
@@ -184,22 +113,24 @@ Release tarballs are available at:
113
114
115 * jk/is-promisor-object-keep-tree-in-use (2022-08-14) 1 commit
187 - - is_promisor_object(): fix use-after-free of tree buffer
116 + (merged to 'next' on 2022-08-17 at 96033ff88d)
117 + + is_promisor_object(): fix use-after-free of tree buffer
118
119 An earlier optimization discarded a tree-object buffer that is
120 still in use, which has been corrected.
121
192 - Will merge to 'next'.
122 + Will merge to 'master'.
123 source: <YviWO9Bhz5PU1HaL@coredump.intra.peff.net>
124
125
126 * js/fetch-negotiation-trace (2022-08-15) 1 commit
197 - - fetch-pack: add tracing for negotiation rounds
127 + (merged to 'next' on 2022-08-17 at 2c9e07b617)
128 + + fetch-pack: add tracing for negotiation rounds
129
130 The common ancestor negotiation exchange during a "git fetch"
131 session now leaves trace log.
132
202 - Will merge to 'next'.
133 + Will merge to 'master'.
134 source: <4390677ec75d51487142adf7c2ab821cbd24a53e.1659477669.git.steadmon@google.com>
135
136
@@ -220,8 +151,6 @@ Release tarballs are available at:
151 Needs review.
152 source: <pull.1323.git.1660576283.gitgitgadget@gmail.com>
153
223 ---------------------------------------------------
224 -[Cooking]
154
155 * fc/vimdiff-layout-vimdiff3-fix (2022-08-10) 7 commits
156 (merged to 'next' on 2022-08-11 at a14fec292f)
@@ -277,21 +206,22 @@ Release tarballs are available at:
206
207
208 * sy/mv-out-of-cone (2022-08-10) 9 commits
280 - - mv: check overwrite for in-to-out move
281 - - advice.h: add advise_on_moving_dirty_path()
282 - - mv: cleanup empty WORKING_DIRECTORY
283 - - mv: from in-cone to out-of-cone
284 - - mv: remove BOTH from enum update_mode
285 - - mv: check if <destination> is a SKIP_WORKTREE_DIR
286 - - mv: free the with_slash in check_dir_in_index()
287 - - mv: rename check_dir_in_index() to empty_dir_has_sparse_contents()
288 - - t7002: add tests for moving from in-cone to out-of-cone
209 + (merged to 'next' on 2022-08-17 at 2316d9ce4d)
210 + + mv: check overwrite for in-to-out move
211 + + advice.h: add advise_on_moving_dirty_path()
212 + + mv: cleanup empty WORKING_DIRECTORY
213 + + mv: from in-cone to out-of-cone
214 + + mv: remove BOTH from enum update_mode
215 + + mv: check if <destination> is a SKIP_WORKTREE_DIR
216 + + mv: free the with_slash in check_dir_in_index()
217 + + mv: rename check_dir_in_index() to empty_dir_has_sparse_contents()
218 + + t7002: add tests for moving from in-cone to out-of-cone
219
220 "git mv A B" in a sparsely populated working tree can be asked to
221 move a path from a directory that is "in cone" to another directory
222 that is "out of cone". Handling of such a case has been improved.
223
294 - Will merge to 'next'?
224 + Will merge to 'master'.
225 source: <20220809120910.2021413-1-shaoxuan.yuan02@gmail.com>
226
227
@@ -331,17 +261,21 @@ Release tarballs are available at:
261 source: <pull.1310.v4.git.1660335019.gitgitgadget@gmail.com>
262
263
334 -* jk/pipe-command-nonblock (2022-08-03) 1 commit
335 - - pipe_command(): mark stdin descriptor as non-blocking
264 +* jk/pipe-command-nonblock (2022-08-17) 6 commits
265 + (merged to 'next' on 2022-08-17 at 91fe8e6354)
266 + + pipe_command(): mark stdin descriptor as non-blocking
267 + + pipe_command(): handle ENOSPC when writing to a pipe
268 + + pipe_command(): avoid xwrite() for writing to pipe
269 + + git-compat-util: make MAX_IO_SIZE define globally available
270 + + nonblock: support Windows
271 + + compat: add function to enable nonblocking pipes
272
273 Fix deadlocks between main Git process and subprocess spawned via
274 the pipe_command() API, that can kill "git add -p" that was
275 reimplemented in C recently.
276
341 - Needs waiting for corresponding change to Windows to put the pipe
342 - into nonblock mode.
343 - cf. <YulFTSTbVaTwuQtt@coredump.intra.peff.net>
344 - source: <YunxHOa2sJeEpJxd@coredump.intra.peff.net>
277 + Will merge to 'master'.
278 + source: <YvyE1RDFVAg4uQo1@coredump.intra.peff.net>
279
280
281 * es/mark-gc-cruft-as-experimental (2022-08-03) 2 commits
@@ -560,18 +494,19 @@ Release tarballs are available at:
494
495 Plugging leaks in submodule--helper.
496
563 - Getting there.
497 + Waiting for the "prep" step.
498 source: <cover-v5-00.17-00000000000-20220802T155002Z-avarab@gmail.com>
499
500
501 * cw/submodule-merge-messages (2022-08-04) 1 commit
502 (merged to 'next' on 2022-08-12 at ede0890319)
503 + submodule merge: update conflict error message
504 + (this branch is used by en/submodule-merge-messages-fixes.)
505
506 Update the message given when "git merge" sees conflicts at a path
507 with a submodule while merging a superproject.
508
574 - Will merge to 'master'.
509 + Will wait for en/submodule-merge-messages-fixes to mature.
510 source: <20220804195105.1303455-1-calvinwan@google.com>
511
512
@@ -608,23 +543,9 @@ Release tarballs are available at:
543
544 The pack bitmap file gained a bitmap-lookup table to speed up
545 locating the necessary bitmap for a given commit.
611 -
546 source: <pull.1266.v6.git.1660496112.gitgitgadget@gmail.com>
547
548
615 -* jt/connected-show-missing-from-which-side (2022-06-10) 1 commit
616 - - fetch,fetch-pack: clarify connectivity check error
617 -
618 - We may find an object missing after a "git fetch" stores the
619 - objects it obtained from the other side, but it is not necessarily
620 - because the remote failed to send necessary objects. Reword the
621 - messages in an attempt to help users explore other possibilities
622 - when they hit this error.
623 -
624 - Expecting a reroll.
625 - source: <20220610195247.1177549-1-jonathantanmy@google.com>
626 -
627 -
549 * tb/show-ref-count (2022-06-06) 2 commits
550 - builtin/show-ref.c: limit output with `--count`
551 - builtin/show-ref.c: rename `found_match` to `matches_nr`
@@ -720,3 +641,17 @@ Release tarballs are available at:
641 In stalled state for too long.
642 cf. <YnL2d4Vr9Vr7W4Hj@camp.crustytoothpaste.net>
643 source: <20220407215352.3491567-1-sandals@crustytoothpaste.net>
644 +
645 +
646 +* jt/connected-show-missing-from-which-side (2022-06-10) 1 commit
647 + . fetch,fetch-pack: clarify connectivity check error
648 +
649 + We may find an object missing after a "git fetch" stores the
650 + objects it obtained from the other side, but it is not necessarily
651 + because the remote failed to send necessary objects. Reword the
652 + messages in an attempt to help users explore other possibilities
653 + when they hit this error.
654 +
655 + In stalled state for too long.
656 + Also it seems to break t5326 with sha256.
657 + source: <20220610195247.1177549-1-jonathantanmy@google.com>