What's cooking (2022/12 #05)

Junio C Hamano committed Dec 14, 2022 at 18:34 UTC 50c8a3234e55b56c7bc4c00453d34f56fd5d07d6
1 file changed +459 -393
whats-cooking.txt
+459 -393
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Dec 2022, #04; Mon, 12)
3 -X-master-at: c48035d29b4e524aed3a32f0403676f0d9128863
4 -X-next-at: 84b9a713c41f8f10898e18b7eb7f40dffcbab76b
2 +Subject: What's cooking in git.git (Dec 2022, #05; Wed, 14)
3 +X-master-at: 57e2c6ebbe7108b35ba30184dcbcb6c34c929ad8
4 +X-next-at: 57e2c6ebbe7108b35ba30184dcbcb6c34c929ad8
5 Bcc: lwn@lwn.net, gitster@pobox.com
6
7 -What's cooking in git.git (Dec 2022, #04; Mon, 12)
7 +What's cooking in git.git (Dec 2022, #05; Wed, 14)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -14,12 +14,19 @@ release). Commits prefixed with '-' are only in 'seen', and aren't
14 considered "accepted" at all. A topic without enough support may be
15 discarded after a long period of no activity.
16
17 -Thanks, everybody, who has contributed to Git 2.39 that was just
18 -tagged. We'll tread slowly, first expecting that we would need to
19 -fix some brown paper bag bugs, merge down these fixes to the
20 -'master' front, cut 2.39.1 if needed, then hopefully rewind the tip
21 -of 'next' before year-end break to reopen the development for the
22 -next release.
17 +The first batch of topics have graduated from 'next' to 'master'.
18 +
19 +In the past, I tried to re-examine all the topics in 'next' myself
20 +to pick and choose the ones to be kept before rewinding and
21 +rebuilding 'next' after each release, which took me a while. This
22 +time, to share the burden to expedite the process, I'll reset 'next'
23 +to 'master' without any topics merged, and rely on input from list
24 +participants.
25 +
26 +The topics that used to be in 'next' are all marked as "Will merge
27 +back to 'next'", but people can tell me to give them a chance to
28 +reboot their topics, instead of piling "oops, that was wrong" fixes
29 +on top, while I wait for such an input for the coming days.
30
31 Copies of the source code to Git live in many repositories, and the
32 following is a list of the ones I push into or their mirrors. Some
@@ -49,6 +56,232 @@ Release tarballs are available at:
56
57 https://www.kernel.org/pub/software/scm/git/
58
59 +--------------------------------------------------
60 +[Graduated to 'master']
61 +
62 +* ab/various-leak-fixes (2022-11-21) 16 commits
63 + (merged to 'next' on 2022-11-21 at eff484a27c)
64 + + built-ins: use free() not UNLEAK() if trivial, rm dead code
65 + + revert: fix parse_options_concat() leak
66 + + cherry-pick: free "struct replay_opts" members
67 + + rebase: don't leak on "--abort"
68 + + connected.c: free the "struct packed_git"
69 + + sequencer.c: fix "opts->strategy" leak in read_strategy_opts()
70 + + ls-files: fix a --with-tree memory leak
71 + + revision API: call graph_clear() in release_revisions()
72 + + unpack-file: fix ancient leak in create_temp_file()
73 + + built-ins & libs & helpers: add/move destructors, fix leaks
74 + + dir.c: free "ident" and "exclude_per_dir" in "struct untracked_cache"
75 + + read-cache.c: clear and free "sparse_checkout_patterns"
76 + + commit: discard partial cache before (re-)reading it
77 + + {reset,merge}: call discard_index() before returning
78 + + tests: mark tests as passing with SANITIZE=leak
79 + + Merge branch 'pw/rebase-no-reflog-action' into ab/various-leak-fixes
80 +
81 + Various leak fixes.
82 + source: <cover-v2-00.15-00000000000-20221108T172650Z-avarab@gmail.com>
83 +
84 +
85 +* dd/git-bisect-builtin (2022-11-15) 13 commits
86 + (merged to 'next' on 2022-11-15 at e16e754058)
87 + + bisect; remove unused "git-bisect.sh" and ".gitignore" entry
88 + (merged to 'next' on 2022-11-14 at fc304fb52f)
89 + + Turn `git bisect` into a full built-in
90 + + bisect--helper: log: allow arbitrary number of arguments
91 + + bisect--helper: handle states directly
92 + + bisect--helper: emit usage for "git bisect"
93 + + bisect test: test exit codes on bad usage
94 + + bisect--helper: identify as bisect when report error
95 + + bisect-run: verify_good: account for non-negative exit status
96 + + bisect run: keep some of the post-v2.30.0 output
97 + + bisect: fix output regressions in v2.30.0
98 + + bisect: refactor bisect_run() to match CodingGuidelines
99 + + bisect tests: test for v2.30.0 "bisect run" regressions
100 + + Merge branch 'dd/bisect-helper-subcommand' into dd/git-bisect-builtin
101 +
102 + `git bisect` becomes a builtin.
103 + source: <cover.1668097962.git.congdanhqx@gmail.com>
104 +
105 +
106 +* js/t0021-windows-pwd (2022-12-07) 1 commit
107 + (merged to 'next' on 2022-12-08 at 63bc7701e8)
108 + + t0021: use Windows-friendly `pwd`
109 + (this branch is used by js/drop-mingw-test-cmp.)
110 +
111 + Test fix.
112 + source: <b38b8fb5a85e10d6189d68b6633adf23fca7b65d.1670339267.git.gitgitgadget@gmail.com>
113 +
114 +
115 +* kz/merge-tree-merge-base (2022-11-25) 3 commits
116 + (merged to 'next' on 2022-11-25 at 298ca8e2e8)
117 + + docs: fix description of the `--merge-base` option
118 + (merged to 'next' on 2022-11-14 at 76d48ae21f)
119 + + merge-tree.c: allow specifying the merge-base when --stdin is passed
120 + + merge-tree.c: add --merge-base=<commit> option
121 +
122 + "merge-tree" learns a new `--merge-base` option.
123 + source: <pull.1397.v7.git.1668210314.gitgitgadget@gmail.com>
124 + source: <c21466d1db0e7f7fcd7308b61aa1e3cd4e3d67c4.1669261026.git.gitgitgadget@gmail.com>
125 +
126 +
127 +* rs/multi-filter-args (2022-11-30) 5 commits
128 + (merged to 'next' on 2022-12-01 at 5848d16bb6)
129 + + list-objects-filter: remove OPT_PARSE_LIST_OBJECTS_FILTER_INIT()
130 + + pack-objects: simplify --filter handling
131 + + pack-objects: fix handling of multiple --filter options
132 + + t5317: demonstrate failure to handle multiple --filter options
133 + + t5317: stop losing return codes of git ls-files
134 +
135 + Fix a bug where `pack-objects` would not respect multiple `--filter`
136 + arguments when invoked directly.
137 + source: <c2d3e7a3-599f-dae5-8dde-dc969df39f02@web.de>
138 +
139 +
140 +* sa/git-var-empty (2022-11-27) 2 commits
141 + (merged to 'next' on 2022-12-01 at 3b81dcb382)
142 + + var: allow GIT_EDITOR to return null
143 + + var: do not print usage() with a correct invocation
144 +
145 + "git var UNKNOWN_VARIABLE" and "git var VARIABLE" with the variable
146 + given an empty value used to behave identically. Now the latter
147 + just gives an empty output, while the former still gives an error
148 + message.
149 + source: <pull.1434.v3.git.1669472277.gitgitgadget@gmail.com>
150 +
151 +
152 +* tl/pack-bitmap-absolute-paths (2022-11-29) 4 commits
153 + (merged to 'next' on 2022-11-30 at cb5d17ee40)
154 + + pack-bitmap.c: trace bitmap ignore logs when midx-bitmap is found
155 + + pack-bitmap.c: break out of the bitmap loop early if not tracing
156 + (merged to 'next' on 2022-11-14 at 34eb0ea05a)
157 + + pack-bitmap.c: avoid exposing absolute paths
158 + + pack-bitmap.c: remove unnecessary "open_pack_index()" calls
159 +
160 + The pack-bitmap machinery is taught to log the paths of redundant
161 + bitmap(s) to trace2 instead of stderr.
162 + source: <cover.1669644101.git.dyroneteng@gmail.com>
163 +
164 +
165 +* yn/git-jump-emacs (2022-11-27) 3 commits
166 + (merged to 'next' on 2022-11-29 at d0960938a0)
167 + + git-jump: invoke emacs/emacsclient
168 + + git-jump: move valid-mode check earlier
169 + + git-jump: add an optional argument '--stdout'
170 +
171 + "git jump" (in contrib/) learned to present the "quickfix list" to
172 + its standard output (instead of letting it consumed by the editor
173 + it invokes), and learned to also drive emacs/emacsclient.
174 + source: <pull.1423.v8.git.1669511933.gitgitgadget@gmail.com>
175 +
176 +--------------------------------------------------
177 +[New Topics]
178 +
179 +* ds/bundle-uri-4-fixup (2022-12-13) 3 commits
180 + - bundle-uri: remove GIT_TEST_BUNDLE_URI env variable
181 + - bundle-uri: advertise based on repo config
182 + - bundle-uri: drop unused 'uri' parameter
183 + (this branch uses ds/bundle-uri-4.)
184 +
185 + Incremental fixes on ds/bundle-uri-4 topic.
186 +
187 + Will merge to 'next'?
188 + source: <pull.1443.git.1670866407.gitgitgadget@gmail.com>
189 +
190 +
191 +* ds/omit-trailing-hash-in-index (2022-12-13) 4 commits
192 + - features: feature.manyFiles implies fast index writes
193 + - test-lib-functions: add helper for trailing hash
194 + - read-cache: add index.skipHash config option
195 + - hashfile: allow skipping the hash function
196 +
197 + Introduce an optional configuration to allow the trailing hash that
198 + protects the index file from bit flipping.
199 +
200 + Will merge to 'next'.
201 + source: <pull.1439.v2.git.1670862677.gitgitgadget@gmail.com>
202 +
203 +
204 +* jk/server-supports-v2-cleanup (2022-12-13) 1 commit
205 + - server_supports_v2(): use a separate function for die_on_error
206 +
207 + Code clean-up.
208 +
209 + Will merge to 'next'.
210 + source: <Y5hZirNRGLQUZfOZ@coredump.intra.peff.net>
211 +
212 +
213 +* jk/unused-post-2.39 (2022-12-13) 9 commits
214 + - userdiff: mark unused parameter in internal callback
215 + - list-objects-filter: mark unused parameters in virtual functions
216 + - diff: mark unused parameters in callbacks
217 + - xdiff: mark unused parameter in xdl_call_hunk_func()
218 + - xdiff: drop unused parameter in def_ff()
219 + - ws: drop unused parameter from ws_blank_line()
220 + - list-objects: drop process_gitlink() function
221 + - blob: drop unused parts of parse_blob_buffer()
222 + - ls-refs: use repository parameter to iterate refs
223 +
224 + Code clean-up around unused function parameters.
225 +
226 + Will merge to 'next'.
227 + source: <Y5hdvpbLpXySHFRz@coredump.intra.peff.net>
228 +
229 +
230 +* jt/http-fetch-trace2-report-name (2022-12-13) 1 commit
231 + - http-fetch: invoke trace2_cmd_name()
232 +
233 + "git http-fetch" (which is rarely used) forgot to identify itself
234 + in the trace2 output.
235 +
236 + Will merge to 'next'.
237 + source: <20221212224630.2553391-1-jonathantanmy@google.com>
238 +
239 +
240 +* rs/am-parse-options-cleanup (2022-12-13) 1 commit
241 + - am: don't pass strvec to apply_parse_options()
242 +
243 + Will merge to 'next'.
244 + Code clean-up.
245 + source: <baf93e4a-7f05-857c-e551-09675496c03c@web.de>
246 +
247 +
248 +* rs/clarify-error-in-write-loose-object (2022-12-14) 1 commit
249 + - object-file: inline write_buffer()
250 +
251 + Code clean-up.
252 +
253 + Will merge to 'next'.
254 + source: <94dff140-489c-40b2-7212-201ed3b7d008@web.de>
255 +
256 +
257 +* rs/clear-commit-marks-cleanup (2022-12-13) 1 commit
258 + - commit: skip already cleared parents in clear_commit_marks_1()
259 +
260 + Code clean-up.
261 +
262 + Will merge to 'next'.
263 + source: <7cf2ea1f-8dbf-5639-3874-86de391ae20a@web.de>
264 +
265 +
266 +* rs/reflog-expiry-cleanup (2022-12-13) 1 commit
267 + - reflog: clear leftovers in reflog_expiry_cleanup()
268 +
269 + Code clean-up.
270 +
271 + Will merge to 'next'.
272 + source: <a53d4df3-4b2c-585a-e8ad-2a9b9017fb8c@web.de>
273 +
274 +
275 +* sg/help-autocorrect-config-fix (2022-12-13) 1 commit
276 + - help.c: fix autocorrect in work tree for bare repository
277 +
278 + The code to auto-correct a misspelt subcommand unnecessarily called
279 + into git_default_config() from the early config codepath, which was
280 + a no-no. This has bee corrected.
281 +
282 + Will merge to 'next'.
283 + source: <pull.1373.v2.git.git.1667073374852.gitgitgadget@gmail.com>
284 +
285 --------------------------------------------------
286 [Stalled]
287
@@ -78,71 +311,6 @@ Release tarballs are available at:
311 source: <20221020232532.1128326-1-calvinwan@google.com>
312
313
81 -* js/bisect-in-c (2022-08-30) 17 commits
82 - . bisect: no longer try to clean up left-over `.git/head-name` files
83 - . bisect: remove Cogito-related code
84 - . Turn `git bisect` into a full built-in
85 - . bisect: move even the command-line parsing to `bisect--helper`
86 - . bisect--helper: make `state` optional
87 - . bisect--helper: calling `bisect_state()` without an argument is a bug
88 - . bisect: avoid double-quoting when printing the failed command
89 - . bisect run: fix the error message
90 - . bisect: verify that a bogus option won't try to start a bisection
91 - . bisect--helper: migrate to OPT_SUBCOMMAND()
92 - . bisect--helper: make the order consistently `argc, argv`
93 - . bisect--helper: make `terms` an explicit singleton
94 - . bisect--helper: simplify exit code computation
95 - . bisect--helper: really retire `--bisect-autostart`
96 - . bisect--helper: really retire --bisect-next-check
97 - . bisect--helper: retire the --no-log option
98 - . Merge branch 'sg/parse-options-subcommand' into js/bisect-in-c
99 -
100 - Final bits of "git bisect.sh" have been rewritten in C.
101 -
102 - Temporarily ejected from 'seen'. Waiting for a response on how this
103 - topic interacts with 'dd/git-bisect-builtin'.
104 - cf. <xmqqv8pr8903.fsf@gitster.g>
105 - source: <pull.1132.v6.git.1661885419.gitgitgadget@gmail.com>
106 -
107 -
108 -* ed/fsmonitor-inotify (2022-11-25) 6 commits
109 - - fsmonitor: update doc for Linux
110 - - fsmonitor: test updates
111 - - fsmonitor: enable fsmonitor for Linux
112 - - fsmonitor: implement filesystem change listener for Linux
113 - - fsmonitor: determine if filesystem is local or remote
114 - - fsmonitor: prepare to share code between Mac OS and Linux
115 -
116 - Bundled fsmonitor for Linux using inotify API.
117 -
118 - Needs review on the updated round.
119 - source: <pull.1352.v4.git.git.1669230044.gitgitgadget@gmail.com>
120 -
121 -
122 -* ag/merge-strategies-in-c (2022-08-10) 14 commits
123 - . sequencer: use the "octopus" strategy without forking
124 - . sequencer: use the "resolve" strategy without forking
125 - . merge: use the "octopus" strategy without forking
126 - . merge: use the "resolve" strategy without forking
127 - . merge-octopus: rewrite in C
128 - . merge-recursive: move better_branch_name() to merge.c
129 - . merge-resolve: rewrite in C
130 - . merge-one-file: rewrite in C
131 - . update-index: move add_cacheinfo() to read-cache.c
132 - . merge-index: add a new way to invoke `git-merge-one-file'
133 - . merge-index: drop the index
134 - . merge-index: libify merge_one_path() and merge_all()
135 - . t6060: add tests for removed files
136 - . t6060: modify multiple files to expose a possible issue with merge-index
137 -
138 - An attempt to rewrite remaining merge strategies from shell to C.
139 -
140 - Needs more work.
141 - At the minimum, we should lose 11/14 and possibly 08/14.
142 - cf. <xmqq7d36vfur.fsf@gitster.g>
143 - source: <20220809185429.20098-1-alban.gruin@gmail.com>
144 -
145 -
314 * es/doc-creation-factor-fix (2022-07-28) 2 commits
315 . range-diff: clarify --creation-factor=<factor>
316 . format-patch: clarify --creation-factor=<factor>
@@ -151,45 +319,30 @@ Release tarballs are available at:
319 cf. <xmqqo7wfix7p.fsf@gitster.g>
320 source: <7229p500-p2r4-on87-6802-8o90s36rr3s4@tzk.qr>
321
154 -
155 -* cw/remote-object-info (2022-08-13) 7 commits
156 - . SQUASH???
157 - . cat-file: add remote-object-info to batch-command
158 - . transport: add client support for object-info
159 - . serve: advertise object-info feature
160 - . protocol-caps: initialization bug fix
161 - . fetch-pack: move fetch initialization
162 - . fetch-pack: refactor packet writing
163 -
164 - A client component to talk with the object-info endpoint.
165 -
166 - Expecting a reroll.
167 - Under SANITIZE=address, t1006-cat-file.sh finds a breakage.
168 - cf. <20220728230210.2952731-1-calvinwan@google.com>
169 - cf. <CAFySSZDvgwbbHCHfyuaqX3tKsr-GjJ9iihygg6rNNe46Ys7_EA@mail.gmail.com>
170 - source: <20220728230210.2952731-1-calvinwan@google.com>
171 -
322 --------------------------------------------------
323 [Cooking]
324
175 -* js/t0021-windows-pwd (2022-12-07) 1 commit
176 - (merged to 'next' on 2022-12-08 at 63bc7701e8)
177 - + t0021: use Windows-friendly `pwd`
325 +* ed/fsmonitor-inotify (2022-12-13) 6 commits
326 + - fsmonitor: update doc for Linux
327 + - fsmonitor: test updates
328 + - fsmonitor: enable fsmonitor for Linux
329 + - fsmonitor: implement filesystem change listener for Linux
330 + - fsmonitor: determine if filesystem is local or remote
331 + - fsmonitor: prepare to share code between Mac OS and Linux
332
179 - Test fix.
333 + Bundled fsmonitor for Linux using inotify API.
334
181 - Will cook in 'next'.
182 - source: <b38b8fb5a85e10d6189d68b6633adf23fca7b65d.1670339267.git.gitgitgadget@gmail.com>
335 + Needs review on the updated round.
336 + source: <pull.1352.v5.git.git.1670882286.gitgitgadget@gmail.com>
337
338
339 * rs/t3920-crlf-eating-grep-fix (2022-12-07) 1 commit
186 - (merged to 'next' on 2022-12-08 at 421b255ad1)
187 - + t3920: support CR-eating grep
340 + - t3920: support CR-eating grep
341 (this branch uses js/t3920-shell-and-or-fix.)
342
343 Test fix.
344
192 - Will cook in 'next'.
345 + Will merge back to 'next'.
346 source: <cbe88abc-c1fb-cb50-6057-47ff27f7a12d@web.de>
347
348
@@ -202,126 +355,114 @@ Release tarballs are available at:
355
356
357 * ab/t4023-avoid-losing-exit-status-of-diff (2022-12-05) 1 commit
205 - (merged to 'next' on 2022-12-05 at 2f47548cad)
206 - + t4023: fix ignored exit codes of git
358 + - t4023: fix ignored exit codes of git
359
360 Test fix.
361
210 - Will cook in 'next'.
362 + Will merge back to 'next'.
363 source: <patch-v2-3.8-c5feef1c808-20221202T000227Z-avarab@gmail.com>
364
365
366 * jh/t7527-unflake-by-forcing-cookie (2022-12-02) 1 commit
215 - (merged to 'next' on 2022-12-05 at da8e250c87)
216 - + fsmonitor: fix race seen in t7527
367 + - fsmonitor: fix race seen in t7527
368
369 Make fsmonitor more robust to avoid the flakiness seen in t7527.
370
220 - Will cook in 'next'.
371 + Will merge back to 'next'.
372 source: <pull.1437.git.1669937534944.gitgitgadget@gmail.com>
373
374
375 * rs/plug-pattern-list-leak-in-lof (2022-12-02) 1 commit
225 - (merged to 'next' on 2022-12-05 at e2c11342b1)
226 - + list-objects-filter: plug pattern_list leak
376 + - list-objects-filter: plug pattern_list leak
377
378 Leak fix.
379
230 - Will cook in 'next'.
380 + Will merge back to 'next'.
381 source: <b4361c3e-852b-e30c-f240-86c34bc9c474@web.de>
382
383
384 * rs/t4205-do-not-exit-in-test-script (2022-12-02) 1 commit
235 - (merged to 'next' on 2022-12-05 at 9db30340b3)
236 - + t4205: don't exit test script on failure
385 + - t4205: don't exit test script on failure
386
387 Test fix.
388
240 - Will cook in 'next'.
389 + Will merge back to 'next'.
390 source: <c5b4d091-23c1-5a75-a255-99ec83973d8d@web.de>
391
392
393 * ab/t5314-avoid-losing-exit-status (2022-12-02) 1 commit
245 - (merged to 'next' on 2022-12-05 at ff99a5672f)
246 - + t5314: check exit code of "git"
394 + - t5314: check exit code of "git"
395
396 Test fix.
397
250 - Will cook in 'next'.
398 + Will merge back to 'next'.
399 source: <patch-v2-1.1-ca77a7249e6-20221128T141818Z-avarab@gmail.com>
400
401
402 * ab/t7600-avoid-losing-exit-status-of-git (2022-12-05) 1 commit
255 - (merged to 'next' on 2022-12-05 at 7105bccb5e)
256 - + t7600: don't ignore "rev-parse" exit code in helper
403 + - t7600: don't ignore "rev-parse" exit code in helper
404
405 Test fix.
406
260 - Will cook in 'next'.
407 + Will merge back to 'next'.
408 source: <patch-v3-1.8-64dfec31fb3-20221202T114733Z-avarab@gmail.com>
409
410
411 * jh/fsmonitor-darwin-modernize (2022-12-05) 1 commit
265 - (merged to 'next' on 2022-12-05 at 335bcafa02)
266 - + fsmonitor: eliminate call to deprecated FSEventStream function
412 + - fsmonitor: eliminate call to deprecated FSEventStream function
413
414 Stop using deprecated macOS API in fsmonitor.
415
270 - Will cook in 'next'.
416 + Will merge back to 'next'.
417 source: <pull.1436.git.1669991072393.gitgitgadget@gmail.com>
418
419
420 * js/t3920-shell-and-or-fix (2022-12-05) 1 commit
275 - (merged to 'next' on 2022-12-05 at ea2b21208d)
276 - + t3920: don't ignore errors of more than one command with `|| true`
421 + - t3920: don't ignore errors of more than one command with `|| true`
422 (this branch is used by rs/t3920-crlf-eating-grep-fix.)
423
424 Test fix.
425
281 - Will cook in 'next'.
426 + Will merge back to 'next'.
427 source: <febcfb0a-c410-fb71-cff9-92acfcb269e2@kdbg.org>
428
429
430 * sx/pthread-error-check-fix (2022-12-05) 1 commit
286 - (merged to 'next' on 2022-12-05 at 53ef195404)
287 - + maintenance: compare output of pthread functions for inequality with 0
431 + - maintenance: compare output of pthread functions for inequality with 0
432
433 Correct pthread API usage.
434
291 - Will cook in 'next'.
435 + Will merge back to 'next'.
436 source: <pull.1389.git.git.1670000578395.gitgitgadget@gmail.com>
437
438
439 * jk/avoid-redef-system-functions (2022-12-05) 3 commits
296 - (merged to 'next' on 2022-12-05 at e6e44a4d66)
297 - + Merge branch 'jk/avoid-redef-system-functions-2.30' into jk/avoid-redef-system-functions
298 - (merged to 'next' on 2022-12-01 at 7b6131f09f)
299 - + Merge branch 'jk/avoid-redef-system-functions-2.30'
300 - + Merge branch 'jk/avoid-redef-system-functions-2.30' into maint
440 + - Merge branch 'jk/avoid-redef-system-functions-2.30' into jk/avoid-redef-system-functions
441 + - Merge branch 'jk/avoid-redef-system-functions-2.30'
442 + - Merge branch 'jk/avoid-redef-system-functions-2.30' into maint
443 (this branch uses jk/avoid-redef-system-functions-2.30.)
444
445 The jk/avoid-redef-system-functions-2.30 topic pre-merged for more
446 recent codebase.
447
306 - Will cook in 'next'.
448 + Will merge back to 'next'.
449
450
451 * jk/avoid-redef-system-functions-2.30 (2022-12-05) 2 commits
310 - (merged to 'next' on 2022-12-05 at 9a9b96be8d)
311 - + git-compat-util: undefine system names before redeclaring them
312 - (merged to 'next' on 2022-12-01 at b52a884362)
313 - + git-compat-util: avoid redefining system function names
452 + - git-compat-util: undefine system names before redeclaring them
453 + - git-compat-util: avoid redefining system function names
454 (this branch is used by jk/avoid-redef-system-functions.)
455
456 Redefining system functions for a few functions did not follow our
457 usual "implement git_foo() and #define foo(args) git_foo(args)"
458 pattern, which has broken build for some folks.
459
320 - Will cook in 'next'.
460 + Will merge back to 'next'.
461 source: <Y4fH4rhcSztHwKvK@coredump.intra.peff.net>
462 + source: <Y4RAr04vS/TOM5uh@coredump.intra.peff.net>
463
464
324 -* jt/avoid-lazy-fetch-commits (2022-12-10) 4 commits
465 +* jt/avoid-lazy-fetch-commits (2022-12-13) 4 commits
466 - commit: don't lazy-fetch commits
467 - object-file: emit corruption errors when detected
468 - object-file: refactor map_loose_object_1()
@@ -333,36 +474,21 @@ Release tarballs are available at:
474 advantage of this assumption to fail fast on errors.
475
476 Will merge to 'next'?
336 - source: <cover.1670622176.git.jonathantanmy@google.com>
477 + source: <cover.1670885252.git.jonathantanmy@google.com>
478
479
480 * rs/diff-parseopts (2022-12-02) 3 commits
340 - (merged to 'next' on 2022-12-05 at 7cf5090e50)
341 - + diff: remove parseopts member from struct diff_options
342 - + diff: use add_diff_options() in diff_opt_parse()
343 - + diff: factor out add_diff_options()
481 + - diff: remove parseopts member from struct diff_options
482 + - diff: use add_diff_options() in diff_opt_parse()
483 + - diff: factor out add_diff_options()
484
485 The way the diff machinery prepares the options array for the
486 parse_options API has been refactored to avoid resource leaks.
487
348 - Will cook in 'next'.
488 + Will merge back to 'next'.
489 source: <19325420-5630-87bb-0c2c-362151214b36@web.de>
490
491
352 -* sa/git-var-empty (2022-11-27) 2 commits
353 - (merged to 'next' on 2022-12-01 at 3b81dcb382)
354 - + var: allow GIT_EDITOR to return null
355 - + var: do not print usage() with a correct invocation
356 -
357 - "git var UNKNOWN_VARIABLE" and "git var VARIABLE" with the variable
358 - given an empty value used to behave identically. Now the latter
359 - just gives an empty output, while the former still gives an error
360 - message.
361 -
362 - Will cook in 'next'.
363 - source: <pull.1434.v3.git.1669472277.gitgitgadget@gmail.com>
364 -
365 -
492 * jx/t1301-updates (2022-11-30) 3 commits
493 - t1301: do not change $CWD in "shared=all" test case
494 - t1301: use test_when_finished for cleanup
@@ -417,20 +543,6 @@ Release tarballs are available at:
543 source: <cover-v3-0.9-00000000000-20221125T093158Z-avarab@gmail.com>
544
545
420 -* yn/git-jump-emacs (2022-11-27) 3 commits
421 - (merged to 'next' on 2022-11-29 at d0960938a0)
422 - + git-jump: invoke emacs/emacsclient
423 - + git-jump: move valid-mode check earlier
424 - + git-jump: add an optional argument '--stdout'
425 -
426 - "git jump" (in contrib/) learned to present the "quickfix list" to
427 - its standard output (instead of letting it consumed by the editor
428 - it invokes), and learned to also drive emacs/emacsclient.
429 -
430 - Will cook in 'next'.
431 - source: <pull.1423.v8.git.1669511933.gitgitgadget@gmail.com>
432 -
433 -
546 * sa/cat-file-mailmap--batch-check (2022-12-02) 2 commits
547 - cat-file: add mailmap support to --batch-check option
548 - cat-file: add mailmap support to -s option
@@ -465,33 +577,14 @@ Release tarballs are available at:
577
578
579 * rj/branch-copy-and-rename (2022-11-17) 1 commit
468 - (merged to 'next' on 2022-12-05 at 730340640b)
469 - + branch: force-copy a branch to itself via @{-1} is a no-op
580 + - branch: force-copy a branch to itself via @{-1} is a no-op
581
582 Fix a pair of bugs in 'git branch'.
583
473 - Will cook in 'next'.
584 + Will merge back to 'next'.
585 source: <f0b2d46c-2e9c-2630-2870-8ed550dd1606@gmail.com>
586
587
477 -* tl/ls-tree--pattern (2022-11-17) 6 commits
478 - - ls-tree: introduce '--pattern' option
479 - - ls-tree: introduce 'match_pattern()' function
480 - - ls-tree: improving cohension in the print code
481 - - ls-tree: optimize params of 'show_tree_common_default_long()'
482 - - t3104: remove shift code in 'test_ls_tree_format'
483 - - ls-tree: cleanup the redundant SPACE
484 -
485 - A synonym for "ls-tree | grep <pattern>", "ls-tree
486 - --pattern=<pattern>" was introduced.
487 -
488 - Waiting for review response, but leaning negative.
489 - Seems to break CI.
490 - test broken with SHA256 due to hardcoded hexadecimal constants
491 - cf. https://github.com/git/git/actions/runs/3581947576/jobs/6025603775#step:4:1846
492 - source: <20221117113023.65865-1-tenglong.tl@alibaba-inc.com>
493 -
494 -
588 * tr/am--no-verify (2022-12-01) 2 commits
589 - SQUASH???
590 - am: allow passing --no-verify flag
@@ -512,14 +605,13 @@ Release tarballs are available at:
605 source: <20221114094114.18986-1-e@80x24.org>
606
607
515 -* js/drop-mingw-test-cmp (2022-11-14) 2 commits
608 +* js/drop-mingw-test-cmp (2022-12-13) 1 commit
609 - tests(mingw): avoid very slow `mingw_test_cmp`
517 - - t0021: use Windows-friendly `pwd`
610
611 Use `git diff --no-index` as a test_cmp on Windows.
612
613 Waiting for review response.
522 - source: <pull.1309.v4.git.1668434812.gitgitgadget@gmail.com>
614 + source: <pull.1309.v5.git.1670339267.gitgitgadget@gmail.com>
615
616
617 * mc/switch-advice (2022-11-09) 1 commit
@@ -531,119 +623,16 @@ Release tarballs are available at:
623 source: <pull.1308.git.git.1668018620148.gitgitgadget@gmail.com>
624
625
534 -* rs/multi-filter-args (2022-11-30) 5 commits
535 - (merged to 'next' on 2022-12-01 at 5848d16bb6)
536 - + list-objects-filter: remove OPT_PARSE_LIST_OBJECTS_FILTER_INIT()
537 - + pack-objects: simplify --filter handling
538 - + pack-objects: fix handling of multiple --filter options
539 - + t5317: demonstrate failure to handle multiple --filter options
540 - + t5317: stop losing return codes of git ls-files
541 -
542 - Fix a bug where `pack-objects` would not respect multiple `--filter`
543 - arguments when invoked directly.
544 -
545 - Will cook in 'next'.
546 - source: <c2d3e7a3-599f-dae5-8dde-dc969df39f02@web.de>
547 -
548 -
549 -* ab/various-leak-fixes (2022-11-21) 16 commits
550 - (merged to 'next' on 2022-11-21 at eff484a27c)
551 - + built-ins: use free() not UNLEAK() if trivial, rm dead code
552 - + revert: fix parse_options_concat() leak
553 - + cherry-pick: free "struct replay_opts" members
554 - + rebase: don't leak on "--abort"
555 - + connected.c: free the "struct packed_git"
556 - + sequencer.c: fix "opts->strategy" leak in read_strategy_opts()
557 - + ls-files: fix a --with-tree memory leak
558 - + revision API: call graph_clear() in release_revisions()
559 - + unpack-file: fix ancient leak in create_temp_file()
560 - + built-ins & libs & helpers: add/move destructors, fix leaks
561 - + dir.c: free "ident" and "exclude_per_dir" in "struct untracked_cache"
562 - + read-cache.c: clear and free "sparse_checkout_patterns"
563 - + commit: discard partial cache before (re-)reading it
564 - + {reset,merge}: call discard_index() before returning
565 - + tests: mark tests as passing with SANITIZE=leak
566 - + Merge branch 'pw/rebase-no-reflog-action' into ab/various-leak-fixes
567 -
568 - Various leak fixes.
569 -
570 - Will cook in 'next'.
571 - source: <cover-v2-00.15-00000000000-20221108T172650Z-avarab@gmail.com>
572 -
573 -
626 * aw/complete-case-insensitive (2022-11-30) 2 commits
575 - (merged to 'next' on 2022-12-05 at 791f41df7c)
576 - + completion: add case-insensitive match of pseudorefs
577 - + completion: add optional ignore-case when matching refs
627 + - completion: add case-insensitive match of pseudorefs
628 + - completion: add optional ignore-case when matching refs
629
630 Introduce a case insensitive mode to the Bash completion helpers.
631
581 - Will cook in 'next'.
632 + Will merge back to 'next'.
633 source: <pull.1374.v2.git.git.1668990419.gitgitgadget@gmail.com>
634
635
585 -* dd/git-bisect-builtin (2022-11-15) 13 commits
586 - (merged to 'next' on 2022-11-15 at e16e754058)
587 - + bisect; remove unused "git-bisect.sh" and ".gitignore" entry
588 - (merged to 'next' on 2022-11-14 at fc304fb52f)
589 - + Turn `git bisect` into a full built-in
590 - + bisect--helper: log: allow arbitrary number of arguments
591 - + bisect--helper: handle states directly
592 - + bisect--helper: emit usage for "git bisect"
593 - + bisect test: test exit codes on bad usage
594 - + bisect--helper: identify as bisect when report error
595 - + bisect-run: verify_good: account for non-negative exit status
596 - + bisect run: keep some of the post-v2.30.0 output
597 - + bisect: fix output regressions in v2.30.0
598 - + bisect: refactor bisect_run() to match CodingGuidelines
599 - + bisect tests: test for v2.30.0 "bisect run" regressions
600 - + Merge branch 'dd/bisect-helper-subcommand' into dd/git-bisect-builtin
601 -
602 - `git bisect` becomes a builtin.
603 -
604 - Will cook in 'next'.
605 - source: <cover.1668097962.git.congdanhqx@gmail.com>
606 -
607 -
608 -* ds/packed-refs-v2 (2022-11-07) 30 commits
609 - - refs: skip hashing when writing packed-refs v2
610 - - p1401: create performance test for ref operations
611 - - ci: run GIT_TEST_PACKED_REFS_VERSION=2 in some builds
612 - - t*: skip packed-refs v2 over http tests
613 - - t3210: require packed-refs v1 for some tests
614 - - t5502: add PACKED_REFS_V1 prerequisite
615 - - t5312: allow packed-refs v2 format
616 - - t1409: test with packed-refs v2
617 - - packed-backend: create GIT_TEST_PACKED_REFS_VERSION
618 - - packed-refs: write prefix chunks
619 - - packed-refs: read optional prefix chunks
620 - - packed-refs: read file format v2
621 - - packed-refs: write file format version 2
622 - - packed-backend: create shell of v2 writes
623 - - config: add config values for packed-refs v2
624 - - packed-backend: create abstraction for writing refs
625 - - packed-backend: extract iterator/updates merge
626 - - packed-backend: extract add_write_error()
627 - - refs: extract packfile format to new file
628 - - chunk-format: parse trailing table of contents
629 - - chunk-format: allow trailing table of contents
630 - - chunk-format: store chunk offset during write
631 - - chunk-format: document trailing table of contents
632 - - chunk-format: number of chunks is optional
633 - - refs: allow loose files without packed-refs
634 - - repository: wire ref extensions to ref backends
635 - - config: fix multi-level bulleted list
636 - - extensions: add refFormat extension
637 - - read-cache: add index.computeHash config option
638 - - hashfile: allow skipping the hash function
639 -
640 - Waiting for review.
641 - Seems to break CI.
642 - linux-TEST-vars
643 - cf. https://github.com/git/git/actions/runs/3598165328
644 - source: <pull.1408.git.1667846164.gitgitgadget@gmail.com>
645 -
646 -
636 * ja/worktree-orphan (2022-11-10) 2 commits
637 - worktree add: add --orphan flag
638 - worktree add: Include -B in usage docs
@@ -680,67 +669,25 @@ Release tarballs are available at:
669
670
671 * ds/bundle-uri-4 (2022-12-06) 11 commits
683 - (merged to 'next' on 2022-12-05 at 2fa7bc1763)
684 - + clone: unbundle the advertised bundles
685 - + bundle-uri: download bundles from an advertised list
686 - + bundle-uri: allow relative URLs in bundle lists
687 - + strbuf: introduce strbuf_strip_file_from_path()
688 - + bundle-uri: serve bundle.* keys from config
689 - + bundle-uri client: add helper for testing server
690 - + transport: rename got_remote_heads
691 - + bundle-uri client: add boolean transfer.bundleURI setting
692 - + clone: request the 'bundle-uri' command when available
693 - + t: create test harness for 'bundle-uri' command
694 - + protocol v2: add server-side "bundle-uri" skeleton
672 + - clone: unbundle the advertised bundles
673 + - bundle-uri: download bundles from an advertised list
674 + - bundle-uri: allow relative URLs in bundle lists
675 + - strbuf: introduce strbuf_strip_file_from_path()
676 + - bundle-uri: serve bundle.* keys from config
677 + - bundle-uri client: add helper for testing server
678 + - transport: rename got_remote_heads
679 + - bundle-uri client: add boolean transfer.bundleURI setting
680 + - clone: request the 'bundle-uri' command when available
681 + - t: create test harness for 'bundle-uri' command
682 + - protocol v2: add server-side "bundle-uri" skeleton
683 + (this branch is used by ds/bundle-uri-4-fixup.)
684
685 Bundle URIs part 4.
686
698 - Will cook in 'next'.
687 + Will merge back to 'next'?
688 source: <pull.1400.v3.git.1670262639.gitgitgadget@gmail.com>
689
690
702 -* tl/pack-bitmap-absolute-paths (2022-11-29) 4 commits
703 - (merged to 'next' on 2022-11-30 at cb5d17ee40)
704 - + pack-bitmap.c: trace bitmap ignore logs when midx-bitmap is found
705 - + pack-bitmap.c: break out of the bitmap loop early if not tracing
706 - (merged to 'next' on 2022-11-14 at 34eb0ea05a)
707 - + pack-bitmap.c: avoid exposing absolute paths
708 - + pack-bitmap.c: remove unnecessary "open_pack_index()" calls
709 -
710 - The pack-bitmap machinery is taught to log the paths of redundant
711 - bitmap(s) to trace2 instead of stderr.
712 -
713 - Will cook in 'next'.
714 - source: <cover.1669644101.git.dyroneteng@gmail.com>
715 -
716 -
717 -* ab/make-bin-wrappers (2022-10-31) 4 commits
718 - . Makefile: simplify $(test_bindir_programs) rule by splitting it up
719 - . Makefile: rename "test_bindir_programs" variable, pre-declare
720 - . Makefile: define "TEST_{PROGRAM,OBJS}" variables earlier
721 - . Makefile: factor sed-powered '#!/bin/sh' munging into a variable
722 -
723 - Resolve issues with the bin-wrappers/% rules where "make
724 - bin-wrappers/git" would generate the script but not "git" itself.
725 -
726 - Waiting for review discussion to settle, but leaning negative.
727 - source: <cover-v3-0.4-00000000000-20221031T222249Z-avarab@gmail.com>
728 -
729 -
730 -* kz/merge-tree-merge-base (2022-11-25) 3 commits
731 - (merged to 'next' on 2022-11-25 at 298ca8e2e8)
732 - + docs: fix description of the `--merge-base` option
733 - (merged to 'next' on 2022-11-14 at 76d48ae21f)
734 - + merge-tree.c: allow specifying the merge-base when --stdin is passed
735 - + merge-tree.c: add --merge-base=<commit> option
736 -
737 - "merge-tree" learns a new `--merge-base` option.
738 -
739 - Will cook in 'next'.
740 - source: <pull.1397.v7.git.1668210314.gitgitgadget@gmail.com>
741 - source: <c21466d1db0e7f7fcd7308b61aa1e3cd4e3d67c4.1669261026.git.gitgitgadget@gmail.com>
742 -
743 -
691 * po/pretty-hard-trunc (2022-11-13) 1 commit
692 - pretty-formats: add hard truncation, without ellipsis, options
693
@@ -751,13 +698,12 @@ Release tarballs are available at:
698
699
700 * rr/status-untracked-advice (2022-12-01) 1 commit
754 - (merged to 'next' on 2022-12-05 at 68527013ef)
755 - + status: modernize git-status "slow untracked files" advice
701 + - status: modernize git-status "slow untracked files" advice
702
703 The advice message given by "git status" when it takes long time to
704 enumerate untracked paths has been updated.
705
760 - Will cook in 'next'.
706 + Will merge back to 'next'.
707 source: <pull.1384.v9.git.1669769536707.gitgitgadget@gmail.com>
708
709
@@ -774,25 +720,20 @@ Release tarballs are available at:
720 source: <20221122175150.366828-1-christian.couder@gmail.com>
721
722
777 -* mc/credential-helper-auth-headers (2022-11-02) 11 commits
723 +* mc/credential-helper-auth-headers (2022-12-13) 8 commits
724 - t5556: add HTTP authentication tests
725 - test-http-server: add simple authentication
726 - test-http-server: pass Git requests to http-backend
727 - test-http-server: add HTTP request parsing
728 - test-http-server: add HTTP error response function
729 - test-http-server: add stub HTTP server test helper
784 - - http: set specific auth scheme depending on credential
785 - - http: move proactive auth to first slot creation
786 - - http: store all request headers on active_request_slot
730 - credential: add WWW-Authenticate header to cred requests
731 - http: read HTTP WWW-Authenticate response headers
732
733 Extending credential helper protocol.
734
735 Needs review.
793 - Seems to break CI (cmake-ctest).
794 - cf. https://github.com/git/git/actions/runs/3598431374
795 - source: <pull.1352.v3.git.1667426969.gitgitgadget@gmail.com>
736 + source: <pull.1352.v4.git.1670880984.gitgitgadget@gmail.com>
737
738 --------------------------------------------------
739 [Discarded]
@@ -810,7 +751,7 @@ Release tarballs are available at:
751 "git clone --recurse-submodules" and "git submodule update" learns
752 to honor the "propagete branches" option.
753
813 - Will discard for now.
754 + Retracted.
755 cf. <xmqqedtl14xr.fsf@gitster.g>
756 source: <pull.1321.v3.git.git.1666988096.gitgitgadget@gmail.com>
757
@@ -826,8 +767,7 @@ Release tarballs are available at:
767 . submodule.c & submodule--helper: pass along "super_prefix" param
768 . read-tree + fetch tests: test failing "--super-prefix" interaction
769 . Merge branch 'ab/submodule-no-abspath' into ab/remove--super-prefix
829 - (merged to 'next' on 2022-11-18 at 34d0accc7b)
830 - + submodule--helper absorbgitdirs: no abspaths in "Migrating git..."
770 + . submodule--helper absorbgitdirs: no abspaths in "Migrating git..."
771 . Merge branch 'ab/submodule-helper-prep-only' into ab/remove--super-prefix
772
773 Remove the top-level `--super-prefix` option.
@@ -837,35 +777,31 @@ Release tarballs are available at:
777
778
779 * ab/submodule-no-abspath (2022-11-23) 2 commits
840 - (merged to 'next' on 2022-11-23 at 97b6096e7c)
841 - + submodule absorbgitdirs: use relative <from> and <to> paths
842 - (merged to 'next' on 2022-11-18 at 34d0accc7b)
843 - + submodule--helper absorbgitdirs: no abspaths in "Migrating git..."
780 + . submodule absorbgitdirs: use relative <from> and <to> paths
781 + . submodule--helper absorbgitdirs: no abspaths in "Migrating git..."
782
783 Remove an absolute path in the "Migrating git directory" message.
784
785 Revert out of 'next'.
786 cf. the thread leading to <xmqqmt86stm3.fsf@gitster.g>
787 source: <patch-1.1-34b54fdd9bb-20221109T020347Z-avarab@gmail.com>
850 - source: <patch-1.1-065be1da895-20221122T224306Z-avarab@gmail.com>
788
789
790 * ab/cmake-nix-and-ci (2022-11-04) 14 commits
854 - (merged to 'next' on 2022-11-08 at 6ef4e93b36)
855 - + CI: add a "linux-cmake-test" to run cmake & ctest on linux
856 - + cmake: copy over git-p4.py for t983[56] perforce test
857 - + cmake: only look for "sh" in "C:/Program Files" on Windows
858 - + cmake: increase test timeout on Windows only
859 - + cmake: support GIT_TEST_OPTS, abstract away WIN32 defaults
860 - + Makefile + cmake: use environment, not GIT-BUILD-DIR
861 - + test-lib.sh: support a "GIT_TEST_BUILD_DIR"
862 - + cmake: set "USE_LIBPCRE2" in "GIT-BUILD-OPTIONS" for test-lib.sh
863 - + cmake & test-lib.sh: add a $GIT_SOURCE_DIR variable
864 - + cmake: chmod +x the bin-wrappers/* & SCRIPT_{SH,PERL} & git-p4
865 - + cmake: don't copy chainlint.pl to build directory
866 - + cmake: update instructions for portable CMakeLists.txt
867 - + cmake: use "-S" and "-B" to specify source and build directories
868 - + cmake: don't invoke msgfmt with --statistics
791 + . CI: add a "linux-cmake-test" to run cmake & ctest on linux
792 + . cmake: copy over git-p4.py for t983[56] perforce test
793 + . cmake: only look for "sh" in "C:/Program Files" on Windows
794 + . cmake: increase test timeout on Windows only
795 + . cmake: support GIT_TEST_OPTS, abstract away WIN32 defaults
796 + . Makefile + cmake: use environment, not GIT-BUILD-DIR
797 + . test-lib.sh: support a "GIT_TEST_BUILD_DIR"
798 + . cmake: set "USE_LIBPCRE2" in "GIT-BUILD-OPTIONS" for test-lib.sh
799 + . cmake & test-lib.sh: add a $GIT_SOURCE_DIR variable
800 + . cmake: chmod +x the bin-wrappers/* & SCRIPT_{SH,PERL} & git-p4
801 + . cmake: don't copy chainlint.pl to build directory
802 + . cmake: update instructions for portable CMakeLists.txt
803 + . cmake: use "-S" and "-B" to specify source and build directories
804 + . cmake: don't invoke msgfmt with --statistics
805
806 Fix assorted issues with CTest on *nix machines.
807
@@ -903,3 +839,133 @@ Release tarballs are available at:
839 difference from https://github.com/git/git/actions/runs/3293553109
840 is the inclusion of this topic.
841 source: <pull.1359.v3.git.git.1665973401.gitgitgadget@gmail.com>
842 +
843 +
844 +* js/bisect-in-c (2022-08-30) 17 commits
845 + . bisect: no longer try to clean up left-over `.git/head-name` files
846 + . bisect: remove Cogito-related code
847 + . Turn `git bisect` into a full built-in
848 + . bisect: move even the command-line parsing to `bisect--helper`
849 + . bisect--helper: make `state` optional
850 + . bisect--helper: calling `bisect_state()` without an argument is a bug
851 + . bisect: avoid double-quoting when printing the failed command
852 + . bisect run: fix the error message
853 + . bisect: verify that a bogus option won't try to start a bisection
854 + . bisect--helper: migrate to OPT_SUBCOMMAND()
855 + . bisect--helper: make the order consistently `argc, argv`
856 + . bisect--helper: make `terms` an explicit singleton
857 + . bisect--helper: simplify exit code computation
858 + . bisect--helper: really retire `--bisect-autostart`
859 + . bisect--helper: really retire --bisect-next-check
860 + . bisect--helper: retire the --no-log option
861 + . Merge branch 'sg/parse-options-subcommand' into js/bisect-in-c
862 +
863 + Final bits of "git bisect.sh" have been rewritten in C.
864 +
865 + Tired of waiting for too long.
866 + source: <pull.1132.v6.git.1661885419.gitgitgadget@gmail.com>
867 +
868 +
869 +* ag/merge-strategies-in-c (2022-08-10) 14 commits
870 + . sequencer: use the "octopus" strategy without forking
871 + . sequencer: use the "resolve" strategy without forking
872 + . merge: use the "octopus" strategy without forking
873 + . merge: use the "resolve" strategy without forking
874 + . merge-octopus: rewrite in C
875 + . merge-recursive: move better_branch_name() to merge.c
876 + . merge-resolve: rewrite in C
877 + . merge-one-file: rewrite in C
878 + . update-index: move add_cacheinfo() to read-cache.c
879 + . merge-index: add a new way to invoke `git-merge-one-file'
880 + . merge-index: drop the index
881 + . merge-index: libify merge_one_path() and merge_all()
882 + . t6060: add tests for removed files
883 + . t6060: modify multiple files to expose a possible issue with merge-index
884 +
885 + An attempt to rewrite remaining merge strategies from shell to C.
886 +
887 + Tired of waiting for too long.
888 + source: <20220809185429.20098-1-alban.gruin@gmail.com>
889 +
890 +
891 +* cw/remote-object-info (2022-08-13) 7 commits
892 + . SQUASH???
893 + . cat-file: add remote-object-info to batch-command
894 + . transport: add client support for object-info
895 + . serve: advertise object-info feature
896 + . protocol-caps: initialization bug fix
897 + . fetch-pack: move fetch initialization
898 + . fetch-pack: refactor packet writing
899 +
900 + A client component to talk with the object-info endpoint.
901 +
902 + Tired of waiting for too long.
903 + Under SANITIZE=address, t1006-cat-file.sh finds a breakage.
904 + cf. <20220728230210.2952731-1-calvinwan@google.com>
905 + cf. <CAFySSZDvgwbbHCHfyuaqX3tKsr-GjJ9iihygg6rNNe46Ys7_EA@mail.gmail.com>
906 + source: <20220728230210.2952731-1-calvinwan@google.com>
907 +
908 +
909 +* tl/ls-tree--pattern (2022-11-17) 6 commits
910 + . ls-tree: introduce '--pattern' option
911 + . ls-tree: introduce 'match_pattern()' function
912 + . ls-tree: improving cohension in the print code
913 + . ls-tree: optimize params of 'show_tree_common_default_long()'
914 + . t3104: remove shift code in 'test_ls_tree_format'
915 + . ls-tree: cleanup the redundant SPACE
916 +
917 + A synonym for "ls-tree | grep <pattern>", "ls-tree
918 + --pattern=<pattern>" was introduced.
919 +
920 + No upsides.
921 + cf. <xmqqbko6y2q5.fsf@gitster.g>
922 + source: <20221117113023.65865-1-tenglong.tl@alibaba-inc.com>
923 +
924 +
925 +* ds/packed-refs-v2 (2022-11-07) 30 commits
926 + . refs: skip hashing when writing packed-refs v2
927 + . p1401: create performance test for ref operations
928 + . ci: run GIT_TEST_PACKED_REFS_VERSION=2 in some builds
929 + . t*: skip packed-refs v2 over http tests
930 + . t3210: require packed-refs v1 for some tests
931 + . t5502: add PACKED_REFS_V1 prerequisite
932 + . t5312: allow packed-refs v2 format
933 + . t1409: test with packed-refs v2
934 + . packed-backend: create GIT_TEST_PACKED_REFS_VERSION
935 + . packed-refs: write prefix chunks
936 + . packed-refs: read optional prefix chunks
937 + . packed-refs: read file format v2
938 + . packed-refs: write file format version 2
939 + . packed-backend: create shell of v2 writes
940 + . config: add config values for packed-refs v2
941 + . packed-backend: create abstraction for writing refs
942 + . packed-backend: extract iterator/updates merge
943 + . packed-backend: extract add_write_error()
944 + . refs: extract packfile format to new file
945 + . chunk-format: parse trailing table of contents
946 + . chunk-format: allow trailing table of contents
947 + . chunk-format: store chunk offset during write
948 + . chunk-format: document trailing table of contents
949 + . chunk-format: number of chunks is optional
950 + . refs: allow loose files without packed-refs
951 + . repository: wire ref extensions to ref backends
952 + . config: fix multi-level bulleted list
953 + . extensions: add refFormat extension
954 + . read-cache: add index.computeHash config option
955 + . hashfile: allow skipping the hash function
956 +
957 + Retracted.
958 +
959 +
960 +* ab/make-bin-wrappers (2022-10-31) 4 commits
961 + . Makefile: simplify $(test_bindir_programs) rule by splitting it up
962 + . Makefile: rename "test_bindir_programs" variable, pre-declare
963 + . Makefile: define "TEST_{PROGRAM,OBJS}" variables earlier
964 + . Makefile: factor sed-powered '#!/bin/sh' munging into a variable
965 +
966 + Resolve issues with the bin-wrappers/% rules where "make
967 + bin-wrappers/git" would generate the script but not "git" itself.
968 + ((that is not an issue but doing the right thing))
969 +
970 + Bad idea.
971 + source: <cover-v3-0.4-00000000000-20221031T222249Z-avarab@gmail.com>