From a95c444b0d35f83cb4ba9ac1b3305a565d1e8701 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Wed, 1 May 2024 12:01:29 -0700 Subject: What's cooking (2024/05 #01) --- whats-cooking.txt | 373 +++++++++++++++++++++++++++++------------------------- 1 file changed, 204 insertions(+), 169 deletions(-) diff --git a/whats-cooking.txt b/whats-cooking.txt index 1b9ad8669c..f1ccdfff3d 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,10 +1,10 @@ To: git@vger.kernel.org -Subject: What's cooking in git.git (Apr 2024, #10; Mon, 29) -X-master-at: 786a3e4b8d754d2b14b1208b98eeb0a554ef19a8 -X-next-at: b9fe23f5ca751025eab840f4e693bd4f1ac413cb +Subject: What's cooking in git.git (May 2024, #01; Wed, 1) +X-master-at: d4cc1ec35f3bcce816b69986ca41943f6ce21377 +X-next-at: 0667e3c05b4d9d32988313da24324a4cf9ecb0bf Bcc: lwn@lwn.net, gitster@pobox.com -What's cooking in git.git (Apr 2024, #10; Mon, 29) +What's cooking in git.git (May 2024, #01; Wed, 1) -------------------------------------------------- Here are the topics that have been cooking in my tree. Commits @@ -17,7 +17,8 @@ topic without enough support may be discarded after a long period of no activity (of course they can be resubmit when new interests arise). -Git 2.45 has been tagged. +The first batch of topics for the new cycle have graduated to the +'master' branch, and the tip of 'next' has been rewound. Copies of the source code to Git live in many repositories, and the following is a list of the ones I push into or their mirrors. Some @@ -50,28 +51,165 @@ Release tarballs are available at: -------------------------------------------------- [Graduated to 'master'] -* rj/add-i-leak-fix (2024-04-22) 4 commits - (merged to 'next' on 2024-04-23 at b10e350a54) - + add: plug a leak on interactive_add - + add-patch: plug a leak handling the '/' command - + add-interactive: plug a leak in get_untracked_files - + apply: plug a leak in apply_data +* aj/stash-staged-fix (2024-04-22) 1 commit + (merged to 'next' on 2024-04-23 at d49e9dade0) + + stash: fix "--staged" with binary files + + "git stash -S" did not handle binary files correctly, which has + been corrected. + source: + + +* ds/format-patch-rfc-and-k (2024-04-19) 1 commit + (merged to 'next' on 2024-04-23 at b3b0c5507a) + + format-patch: ensure that --rfc and -k are mutually exclusive + + The "-k" and "--rfc" options of "format-patch" will now error out + when used together, as one tells us not to add anything to the + title of the commit, and the other one tells us to add "RFC" in + addition to "PATCH". + source: <71d195c248879e7c46fac0e84c6b0a8aa90bd2c2.1713488563.git.dsimic@manjaro.org> + + +* jc/format-patch-rfc-more (2024-04-23) 2 commits + (merged to 'next' on 2024-04-23 at 9f51487974) + + format-patch: "--rfc=-(WIP)" appends to produce [PATCH (WIP)] + + format-patch: allow --rfc to optionally take a value, like --rfc=WIP + + The "--rfc" option of "git format-patch" learned to take an + optional string value to be used in place of "RFC" to tweak the + "[PATCH]" on the subject header. + source: <20240423175234.170434-1-gitster@pobox.com> + - Leakfix. - source: <69f86760-96ff-4c62-9649-4627652b7c19@gmail.com> +* js/build-fuzz-more-often (2024-04-24) 1 commit + (merged to 'next' on 2024-04-25 at 28f65d1be2) + + fuzz: link fuzz programs with `make all` on Linux + + In addition to building the objects needed, try to link the objects + that are used in fuzzer tests, to make sure at least they build + without bitrot, in Linux CI runs. + source: -* rs/vsnprintf-failure-is-not-a-bug (2024-04-21) 1 commit - (merged to 'next' on 2024-04-23 at bf66ab6ea7) - + don't report vsnprintf(3) error as bug +* js/for-each-repo-keep-going (2024-04-24) 2 commits + (merged to 'next' on 2024-04-25 at d33253d919) + + maintenance: running maintenance should not stop on errors + + for-each-repo: optionally keep going on an error + + A scheduled "git maintenance" job is expected to work on all + repositories it knows about, but it stopped at the first one that + errored out. Now it keeps going. + source: + - Demote a BUG() to an die() when the failure from vsnprintf() may - not be due to a programmer error. - source: +* la/doc-use-of-contacts-when-contributing (2024-04-18) 8 commits + (merged to 'next' on 2024-04-25 at 5102a45f63) + + SubmittingPatches: demonstrate using git-contacts with git-send-email + + SubmittingPatches: add heading for format-patch and send-email + + SubmittingPatches: dedupe discussion of security patches + + SubmittingPatches: discuss reviewers first + + SubmittingPatches: quote commands + + SubmittingPatches: mention GitGitGadget + + SubmittingPatches: clarify 'git-contacts' location + + MyFirstContribution: mention contrib/contacts/git-contacts + + Advertise "git contacts", a tool for newcomers to find people to + ask review for their patches, a bit more in our developer + documentation. + source: + + +* pw/rebase-m-signoff-fix (2024-04-18) 6 commits + (merged to 'next' on 2024-04-23 at 66374c00e2) + + rebase -m: fix --signoff with conflicts + + sequencer: store commit message in private context + + sequencer: move current fixups to private context + + sequencer: start removing private fields from public API + + sequencer: always free "struct replay_opts" + + Merge branch 'pw/t3428-cleanup' into pw/rebase-m-signoff-fix + + "git rebase --signoff" used to forget that it needs to add a + sign-off to the resulting commit when told to continue after a + conflict stops its operation. + source: + + +* xx/disable-replace-when-building-midx (2024-04-17) 1 commit + (merged to 'next' on 2024-04-23 at 6c8f41740e) + + midx: disable replace objects + + The procedure to build multi-pack-index got confused by the + replace-refs mechanism, which has been corrected by disabling the + latter. + source: -------------------------------------------------- [New Topics] +* bb/rgb-12-bit-colors (2024-04-30) 4 commits + - fixup! t/t4026-color: add test coverage for invalid RGB colors + - color: add support for 12-bit RGB colors + - t/t4026-color: add test coverage for invalid RGB colors + - t/t4026-color: remove an extra double quote character + + Colors can now be specified with 12-bit format "#RGB" (in addition + to "#RRGGBB" that is already supported). + + Will merge to 'next' after squashing the fix-up in??? + source: <20240429164849.78509-1-dev+git@drbeat.li> + + +* ds/scalar-reconfigure-all-fix (2024-04-30) 1 commit + - scalar: avoid segfault in reconfigure --all + + Scalar fix. + + Comments? + source: + + +* ps/pseudo-ref-terminology (2024-04-30) 10 commits + - refs: refuse to write pseudorefs + - ref-filter: properly distinuish pseudo and root refs + - refs: pseudorefs are no refs + - refs: root refs can be symbolic refs + - refs: classify HEAD as a root ref + - refs: refname `is_special_ref()` to `is_pseudo_ref()` + - refs: rename `is_pseudoref()` to `is_root_ref()` + - Documentation/glossary: define root refs as refs + - Documentation/glossary: clarify limitations of pseudorefs + - Documentation/glossary: redefine pseudorefs as special refs + + Terminology to call various ref-like things are getting + straightened out. + + Under discussion. + source: + + +* dk/zsh-git-repo-path-fix (2024-04-30) 1 commit + - completion: zsh: stop leaking local cache variable + + Command line completion support for zsh (in contrib/) has been + updated to stop exposing internal state to end-user shell + interaction. + + Will merge to 'next'. + source: + + +* rs/diff-parseopts-cleanup (2024-05-01) 1 commit + - diff-lib: stop calling diff_setup_done() in do_diff_cache() + + Code clean-up to remove code that is now a noop. + + Will merge to 'next'. + source: <0e96c5a3-7b4d-4c6b-875e-d80e3eb07a00@web.de> + +-------------------------------------------------- +[Cooking] + * rh/complete-symbolic-ref (2024-04-25) 3 commits - completion: add docs on how to add subcommand completions - completion: improve docs for using __git_complete @@ -98,18 +236,26 @@ Release tarballs are available at: - vimdiff: make script and tests work with zsh - t4046: avoid continue in &&-chain for zsh + zsh can pretend to be a normal shell pretty well except for some + glitches that we tickle in some of our scripts. Work them around + so that "vimdiff" and our test suite works well enough with it. + + Will merge to 'next'. source: <20240426221154.2194139-1-sandals@crustytoothpaste.net> -* jc/rev-parse-fatal-doc (2024-04-28) 1 commit - - rev-parse: document that most of the time you need to be in a repository +* jc/rev-parse-fatal-doc (2024-05-01) 1 commit + - rev-parse: document how --is-* options work outside a repository --------------------------------------------------- -[Cooking] + Doc update. + + Comments? + source: -* ps/undecided-is-not-necessarily-sha1 (2024-04-29) 13 commits - - SQUASH??? + +* ps/undecided-is-not-necessarily-sha1 (2024-04-30) 13 commits - repository: stop setting SHA1 as the default object hash + - oss-fuzz/commit-graph: set up hash algorithm - builtin/shortlog: don't set up revisions without repo - builtin/diff: explicitly set hash algo when there is no repo - builtin/bundle: abort "verify" early when there is no repository @@ -127,59 +273,21 @@ Release tarballs are available at: this will smoke out codepaths that rely on such an unwarranted assumptions. - fuzz-smoke-test job at GitHub Actions CI breaks with this in 'seen' - cf. - source: - - -* aj/stash-staged-fix (2024-04-22) 1 commit - (merged to 'next' on 2024-04-23 at d49e9dade0) - + stash: fix "--staged" with binary files - - "git stash -S" did not handle binary files correctly, which has - been corrected. - - Will cook in 'next'. - source: + Comments? + source: -* rj/add-p-typo-reaction (2024-04-26) 1 commit +* rj/add-p-typo-reaction (2024-04-30) 2 commits - add-patch: response to unknown command + - add-patch: do not show UI messages on stderr When the user responds to a prompt given by "git add -p" with an unsupported command, list of available commands were given, which was too much if the user knew what they wanted to type but merely made a typo. Now the user gets a much shorter error message. - Expecting a reroll. - cf. <305296f1-975b-41b9-968c-3984d8056196@gmail.com> - source: - - -* ds/format-patch-rfc-and-k (2024-04-19) 1 commit - (merged to 'next' on 2024-04-23 at b3b0c5507a) - + format-patch: ensure that --rfc and -k are mutually exclusive - - The "-k" and "--rfc" options of "format-patch" will now error out - when used together, as one tells us not to add anything to the - title of the commit, and the other one tells us to add "RFC" in - addition to "PATCH". - - Will cook in 'next'. - source: <71d195c248879e7c46fac0e84c6b0a8aa90bd2c2.1713488563.git.dsimic@manjaro.org> - - -* jc/format-patch-rfc-more (2024-04-23) 2 commits - (merged to 'next' on 2024-04-23 at 9f51487974) - + format-patch: "--rfc=-(WIP)" appends to produce [PATCH (WIP)] - + format-patch: allow --rfc to optionally take a value, like --rfc=WIP - - The "--rfc" option of "git format-patch" learned to take an - optional string value to be used in place of "RFC" to tweak the - "[PATCH]" on the subject header. - - Will cook in 'next'. - source: <20240423175234.170434-1-gitster@pobox.com> + Will merge to 'next'. + source: <952a9514-3cf1-4601-8f0d-db57adc750c3@gmail.com> * ps/the-index-is-no-more (2024-04-18) 6 commits @@ -194,52 +302,10 @@ Release tarballs are available at: by always instantiating "the_repository" and replacing references to "the_index" with references to its .index member. - Will merge to 'next'? + Will merge to 'next'. source: -* pw/rebase-m-signoff-fix (2024-04-18) 6 commits - (merged to 'next' on 2024-04-23 at 66374c00e2) - + rebase -m: fix --signoff with conflicts - + sequencer: store commit message in private context - + sequencer: move current fixups to private context - + sequencer: start removing private fields from public API - + sequencer: always free "struct replay_opts" - + Merge branch 'pw/t3428-cleanup' into pw/rebase-m-signoff-fix - - "git rebase --signoff" used to forget that it needs to add a - sign-off to the resulting commit when told to continue after a - conflict stops its operation. - - Will cook in 'next'. - source: - - -* js/for-each-repo-keep-going (2024-04-24) 2 commits - (merged to 'next' on 2024-04-25 at d33253d919) - + maintenance: running maintenance should not stop on errors - + for-each-repo: optionally keep going on an error - - A scheduled "git maintenance" job is expected to work on all - repositories it knows about, but it stopped at the first one that - errored out. Now it keeps going. - - Will cook in 'next'. - source: - - -* xx/disable-replace-when-building-midx (2024-04-17) 1 commit - (merged to 'next' on 2024-04-23 at 6c8f41740e) - + midx: disable replace objects - - The procedure to build multi-pack-index got confused by the - replace-refs mechanism, which has been corrected by disabling the - latter. - - Will cook in 'next'. - source: - - * kn/update-ref-symrefs (2024-04-26) 7 commits - ref: support symrefs in 'reference-transaction' hook - update-ref: add support for 'symref-update' command @@ -256,25 +322,6 @@ Release tarballs are available at: source: <20240426152449.228860-1-knayak@gitlab.com> -* la/doc-use-of-contacts-when-contributing (2024-04-18) 8 commits - (merged to 'next' on 2024-04-25 at 5102a45f63) - + SubmittingPatches: demonstrate using git-contacts with git-send-email - + SubmittingPatches: add heading for format-patch and send-email - + SubmittingPatches: dedupe discussion of security patches - + SubmittingPatches: discuss reviewers first - + SubmittingPatches: quote commands - + SubmittingPatches: mention GitGitGadget - + SubmittingPatches: clarify 'git-contacts' location - + MyFirstContribution: mention contrib/contacts/git-contacts - - Advertise "git contacts", a tool for newcomers to find people to - ask review for their patches, a bit more in our developer - documentation. - - Will cook in 'next'. - source: - - * ps/ci-test-with-jgit (2024-04-12) 13 commits - t0612: add tests to exercise Git/JGit reftable compatibility - t0610: fix non-portable variable assignment @@ -311,22 +358,23 @@ Release tarballs are available at: * ps/reftable-write-optim (2024-04-08) 11 commits - - reftable/block: reuse compressed array - - reftable/block: reuse zstream when writing log blocks - - reftable/writer: reset `last_key` instead of releasing it - - reftable/writer: unify releasing memory - - reftable/writer: refactorings for `writer_flush_nonempty_block()` - - reftable/writer: refactorings for `writer_add_record()` - - refs/reftable: don't recompute committer ident - - reftable: remove name checks - - refs/reftable: skip duplicate name checks - - refs/reftable: perform explicit D/F check when writing symrefs - - refs/reftable: fix D/F conflict error message on ref copy + (merged to 'next' on 2024-04-30 at 0667e3c05b) + + reftable/block: reuse compressed array + + reftable/block: reuse zstream when writing log blocks + + reftable/writer: reset `last_key` instead of releasing it + + reftable/writer: unify releasing memory + + reftable/writer: refactorings for `writer_flush_nonempty_block()` + + reftable/writer: refactorings for `writer_add_record()` + + refs/reftable: don't recompute committer ident + + reftable: remove name checks + + refs/reftable: skip duplicate name checks + + refs/reftable: perform explicit D/F check when writing symrefs + + refs/reftable: fix D/F conflict error message on ref copy Code to write out reftable has seen some optimization and simplification. - Will merge to 'next'? + Will merge to 'master'. source: @@ -337,7 +385,7 @@ Release tarballs are available at: "git send-email" learned to separate its reports on each message it sends out with an extra blank line in between. - Will merge to 'next'? + Comments? source: @@ -376,11 +424,11 @@ Release tarballs are available at: been enhanced to support authentication schemes different from username & password pair, like Bearer and NTLM. - Comments? + Will merge to 'next'. source: <20240417000240.3611948-1-sandals@crustytoothpaste.net> -* tb/pseudo-merge-reachability-bitmap (2024-03-20) 24 commits +* tb/pseudo-merge-reachability-bitmap (2024-04-30) 23 commits - t/perf: implement performace tests for pseudo-merge bitmaps - pseudo-merge: implement support for finding existing merges - ewah: `bitmap_equals_ewah()` @@ -403,7 +451,6 @@ Release tarballs are available at: - pack-bitmap: move some initialization to `bitmap_writer_init()` - pack-bitmap: drop unused `max_bitmaps` parameter - ewah: implement `ewah_bitmap_is_subset()` - - config: repo_config_get_expiry() - Documentation/technical: describe pseudo-merge bitmaps format The pack-bitmap machinery learned to write pseudo-merge bitmaps, @@ -411,9 +458,8 @@ Release tarballs are available at: reference tips. This enhances bitmap coverage, and thus, performance, for repositories with many references using bitmaps. - Expecting a reroll. - cf. - source: + Needs review. + source: * la/hide-trailer-info (2024-04-26) 11 commits @@ -427,12 +473,12 @@ Release tarballs are available at: - trailer: teach iterator about non-trailer lines - trailer: add unit tests for trailer iterator - Makefile: sort UNIT_TEST_PROGRAMS - + Merge branch 'la/format-trailer-info' into la/hide-trailer-info + - Merge branch 'la/format-trailer-info' into la/hide-trailer-info The trailer API has been reshuffled a bit. - Will merge to 'next'? - cf. + Expecting a hopefully final reroll. + cf. source: @@ -459,18 +505,6 @@ Release tarballs are available at: source: <20240319183722.211300-1-ignacio@iencinas.com> -* js/build-fuzz-more-often (2024-04-24) 1 commit - (merged to 'next' on 2024-04-25 at 28f65d1be2) - + fuzz: link fuzz programs with `make all` on Linux - - In addition to building the objects needed, try to link the objects - that are used in fuzzer tests, to make sure at least they build - without bitrot, in Linux CI runs. - - Will cook in 'next'. - source: - - * cw/git-std-lib (2024-02-28) 4 commits - SQUASH??? get rid of apparent debugging crufts - test-stdlib: show that git-std-lib is independent @@ -483,7 +517,7 @@ Release tarballs are available at: source: -* js/cmake-with-test-tool (2024-04-24) 2 commits +* js/cmake-with-test-tool (2024-04-30) 2 commits - cmake: let `test-tool` run the unit tests, too - Merge branch 'js/unit-test-suite-runner' into js/cmake-with-test-tool (this branch uses js/unit-test-suite-runner.) @@ -491,11 +525,12 @@ Release tarballs are available at: "test-tool" is now built in CMake build to also run the unit tests. May want to roll it into the base topic. + Will merge to 'next' together with the base topic. source: -* js/unit-test-suite-runner (2024-04-24) 8 commits +* js/unit-test-suite-runner (2024-04-30) 8 commits - ci: use test-tool as unit test runner on Windows - t/Makefile: run unit tests alongside shell tests - unit tests: add rule for running with test-tool @@ -509,8 +544,8 @@ Release tarballs are available at: The "test-tool" has been taught to run testsuite tests in parallel, bypassing the need to use the "prove" tool. - Needs review. - source: + Will merge to 'next'? + source: * bk/complete-dirname-for-am-and-format-patch (2024-01-12) 1 commit -- cgit 1.2.3-korg