To: git@vger.kernel.org
-Subject: What's cooking in git.git (Oct 2024, #06; Thu, 10)
+Subject: What's cooking in git.git (Oct 2024, #07; Fri, 11)
X-master-at: ef8ce8f3d4344fd3af049c17eeba5cd20d98b69f
-X-next-at: 0c40f5c971f3310010a64ee1c93f32448bf6ba73
+X-next-at: 07ac214952ed4a8d73389044a5d428bf90feeb11
Bcc: lwn@lwn.net, gitster@pobox.com
-What's cooking in git.git (Oct 2024, #06; Thu, 10)
+What's cooking in git.git (Oct 2024, #07; Fri, 11)
--------------------------------------------------
Here are the topics that have been cooking in my tree. Commits
https://www.kernel.org/pub/software/scm/git/
--------------------------------------------------
-[Graduated to 'master']
+[New Topics]
+
+* bc/drop-ancient-libcurl-and-perl (2024-10-11) 13 commits
+ - gitweb: make use of s///r
+ - INSTALL: require Perl 5.26.0
+ - Require Perl 5.26.0
+ - INSTALL: document requirement for libcurl 7.61.0
+ - git-curl-compat: remove check for curl 7.56.0
+ - git-curl-compat: remove check for curl 7.53.0
+ - git-curl-compat: remove check for curl 7.52.0
+ - git-curl-compat: remove check for curl 7.44.0
+ - git-curl-compat: remove check for curl 7.43.0
+ - git-curl-compat: remove check for curl 7.39.0
+ - git-curl-compat: remove check for curl 7.34.0
+ - git-curl-compat: remove check for curl 7.25.0
+ - git-curl-compat: remove check for curl 7.21.5
-* ds/line-log-asan-fix (2024-10-03) 1 commit
- (merged to 'next' on 2024-10-04 at ee702f6c95)
- + line-log: protect inner strbuf from free
- (this branch is used by jk/output-prefix-cleanup.)
+ Drop support for older libcURL and Perl.
- Use after free and double freeing at the end in "git log -L... -p"
- had been identified and fixed.
- source: <05c21616c350b5141c17fde1aa5d3aea881c6031.1727956724.git.gitgitgadget@gmail.com>
+ Under discussion.
+ source: <20241010235621.738239-1-sandals@crustytoothpaste.net>
-* ja/doc-synopsis-markup (2024-09-24) 3 commits
- (merged to 'next' on 2024-09-30 at 15ec13edec)
- + doc: apply synopsis simplification on git-clone and git-init
- + doc: update the guidelines to reflect the current formatting rules
- + doc: introduce a synopsis typesetting
+* co/t6050-pipefix (2024-10-11) 1 commit
+ - t6050: do not lose exit status of Git to pipes
- The way AsciiDoc is used for SYNOPSIS part of the manual pages has
- been revamped. The sources, at least for the simple cases, got
- vastly pleasant to work with.
- source: <pull.1766.v5.git.1727161730.gitgitgadget@gmail.com>
+ Avoid losing exit status by having Git command being tested on the
+ upstream side of a pipe.
+ Needs review.
+ There is at least one known broken conversion.
+ cf. <CAPig+cRLdzAEA-G=L81yR9dmm8Y-5VEU7ybyohKmbq9=0bDUaQ@mail.gmail.com>
+ source: <20241011154555.584917-1-chizobajames21@gmail.com>
-* jk/output-prefix-cleanup (2024-10-03) 5 commits
- (merged to 'next' on 2024-10-04 at 06298d1525)
- + diff: store graph prefix buf in git_graph struct
- + diff: return line_prefix directly when possible
- + diff: return const char from output_prefix callback
- + diff: drop line_prefix_length field
- + line-log: use diff_line_prefix() instead of custom helper
- (this branch uses ds/line-log-asan-fix.)
- Code clean-up.
- source: <pull.1806.v2.git.1727956724.gitgitgadget@gmail.com>
-
-
-* ps/leakfixes-part-8 (2024-09-30) 25 commits
- (merged to 'next' on 2024-10-04 at 3cfb5747d2)
- + builtin/send-pack: fix leaking list of push options
- + remote: fix leaking push reports
- + t/helper: fix leaks in proc-receive helper
- + pack-write: fix return parameter of `write_rev_file_order()`
- + revision: fix leaking saved parents
- + revision: fix memory leaks when rewriting parents
- + midx-write: fix leaking buffer
- + pack-bitmap-write: fix leaking OID array
- + pseudo-merge: fix leaking strmap keys
- + pseudo-merge: fix various memory leaks
- + line-log: fix several memory leaks
- + diff: improve lifecycle management of diff queues
- + builtin/revert: fix leaking `gpg_sign` and `strategy` config
- + t/helper: fix leaking repository in partial-clone helper
- + builtin/clone: fix leaking repo state when cloning with bundle URIs
- + builtin/pack-redundant: fix various memory leaks
- + builtin/stash: fix leaking `pathspec_from_file`
- + submodule: fix leaking submodule entry list
- + wt-status: fix leaking buffer with sparse directories
- + shell: fix leaking strings
- + scalar: fix leaking repositories
- + read-cache: fix leaking hash context in `do_write_index()`
- + builtin/annotate: fix leaking args vector
- + Merge branch 'jk/http-leakfixes' into ps/leakfixes-part-8
- + Merge branch 'ps/leakfixes-part-7' into ps/leakfixes-part-8
-
- More leakfixes.
- source: <cover.1727687410.git.ps@pks.im>
-
-
-* ps/reftable-alloc-failures (2024-10-04) 28 commits
- (merged to 'next' on 2024-10-04 at 5649ef3dd7)
- + reftable/basics: fix segfault when growing `names` array fails
- (merged to 'next' on 2024-10-02 at a6d42d51d4)
- + reftable/basics: ban standard allocator functions
- + reftable: introduce `REFTABLE_FREE_AND_NULL()`
- + reftable: fix calls to free(3P)
- + reftable: handle trivial allocation failures
- + reftable/tree: handle allocation failures
- + reftable/pq: handle allocation failures when adding entries
- + reftable/block: handle allocation failures
- + reftable/blocksource: handle allocation failures
- + reftable/iter: handle allocation failures when creating indexed table iter
- + reftable/stack: handle allocation failures in auto compaction
- + reftable/stack: handle allocation failures in `stack_compact_range()`
- + reftable/stack: handle allocation failures in `reftable_new_stack()`
- + reftable/stack: handle allocation failures on reload
- + reftable/reader: handle allocation failures in `reader_init_iter()`
- + reftable/reader: handle allocation failures for unindexed reader
- + reftable/merged: handle allocation failures in `merged_table_init_iter()`
- + reftable/writer: handle allocation failures in `reftable_new_writer()`
- + reftable/writer: handle allocation failures in `writer_index_hash()`
- + reftable/record: handle allocation failures when decoding records
- + reftable/record: handle allocation failures on copy
- + reftable/basics: handle allocation failures in `parse_names()`
- + reftable/basics: handle allocation failures in `reftable_calloc()`
- + reftable: introduce `reftable_strdup()`
- + reftable/basics: merge "publicbasics" into "basics"
- + reftable/error: introduce out-of-memory error code
- + Merge branch 'ps/reftable-exclude' into ps/reftable-alloc-failures
- + Merge branch 'cp/unit-test-reftable-stack' into ps/reftable-alloc-failures
-
- The reftable library is now prepared to expect that the memory
- allocation function given to it may fail to allocate and to deal
- with such an error.
- source: <CAPig+cT7nni11bGmNyYCQZ0P0QZ_HG-izPtsymq==sUOkOn-Lw@mail.gmail.com>
- source: <cover.1727866394.git.ps@pks.im>
-
-
-* sk/doc-maintenance-schedule (2024-10-03) 1 commit
- (merged to 'next' on 2024-10-04 at 2d3722c29d)
- + doc: add a note about staggering of maintenance
-
- Doc update to clarify how periodical maintenance are scheduled,
- spread across time to avoid thundering hurds.
- source: <pull.1794.git.git.1727945877922.gitgitgadget@gmail.com>
-
-
-* tb/notes-amlog-doc (2024-10-03) 1 commit
- (merged to 'next' on 2024-10-04 at e73c8753e8)
- + Documentation: mention the amlog in howto/maintain-git.txt
-
- Document "amlog" notes.
- source: <88a13b9f2b6e7fbed517a7e268e4e371d84a9a10.1727917792.git.me@ttaylorr.com>
+* es/oss-fuzz (2024-10-11) 3 commits
+ - fuzz: port fuzz-url-decode-mem from OSS-Fuzz
+ - fuzz: port fuzz-parse-attr-line from OSS-Fuzz
+ - fuzz: port fuzz-credential-from-url-gently from OSS-Fuzz
+
+ Backport oss-fuzz tests for us to our codebase.
+
+ Needs review.
+ source: <cover.1728594659.git.steadmon@google.com>
+
+
+* tb/cross-pack-delta-reuse (2024-10-11) 11 commits
+ . pack-bitmap: enable reusing deltas with base objects in 'haves' bitmap
+ . pack-bitmap.c: record whether the result was filtered
+ . pack-bitmap: enable cross-pack delta reuse
+ . t5332: enable OFS_DELTAs via test_pack_objects_reused
+ . write_reused_pack_one(): translate bit positions directly
+ . pack-bitmap: drop `from_midx` field from `bitmapped_pack`
+ . pack-bitmap.c: extract `find_base_bitmap_pos()`
+ . pack-bitmap.c: compare `base_offset` to `delta_obj_offset`
+ . pack-bitmap.c: delay calling 'offset_to_pack_pos()'
+ . pack-bitmap.c: avoid unnecessary `offset_to_pack_pos()`
+ . pack-bitmap.c: do not pass `pack_pos` to `try_partial_reuse()`
+
+ Allow pack-objects to reuse an existing delta in a packfile, when
+ it ends up sending the base object from a different packfile.
+
+ It seems to break the tests when merged to 'seen'.
+ source: <cover.1728505840.git.me@ttaylorr.com>
+
+
+* bf/t-readme-mention-reftable (2024-10-11) 1 commit
+ - t/README: add missing value for GIT_TEST_DEFAULT_REF_FORMAT
+
+ Doc update.
+
+ Will merge to 'next'.
+ source: <20241011191150.825255-1-bence@ferdinandy.com>
--------------------------------------------------
-[New Topics]
+[Cooking]
* aa/t7300-modernize (2024-10-09) 1 commit
- - t7300-clean.sh: use test_path_* helper functions for error logging
+ (merged to 'next' on 2024-10-11 at e3a8d7f6c4)
+ + t7300-clean.sh: use test_path_* helper functions for error logging
Test modernization.
- Will merge to 'next'.
+ Will merge to 'master'.
source: <pull.1811.v4.git.1728498122419.gitgitgadget@gmail.com>
missing and discovers what branch the other side points with its
HEAD, refs/remotes/$remote/HEAD is updated to point to it.
- Comments?
+ Expecting a reroll.
+ Needs to shed files backend dependency a bit more.
+ cf. <D4SUTJDV0Y04.3Q8YED2MVOKBL@ferdinandy.com>
source: <20241010133022.1733542-1-bence@ferdinandy.com>
a wrong remote when the default remote names are set differently
between them.
- Comments?
+ Will merge to 'next'?
source: <20241009033257.1316690-1-daniel@mariadb.org>
* jc/doc-refspec-syntax (2024-10-09) 1 commit
- - doc: clarify <src> in refspec syntax
+ (merged to 'next' on 2024-10-11 at 912ed5fae8)
+ + doc: clarify <src> in refspec syntax
Doc updates.
- Will merge to 'next'.
+ Will merge to 'master'.
source: <xmqqy137wtyz.fsf@gitster.g>
* kh/checkout-ignore-other-docfix (2024-10-10) 1 commit
- - checkout: refer to other-worktree branch, not ref
+ (merged to 'next' on 2024-10-11 at ed66b60f52)
+ + checkout: refer to other-worktree branch, not ref
Doc updates.
- Will merge to 'next'.
+ Will merge to 'master'.
source: <fcfbcd3868bda75dd0463e04739047e74d239d32.1728585467.git.code@khaugsbakk.name>
* kn/loose-object-layer-wo-global-hash (2024-10-09) 1 commit
- - loose: don't rely on repository global state
+ (merged to 'next' on 2024-10-11 at 99252fb6cc)
+ + loose: don't rely on repository global state
Code clean-up.
- Will merge to 'next'.
+ Will merge to 'master'.
source: <CAOLa=ZRMaw-PAsZ9s0zJ2zp_suMppi=ZrT67B__LU1tWZSvuUQ@mail.gmail.com>
* ng/rebase-merges-branch-name-as-label (2024-10-09) 3 commits
- - rebase-merges: try and use branch names as labels
- - rebase-update-refs: extract load_branch_decorations
- - load_branch_decorations: fix memory leak with non-static filters
+ (merged to 'next' on 2024-10-11 at a5785fd206)
+ + rebase-merges: try and use branch names as labels
+ + rebase-update-refs: extract load_branch_decorations
+ + load_branch_decorations: fix memory leak with non-static filters
"git rebase --rebase-merges" now uses branch names as labels when
able.
- Will merge to 'next'.
+ Will merge to 'master'.
source: <pull.1784.v3.git.git.1728460700.gitgitgadget@gmail.com>
* ps/build (2024-10-09) 24 commits
- - Introduce support for the Meson build system
- - Documentation: add comparison of build systems
- - t: allow overriding build dir
- - t: better support for out-of-tree builds
- - Makefile: simplify building of templates
- - Makefile: allow "bin-wrappers/" directory to exist
- - Makefile: consistently use PERL_PATH
- - Makefile: consistently use @PLACEHOLDER@ to substitute
- - Makefile: use common template for GIT-BUILD-OPTIONS
- - Makefile: refactor generators to be PWD-independent
- - Makefile: refactor GIT-VERSION-GEN to be reusable
- - Makefile: extract script to massage Perl scripts
- - Makefile: extract script to generate clar declarations
- - http: fix build error on FreeBSD
- - builtin/credential-cache: fix missing parameter for stub function
- - t/unit-tests: update clar unit test framework
- - t7300: work around platform-specific behaviour with long paths on MinGW
- - t5500, t5601: skip tests which exercise paths with '[::1]' on Cygwin
- - t3404: work around platform-specific behaviour on macOS 10.15
- - t1401: make invocation of tar(1) work with Win32-provided one
- - t/lib-gpg: fix setup of GNUPGHOME in MinGW
- - t/lib-gitweb: test against the build version of gitweb
- - t/test-lib: wire up NO_ICONV prerequisite
- - t/test-lib: fix quoting of TEST_RESULTS_SAN_FILE
+ . Introduce support for the Meson build system
+ . Documentation: add comparison of build systems
+ . t: allow overriding build dir
+ . t: better support for out-of-tree builds
+ . Makefile: simplify building of templates
+ . Makefile: allow "bin-wrappers/" directory to exist
+ . Makefile: consistently use PERL_PATH
+ . Makefile: consistently use @PLACEHOLDER@ to substitute
+ . Makefile: use common template for GIT-BUILD-OPTIONS
+ . Makefile: refactor generators to be PWD-independent
+ . Makefile: refactor GIT-VERSION-GEN to be reusable
+ . Makefile: extract script to massage Perl scripts
+ . Makefile: extract script to generate clar declarations
+ . http: fix build error on FreeBSD
+ . builtin/credential-cache: fix missing parameter for stub function
+ . t/unit-tests: update clar unit test framework
+ . t7300: work around platform-specific behaviour with long paths on MinGW
+ . t5500, t5601: skip tests which exercise paths with '[::1]' on Cygwin
+ . t3404: work around platform-specific behaviour on macOS 10.15
+ . t1401: make invocation of tar(1) work with Win32-provided one
+ . t/lib-gpg: fix setup of GNUPGHOME in MinGW
+ . t/lib-gitweb: test against the build version of gitweb
+ . t/test-lib: wire up NO_ICONV prerequisite
+ . t/test-lib: fix quoting of TEST_RESULTS_SAN_FILE
Build procedure update plus introduction of Mason based builds
Needs review.
+ Tentatively dropped from 'seen', for a circular dependency.
+ cf. https://github.com/git/git/actions/runs/11299216196
source: <cover.1728485139.git.ps@pks.im>
Typofixes.
- Comments?
+ Will merge to 'next'?
+ git-gui part was ejected--it should be routed via git-gui maintainer
source: <20241010151223.311719-1-algonell@gmail.com>
* tc/bundle-uri-leakfix (2024-10-10) 1 commit
- - bundle-uri: plug leak in unbundle_from_file()
+ (merged to 'next' on 2024-10-11 at 07ac214952)
+ + bundle-uri: plug leak in unbundle_from_file()
Leakfix.
- Will merge to 'next'.
+ Will merge to 'master'.
source: <20241010091249.1895960-1-toon@iotcl.com>
* xx/protocol-v2-doc-markup-fix (2024-10-10) 1 commit
- - Documentation/gitprotocol-v2.txt: fix a slight inconsistency in format
+ (merged to 'next' on 2024-10-11 at 37932adca4)
+ + Documentation/gitprotocol-v2.txt: fix a slight inconsistency in format
Docfix.
- Will merge to 'next'.
+ Will merge to 'master'.
source: <pull.1807.git.git.1728566443089.gitgitgadget@gmail.com>
---------------------------------------------------
-[Cooking]
* cw/worktree-relative (2024-10-08) 4 commits
- worktree: add test for path handling in linked worktrees
"git repack" avoids losing local objects that are reachable from
objects in a packfile fetched from a promisor remote.
- Comments?
+ Expecting a reroll.
+ cf. <xmqqa5faec4x.fsf@gitster.g>
Breaks CI.
cf. <xmqqzfnexlku.fsf@gitster.g>
source: <20241008081350.8950-1-hanyang.tony@bytedance.com>
* kh/merge-tree-doc (2024-10-09) 1 commit
- - doc: merge-tree: improve example script
+ (merged to 'next' on 2024-10-11 at b22c213d6c)
+ + doc: merge-tree: improve example script
Docfix.
- Will merge to 'next'.
+ Will merge to 'master'.
cf. <CABPp-BE=JfoZp19Va-1oF60ADBUibGDwDkFX-Zytx7A3uJ__gg@mail.gmail.com>
source: <c7e0d76e71eef56c6279e0f7e82a2d194f78d2a4.1728492617.git.code@khaugsbakk.name>
-* pb/clar-build-fix (2024-10-07) 1 commit
+* pb/clar-build-fix (2024-10-11) 1 commit
- Makefile: fix dependency for $(UNIT_TEST_DIR)/clar/clar.o
Build fix.
- Expecting a reroll.
- cf. <C05B01E0-5007-4FB9-94CD-CBE74E79F9B7@gmail.com>
- source: <pull.1810.git.1728323033680.gitgitgadget@gmail.com>
+ Will merge to 'next'.
+ source: <pull.1810.v2.git.1728667787227.gitgitgadget@gmail.com>
* ps/cache-tree-w-broken-index-entry (2024-10-07) 3 commits
Fail gracefully instead of crashing when attempting to write the
contents of a corrupt in-core index as a tree object.
- Comments?
+ Will merge to 'next'?
source: <cover.1728275640.git.ps@pks.im>
* ps/maintenance-start-crash-fix (2024-10-10) 1 commit
- - builtin/gc: fix crash when running `git maintenance start`
+ (merged to 'next' on 2024-10-11 at c54df41815)
+ + builtin/gc: fix crash when running `git maintenance start`
"git maintenance start" crashed due to an uninitialized variable
reference, which has been corrected.
- Will merge to 'next'.
+ Will merge to 'master'.
source: <a5b1433abfd84cb627efc17f52e0d644ee207bb0.1728538282.git.ps@pks.im>
source: <pull.1776.v3.git.git.1728358699.gitgitgadget@gmail.com>
-* jc/a-commands-without-the-repo (2024-10-06) 3 commits
+* jc/a-commands-without-the-repo (2024-10-11) 3 commits
- archive: remove the_repository global variable
- annotate: remove usage of the_repository global
- git: pass in repo to builtin based on setup_git_directory_gently
variable in a few of them have been removed using the new calling
convention.
- Comments?
- source: <pull.1788.v3.git.git.1728099043.gitgitgadget@gmail.com>
+ Will merge to 'next'?
+ source: <pull.1788.v4.git.git.1728594828.gitgitgadget@gmail.com>
* ej/cat-file-remote-object-info (2024-09-27) 6 commits
"git cat-file --batch" and friends can optionally ask a remote
server about objects it does not have.
- Comments?
+ Needs review.
source: <20240926013856.35527-1-eric.peijian@gmail.com>
source: <20240802073143.56731-1-hanyang.tony@bytedance.com>
-* jc/breaking-changes-early-adopter-option (2024-09-19) 1 commit
+* jc/breaking-changes-early-adopter-option (2024-10-11) 1 commit
- BreakingChanges: early adopter option
Describe the policy to introduce breaking changes.
- Comments?
- source: <xmqq7cb77810.fsf@gitster.g>
+ Needs review.
+ source: <xmqq1q0mcnt8.fsf@gitster.g>
* jc/strbuf-commented-something (2024-09-12) 2 commits
remotes it uses, so that the server side can omit objects that the
client can lazily obtain from these other promissor remotes.
- Comments?
+ Comments? I got an impression that this is premature without
+ finishing the discussion on a larger picture.
+ cf. <ZvpZv_fed_su4w2-@pks.im>
source: <20240910163000.1985723-1-christian.couder@gmail.com>