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>