To: git@vger.kernel.org
-Subject: What's cooking in git.git (Aug 2024, #11; Fri, 30)
-X-master-at: 4590f2e9412378c61eac95966709c78766d326ba
-X-next-at: e5961a9dc9590638e72dd338e78d082f29b3e746
+Subject: What's cooking in git.git (Sep 2024, #01; Tue, 3)
+X-master-at: 2e7b89e038c0c888acf61f1b4ee5a43d4dd5e94c
+X-next-at: 6671bf1ecabbf7840b87cd84d969d780cc17b8ad
Bcc: lwn@lwn.net, gitster@pobox.com
-What's cooking in git.git (Aug 2024, #11; Fri, 30)
+What's cooking in git.git (Sep 2024, #01; Tue, 3)
--------------------------------------------------
Here are the topics that have been cooking in my tree. Commits
--------------------------------------------------
[Graduated to 'master']
-* ah/git-prompt-portability (2024-08-20) 8 commits
- (merged to 'next' on 2024-08-21 at 14fa411577)
- + git-prompt: support custom 0-width PS1 markers
- + git-prompt: ta-da! document usage in other shells
- + git-prompt: don't use shell $'...'
- + git-prompt: add some missing quotes
- + git-prompt: replace [[...]] with standard code
- + git-prompt: don't use shell arrays
- + git-prompt: fix uninitialized variable
- + git-prompt: use here-doc instead of here-string
+* aa/cat-file-batch-output-doc (2024-08-22) 1 commit
+ (merged to 'next' on 2024-08-25 at 2c8a616d2c)
+ + docs: explain the order of output in the batched mode of git-cat-file(1)
- The command line prompt support used to be littered with bash-isms,
- which has been corrected to work with more shells.
+ Docfix.
+ source: <pull.1768.v3.git.git.1724356231639.gitgitgadget@gmail.com>
- source: <pull.1750.v4.git.git.1724118513.gitgitgadget@gmail.com>
+* cl/config-regexp-docfix (2024-08-23) 1 commit
+ (merged to 'next' on 2024-08-25 at 8deaa7a660)
+ + doc: replace 3 dash with correct 2 dash in git-config(1)
-* cp/unit-test-reftable-block (2024-08-28) 12 commits
- (merged to 'next' on 2024-08-28 at 4974e39ddb)
- + t-reftable-block: mark unused argv/argc
- (merged to 'next' on 2024-08-22 at 234d8701da)
- + t-reftable-block: add tests for index blocks
- + t-reftable-block: add tests for obj blocks
- + t-reftable-block: add tests for log blocks
- + t-reftable-block: remove unnecessary variable 'j'
- + t-reftable-block: use xstrfmt() instead of xstrdup()
- + t-reftable-block: use block_iter_reset() instead of block_iter_close()
- + t-reftable-block: use reftable_record_key() instead of strbuf_addstr()
- + t-reftable-block: use reftable_record_equal() instead of check_str()
- + t-reftable-block: release used block reader
- + t: harmonize t-reftable-block.c with coding guidelines
- + t: move reftable/block_test.c to the unit testing framework
+ Docfix.
+ source: <20240823-fix-doc-regexp-v2-1-e4eafdd60378@gmail.com>
- Another test for reftable library ported to the unit test framework.
- cf. <ZsbdFU9aBQvqE3pb@tanuki>
- source: <20240821124150.4463-1-chandrapratap3519@gmail.com>
+* dh/runtime-prefix-on-zos (2024-08-22) 1 commit
+ (merged to 'next' on 2024-08-25 at 54a7e6c9c4)
+ + exec_cmd: RUNTIME_PREFIX on z/OS systems
+ Support for the RUNTIME_PREFIX feature has been added to z/OS port.
+ source: <pull.1769.git.git.1724334732249.gitgitgadget@gmail.com>
-* ds/sparse-diff-index (2024-08-22) 1 commit
- (merged to 'next' on 2024-08-23 at d33f670977)
- + diff-index: integrate with the sparse index
- The underlying machinery for "git diff-index" has long been made to
- expand the sparse index as needed, but the command fully expanded
- the sparse index upfront, which now has been taught not to do.
+* jc/config-doc-update (2024-08-26) 2 commits
+ (merged to 'next' on 2024-08-27 at e2cf493099)
+ + git-config.1: fix description of --regexp in synopsis
+ + git-config.1: --get-all description update
- source: <pull.1777.git.1724342607793.gitgitgadget@gmail.com>
+ Docfix.
+ source: <xmqq34mrkxre.fsf@gitster.g>
-* gt/unit-test-urlmatch-normalization (2024-08-20) 1 commit
- (merged to 'next' on 2024-08-21 at 3efed1ed8d)
- + t: migrate t0110-urlmatch-normalization to the new framework
+* js/fetch-push-trace2-annotation (2024-08-22) 3 commits
+ (merged to 'next' on 2024-08-25 at df89edbe16)
+ + send-pack: add new tracing regions for push
+ + fetch: add top-level trace2 regions
+ + trace2: implement trace2_printf() for event target
- Another rewrite of test.
+ More trace2 events at key points on push and fetch code paths have
+ been added.
+ source: <cover.1724363615.git.steadmon@google.com>
- source: <20240820152008.21354-2-shyamthakkar001@gmail.com>
+* ps/leakfixes-part-5 (2024-08-22) 21 commits
+ (merged to 'next' on 2024-08-25 at 5dde5192bb)
+ + transport: fix leaking negotiation tips
+ + transport: fix leaking arguments when fetching from bundle
+ + builtin/fetch: fix leaking transaction with `--atomic`
+ + remote: fix leaking peer ref when expanding refmap
+ + remote: fix leaks when matching refspecs
+ + remote: fix leaking config strings
+ + builtin/fetch-pack: fix leaking refs
+ + sideband: fix leaks when configuring sideband colors
+ + builtin/send-pack: fix leaking refspecs
+ + transport: fix leaking OID arrays in git:// transport data
+ + t/helper: fix leaking multi-pack-indices in "read-midx"
+ + builtin/repack: fix leaks when computing packs to repack
+ + midx-write: fix leaking hashfile on error cases
+ + builtin/archive: fix leaking `OPT_FILENAME()` value
+ + builtin/upload-archive: fix leaking args passed to `write_archive()`
+ + builtin/merge-tree: fix leaking `-X` strategy options
+ + pretty: fix leaking key/value separator buffer
+ + pretty: fix memory leaks when parsing pretty formats
+ + convert: fix leaks when resetting attributes
+ + mailinfo: fix leaking header data
+ + Merge branch 'ps/leakfixes-part-4' into ps/leakfixes-part-5
-* mt/rebase-x-quiet (2024-08-21) 1 commit
- (merged to 'next' on 2024-08-22 at 1018555d89)
- + rebase --exec: respect --quiet
+ Even more leak fixes.
+ source: <cover.1724315484.git.ps@pks.im>
- "git rebase -x --quiet" was not quiet, which was corrected.
- source: <f105b34b8e6b33448f4d0ef07d51b7bbf4e71aaa.1724203912.git.matheus.tavb@gmail.com>
+* ps/reftable-concurrent-compaction (2024-08-23) 11 commits
+ (merged to 'next' on 2024-08-26 at 3fc3e86224)
+ + reftable/stack: fix segfault when reload with reused readers fails
+ + reftable/stack: reorder swapping in the reloaded stack contents
+ + reftable/reader: keep readers alive during iteration
+ + reftable/reader: introduce refcounting
+ + reftable/stack: fix broken refnames in `write_n_ref_tables()`
+ + reftable/reader: inline `reader_close()`
+ + reftable/reader: inline `init_reader()`
+ + reftable/reader: rename `reftable_new_reader()`
+ + reftable/stack: inline `stack_compact_range_stats()`
+ + reftable/blocksource: drop malloc block source
+ + Merge branch 'ps/reftable-drop-generic' into ps/reftable-concurrent-compaction
+ The code path for compacting reftable files saw some bugfixes
+ against concurrent operation.
+ source: <cover.1724420744.git.ps@pks.im>
-* ps/reftable-drop-generic (2024-08-28) 17 commits
- (merged to 'next' on 2024-08-28 at 987000f60d)
- + reftable: mark unused parameters in empty iterator functions
- (merged to 'next' on 2024-08-22 at c6706c1b16)
- + reftable/generic: drop interface
- + t/helper: refactor to not use `struct reftable_table`
- + t/helper: use `hash_to_hex_algop()` to print hashes
- + t/helper: inline printing of reftable records
- + t/helper: inline `reftable_table_print()`
- + t/helper: inline `reftable_stack_print_directory()`
- + t/helper: inline `reftable_reader_print_file()`
- + t/helper: inline `reftable_dump_main()`
- + reftable/dump: drop unused `compact_stack()`
- + reftable/generic: move generic iterator code into iterator interface
- + reftable/iter: drop double-checking logic
- + reftable/stack: open-code reading refs
- + reftable/merged: stop using generic tables in the merged table
- + reftable/merged: rename `reftable_new_merged_table()`
- + reftable/merged: expose functions to initialize iterators
- + Merge branch 'ps/reftable-stack-compaction' into ps/reftable-drop-generic
- The code in the reftable library has been cleaned up by discarding
- unused "generic" interface.
+* rs/remote-leakfix (2024-08-23) 1 commit
+ (merged to 'next' on 2024-08-26 at 77eb8b251e)
+ + remote: plug memory leaks at early returns
- source: <cover.1724308389.git.ps@pks.im>
+ Leakfix.
+ source: <82cb986c-6830-4d9a-bad1-fe4cab6a76eb@web.de>
--------------------------------------------------
[New Topics]
+* jc/unused-on-windows (2024-08-30) 1 commit
+ (merged to 'next' on 2024-08-30 at a2a2aa6e59)
+ + refs/files-backend: work around -Wunused-parameter
+
+ Fix more fallouts from -Werror=unused-parameter.
+
+ Will merge to 'master'.
+ source: <xmqqjzfxrekm.fsf@gitster.g>
+
+
+* jk/free-commit-buffer-of-skipped-commits (2024-08-30) 1 commit
+ (merged to 'next' on 2024-09-03 at a8fb72a4d5)
+ + revision: free commit buffers for skipped commits
+
+ The code forgot to discard unnecessary in-core commit buffer data
+ for commits that "git log --skip=<number>" traversed but omitted
+ from the output, which has been corrected.
+
+ Will merge to 'master'.
+ source: <20240830205331.GA1038751@coredump.intra.peff.net>
+
+
+* ah/mergetols-vscode (2024-09-01) 1 commit
+ - mergetools: vscode: new tool
+
+ "git mergetool" learned to use VSCode as a merge backend.
+
+ Will merge to 'next'.
+ source: <20240902025918.99657-1-alexhenrie24@gmail.com>
+
+
+* rj/compat-terminal-unused-fix (2024-09-01) 1 commit
+ - compat/terminal: mark parameter of git_terminal_prompt() UNUSED
+
+ Build fix.
+
+ Will merge to 'next'.
+ source: <ce1c1d66-e0eb-4143-b334-1a83c0492415@ramsayjones.plus.com>
+
+
+* ps/declare-pack-redundamt-dead (2024-09-03) 1 commit
+ - Documentation/BreakingChanges: announce removal of git-pack-redundant(1)
+
+ "git pack-redundant" has been marked for removal in Git 3.0.
+
+ Will merge to 'next'.
+ source: <a6be9f5e9eb1f426b1a17b89e3db1bc7532758b5.1725264748.git.ps@pks.im>
+
+
+* pw/rebase-autostash-fix (2024-09-03) 1 commit
+ - rebase: apply and cleanup autostash when rebase fails to start
+
+ "git rebase --autostash" failed to resurrect the autostashed
+ changes when the command gets aborted after giving back control
+ asking for hlep in conflict resolution.
+
+ Will merge to 'next'?
+ source: <pull.1772.v2.git.1725289979450.gitgitgadget@gmail.com>
+
+--------------------------------------------------
+[Cooking]
+
* tb/multi-pack-reuse-fix (2024-08-27) 5 commits
- builtin/pack-objects.c: do not open-code `MAX_PACK_OBJECT_HEADER`
- pack-bitmap.c: avoid repeated `pack_pos_to_offset()` during reuse
* jk/maybe-unused-cleanup (2024-08-29) 2 commits
- - grep: prefer UNUSED to MAYBE_UNUSED for pcre allocators
- - gc: drop MAYBE_UNUSED annotation from used parameter
+ (merged to 'next' on 2024-08-30 at 0ff6ea5748)
+ + grep: prefer UNUSED to MAYBE_UNUSED for pcre allocators
+ + gc: drop MAYBE_UNUSED annotation from used parameter
Code clean-up.
- Will merge to 'next'.
- source: <20240829200807.GA430283@coredump.intra.peff.net>
-
---------------------------------------------------
-[Cooking]
-
-* rs/remote-leakfix (2024-08-23) 1 commit
- (merged to 'next' on 2024-08-26 at 77eb8b251e)
- + remote: plug memory leaks at early returns
-
- Leakfix.
-
Will merge to 'master'.
- source: <82cb986c-6830-4d9a-bad1-fe4cab6a76eb@web.de>
+ source: <20240829200807.GA430283@coredump.intra.peff.net>
-* gt/unit-test-oid-array (2024-08-25) 1 commit
+* gt/unit-test-oid-array (2024-09-01) 1 commit
- t: port helper/test-oid-array.c to unit-tests/t-oid-array.c
Another unit-test.
- Expecting a (hopefully small and final) reroll.
- cf. <CAP8UFD3mq+k8QXDrFAp5bfoCN+sNgm3vJvuhryxVYDaj-SZU0g@mail.gmail.com>
- source: <20240824170223.36080-1-shyamthakkar001@gmail.com>
+ Will merge to 'next'?
+ source: <20240901212649.4910-1-shyamthakkar001@gmail.com>
* gt/unit-test-oidset (2024-08-25) 1 commit
source: <20240824172028.39419-1-shyamthakkar001@gmail.com>
-* jc/config-doc-update (2024-08-26) 2 commits
- (merged to 'next' on 2024-08-27 at e2cf493099)
- + git-config.1: fix description of --regexp in synopsis
- + git-config.1: --get-all description update
-
- Docfix.
-
- Will merge to 'master'.
- source: <xmqq34mrkxre.fsf@gitster.g>
-
-
* ps/leakfixes-part-6 (2024-08-26) 22 commits
- builtin/repack: fix leaking keep-pack list
- merge-ort: fix two leaks when handling directory rename modifications
More leakfixes.
Needs review.
+ Expecting a reroll.
+ cf. <ZtGKJfgBo17Vz8wY@tanuki>
source: <cover.1724656120.git.ps@pks.im>
-* dh/runtime-prefix-on-zos (2024-08-22) 1 commit
- (merged to 'next' on 2024-08-25 at 54a7e6c9c4)
- + exec_cmd: RUNTIME_PREFIX on z/OS systems
-
- Support for the RUNTIME_PREFIX feature has been added to z/OS port.
-
- Will merge to 'master'.
- source: <pull.1769.git.git.1724334732249.gitgitgadget@gmail.com>
-
-
-* cl/config-regexp-docfix (2024-08-23) 1 commit
- (merged to 'next' on 2024-08-25 at 8deaa7a660)
- + doc: replace 3 dash with correct 2 dash in git-config(1)
-
- Docfix.
-
- Will merge to 'master'.
- source: <20240823-fix-doc-regexp-v2-1-e4eafdd60378@gmail.com>
-
-
-* aa/cat-file-batch-output-doc (2024-08-22) 1 commit
- (merged to 'next' on 2024-08-25 at 2c8a616d2c)
- + docs: explain the order of output in the batched mode of git-cat-file(1)
-
- Docfix.
-
- Will merge to 'master'.
- source: <pull.1768.v3.git.git.1724356231639.gitgitgadget@gmail.com>
-
-
-* js/fetch-push-trace2-annotation (2024-08-22) 3 commits
- (merged to 'next' on 2024-08-25 at df89edbe16)
- + send-pack: add new tracing regions for push
- + fetch: add top-level trace2 regions
- + trace2: implement trace2_printf() for event target
-
- More trace2 events at key points on push and fetch code paths have
- been added.
-
- Will merge to 'master'.
- source: <cover.1724363615.git.steadmon@google.com>
-
-
* jk/send-email-mailmap (2024-08-27) 3 commits
(merged to 'next' on 2024-08-30 at a5cf30460a)
+ send-email: add mailmap support via sendemail.mailmap and --mailmap
source: <20240827-jk-send-email-mailmap-support-v3-0-bec5ba9be391@gmail.com>
-* ps/leakfixes-part-5 (2024-08-22) 21 commits
- (merged to 'next' on 2024-08-25 at 5dde5192bb)
- + transport: fix leaking negotiation tips
- + transport: fix leaking arguments when fetching from bundle
- + builtin/fetch: fix leaking transaction with `--atomic`
- + remote: fix leaking peer ref when expanding refmap
- + remote: fix leaks when matching refspecs
- + remote: fix leaking config strings
- + builtin/fetch-pack: fix leaking refs
- + sideband: fix leaks when configuring sideband colors
- + builtin/send-pack: fix leaking refspecs
- + transport: fix leaking OID arrays in git:// transport data
- + t/helper: fix leaking multi-pack-indices in "read-midx"
- + builtin/repack: fix leaks when computing packs to repack
- + midx-write: fix leaking hashfile on error cases
- + builtin/archive: fix leaking `OPT_FILENAME()` value
- + builtin/upload-archive: fix leaking args passed to `write_archive()`
- + builtin/merge-tree: fix leaking `-X` strategy options
- + pretty: fix leaking key/value separator buffer
- + pretty: fix memory leaks when parsing pretty formats
- + convert: fix leaks when resetting attributes
- + mailinfo: fix leaking header data
- + Merge branch 'ps/leakfixes-part-4' into ps/leakfixes-part-5
-
- Even more leak fixes.
-
- Will merge to 'master'.
- source: <cover.1724315484.git.ps@pks.im>
-
-
-* sj/ref-contents-check (2024-08-28) 6 commits
- - SQUASH??? -Wunused-parameter fix
- - SQUASH??? remove unused parameters
- - ref: add symlink ref check for files backend
- - ref: add symbolic ref content check for files backend
+* sj/ref-contents-check (2024-09-03) 4 commits
+ - ref: add symlink ref content check for files backend
+ - ref: add symref content check for files backend
- ref: add regular ref content check for files backend
- ref: initialize "fsck_ref_report" with zero
- Plumb through extra checks in refs API to "git fsck".
+ "git fsck" learned to issue warnings on "curiously formatted" ref
+ contents that have always been taken valid but something Git
+ wouldn't have written itself (e.g., missing terminating end-of-line
+ after the full object name).
- Expecting a reroll.
- source: <Zs348uXMBdCuwF-2@ArchLinux>
+ Ready?
+ source: <Ztb-mgl50cwGVO8A@ArchLinux>
* jc/mailinfo-header-cleanup (2024-08-20) 1 commit
source: <xmqq1q2i6gw7.fsf@gitster.g>
-* ps/reftable-concurrent-compaction (2024-08-23) 11 commits
- (merged to 'next' on 2024-08-26 at 3fc3e86224)
- + reftable/stack: fix segfault when reload with reused readers fails
- + reftable/stack: reorder swapping in the reloaded stack contents
- + reftable/reader: keep readers alive during iteration
- + reftable/reader: introduce refcounting
- + reftable/stack: fix broken refnames in `write_n_ref_tables()`
- + reftable/reader: inline `reader_close()`
- + reftable/reader: inline `init_reader()`
- + reftable/reader: rename `reftable_new_reader()`
- + reftable/stack: inline `stack_compact_range_stats()`
- + reftable/blocksource: drop malloc block source
- + Merge branch 'ps/reftable-drop-generic' into ps/reftable-concurrent-compaction
-
- The code path for compacting reftable files saw some bugfixes
- against concurrent operation.
-
- Will merge to 'master'.
- source: <cover.1724420744.git.ps@pks.im>
-
-
* tb/incremental-midx-part-2 (2024-08-28) 16 commits
- fixup! midx: implement writing incremental MIDX bitmaps
- midx: implement writing incremental MIDX bitmaps
source: <cover.1723760847.git.me@ttaylorr.com>
-* ps/clar-unit-test (2024-08-20) 13 commits
+* ps/clar-unit-test (2024-09-03) 14 commits
- clar: add CMake support
- t/unit-tests: convert ctype tests to use clar
- t/unit-tests: convert strvec tests to use clar
+ - t/unit-tests: implement test driver
- Makefile: wire up the clar unit testing framework
- Makefile: do not use sparse on third-party sources
- Makefile: make hdr-check depend on generated headers
Import clar unit tests framework libgit2 folks invented for our
use.
- Need to decide how to fill feature gap with our home-grown one
- cf. <b87700d2-0c9a-4d0c-9ee4-e6a91278d596@gmail.com>
- source: <cover.1724159966.git.ps@pks.im>
+ Ready?
+ source: <cover.1725349234.git.ps@pks.im>
* js/libgit-rust (2024-08-09) 5 commits
"git cat-file --batch" has been optimized.
- Needs review.
+ Waiting for review responses.
source: <20240823224630.1180772-1-e@80x24.org>