What's cooking (2021/10 #05)

Junio C Hamano committed Oct 18, 2021 at 16:32 UTC 7da8973efc7538d213958b897d39fbd1243216f9
1 file changed +404 -263
whats-cooking.txt
+404 -263
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Oct 2021, #04; Thu, 14)
4 -X-master-at: f443b226ca681d87a3a31e245a70e6bc2769123c
5 -X-next-at: 33379063c9546476a80d42c704efc4ea5d0d95e5
3 +Subject: What's cooking in git.git (Oct 2021, #05; Mon, 18)
4 +X-master-at: 9d530dc0024503ab4218fe6c4395b8a0aa245478
5 +X-next-at: d3b4e01def5a9517c919f0b815c1b12296dc3dc2
6
7 -What's cooking in git.git (Oct 2021, #04; Thu, 14)
7 +What's cooking in git.git (Oct 2021, #05; Mon, 18)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -18,8 +18,14 @@ useful"). Do not read too much into a topic being in (or not in)
18 'seen'. The ones marked with '.' do not appear in any of the
19 integration branches, but I am still holding onto them.
20
21 -A handful of topics have been merged to 'master' and 'next' has also
22 -acquired some topics.
21 +The fourteenth batch of topics are in 'master'. It has only been
22 +just a few days since the last batch, but I'd be offline tomorrow
23 +(a forced day-off), so I'm merging them a bit earlier.
24 +
25 +I expect that things will start to calm down in preparation for the
26 +release expected in mid November. Topics that are not marked with
27 +any plans may be in that status because they didn't get much
28 +attention by reviewers, in which case you folks know what to do ;-)
29
30 Copies of the source code to Git live in many repositories, and the
31 following is a list of the ones I push into or their mirrors. Some
@@ -79,6 +85,18 @@ Release tarballs are available at:
85 Mostly preliminary clean-up in the hook API.
86
87
88 +* ab/designated-initializers-more (2021-10-01) 6 commits
89 + (merged to 'next' on 2021-10-11 at 9b9836c3df)
90 + + builtin/remote.c: add and use SHOW_INFO_INIT
91 + + builtin/remote.c: add and use a REF_STATES_INIT
92 + + urlmatch.[ch]: add and use URLMATCH_CONFIG_INIT
93 + + builtin/blame.c: refactor commit_info_init() to COMMIT_INFO_INIT macro
94 + + daemon.c: refactor hostinfo_init() to HOSTINFO_INIT macro
95 + + Merge branch 'ab/designated-initializers' into ab/designated-initializers-more
96 +
97 + Code clean-up.
98 +
99 +
100 * ab/help-config-vars (2021-09-23) 9 commits
101 (merged to 'next' on 2021-10-06 at bf9538cfbd)
102 + help: move column config discovery to help.c library
@@ -118,6 +136,26 @@ Release tarballs are available at:
136 haven't been modified.
137
138
139 +* bs/doc-blame-color-lines (2021-10-08) 2 commits
140 + (merged to 'next' on 2021-10-11 at a2cb7768b6)
141 + + blame: document --color-* options
142 + + blame: describe default output format
143 +
144 + The "--color-lines" and "--color-by-age" options of "git blame"
145 + have been missing, which are now documented.
146 +
147 +
148 +* cm/save-restore-terminal (2021-10-06) 2 commits
149 + (merged to 'next' on 2021-10-11 at 962bb3e75b)
150 + + editor: save and reset terminal after calling EDITOR
151 + + terminal: teach git how to save/restore its terminal settings
152 +
153 + An editor session launched during a Git operation (e.g. during 'git
154 + commit') can leave the terminal in a funny state. The code path
155 + has updated to save the terminal state before, and restore it
156 + after, it spawns an editor.
157 +
158 +
159 * ds/add-rm-with-sparse-index (2021-09-28) 13 commits
160 (merged to 'next' on 2021-10-06 at 80a9cda797)
161 + advice: update message to suggest '--sparse'
@@ -180,6 +218,46 @@ Release tarballs are available at:
218 Built-in fsmonitor (part 1).
219
220
221 +* jk/cat-file-batch-all-wo-replace (2021-10-08) 5 commits
222 + (merged to 'next' on 2021-10-11 at 9415f7c43a)
223 + + cat-file: use packed_object_info() for --batch-all-objects
224 + + cat-file: split ordered/unordered batch-all-objects callbacks
225 + + cat-file: disable refs/replace with --batch-all-objects
226 + + cat-file: mention --unordered along with --batch-all-objects
227 + + t1006: clean up broken objects
228 +
229 + "git cat-file --batch" with the "--batch-all-objects" option is
230 + supposed to iterate over all the objects found in a repository, but
231 + it used to translate these object names using the replace mechanism,
232 + which defeats the point of enumerating all objects in the repository.
233 + This has been corrected.
234 +
235 +
236 +* js/retire-preserve-merges (2021-09-07) 11 commits
237 + (merged to 'next' on 2021-09-10 at f645ffd7a3)
238 + + sequencer: restrict scope of a formerly public function
239 + + rebase: remove a no-longer-used function
240 + + rebase: stop mentioning the -p option in comments
241 + + rebase: remove obsolete code comment
242 + + rebase: drop the internal `rebase--interactive` command
243 + + git-svn: drop support for `--preserve-merges`
244 + + rebase: drop support for `--preserve-merges`
245 + + pull: remove support for `--rebase=preserve`
246 + + tests: stop testing `git rebase --preserve-merges`
247 + + remote: warn about unhandled branch.<name>.rebase values
248 + + t5520: do not use `pull.rebase=preserve`
249 +
250 + The "--preserve-merges" option of "git rebase" has been removed.
251 +
252 +
253 +* js/windows-ci-path-fix (2021-10-13) 1 commit
254 + (merged to 'next' on 2021-10-14 at 3047fe56fc)
255 + + ci(windows): ensure that we do not pick up random executables
256 +
257 + The PATH used in CI job may be too wide and let incompatible dlls
258 + to be grabbed, which can cause the build&test to fail. Tighten it.
259 +
260 +
261 * mt/grep-submodule-textconv (2021-09-29) 1 commit
262 (merged to 'next' on 2021-10-06 at 1950944b8c)
263 + grep: demonstrate bug with textconv attributes and submodules
@@ -189,6 +267,60 @@ Release tarballs are available at:
267 blob from the submodule is not taken from the submodule repository.
268 A test is added to demonstrate the issue, without fixing it.
269
270 +
271 +* rs/make-verify-path-really-verify-again (2021-10-07) 3 commits
272 + (merged to 'next' on 2021-10-11 at 6b4358876f)
273 + + read-cache: let verify_path() reject trailing dir separators again
274 + + read-cache: add verify_path_internal()
275 + + t3905: show failure to ignore sub-repo
276 +
277 + Recent sparse-index work broke safety against attempts to add paths
278 + with trailing slashes to the index, which has been corrected.
279 +
280 +
281 +* rs/mergesort (2021-10-08) 10 commits
282 + (merged to 'next' on 2021-10-08 at 2e83706316)
283 + + test-mergesort: use repeatable random numbers
284 + (merged to 'next' on 2021-10-03 at 29a672574f)
285 + + mergesort: use ranks stack
286 + + p0071: test performance of llist_mergesort()
287 + + p0071: measure sorting of already sorted and reversed files
288 + + test-mergesort: add unriffle_skewed mode
289 + + test-mergesort: add unriffle mode
290 + + test-mergesort: add generate subcommand
291 + + test-mergesort: add test subcommand
292 + + test-mergesort: add sort subcommand
293 + + test-mergesort: use strbuf_getline()
294 +
295 + The mergesort implementation used to sort linked list has been
296 + optimized.
297 +
298 +
299 +* tb/repack-write-midx (2021-10-07) 10 commits
300 + (merged to 'next' on 2021-10-08 at ff8fec247e)
301 + + test-read-midx: fix leak of bitmap_index struct
302 + (merged to 'next' on 2021-10-06 at ccdd5aaf2a)
303 + + builtin/repack.c: pass `--refs-snapshot` when writing bitmaps
304 + + builtin/repack.c: make largest pack preferred
305 + + builtin/repack.c: support writing a MIDX while repacking
306 + + builtin/repack.c: extract showing progress to a variable
307 + + builtin/repack.c: rename variables that deal with non-kept packs
308 + + builtin/repack.c: keep track of existing packs unconditionally
309 + + midx: preliminary support for `--refs-snapshot`
310 + + builtin/multi-pack-index.c: support `--stdin-packs` mode
311 + + midx: expose `write_midx_file_only()` publicly
312 + (this branch is used by tb/fix-midx-rename-while-mapped.)
313 +
314 + "git repack" has been taught to generate multi-pack reachability
315 + bitmaps.
316 +
317 +
318 +* tz/doc-link-to-bundle-format-fix (2021-10-13) 1 commit
319 + (merged to 'next' on 2021-10-14 at dee8053d49)
320 + + doc: add bundle-format to TECH_DOCS
321 +
322 + Doc update.
323 +
324 --------------------------------------------------
325 [New Topics]
326
@@ -203,145 +335,194 @@ Release tarballs are available at:
335 Will merge to 'master'.
336
337
206 -* ab/test-cleanly-recreate-trash-directory (2021-10-11) 2 commits
207 - - SQUASH???
208 - - test-lib.sh: try to re-chmod & retry on failed trash removal
338 +* rs/disable-gc-during-perf-tests (2021-10-11) 1 commit
339 + (merged to 'next' on 2021-10-14 at e0dd4b9bd4)
340 + + perf: disable automatic housekeeping
341
210 - Improve test framework around unwritable directories.
342 + Avoid performance measurements from getting ruined by gc and other
343 + housekeeping pauses interfering in the middle.
344
212 - Will merge to 'next' after squashing the fixlet in?
345 + Will merge to 'master'.
346
347
215 -* rb/doc-commit-header-continuation-line (2021-10-11) 1 commit
216 - - signature-format.txt: add space to fix gpgsig continuation line
348 +* gc/remote-with-fewer-static-global-variables (2021-10-13) 3 commits
349 + - remote: add struct repository parameter to external functions
350 + - remote: use remote_state parameter internally
351 + - remote: move static variables into per-repository struct
352
218 - Values in the header portion of commit object can be multi-lined
219 - by a single SP indentation of the second and subsequent lines, and
220 - this applies to an empty line as well. Update an example in the
221 - technical documentation to highlight it.
353 + Code clean-up to eventually allow information on remotes defined
354 + for an arbitrary repository to be read.
355
223 - Under discussion.
356 + Will merge to 'next'?
357
225 - I am tempted to supersede this with the one with another approach,
226 - in the jc/doc-commit-header-continuation-line topic.
358
359 +* jk/loosen-urlmatch (2021-10-12) 1 commit
360 + - urlmatch: add underscore to URL_HOST_CHARS
361
229 -* rs/disable-gc-during-perf-tests (2021-10-11) 1 commit
230 - (merged to 'next' on 2021-10-14 at e0dd4b9bd4)
231 - + perf: disable automatic housekeeping
362 + Treat "_" as any other DNS-valid characters in an URL when matching
363 + the per-URL configuration variable names.
364
233 - Avoid performance measurements from getting ruined by gc and other
234 - housekeeping pauses interfering in the middle.
365 + Will merge to 'next'?
366 +
367 +
368 +* rs/add-dry-run-without-objects (2021-10-12) 1 commit
369 + (merged to 'next' on 2021-10-14 at a42928e134)
370 + + add: don't write objects with --dry-run
371 +
372 + Stop "git add --dry-run" from creating new blob and tree objects.
373
374 Will merge to 'master'.
375
376
239 -* da/mergetools-special-case-xxdiff-exit-128 (2021-10-13) 1 commit
240 - - mergetools/xxdiff: prevent segfaults from stopping difftool
377 +* ab/test-bail (2021-10-14) 2 commits
378 + - test-lib.sh: use "Bail out!" syntax on bad SANITIZE=leak use
379 + - test-lib.sh: de-duplicate error() teardown code
380
242 - The xxdiff difftool backend can exit with status 128, which the
243 - difftool-helper that launches the backend takes as a significant
244 - failure, when it is not significant at all. Work it around.
381 + A new feature has been added to abort early in the test framework.
382
383 Will merge to 'next'.
384
385
249 -* fs/ssh-signing-fix (2021-10-13) 3 commits
250 - (merged to 'next' on 2021-10-14 at 97735c6091)
251 - + ssh signing: clarify trustlevel usage in docs
252 - + ssh signing: fmt-merge-msg tests & config parse
253 - + Merge branch 'fs/ssh-signing' into fs/ssh-signing-fix
254 - (this branch uses fs/ssh-signing.)
386 +* ab/config-based-hooks-2 (2021-10-15) 14 commits
387 + - run-command: remove old run_hook_{le,ve}() hook API
388 + - receive-pack: convert push-to-checkout hook to hook.h
389 + - read-cache: convert post-index-change to use hook.h
390 + - commit: convert {pre-commit,prepare-commit-msg} hook to hook.h
391 + - git-p4: use 'git hook' to run hooks
392 + - send-email: use 'git hook run' for 'sendemail-validate'
393 + - git hook run: add an --ignore-missing flag
394 + - merge: convert post-merge to use hook.h
395 + - hooks: convert 'post-checkout' hook to hook library
396 + - am: convert applypatch to use hook.h
397 + - rebase: convert pre-rebase to use hook.h
398 + - gc: use hook library for pre-auto-gc hook
399 + - hook: add 'run' subcommand
400 + - Merge branch 'ab/config-based-hooks-1' into ab/config-based-hooks-2
401
256 - Fix-up for the other topic already in 'next'.
402 + More "config-based hooks".
403 +
404 + Breaks t2400.
405 +
406 +
407 +* ab/fix-make-lint-docs (2021-10-15) 4 commits
408 + (merged to 'next' on 2021-10-18 at 22ebb3213f)
409 + + doc lint: make "lint-docs" non-.PHONY
410 + + doc build: speed up "make lint-docs"
411 + + doc lint: emit errors on STDERR
412 + + doc lint: fix error-hiding regression
413 +
414 + Build fix.
415
416 Will merge to 'master'.
417
418
261 -* gc/remote-with-fewer-static-global-variables (2021-10-13) 3 commits
262 - - remote: add struct repository parameter to external functions
263 - - remote: use remote_state parameter internally
264 - - remote: move static variables into per-repository struct
419 +* ab/ignore-replace-while-working-on-commit-graph (2021-10-15) 3 commits
420 + - commit-graph: don't consider "replace" objects with "verify"
421 + - commit-graph tests: fix another graph_git_two_modes() helper
422 + - commit-graph tests: fix error-hiding graph_git_two_modes() helper
423 + (this branch is used by gc/use-repo-settings.)
424
266 - Code clean-up to eventually allow information on remotes defined
267 - for an arbitrary repository to be read.
425 + Teach "git commit-graph" command not to allow using replace objects
426 + at all, as we do not use the commit-graph at runtime when we see
427 + object replacement.
428
429 Will merge to 'next'?
430
431
272 -* jc/doc-commit-header-continuation-line (2021-10-12) 1 commit
273 - - signature-format.txt: explain and illustrate multi-line headers
432 +* ab/pkt-line-cleanup (2021-10-15) 2 commits
433 + (merged to 'next' on 2021-10-18 at 79b07663da)
434 + + pkt-line.[ch]: remove unused packet_read_line_buf()
435 + + pkt-line.[ch]: remove unused packet_buf_write_len()
436
275 - Doc update.
437 + Code clean-up.
438
277 - Will merge to 'next'?
439 + Will merge to 'master'.
440
441
280 -* jk/loosen-urlmatch (2021-10-12) 1 commit
281 - - urlmatch: add underscore to URL_HOST_CHARS
442 +* ab/test-lib-diff-cleanup (2021-10-15) 2 commits
443 + (merged to 'next' on 2021-10-18 at 5229c5d01d)
444 + + tests: stop using top-level "README" and "COPYING" files
445 + + "lib-diff" tests: make "README" and "COPYING" test data smaller
446
283 - Treat "_" as any other DNS-valid characters in an URL when matching
284 - the per-URL configuration variable names.
447 + Test clean-up.
448 +
449 + Will merge to 'master'.
450 +
451 +
452 +* so/stash-staged (2021-10-18) 1 commit
453 + - stash: implement '--staged' option for 'push' and 'save'
454 +
455 + "git stash" learned the "--staged" option to stash away what has
456 + been added to the index (and nothing else).
457
458 Will merge to 'next'?
459
460
289 -* js/windows-ci-path-fix (2021-10-13) 1 commit
290 - (merged to 'next' on 2021-10-14 at 3047fe56fc)
291 - + ci(windows): ensure that we do not pick up random executables
461 +* tb/fix-midx-rename-while-mapped (2021-10-15) 5 commits
462 + (merged to 'next' on 2021-10-18 at 52e552caae)
463 + + midx.c: guard against commit_lock_file() failures
464 + + midx.c: lookup MIDX by object directory during repack
465 + + midx.c: lookup MIDX by object directory during expire
466 + + midx.c: extract MIDX lookup by object_dir
467 + + Merge branch 'tb/repack-write-midx' into tb/fix-midx-rename-while-mapped
468
293 - The PATH used in CI job may be too wide and let incompatible dlls
294 - to be grabbed, which can cause the build&test to fail. Tighten it.
469 + The codepath to write a new version of .midx multi-pack index files
470 + has learned to release the mmaped memory holding the current
471 + version of .midx before removing them from the disk, as some
472 + platforms do not allow removal of a file that still has mapping.
473
474 Will merge to 'master'.
475
476
299 -* rs/add-dry-run-without-objects (2021-10-12) 1 commit
300 - (merged to 'next' on 2021-10-14 at a42928e134)
301 - + add: don't write objects with --dry-run
477 +* vd/sparse-sparsity-fix-on-read (2021-10-15) 2 commits
478 + - sparse-index: update index read to consider index.sparse config
479 + - test-read-cache.c: prepare_repo_settings after config init
480
303 - Stop "git add --dry-run" from creating new blob and tree objects.
481 + Ensure that the sparseness of the in-core index matches the
482 + index.sparse configuration specified by the repository immediately
483 + after the on-disk index file is read.
484
305 - Will merge to 'master'.
485 + Under discussion.
486
487
308 -* tz/doc-link-to-bundle-format-fix (2021-10-13) 1 commit
309 - (merged to 'next' on 2021-10-14 at dee8053d49)
310 - + doc: add bundle-format to TECH_DOCS
488 +* jc/fix-ref-sorting-parse (2021-10-18) 1 commit
489 + - for-each-ref: delay parsing of --sort=<atom> options
490
312 - Doc update.
491 + Things like "git -c branch.sort=bogus branch new HEAD", i.e. the
492 + operation modes of the "git branch" command that do not need the
493 + sort key information, no longer errors out by seeing a bogus sort
494 + key.
495
314 - Will merge to 'master'.
496 + Will merge to 'next'?
497
498
317 -* ab/test-bail (2021-10-14) 2 commits
318 - - test-lib.sh: use "Bail out!" syntax on bad SANITIZE=leak use
319 - - test-lib.sh: de-duplicate error() teardown code
499 +* jc/tutorial-format-patch-base (2021-10-18) 1 commit
500 + - MyFirstContribution: teach to use "format-patch --base=auto"
501
321 - A new feature has been added to abort early in the test framework.
502 + Teach and encourage first-time contributors to this project to
503 + state the base commit when they submit their topic.
504
323 - Will merge to 'next'.
505
506 +* jk/http-push-status-fix (2021-10-18) 2 commits
507 + - transport-helper: recognize "expecting report" error from send-pack
508 + - send-pack: complain about "expecting report" with --helper-status
509
326 -* jh/builtin-fsmonitor-part2 (2021-10-14) 5 commits
327 - - fsmonitor: update fsmonitor config documentation
328 - - fsmonitor: use IPC to query the builtin FSMonitor daemon
329 - - fsmonitor: config settings are repository-specific
330 - - fsmonitor-ipc: create client routines for git-fsmonitor--daemon
331 - - fsmonitor: enhance existing comments
510 + "git push" client talking to an HTTP server did not diagnose the
511 + lack of the final status report from the other side correctly,
512 + which has been corrected.
513
333 - Built-in fsmonitor (part 2).
514 + Will merge to 'next'.
515
516
336 -* ld/sparse-diff-blame (2021-10-14) 3 commits
337 - - blame: enable and test the sparse index
338 - - diff: enable and test the sparse index
339 - - Merge branch 'vd/sparse-reset' into ld/sparse-diff-blame
340 - (this branch uses vd/sparse-reset.)
517 +* js/branch-track-inherit (2021-10-18) 1 commit
518 + - branch: add flags and config to inherit tracking
519
342 - Teach diff and blame to work well with sparse index.
520 + "git -c branch.autosetupmerge=inherit branch new old" makes "new"
521 + to have the same upstream as the "old" branch, instead of marking
522 + "old" itself as its upstream.
523
344 - Seems to break tests (e.g. 1092) when merged to 'seen'.
524 + Under discussion.
525 + cf. <87a6j6tbsv.fsf@gmgdl.gmail.com>
526
527 --------------------------------------------------
528 [Stalled]
@@ -399,36 +580,117 @@ Release tarballs are available at:
580 --------------------------------------------------
581 [Cooking]
582
583 +* ab/test-cleanly-recreate-trash-directory (2021-10-15) 1 commit
584 + (merged to 'next' on 2021-10-18 at 6fdb43973b)
585 + + test-lib.sh: try to re-chmod & retry on failed trash removal
586 +
587 + Improve test framework around unwritable directories.
588 +
589 + Will merge to 'master'.
590 +
591 +
592 +* da/mergetools-special-case-xxdiff-exit-128 (2021-10-13) 1 commit
593 + (merged to 'next' on 2021-10-18 at 0dd8a08c63)
594 + + mergetools/xxdiff: prevent segfaults from stopping difftool
595 +
596 + The xxdiff difftool backend can exit with status 128, which the
597 + difftool-helper that launches the backend takes as a significant
598 + failure, when it is not significant at all. Work it around.
599 +
600 + Will merge to 'master'.
601 +
602 +
603 +* fs/ssh-signing-fix (2021-10-18) 5 commits
604 + (merged to 'next' on 2021-10-18 at 5ffa706433)
605 + + gpg-interface: fix leak of strbufs in get_ssh_key_fingerprint()
606 + + gpg-interface: fix leak of "line" in parse_ssh_output()
607 + (merged to 'next' on 2021-10-14 at 97735c6091)
608 + + ssh signing: clarify trustlevel usage in docs
609 + + ssh signing: fmt-merge-msg tests & config parse
610 + + Merge branch 'fs/ssh-signing' into fs/ssh-signing-fix
611 + (this branch uses fs/ssh-signing.)
612 +
613 + Fix-up for the other topic already in 'next'.
614 +
615 + Will merge to 'master'.
616 +
617 +
618 +* jc/doc-commit-header-continuation-line (2021-10-12) 1 commit
619 + (merged to 'next' on 2021-10-18 at 99b71c0aaf)
620 + + signature-format.txt: explain and illustrate multi-line headers
621 +
622 + Doc update.
623 +
624 + Will merge to 'master'.
625 + cf. <87sfx1hnp4.fsf@trouble.defaultvalue.org>
626 +
627 +
628 +* rb/doc-commit-header-continuation-line (2021-10-11) 1 commit
629 + - signature-format.txt: add space to fix gpgsig continuation line
630 +
631 + Values in the header portion of commit object can be multi-lined
632 + by a single SP indentation of the second and subsequent lines, and
633 + this applies to an empty line as well. Update an example in the
634 + technical documentation to highlight it.
635 +
636 + Will discard.
637 +
638 + Superseded by the jc/doc-commit-header-continuation-line topic.
639 +
640 +
641 +* jh/builtin-fsmonitor-part2 (2021-10-14) 5 commits
642 + - fsmonitor: update fsmonitor config documentation
643 + - fsmonitor: use IPC to query the builtin FSMonitor daemon
644 + - fsmonitor: config settings are repository-specific
645 + - fsmonitor-ipc: create client routines for git-fsmonitor--daemon
646 + - fsmonitor: enhance existing comments
647 +
648 + Built-in fsmonitor (part 2).
649 +
650 + Breaks check-docs lint.
651 +
652 +
653 +* ld/sparse-diff-blame (2021-10-15) 3 commits
654 + - blame: enable and test the sparse index
655 + - diff: enable and test the sparse index
656 + - Merge branch 'vd/sparse-reset' into ld/sparse-diff-blame
657 + (this branch uses vd/sparse-reset.)
658 +
659 + Teach diff and blame to work well with sparse index.
660 +
661 +
662 * ab/mark-leak-free-tests (2021-10-12) 10 commits
403 - - leak tests: mark some misc tests as passing with SANITIZE=leak
404 - - leak tests: mark various "generic" tests as passing with SANITIZE=leak
405 - - leak tests: mark some read-tree tests as passing with SANITIZE=leak
406 - - leak tests: mark some ls-files tests as passing with SANITIZE=leak
407 - - leak tests: mark all checkout-index tests as passing with SANITIZE=leak
408 - - leak tests: mark all trace2 tests as passing with SANITIZE=leak
409 - - leak tests: mark all ls-tree tests as passing with SANITIZE=leak
410 - - leak tests: run various "test-tool" tests in t00*.sh SANITIZE=leak
411 - - leak tests: run various built-in tests in t00*.sh SANITIZE=leak
412 - - Merge branch 'ab/sanitize-leak-ci' into ab/mark-leak-free-tests
663 + (merged to 'next' on 2021-10-18 at c522807d5d)
664 + + leak tests: mark some misc tests as passing with SANITIZE=leak
665 + + leak tests: mark various "generic" tests as passing with SANITIZE=leak
666 + + leak tests: mark some read-tree tests as passing with SANITIZE=leak
667 + + leak tests: mark some ls-files tests as passing with SANITIZE=leak
668 + + leak tests: mark all checkout-index tests as passing with SANITIZE=leak
669 + + leak tests: mark all trace2 tests as passing with SANITIZE=leak
670 + + leak tests: mark all ls-tree tests as passing with SANITIZE=leak
671 + + leak tests: run various "test-tool" tests in t00*.sh SANITIZE=leak
672 + + leak tests: run various built-in tests in t00*.sh SANITIZE=leak
673 + + Merge branch 'ab/sanitize-leak-ci' into ab/mark-leak-free-tests
674
675 Bunch of tests are marked as "passing leak check".
676
416 - Will merge to 'next'.
677 + Will merge to 'master'.
678
679
680 * ab/mark-leak-free-tests-more (2021-10-07) 8 commits
420 - - merge: add missing strbuf_release()
421 - - ls-files: add missing string_list_clear()
422 - - ls-files: fix a trivial dir_clear() leak
423 - - tests: fix test-oid-array leak, test in SANITIZE=leak
424 - - tests: fix a memory leak in test-oidtree.c
425 - - tests: fix a memory leak in test-parse-options.c
426 - - tests: fix a memory leak in test-prio-queue.c
427 - - Merge branch 'ab/sanitize-leak-ci' into ab/mark-leak-free-tests-more
681 + (merged to 'next' on 2021-10-18 at fe798f77b8)
682 + + merge: add missing strbuf_release()
683 + + ls-files: add missing string_list_clear()
684 + + ls-files: fix a trivial dir_clear() leak
685 + + tests: fix test-oid-array leak, test in SANITIZE=leak
686 + + tests: fix a memory leak in test-oidtree.c
687 + + tests: fix a memory leak in test-parse-options.c
688 + + tests: fix a memory leak in test-prio-queue.c
689 + + Merge branch 'ab/sanitize-leak-ci' into ab/mark-leak-free-tests-more
690
691 Bunch of tests are marked as "passing leak check".
692
431 - Will merge to 'next'.
693 + Will merge to 'master'.
694
695
696 * ab/unpack-trees-leakfix (2021-10-13) 4 commits
@@ -443,34 +705,18 @@ Release tarballs are available at:
705 Will merge to 'master'.
706
707
446 -* jk/cat-file-batch-all-wo-replace (2021-10-08) 5 commits
447 - (merged to 'next' on 2021-10-11 at 9415f7c43a)
448 - + cat-file: use packed_object_info() for --batch-all-objects
449 - + cat-file: split ordered/unordered batch-all-objects callbacks
450 - + cat-file: disable refs/replace with --batch-all-objects
451 - + cat-file: mention --unordered along with --batch-all-objects
452 - + t1006: clean up broken objects
453 -
454 - "git cat-file --batch" with the "--batch-all-objects" option is
455 - supposed to iterate over all the objects found in a repository, but
456 - it used to translate these object names using the replace mechanism,
457 - which defeats the point of enumerating all objects in the repository.
458 - This has been corrected.
459 -
460 - Will merge to 'master'.
461 -
462 -
708 * js/userdiff-cpp (2021-10-10) 6 commits
464 - - userdiff-cpp: learn the C++ spaceship operator
465 - - userdiff-cpp: permit the digit-separating single-quote in numbers
466 - - userdiff-cpp: prepare test cases with yet unsupported features
467 - - userdiff-cpp: tighten word regex
468 - - t4034: add tests showing problematic cpp tokenizations
469 - - t4034/cpp: actually test that operator tokens are not split
709 + (merged to 'next' on 2021-10-18 at fea77f6c4e)
710 + + userdiff-cpp: learn the C++ spaceship operator
711 + + userdiff-cpp: permit the digit-separating single-quote in numbers
712 + + userdiff-cpp: prepare test cases with yet unsupported features
713 + + userdiff-cpp: tighten word regex
714 + + t4034: add tests showing problematic cpp tokenizations
715 + + t4034/cpp: actually test that operator tokens are not split
716
717 Userdiff patterns for the C++ language has been updated.
718
473 - Will merge to 'next'.
719 + Will merge to 'master'.
720
721
722 * mp/absorb-submodule-git-dir-upon-deinit (2021-10-07) 1 commit
@@ -517,10 +763,12 @@ Release tarballs are available at:
763 New interface into the tmp-objdir API to help in-core use of the
764 quarantine feature.
765
520 - Will merge to 'next'?
766 + Will merge to 'next'.
767
768
523 -* pw/sparse-cache-tree-verify-fix (2021-10-07) 1 commit
769 +* pw/sparse-cache-tree-verify-fix (2021-10-18) 2 commits
770 + (merged to 'next' on 2021-10-18 at 0186a643cc)
771 + + t1092: run "rebase --apply" without "-q" in testing
772 (merged to 'next' on 2021-10-11 at 2f90c87850)
773 + sparse index: fix use-after-free bug in cache_tree_verify()
774
@@ -532,18 +780,6 @@ Release tarballs are available at:
780 Will merge to 'master'.
781
782
535 -* rs/make-verify-path-really-verify-again (2021-10-07) 3 commits
536 - (merged to 'next' on 2021-10-11 at 6b4358876f)
537 - + read-cache: let verify_path() reject trailing dir separators again
538 - + read-cache: add verify_path_internal()
539 - + t3905: show failure to ignore sub-repo
540 -
541 - Recent sparse-index work broke safety against attempts to add paths
542 - with trailing slashes to the index, which has been corrected.
543 -
544 - Will merge to 'master'.
545 -
546 -
783 * vd/sparse-reset (2021-10-11) 8 commits
784 - unpack-trees: improve performance of next_cache_entry
785 - reset: make --mixed sparse-aware
@@ -561,17 +797,18 @@ Release tarballs are available at:
797 Needs review.
798
799
564 -* gc/use-repo-settings (2021-10-12) 3 commits
800 +* gc/use-repo-settings (2021-10-15) 4 commits
801 - gc: perform incremental repack when implictly enabled
802 - fsck: verify multi-pack-index when implictly enabled
803 - fsck: verify commit graph when implicitly enabled
804 + - Merge branch 'ab/ignore-replace-while-working-on-commit-graph' into gc/use-repo-settings
805 + (this branch uses ab/ignore-replace-while-working-on-commit-graph.)
806
807 It is wrong to read some settings directly from the config
808 subsystem, as things like feature.experimental can affect their
809 default values.
810
573 - Expecting a reroll.
574 - cf. <kl6l1r4p3mi3.fsf@chooglen-macbookpro.roam.corp.google.com>
811 + Will merge to 'next'?
812
813
814 * jh/perf-remove-test-times (2021-10-04) 1 commit
@@ -605,79 +842,22 @@ Release tarballs are available at:
842 protect the fixes.
843
844
608 -* rs/mergesort (2021-10-08) 10 commits
609 - (merged to 'next' on 2021-10-08 at 2e83706316)
610 - + test-mergesort: use repeatable random numbers
611 - (merged to 'next' on 2021-10-03 at 29a672574f)
612 - + mergesort: use ranks stack
613 - + p0071: test performance of llist_mergesort()
614 - + p0071: measure sorting of already sorted and reversed files
615 - + test-mergesort: add unriffle_skewed mode
616 - + test-mergesort: add unriffle mode
617 - + test-mergesort: add generate subcommand
618 - + test-mergesort: add test subcommand
619 - + test-mergesort: add sort subcommand
620 - + test-mergesort: use strbuf_getline()
621 -
622 - The mergesort implementation used to sort linked list has been
623 - optimized.
624 -
625 - Will merge to 'master'.
626 -
627 -
628 -* bs/doc-blame-color-lines (2021-10-08) 2 commits
629 - (merged to 'next' on 2021-10-11 at a2cb7768b6)
630 - + blame: document --color-* options
631 - + blame: describe default output format
632 -
633 - The "--color-lines" and "--color-by-age" options of "git blame"
634 - have been missing, which are now documented.
635 -
636 - Will merge to 'master'.
637 -
638 -
639 -* cm/save-restore-terminal (2021-10-06) 2 commits
640 - (merged to 'next' on 2021-10-11 at 962bb3e75b)
641 - + editor: save and reset terminal after calling EDITOR
642 - + terminal: teach git how to save/restore its terminal settings
643 -
644 - An editor session launched during a Git operation (e.g. during 'git
645 - commit') can leave the terminal in a funny state. The code path
646 - has updated to save the terminal state before, and restore it
647 - after, it spawns an editor.
648 -
649 - Will merge to 'master'.
650 -
651 -
652 -* ab/designated-initializers-more (2021-10-01) 6 commits
653 - (merged to 'next' on 2021-10-11 at 9b9836c3df)
654 - + builtin/remote.c: add and use SHOW_INFO_INIT
655 - + builtin/remote.c: add and use a REF_STATES_INIT
656 - + urlmatch.[ch]: add and use URLMATCH_CONFIG_INIT
657 - + builtin/blame.c: refactor commit_info_init() to COMMIT_INFO_INIT macro
658 - + daemon.c: refactor hostinfo_init() to HOSTINFO_INIT macro
659 - + Merge branch 'ab/designated-initializers' into ab/designated-initializers-more
660 -
661 - Code clean-up.
662 -
663 - Will merge to 'master'.
664 -
665 -
845 * ab/parse-options-cleanup (2021-10-08) 10 commits
667 - - parse-options: change OPT_{SHORT,UNSET} to an enum
668 - - parse-options tests: test optname() output
669 - - parse-options.[ch]: make opt{bug,name}() "static"
670 - - commit-graph: stop using optname()
671 - - parse-options.c: move optname() earlier in the file
672 - - parse-options.h: make the "flags" in "struct option" an enum
673 - - parse-options.c: use exhaustive "case" arms for "enum parse_opt_result"
674 - - parse-options.[ch]: consistently use "enum parse_opt_result"
675 - - parse-options.[ch]: consistently use "enum parse_opt_flags"
676 - - parse-options.h: move PARSE_OPT_SHELL_EVAL between enums
846 + (merged to 'next' on 2021-10-18 at 305d339ad9)
847 + + parse-options: change OPT_{SHORT,UNSET} to an enum
848 + + parse-options tests: test optname() output
849 + + parse-options.[ch]: make opt{bug,name}() "static"
850 + + commit-graph: stop using optname()
851 + + parse-options.c: move optname() earlier in the file
852 + + parse-options.h: make the "flags" in "struct option" an enum
853 + + parse-options.c: use exhaustive "case" arms for "enum parse_opt_result"
854 + + parse-options.[ch]: consistently use "enum parse_opt_result"
855 + + parse-options.[ch]: consistently use "enum parse_opt_flags"
856 + + parse-options.h: move PARSE_OPT_SHELL_EVAL between enums
857
858 Random changes to parse-options implementation.
859
680 - Will merge to 'next'.
860 + Will merge to 'master'.
861
862
863 * es/superproject-aware-submodules (2021-10-14) 4 commits
@@ -689,8 +869,7 @@ Release tarballs are available at:
869 A configuration variable in a submodule points at the location of
870 the superproject it is bound to (RFC).
871
692 - Brought back to 'seen' to see if it still plays well with the rest
693 - of 'seen', without the conflicting ar/submodule-update topic.
872 + Will merge to 'next'?
873
874
875 * ab/fsck-unexpected-type (2021-10-01) 17 commits
@@ -750,9 +929,8 @@ Release tarballs are available at:
929 cf. <87fst7lkjx.fsf@evledraar.gmail.com>
930
931
753 -* hm/paint-hits-in-log-grep (2021-10-08) 5 commits
754 - - SQUASH???
755 - - grep: fix an edge case concerning ascii patterns and UTF-8 data
932 +* hm/paint-hits-in-log-grep (2021-10-15) 4 commits
933 + - grep/pcre2: fix an edge case concerning ascii patterns and UTF-8 data
934 - pretty: colorize pattern matches in commit messages
935 - grep: refactor next_match() and match_one_pattern() for external use
936 - Merge branch 'jk/grep-haystack-is-read-only' into hm/paint-hits-in-log-grep
@@ -760,7 +938,7 @@ Release tarballs are available at:
938 "git log --grep=string --author=name" learns to highlight hits just
939 like "git grep string" does.
940
763 - Expecting a reroll.
941 + Will merge to 'next'?
942 cf. <xmqq1r4vjji3.fsf@gitster.g>
943
944
@@ -790,26 +968,6 @@ Release tarballs are available at:
968 Will merge to 'next'?
969
970
793 -* tb/repack-write-midx (2021-10-07) 10 commits
794 - (merged to 'next' on 2021-10-08 at ff8fec247e)
795 - + test-read-midx: fix leak of bitmap_index struct
796 - (merged to 'next' on 2021-10-06 at ccdd5aaf2a)
797 - + builtin/repack.c: pass `--refs-snapshot` when writing bitmaps
798 - + builtin/repack.c: make largest pack preferred
799 - + builtin/repack.c: support writing a MIDX while repacking
800 - + builtin/repack.c: extract showing progress to a variable
801 - + builtin/repack.c: rename variables that deal with non-kept packs
802 - + builtin/repack.c: keep track of existing packs unconditionally
803 - + midx: preliminary support for `--refs-snapshot`
804 - + builtin/multi-pack-index.c: support `--stdin-packs` mode
805 - + midx: expose `write_midx_file_only()` publicly
806 -
807 - "git repack" has been taught to generate multi-pack reachability
808 - bitmaps.
809 -
810 - Will merge to 'master'.
811 -
812 -
971 * en/zdiff3 (2021-09-20) 2 commits
972 - update documentation for new zdiff3 conflictStyle
973 - xdiff: implement a zealous diff3, or "zdiff3"
@@ -836,6 +994,8 @@ Release tarballs are available at:
994
995 Add pieces from "scalar" to contrib/.
996
997 + What's the status of this thing?
998 +
999
1000 * ms/customizable-ident-expansion (2021-09-01) 1 commit
1001 - keyword expansion: make "$Id$" string configurable
@@ -846,26 +1006,7 @@ Release tarballs are available at:
1006 What's the status of this one? Meh?
1007
1008
849 -* js/retire-preserve-merges (2021-09-07) 11 commits
850 - (merged to 'next' on 2021-09-10 at f645ffd7a3)
851 - + sequencer: restrict scope of a formerly public function
852 - + rebase: remove a no-longer-used function
853 - + rebase: stop mentioning the -p option in comments
854 - + rebase: remove obsolete code comment
855 - + rebase: drop the internal `rebase--interactive` command
856 - + git-svn: drop support for `--preserve-merges`
857 - + rebase: drop support for `--preserve-merges`
858 - + pull: remove support for `--rebase=preserve`
859 - + tests: stop testing `git rebase --preserve-merges`
860 - + remote: warn about unhandled branch.<name>.rebase values
861 - + t5520: do not use `pull.rebase=preserve`
862 -
863 - The "--preserve-merges" option of "git rebase" has been removed.
864 -
865 - Will merge to 'master'.
866 -
867 -
868 -* ab/refs-errno-cleanup (2021-10-14) 20 commits
1009 +* ab/refs-errno-cleanup (2021-10-16) 21 commits
1010 - refs API: post-migration API renaming [2/2]
1011 - refs API: post-migration API renaming [1/2]
1012 - refs API: don't expose "errno" in run_transaction_hook()
@@ -881,6 +1022,7 @@ Release tarballs are available at:
1022 - refs API: make resolve_gitlink_ref() not set errno
1023 - refs API: remove refs_read_ref_full() wrapper
1024 - refs/files: remove "name exist?" check in lock_ref_oid_basic()
1025 + - reflog tests: add --updateref tests
1026 - refs API: make refs_rename_ref_available() static
1027 - refs API: make parse_loose_ref_contents() not set errno
1028 - refs API: make refs_read_raw_ref() not set errno
@@ -889,8 +1031,7 @@ Release tarballs are available at:
1031
1032 The "remainder" of hn/refs-errno-cleanup topic.
1033
892 - Breaks the build.
893 - cf. <xmqqh7djba6e.fsf@gitster.g>
1034 + Will merge to 'next'?
1035
1036
1037 * ab/only-single-progress-at-once (2021-10-13) 10 commits