What's cooking (2024/07 #02)

This commit is contained in:
Junio C Hamano 2024-07-08 15:58:48 -07:00
parent 22684c295d
commit dee57cc9f0

View File

@ -1,10 +1,10 @@
To: git@vger.kernel.org
Subject: What's cooking in git.git (Jul 2024, #01; Tue, 2)
X-master-at: 06e570c0dfb2a2deb64d217db78e2ec21672f558
X-next-at: 49e7a77208d3c1ef14056111881a0b2281e7abbe
Subject: What's cooking in git.git (Jul 2024, #02; Mon, 8)
X-master-at: 557ae147e6cdc9db121269b058c757ac5092f9c9
X-next-at: 0f21945a48084c71d64695aac932748af8ec35cc
Bcc: lwn@lwn.net, gitster@pobox.com
What's cooking in git.git (Jul 2024, #01; Tue, 2)
What's cooking in git.git (Jul 2024, #02; Mon, 8)
--------------------------------------------------
Here are the topics that have been cooking in my tree. Commits
@ -48,214 +48,257 @@ Release tarballs are available at:
--------------------------------------------------
[Graduated to 'master']
* ew/cat-file-unbuffered-tests (2024-06-20) 2 commits
(merged to 'next' on 2024-06-24 at d605297495)
+ t1006: ensure cat-file info isn't buffered by default
+ Git.pm: use array in command_bidi_pipe example
* db/date-underflow-fix (2024-06-25) 2 commits
(merged to 'next' on 2024-06-26 at 8074493d4e)
+ date: detect underflow/overflow when parsing dates with timezone offset
+ t0006: simplify prerequisites
The output from "git cat-file --batch-check" and "--batch-command
(info)" should not be unbuffered, for which some tests have been
added.
source: <20240617104326.3522535-1-e@80x24.org>
source: <20240618213041.M462972@dcvr>
date parser updates to be more careful about underflowing epoch
based timestamp.
source: <20240625231248.4070257-1-gitster@pobox.com>
* ew/object-convert-leakfix (2024-06-24) 1 commit
(merged to 'next' on 2024-06-25 at f87bf4a18f)
+ object-file: fix leak on conversion failure
* ds/sparse-lstat-caching (2024-06-28) 5 commits
(merged to 'next' on 2024-06-28 at 9efaea181d)
+ sparse-index: improve lstat caching of sparse paths
+ sparse-index: count lstat() calls
+ sparse-index: use strbuf in path_found()
+ sparse-index: refactor path_found()
+ sparse-checkout: refactor skip worktree retry logic
Leakfix.
source: <20240622043648.M78681@dcvr>
The code to deal with modified paths that are out-of-cone in a
sparsely checked out working tree has been optimized.
cf. <CABPp-BFd7Bk68Omdao5LS0sP5bK1WQ7V6dodB5x8EsncNARxNA@mail.gmail.com>
source: <pull.1754.v3.git.1719578605.gitgitgadget@gmail.com>
* jc/fuzz-sans-curl (2024-06-21) 1 commit
(merged to 'next' on 2024-06-25 at 80f85c6e4c)
+ fuzz: minimum fuzzers environment lacks libcURL
* jc/archive-prefix-with-add-virtual-file (2024-06-26) 1 commit
(merged to 'next' on 2024-06-26 at da3ae88d56)
+ archive: document that --add-virtual-file takes full path
CI job to build minimum fuzzers learned to pass NO_CURL=NoThanks to
the build procedure, as its build environment does not offer, or
the rest of the build needs, anything cURL.
source: <xmqqwmmhimxx.fsf@gitster.g>
"git archive --add-virtual-file=<path>:<contents>" never paid
attention to the --prefix=<prefix> option but the documentation
said it would. The documentation has been corrected.
source: <xmqq5xubfjuu.fsf_-_@gitster.g>
* jk/remote-wo-url (2024-06-14) 11 commits
(merged to 'next' on 2024-06-25 at f2b75a3507)
+ remote: drop checks for zero-url case
+ remote: always require at least one url in a remote
+ t5801: test remote.*.vcs config
+ t5801: make remote-testgit GIT_DIR setup more robust
+ remote: allow resetting url list
+ config: document remote.*.url/pushurl interaction
+ remote: simplify url/pushurl selection
+ remote: use strvecs to store remote url/pushurl
+ remote: transfer ownership of memory in add_url(), etc
+ remote: refactor alias_url() memory ownership
+ archive: fix check for missing url
* ps/leakfixes-more (2024-06-11) 30 commits
(merged to 'next' on 2024-06-27 at 9550a05068)
+ builtin/blame: fix leaking ignore revs files
+ builtin/blame: fix leaking prefixed paths
+ blame: fix leaking data for blame scoreboards
+ line-range: plug leaking find functions
+ merge: fix leaking merge bases
+ builtin/merge: fix leaking `struct cmdnames` in `get_strategy()`
+ sequencer: fix memory leaks in `make_script_with_merges()`
+ builtin/clone: plug leaking HEAD ref in `wanted_peer_refs()`
+ apply: fix leaking string in `match_fragment()`
+ sequencer: fix leaking string buffer in `commit_staged_changes()`
+ commit: fix leaking parents when calling `commit_tree_extended()`
+ config: fix leaking "core.notesref" variable
+ rerere: fix various trivial leaks
+ builtin/stash: fix leak in `show_stash()`
+ revision: free diff options
+ builtin/log: fix leaking commit list in git-cherry(1)
+ merge-recursive: fix memory leak when finalizing merge
+ builtin/merge-recursive: fix leaking object ID bases
+ builtin/difftool: plug memory leaks in `run_dir_diff()`
+ object-name: free leaking object contexts
+ builtin/rev-list: fix leaking bitmap index when calculating disk usage
+ notes: fix memory leak when pruning notes
+ revision: fix leaking display notes
+ merge-recursive: fix leaking rename conflict info
+ biultin/rev-parse: fix memory leaks in `--parseopt` mode
+ bundle: plug leaks in `create_bundle()`
+ notes-utils: free note trees when releasing copied notes
+ parse-options: fix leaks for users of OPT_FILENAME
+ revision: fix memory leak when reversing revisions
+ Merge branch 'ps/leakfixes' into ps/leakfixes-more
Memory ownership rules for the in-core representation of
remote.*.url configuration values have been straightened out, which
resulted in a few leak fixes and code clarification.
source: <20240614102439.GA222287@coredump.intra.peff.net>
More memory leaks have been plugged.
cf. <CAOLa=ZRBrR5X1bQFAEqM3Ovx5G=J9aqdyD2XKrGT9s6j1jEnnQ@mail.gmail.com>
source: <cover.1718095906.git.ps@pks.im>
* ps/use-the-repository (2024-06-14) 22 commits
(merged to 'next' on 2024-06-24 at ca97784ba8)
+ hex: guard declarations with `USE_THE_REPOSITORY_VARIABLE`
+ t/helper: remove dependency on `the_repository` in "proc-receive"
+ t/helper: fix segfault in "oid-array" command without repository
+ t/helper: use correct object hash in partial-clone helper
+ compat/fsmonitor: fix socket path in networked SHA256 repos
+ replace-object: use hash algorithm from passed-in repository
+ protocol-caps: use hash algorithm from passed-in repository
+ oidset: pass hash algorithm when parsing file
+ http-fetch: don't crash when parsing packfile without a repo
+ hash-ll: merge with "hash.h"
+ refs: avoid include cycle with "repository.h"
+ global: introduce `USE_THE_REPOSITORY_VARIABLE` macro
+ hash: require hash algorithm in `empty_tree_oid_hex()`
+ hash: require hash algorithm in `is_empty_{blob,tree}_oid()`
+ hash: make `is_null_oid()` independent of `the_repository`
+ hash: convert `oidcmp()` and `oideq()` to compare whole hash
+ global: ensure that object IDs are always padded
+ hash: require hash algorithm in `oidread()` and `oidclr()`
+ hash: require hash algorithm in `hasheq()`, `hashcmp()` and `hashclr()`
+ hash: drop (mostly) unused `is_empty_{blob,tree}_sha1()` functions
+ Merge branch 'gt/unit-test-oidtree' into ps/use-the-repository
+ Merge branch 'ps/ref-storage-migration' into ps/use-the-repository
* rj/pager-die-upon-exec-failure (2024-06-25) 1 commit
(merged to 'next' on 2024-06-26 at bfb6361ca8)
+ pager: die when paging to non-existing command
A CPP macro USE_THE_REPOSITORY_VARIABLE is introduced to help
transition the codebase to rely less on the availability of the
singleton the_repository instance.
source: <cover.1718347699.git.ps@pks.im>
When GIT_PAGER failed to spawn, depending on the code path taken,
we failed immediately (correct) or just spew the payload to the
standard output (incorrect). The code now always fail immediately
when GIT_PAGER fails.
source: <392deded-9eb2-42fa-b6f9-54c22d3ffd33@gmail.com>
* rb/build-options-w-lib-versions (2024-06-21) 3 commits
(merged to 'next' on 2024-06-25 at e20656d61f)
+ version: teach --build-options to reports zlib version information
+ version: teach --build-options to reports libcurl version information
(merged to 'next' on 2024-06-20 at b75df251ae)
+ version: --build-options reports OpenSSL version information
* ss/doc-eol-attr-fix (2024-06-24) 1 commit
(merged to 'next' on 2024-06-26 at 6b96672a5f)
+ doc: fix case error of eol attribute in example
"git version --build-options" reports the version information of
OpenSSL and other libraries (if used) in the build.
source: <20240619172421.33548-1-randall.becker@nexbridge.ca>
source: <20240621180947.64419-1-randall.becker@nexbridge.ca>
Doc update.
source: <pull.1736.git.git.1719178817386.gitgitgadget@gmail.com>
* rs/diff-color-moved-w-no-ext-diff-fix (2024-06-24) 1 commit
(merged to 'next' on 2024-06-25 at 73f48ab9a9)
+ diff: allow --color-moved with --no-ext-diff
* tb/path-filter-fix (2024-06-25) 16 commits
(merged to 'next' on 2024-06-27 at a82d734201)
+ bloom: introduce `deinit_bloom_filters()`
+ commit-graph: reuse existing Bloom filters where possible
+ object.h: fix mis-aligned flag bits table
+ commit-graph: new Bloom filter version that fixes murmur3
+ commit-graph: unconditionally load Bloom filters
+ bloom: prepare to discard incompatible Bloom filters
+ bloom: annotate filters with hash version
+ repo-settings: introduce commitgraph.changedPathsVersion
+ t4216: test changed path filters with high bit paths
+ t/helper/test-read-graph: implement `bloom-filters` mode
+ bloom.h: make `load_bloom_filter_from_graph()` public
+ t/helper/test-read-graph.c: extract `dump_graph_info()`
+ gitformat-commit-graph: describe version 2 of BDAT
+ commit-graph: ensure Bloom filters are read with consistent settings
+ revision.c: consult Bloom filters for root commits
+ t/t4216-log-bloom.sh: harden `test_bloom_filters_not_used()`
"git diff --no-ext-diff" when diff.external is configured ignored
the "--color-moved" option.
source: <fee1815c-80bb-42a4-97f3-d3f8e9b3a6ca@web.de>
The Bloom filter used for path limited history traversal was broken
on systems whose "char" is unsigned; update the implementation and
bump the format version to 2.
source: <cover.1719333276.git.me@ttaylorr.com>
* xx/bundie-uri-fixes (2024-06-20) 3 commits
(merged to 'next' on 2024-06-27 at 2045d9dbc2)
+ unbundle: extend object verification for fetches
+ fetch-pack: expose fsckObjects configuration logic
+ bundle-uri: verify oid before writing refs
When bundleURI interface fetches multiple bundles, Git failed to
take full advantage of all bundles and ended up slurping duplicated
objects.
source: <pull.1730.v8.git.1718770053.gitgitgadget@gmail.com>
--------------------------------------------------
[New Topics]
* as/pathspec-h-typofix (2024-07-01) 1 commit
(merged to 'next' on 2024-07-02 at ae7cee4189)
+ pathspec: fix typo "glossary-context.txt" -> "glossary-content.txt"
* jc/checkout-no-op-switch-errors (2024-07-02) 1 commit
- checkout: special case error messages during noop switching
Typofix.
"git checkout --ours" (no other arguments) complained that the
option is incompatible with branch switching, which is technically
correct, but found confusing by some users. It now says that the
user needs to give pathspec to specify what paths to checkout.
Needs review.
source: <xmqqikxnqzz4.fsf@gitster.g>
* jc/disable-push-nego-for-deletion (2024-07-02) 1 commit
(merged to 'next' on 2024-07-08 at 18411fb8ac)
+ push: avoid showing false negotiation errors
"git push" that pushes only deletion gave an unnecessary and
harmless error message when push negotiation is configured, which
has been corrected.
Will merge to 'master'.
source: <20240629193137.54037-1-abhijeet.nkt@gmail.com>
source: <xmqqo77fr2h0.fsf@gitster.g>
* gt/unit-test-oidmap (2024-07-01) 1 commit
- t: migrate helper/test-oidmap.c to unit-tests/t-oidmap.c
* bc/gitfaq-more (2024-07-03) 4 commits
- doc: mention that proxies must be completely transparent
- gitfaq: add entry about syncing working trees
- gitfaq: give advice on using eol attribute in gitattributes
- gitfaq: add documentation on proxies
An existing test of oidmap API has been rewritten with the
A handful of entries are added to the GitFAQ document.
Expecting a (hopefully small and final) reroll.
cf. <ZocPrtrOVTqSeUTY@tapette.crustytoothpaste.net>
source: <20240704003818.750223-1-sandals@crustytoothpaste.net>
* cp/unit-test-reftable-merged (2024-07-03) 5 commits
- t-reftable-merged: add test for REFTABLE_FORMAT_ERROR
- t-reftable-merged: use reftable_ref_record_equal to compare ref records
- t-reftable-merged: add tests for reftable_merged_table_max_update_index
- t: harmonize t-reftable-merged.c with coding guidelines
- t: move reftable/merged_test.c to the unit testing framework
Another reftable test has been ported to use the unit test framework.
Expecting a (hopefully small and final) reroll.
cf. <CAOLa=ZSTb-kKiGHkGJwSgx3acxcfFe_+KGW=p7O7B7=CgeX7rw@mail.gmail.com>
source: <20240703171131.3929-1-chandrapratap3519@gmail.com>
* ds/advice-sparse-index-expansion (2024-07-08) 1 commit
- advice: warn when sparse index expands
A new warning message is issued when a command has to expand a
sparse index to handle working tree cruft that are outside of the
sparse checkout.
Will merge to 'next'?
source: <pull.1756.v2.git.1720448038745.gitgitgadget@gmail.com>
* am/gitweb-feed-use-committer-date (2024-07-07) 1 commit
(merged to 'next' on 2024-07-08 at 65215ab842)
+ gitweb: rss/atom change published/updated date to committer date
GitWeb update to use committer date consistently in rss/atom feeds.
Will merge to 'master'.
source: <20240707184813.33166-1-080ariel@gmail.com>
* rs/clang-format-updates (2024-07-06) 1 commit
(merged to 'next' on 2024-07-08 at d2b5b41844)
+ clang-format: include kh_foreach* macros in ForEachMacros
Custom control structures we invented more recently have been
taught to the clang-format file.
Will merge to 'master'.
source: <4e7893f5-2dd9-46cf-8a64-cf780f4e1730@web.de>
* rs/t-strvec-use-test-msg (2024-07-06) 1 commit
(merged to 'next' on 2024-07-08 at c28c2553de)
+ t-strvec: use test_msg()
Unit test clean-up.
Will merge to 'master'.
source: <983be396-f47c-4573-8c33-af8367f8ddbe@web.de>
* tb/dev-build-pedantic-fix (2024-07-06) 1 commit
(merged to 'next' on 2024-07-08 at 7f34cc6c5b)
+ config.mak.dev: fix typo when enabling -Wpedantic
Developer build procedure fix.
Will merge to 'master'.
source: <cbc9446b1b0f2453b96aa9c0d89b9ec086a619bd.1720205457.git.me@ttaylorr.com>
* gt/unit-test-hashmap (2024-07-08) 1 commit
- t: port helper/test-hashmap.c to unit-tests/t-hashmap.c
An existing test of hashmap API has been rewritten with the
unit-test framework.
Will merge to 'next'?
source: <20240628122030.41554-1-shyamthakkar001@gmail.com>
Needs review.
source: <20240708161641.10335-2-shyamthakkar001@gmail.com>
* jk/test-body-in-here-doc (2024-07-01) 2 commits
- t: convert some here-doc test bodies
- test-lib: allow test snippets as here-docs
* ri/doc-show-branch-fix (2024-07-08) 1 commit
(merged to 'next' on 2024-07-08 at efcb154dfe)
+ doc: fix the max number of branches shown by "show-branch"
The test framework learns to take the test body not as a single
string but as a here-document.
May need a matching change to shell script linter.
cf. <CAPig+cQdioTBinkacLFb7yktm168oB+qyP9MpZtTRE=1aBz5yg@mail.gmail.com>
source: <20240701220815.GA20293@coredump.intra.peff.net>
* rj/t0612-no-longer-leaks (2024-07-01) 1 commit
- t0612: mark as leak-free
A test that no longer leaks has been marked as such.
Will merge to 'next'.
source: <86427b9e-9574-4e61-890a-691779a8da82@gmail.com>
* rj/t0613-no-longer-leaks (2024-07-01) 1 commit
- t0613: mark as leak-free
A test that no longer leaks has been marked as such.
Will merge to 'next'.
source: <23d41343-54fd-46c6-9d78-369e8009fa0b@gmail.com>
* rj/test-sanitize-leak-log-fix (2024-07-01) 1 commit
- test-lib: fix GIT_TEST_SANITIZE_LEAK_LOG
Tests that use GIT_TEST_SANITIZE_LEAK_LOG feature got their exit
status inverted, which has been corrected.
Will merge to 'next'?
source: <f4ae6e2a-218a-419c-b6c4-59a08be247a0@gmail.com>
* rs/simplify-submodule-helper-super-prefix-invocation (2024-07-01) 1 commit
(merged to 'next' on 2024-07-02 at 06e1677920)
+ submodule--helper: use strvec_pushf() for --super-prefix
Code clean-up.
Docfix.
Will merge to 'master'.
source: <fb79ebc4-5ecf-4257-ac2e-39f98db5649c@web.de>
* rs/unit-tests-test-run (2024-07-01) 6 commits
- t-strbuf: use TEST_RUN
- t-strvec: use TEST_RUN
- t-reftable-basics: use TEST_RUN
- t-ctype: use TEST_RUN
- unit-tests: add TEST_RUN
- t0080: move expected output to a file
Unit-test framework clean-up.
Will merge to 'next'?
source: <85b6b8a9-ee5f-42ab-bcbc-49976b30ef33@web.de>
* cp/unit-test-reftable-record (2024-07-02) 11 commits
- t-reftable-record: add tests for reftable_log_record_compare_key()
- t-reftable-record: add tests for reftable_ref_record_compare_name()
- t-reftable-record: add index tests for reftable_record_is_deletion()
- t-reftable-record: add obj tests for reftable_record_is_deletion()
- t-reftable-record: add log tests for reftable_record_is_deletion()
- t-reftable-record: add ref tests for reftable_record_is_deletion()
- t-reftable-record: add comparison tests for obj records
- t-reftable-record: add comparison tests for index records
- t-reftable-record: add comparison tests for ref records
- t-reftable-record: add reftable_record_cmp() tests for log records
- t: move reftable/record_test.c to the unit testing framework
A test in reftable library has been rewritten using the unit test
framework.
Will merge to 'next'.
cf. <CAOLa=ZT_x1Kf7EopU+RbBFzX3EPU5NWx6f8L9Uw=sM0MbCXDAQ@mail.gmail.com>
source: <20240702074906.5587-1-chandrapratap3519@gmail.com>
source: <pull.1757.v5.git.1720444080034.gitgitgadget@gmail.com>
--------------------------------------------------
[Stalled]
@ -274,24 +317,24 @@ Release tarballs are available at:
source: <20240612130217.8877-1-chandrapratap3519@gmail.com>
* sj/ref-fsck (2024-07-01) 11 commits
* sj/ref-fsck (2024-07-03) 9 commits
- fsck: add ref content check for files backend
- fsck: add ref name check for files backend
- files-backend: add unified interface for refs scanning
- builtin/fsck: add `git-refs verify` child process
- builtin/refs: add verify subcommand
- refs: set up ref consistency check infrastructure
- fsck: add "fsck_refs_options" initialization macros
- fsck: add refs-related options and error report function
- fsck: add a unified interface for reporting fsck messages
- fsck: add "fsck_refs_options" into "fsck_options"
- fsck: rename "skiplist" to "oid_skiplist"
- fsck: add "fsck_objects_options" to hold objects-related options
"git fsck" infrastructure has been taught to also check the sanity
of the ref database, in addition to the object database.
Needs review.
source: <ZoLHtmOKTfxMSxvw@ArchLinux>
cf. <ysrjjyksfwto35ug7o6xbgbu53vvjso6nov3u2q6vvdprolqwh@vjhcc4x45j7t>
cf. <adijctr2gmmyydpnnrmnu5p5n7mambfrd2ylqm6jtmvv2jdlxo@fbmhti7b4tks>
source: <ZoVX6sn2C9VIeZ38@ArchLinux>
* cp/unit-test-reftable-pq (2024-06-14) 7 commits
@ -388,24 +431,126 @@ Release tarballs are available at:
--------------------------------------------------
[Cooking]
* ss/doc-eol-attr-fix (2024-06-24) 1 commit
(merged to 'next' on 2024-06-26 at 6b96672a5f)
+ doc: fix case error of eol attribute in example
* as/pathspec-h-typofix (2024-07-01) 1 commit
(merged to 'next' on 2024-07-02 at ae7cee4189)
+ pathspec: fix typo "glossary-context.txt" -> "glossary-content.txt"
Doc update.
Typofix.
Will merge to 'master'.
source: <pull.1736.git.git.1719178817386.gitgitgadget@gmail.com>
source: <20240629193137.54037-1-abhijeet.nkt@gmail.com>
* gt/unit-test-oidmap (2024-07-03) 1 commit
(merged to 'next' on 2024-07-08 at 4e7394fc67)
+ t: migrate helper/test-oidmap.c to unit-tests/t-oidmap.c
An existing test of oidmap API has been rewritten with the
unit-test framework.
Will merge to 'master'.
source: <20240703062958.23262-2-shyamthakkar001@gmail.com>
* jk/test-body-in-here-doc (2024-07-01) 2 commits
. t: convert some here-doc test bodies
. test-lib: allow test snippets as here-docs
The test framework learns to take the test body not as a single
string but as a here-document.
May need a matching change to shell script linter.
cf. <CAPig+cQdioTBinkacLFb7yktm168oB+qyP9MpZtTRE=1aBz5yg@mail.gmail.com>
cf. <20240706060143.GD698153@coredump.intra.peff.net>
source: <20240701220815.GA20293@coredump.intra.peff.net>
* rj/t0612-no-longer-leaks (2024-07-01) 1 commit
(merged to 'next' on 2024-07-08 at a63b027a20)
+ t0612: mark as leak-free
A test that no longer leaks has been marked as such.
Will merge to 'master'.
source: <86427b9e-9574-4e61-890a-691779a8da82@gmail.com>
* rj/t0613-no-longer-leaks (2024-07-01) 1 commit
(merged to 'next' on 2024-07-08 at b6149c3032)
+ t0613: mark as leak-free
A test that no longer leaks has been marked as such.
Will merge to 'master'.
source: <23d41343-54fd-46c6-9d78-369e8009fa0b@gmail.com>
* rj/test-sanitize-leak-log-fix (2024-07-01) 1 commit
(merged to 'next' on 2024-07-08 at c7ee7d03e1)
+ test-lib: fix GIT_TEST_SANITIZE_LEAK_LOG
Tests that use GIT_TEST_SANITIZE_LEAK_LOG feature got their exit
status inverted, which has been corrected.
Will merge to 'master'.
source: <f4ae6e2a-218a-419c-b6c4-59a08be247a0@gmail.com>
* rs/simplify-submodule-helper-super-prefix-invocation (2024-07-01) 1 commit
(merged to 'next' on 2024-07-02 at 06e1677920)
+ submodule--helper: use strvec_pushf() for --super-prefix
Code clean-up.
Will merge to 'master'.
source: <fb79ebc4-5ecf-4257-ac2e-39f98db5649c@web.de>
* rs/unit-tests-test-run (2024-07-01) 6 commits
- t-strbuf: use TEST_RUN
- t-strvec: use TEST_RUN
- t-reftable-basics: use TEST_RUN
- t-ctype: use TEST_RUN
- unit-tests: add TEST_RUN
- t0080: move expected output to a file
Unit-test framework clean-up.
Will merge to 'next'?
source: <85b6b8a9-ee5f-42ab-bcbc-49976b30ef33@web.de>
* cp/unit-test-reftable-record (2024-07-02) 11 commits
(merged to 'next' on 2024-07-08 at b534dac338)
+ t-reftable-record: add tests for reftable_log_record_compare_key()
+ t-reftable-record: add tests for reftable_ref_record_compare_name()
+ t-reftable-record: add index tests for reftable_record_is_deletion()
+ t-reftable-record: add obj tests for reftable_record_is_deletion()
+ t-reftable-record: add log tests for reftable_record_is_deletion()
+ t-reftable-record: add ref tests for reftable_record_is_deletion()
+ t-reftable-record: add comparison tests for obj records
+ t-reftable-record: add comparison tests for index records
+ t-reftable-record: add comparison tests for ref records
+ t-reftable-record: add reftable_record_cmp() tests for log records
+ t: move reftable/record_test.c to the unit testing framework
A test in reftable library has been rewritten using the unit test
framework.
Will merge to 'master'.
cf. <CAOLa=ZT_x1Kf7EopU+RbBFzX3EPU5NWx6f8L9Uw=sM0MbCXDAQ@mail.gmail.com>
source: <20240702074906.5587-1-chandrapratap3519@gmail.com>
* as/describe-broken-refresh-index-fix (2024-06-26) 1 commit
- describe: refresh the index when 'broken' flag is used
(merged to 'next' on 2024-07-08 at 2307a4a4ae)
+ describe: refresh the index when 'broken' flag is used
"git describe --dirty --broken" forgot to refresh the index before
seeing if there is any chang, ("git describe --dirty" correctly did
so), which has been corrected.
Will merge to 'next'?
Will merge to 'master'.
source: <20240626190801.68472-1-abhijeet.nkt@gmail.com>
@ -420,81 +565,27 @@ Release tarballs are available at:
* jk/tests-without-dns (2024-06-26) 3 commits
- t/lib-bundle-uri: use local fake bundle URLs
- t5551: do not confirm that bogus url cannot be used
- t5553: use local url for invalid fetch
(merged to 'next' on 2024-07-08 at 21af592457)
+ t/lib-bundle-uri: use local fake bundle URLs
+ t5551: do not confirm that bogus url cannot be used
+ t5553: use local url for invalid fetch
Test suite has been taught not to unnecessarily rely on DNS failing
a bogus external name.
Will merge to 'master'.
source: <20240626205355.GA1009060@coredump.intra.peff.net>
* bc/http-proactive-auth (2024-06-28) 1 commit
* bc/http-proactive-auth (2024-07-03) 1 commit
- http: allow authenticating proactively
source: <20240628002742.3421311-2-sandals@crustytoothpaste.net>
The http transport can now be told to send request with
authentication material without first getting a 401 response.
* ps/leakfixes-more (2024-06-11) 30 commits
(merged to 'next' on 2024-06-27 at 9550a05068)
+ builtin/blame: fix leaking ignore revs files
+ builtin/blame: fix leaking prefixed paths
+ blame: fix leaking data for blame scoreboards
+ line-range: plug leaking find functions
+ merge: fix leaking merge bases
+ builtin/merge: fix leaking `struct cmdnames` in `get_strategy()`
+ sequencer: fix memory leaks in `make_script_with_merges()`
+ builtin/clone: plug leaking HEAD ref in `wanted_peer_refs()`
+ apply: fix leaking string in `match_fragment()`
+ sequencer: fix leaking string buffer in `commit_staged_changes()`
+ commit: fix leaking parents when calling `commit_tree_extended()`
+ config: fix leaking "core.notesref" variable
+ rerere: fix various trivial leaks
+ builtin/stash: fix leak in `show_stash()`
+ revision: free diff options
+ builtin/log: fix leaking commit list in git-cherry(1)
+ merge-recursive: fix memory leak when finalizing merge
+ builtin/merge-recursive: fix leaking object ID bases
+ builtin/difftool: plug memory leaks in `run_dir_diff()`
+ object-name: free leaking object contexts
+ builtin/rev-list: fix leaking bitmap index when calculating disk usage
+ notes: fix memory leak when pruning notes
+ revision: fix leaking display notes
+ merge-recursive: fix leaking rename conflict info
+ biultin/rev-parse: fix memory leaks in `--parseopt` mode
+ bundle: plug leaks in `create_bundle()`
+ notes-utils: free note trees when releasing copied notes
+ parse-options: fix leaks for users of OPT_FILENAME
+ revision: fix memory leak when reversing revisions
+ Merge branch 'ps/leakfixes' into ps/leakfixes-more
More memory leaks have been plugged.
Will merge to 'master'.
cf. <CAOLa=ZRBrR5X1bQFAEqM3Ovx5G=J9aqdyD2XKrGT9s6j1jEnnQ@mail.gmail.com>
source: <cover.1718095906.git.ps@pks.im>
* db/date-underflow-fix (2024-06-25) 2 commits
(merged to 'next' on 2024-06-26 at 8074493d4e)
+ date: detect underflow/overflow when parsing dates with timezone offset
+ t0006: simplify prerequisites
date parser updates to be more careful about underflowing epoch
based timestamp.
Will merge to 'master'.
source: <20240625231248.4070257-1-gitster@pobox.com>
* jc/archive-prefix-with-add-virtual-file (2024-06-26) 1 commit
(merged to 'next' on 2024-06-26 at da3ae88d56)
+ archive: document that --add-virtual-file takes full path
"git archive --add-virtual-file=<path>:<contents>" never paid
attention to the --prefix=<prefix> option but the documentation
said it would. The documentation has been corrected.
Will merge to 'master'.
source: <xmqq5xubfjuu.fsf_-_@gitster.g>
Getting there.
cf. <xmqqo77d7lkr.fsf@gitster.g>
source: <20240704001748.746429-2-sandals@crustytoothpaste.net>
* jc/patch-id (2024-06-21) 5 commits
@ -512,36 +603,8 @@ Release tarballs are available at:
source: <20240621231826.3280338-1-gitster@pobox.com>
* ds/sparse-lstat-caching (2024-06-28) 5 commits
(merged to 'next' on 2024-06-28 at 9efaea181d)
+ sparse-index: improve lstat caching of sparse paths
+ sparse-index: count lstat() calls
+ sparse-index: use strbuf in path_found()
+ sparse-index: refactor path_found()
+ sparse-checkout: refactor skip worktree retry logic
The code to deal with modified paths that are out-of-cone in a
sparsely checked out working tree has been optimized.
Will merge to 'master'.
cf. <CABPp-BFd7Bk68Omdao5LS0sP5bK1WQ7V6dodB5x8EsncNARxNA@mail.gmail.com>
source: <pull.1754.v3.git.1719578605.gitgitgadget@gmail.com>
* rj/pager-die-upon-exec-failure (2024-06-25) 1 commit
(merged to 'next' on 2024-06-26 at bfb6361ca8)
+ pager: die when paging to non-existing command
When GIT_PAGER failed to spawn, depending on the code path taken,
we failed immediately (correct) or just spew the payload to the
standard output (incorrect). The code now always fail immediately
when GIT_PAGER fails.
Will merge to 'master'.
source: <392deded-9eb2-42fa-b6f9-54c22d3ffd33@gmail.com>
* en/ort-inner-merge-error-fix (2024-06-20) 7 commits
* en/ort-inner-merge-error-fix (2024-07-06) 8 commits
- merge-ort: fix missing early return
(merged to 'next' on 2024-06-28 at a85fe270e6)
+ merge-ort: convert more error() cases to path_msg()
+ merge-ort: upon merge abort, only show messages causing the abort
@ -554,47 +617,5 @@ Release tarballs are available at:
The "ort" merge backend saw one bugfix for a crash that happens
when inner merge gets killed, and assorted code clean-ups.
Will merge to 'master'.
cf. <3f1e155f-f559-42ac-9454-8ddcf7873f48@gmail.com>
Will merge to 'next' and then to 'master'.
source: <pull.1748.v2.git.1718766019.gitgitgadget@gmail.com>
* xx/bundie-uri-fixes (2024-06-20) 3 commits
(merged to 'next' on 2024-06-27 at 2045d9dbc2)
+ unbundle: extend object verification for fetches
+ fetch-pack: expose fsckObjects configuration logic
+ bundle-uri: verify oid before writing refs
When bundleURI interface fetches multiple bundles, Git failed to
take full advantage of all bundles and ended up slurping duplicated
objects.
Will merge to 'master'.
source: <pull.1730.v8.git.1718770053.gitgitgadget@gmail.com>
* tb/path-filter-fix (2024-06-25) 16 commits
(merged to 'next' on 2024-06-27 at a82d734201)
+ bloom: introduce `deinit_bloom_filters()`
+ commit-graph: reuse existing Bloom filters where possible
+ object.h: fix mis-aligned flag bits table
+ commit-graph: new Bloom filter version that fixes murmur3
+ commit-graph: unconditionally load Bloom filters
+ bloom: prepare to discard incompatible Bloom filters
+ bloom: annotate filters with hash version
+ repo-settings: introduce commitgraph.changedPathsVersion
+ t4216: test changed path filters with high bit paths
+ t/helper/test-read-graph: implement `bloom-filters` mode
+ bloom.h: make `load_bloom_filter_from_graph()` public
+ t/helper/test-read-graph.c: extract `dump_graph_info()`
+ gitformat-commit-graph: describe version 2 of BDAT
+ commit-graph: ensure Bloom filters are read with consistent settings
+ revision.c: consult Bloom filters for root commits
+ t/t4216-log-bloom.sh: harden `test_bloom_filters_not_used()`
The Bloom filter used for path limited history traversal was broken
on systems whose "char" is unsigned; update the implementation and
bump the format version to 2.
Will merge to 'master'.
source: <cover.1719333276.git.me@ttaylorr.com>