From: Junio C Hamano Date: Sat, 29 Jun 2024 00:17:32 +0000 (-0700) Subject: What's cooking (2024/06 #09) X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0bc40cbe17491d13fd225772abce1c45360e259a;p=thirdparty%2Fgit.git What's cooking (2024/06 #09) --- diff --git a/whats-cooking.txt b/whats-cooking.txt index 3149b3bd49..9be27735cb 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 (Jun 2024, #08; Mon, 24) -X-master-at: 1e1586e4ed626bde864339c10570bc0e73f0ab97 -X-next-at: ab0bdd149968b12afd2b3f9286d175ab2112b72f +Subject: What's cooking in git.git (Jun 2024, #09; Fri, 28) +X-master-at: 790a17fb19d6eadd16c52e5d284a5c6921744766 +X-next-at: a6f4998532677456b59359a9ed4ffb96862a90a1 Bcc: lwn@lwn.net, gitster@pobox.com -What's cooking in git.git (Jun 2024, #08; Mon, 24) +What's cooking in git.git (Jun 2024, #09; Fri, 28) -------------------------------------------------- Here are the topics that have been cooking in my tree. Commits @@ -48,187 +48,12 @@ Release tarballs are available at: -------------------------------------------------- [Graduated to 'master'] -* jc/add-i-retire-usebuiltin-config (2024-06-05) 1 commit - (merged to 'next' on 2024-06-17 at e1fc71db3a) - + add-i: finally retire add.interactive.useBuiltin - - For over a year, setting add.interactive.useBuiltin configuration - variable did nothing but giving a "this does not do anything" - warning. Finally remove it. - source: - - -* jc/no-default-attr-tree-in-bare (2024-06-05) 1 commit - (merged to 'next' on 2024-06-17 at 6bfacc9102) - + attr.tree: HEAD:.gitattributes is no longer the default in a bare repo - - Earlier we stopped using the tree of HEAD as the default source of - attributes in a bare repository, but failed to document it. This - has been corrected. - source: - - -* jc/worktree-git-path (2024-06-08) 1 commit - (merged to 'next' on 2024-06-17 at a87c318e45) - + worktree_git_path(): move the declaration to path.h - - Code cleanup. - source: <20240608183901.2084546-1-gitster@pobox.com> - - -* kl/attr-read-attr-fromindex-msan-workaround (2024-06-17) 1 commit - (merged to 'next' on 2024-06-18 at eebafb2d71) - + attr: fix msan issue in read_attr_from_index - - Code clarification to avoid an appearance of using an uninitialized - variable. - source: - - -* tb/commit-graph-use-tempfile (2024-06-07) 2 commits - (merged to 'next' on 2024-06-17 at e0baebe6b3) - + server-info.c: remove temporary info files on exit - + commit-graph.c: remove temporary graph layers on exit - - "git update-server-info" and "git commit-graph --write" have been - updated to use the tempfile API to avoid leaving cruft after - failing. - source: - - -* tb/precompose-getcwd (2024-05-31) 1 commit - (merged to 'next' on 2024-06-17 at 7596abec9f) - + macOS: ls-files path fails if path of workdir is NFD - - We forgot to normalize the result of getcwd() to NFC on macOS where - all other paths are normalized, which has been corrected. This still - does not address the case where core.precomposeUnicode configuration - is not defined globally. - source: <20240531193156.28046-1-tboegi@web.de> - - -* tb/pseudo-merge-reachability-bitmap (2024-06-14) 27 commits - (merged to 'next' on 2024-06-14 at 447d99e1c3) - + pack-bitmap.c: ensure pseudo-merge offset reads are bounded - + Documentation/technical/bitmap-format.txt: add missing position table - (merged to 'next' on 2024-06-03 at fcaa39de12) - + t/perf: implement performance tests for pseudo-merge bitmaps - + pseudo-merge: implement support for finding existing merges - + ewah: `bitmap_equals_ewah()` - + pack-bitmap: extra trace2 information - + pack-bitmap.c: use pseudo-merges during traversal - + t/test-lib-functions.sh: support `--notick` in `test_commit_bulk()` - + pack-bitmap: implement test helpers for pseudo-merge - + ewah: implement `ewah_bitmap_popcount()` - + pseudo-merge: implement support for reading pseudo-merge commits - + pack-bitmap.c: read pseudo-merge extension - + pseudo-merge: scaffolding for reads - + pack-bitmap: extract `read_bitmap()` function - + pack-bitmap-write.c: write pseudo-merge table - + pseudo-merge: implement support for selecting pseudo-merge commits - + config: introduce `git_config_double()` - + pack-bitmap: make `bitmap_writer_push_bitmapped_commit()` public - + pack-bitmap: implement `bitmap_writer_has_bitmapped_object_id()` - + pack-bitmap-write: support storing pseudo-merge commits - + pseudo-merge.ch: initial commit - + pack-bitmap: move some initialization to `bitmap_writer_init()` - + ewah: implement `ewah_bitmap_is_subset()` - + Documentation/technical: describe pseudo-merge bitmaps format - + Documentation/gitpacking.txt: describe pseudo-merge bitmaps - + Documentation/gitpacking.txt: initial commit - + Merge branch 'tb/pack-bitmap-write-cleanups' into tb/pseudo-merge-reachability-bitmap - - The pseudo-merge reachability bitmap to help more efficient storage - of the reachability bitmap in a repository with too many refs has - been added. - source: - source: - --------------------------------------------------- -[New Topics] - -* jc/patch-id (2024-06-21) 5 commits - - patch-id: tighten code to detect the patch header - - patch-id: rewrite code that detects the beginning of a patch - - patch-id: make get_one_patchid() more extensible - - patch-id: call flush_current_id() only when needed - - t4204: patch-id supports various input format - - The patch parser in "git patch-id" has been tightened to avoid - getting confused by lines that look like a patch header in the log - message. - - Needs review. - source: <20240621231826.3280338-1-gitster@pobox.com> - - -* jc/fuzz-sans-curl (2024-06-21) 1 commit - - fuzz: minimum fuzzers environment lacks libcURL - - 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. - - Will merge to 'next'. - source: - - -* ew/object-convert-leakfix (2024-06-24) 1 commit - - object-file: fix leak on conversion failure - - Leakfix. - - Will merge to 'next'. - source: <20240622043648.M78681@dcvr> - - -* rs/diff-color-moved-w-no-ext-diff-fix (2024-06-24) 1 commit - - diff: allow --color-moved with --no-ext-diff - - "git diff --no-ext-diff" when diff.external is configured ignored - the "--color-moved" option. - - Will merge to 'next'. - source: - --------------------------------------------------- -[Cooking] - -* kz/merge-fail-early-upon-refresh-failure (2024-06-18) 1 commit - (merged to 'next' on 2024-06-20 at 01d4bdd019) - + merge: avoid write merge state when unable to write index - - When "git merge" sees that the index cannot be refreshed (e.g. due - to another process doing the same in the background), it died but - after writing MERGE_HEAD etc. files, which was useless for the - purpose to recover from the failure. - - Will merge to 'master'. - source: - - -* ds/sparse-lstat-caching (2024-06-20) 5 commits - - 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-index: 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. - - Needs review. - source: - - * jk/fetch-pack-fsck-wo-lock-pack (2024-06-20) 1 commit (merged to 'next' on 2024-06-20 at c8c41abe07) + fetch-pack: fix segfault when fscking without --lock-pack "git fetch-pack -k -k" without passing "--lock-pack" (which we never do ourselves) did not work at all, which has been corrected. - - Will merge to 'master'. source: <20240619130256.GA228005@coredump.intra.peff.net> @@ -238,8 +63,6 @@ Release tarballs are available at: A helper function shared between two tests had a copy-paste bug, which has been corrected. - - Will merge to 'master'. source: <20240619125255.GA346466@coredump.intra.peff.net> @@ -249,60 +72,77 @@ Release tarballs are available at: An unused extern declaration for mingw has been removed to prevent it from causing build failure. - - Will merge to 'master'. source: -* rb/build-options-w-lib-versions (2024-06-21) 3 commits - - 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 +* kz/merge-fail-early-upon-refresh-failure (2024-06-18) 1 commit + (merged to 'next' on 2024-06-20 at 01d4bdd019) + + merge: avoid write merge state when unable to write index - "git version --build-options" reports the version information of - OpenSSL and other libraries (if used) in the build. + When "git merge" sees that the index cannot be refreshed (e.g. due + to another process doing the same in the background), it died but + after writing MERGE_HEAD etc. files, which was useless for the + purpose to recover from the failure. + source: - Will merge to 'next' and then to 'master'. - source: <20240619172421.33548-1-randall.becker@nexbridge.ca> - source: <20240621180947.64419-1-randall.becker@nexbridge.ca> +* rs/remove-unused-find-header-mem (2024-06-20) 1 commit + (merged to 'next' on 2024-06-20 at 068c785d77) + + commit: remove find_header_mem() -* rj/pager-die-upon-exec-failure (2024-06-21) 1 commit - - pager: die when paging to non-existing command + Code clean-up. + source: <0d85712c-5beb-4a64-a7f4-797782c26694@web.de> + +-------------------------------------------------- +[New Topics] + +* 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 + + Doc update. + + Will merge to 'master'. + source: - 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. + +* as/describe-broken-refresh-index-fix (2024-06-26) 1 commit + - 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'? - source: <0df06a80-723f-4ad7-9f2e-74c8fb5b8283@gmail.com> + source: <20240626190801.68472-1-abhijeet.nkt@gmail.com> -* rs/remove-unused-find-header-mem (2024-06-20) 1 commit - (merged to 'next' on 2024-06-20 at 068c785d77) - + commit: remove find_header_mem() +* cb/send-email-sanitize-trailer-addresses (2024-06-28) 1 commit + - git-send-email: Use sanitized address when reading mbox body - Code clean-up. + Address-looking strings found on the trailer are now placed on the + Cc: list after running through sanitize_address. - Will merge to 'master'. - source: <0d85712c-5beb-4a64-a7f4-797782c26694@web.de> + Expecting a hopefully small and final reroll. + cf. + source: <20240628085018.65076-2-csokas.bence@prolan.hu> -* 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 +* 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 - The output from "git cat-file --batch-check" and "--batch-command - (info)" should not be unbuffered, for which some tests have been - added. + source: <20240626205355.GA1009060@coredump.intra.peff.net> - Will merge to 'master'. - source: <20240617104326.3522535-1-e@80x24.org> - source: <20240618213041.M462972@dcvr> +* bc/http-proactive-auth (2024-06-28) 1 commit + - http: allow authenticating proactively + + source: <20240628002742.3421311-2-sandals@crustytoothpaste.net> + +-------------------------------------------------- +[Stalled] * cp/unit-test-reftable-tree (2024-06-13) 5 commits - t-reftable-tree: improve the test for infix_walk() @@ -318,69 +158,25 @@ Release tarballs are available at: source: <20240612130217.8877-1-chandrapratap3519@gmail.com> -* 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 - - 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. - - Will merge to 'master'. - source: - - -* sj/ref-fsck (2024-06-20) 7 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 refs check interfaces to interact with fsck error levels +* sj/ref-fsck (2024-06-27) 12 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 a unified interface for reporting fsck messages + . fsck: add "fsck_refs_options" struct + . fsck: abstract common options for reusing + . fsck: use "fsck_configs" to set up configs + . fsck: rename "fsck_options" to "fsck_objects_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: - - -* en/ort-inner-merge-error-fix (2024-06-20) 7 commits - - merge-ort: convert more error() cases to path_msg() - - merge-ort: upon merge abort, only show messages causing the abort - - merge-ort: loosen commented requirements - - merge-ort: clearer propagation of failure-to-function from merge_submodule - - merge-ort: fix type of local 'clean' var in handle_content_merge () - - merge-ort: maintain expected invariant for priv member - - merge-ort: extract handling of priv member into reusable function - - The "ort" merge backend saw one bugfix for a crash that happens - when inner merge gets killed, and assorted code clean-ups. - - Needs review. - source: + source: * cp/unit-test-reftable-pq (2024-06-14) 7 commits @@ -399,53 +195,6 @@ Release tarballs are available at: source: <20240614095136.12052-1-chandrapratap3519@gmail.com> -* jc/archive-prefix-with-add-virtual-file (2024-06-14) 1 commit - - archive: document that --add-virtual-file takes full path - - "git archive --add-virtual-file=:" never paid - attention to the --prefix= option but the documentation - said it would. The documentation has been corrected. - - Waiting for comments. - source: - - -* jk/remote-wo-url (2024-06-14) 11 commits - - 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 - - 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. - - Waiting for comments. - source: <20240614102439.GA222287@coredump.intra.peff.net> - - -* db/date-underflow-fix (2024-06-13) 4 commits - - SQUASH??? skip "near the end-of-git-time" tests on 32-bit systems - - SQUASH??? t0006: simplify prerequisite - - SQUASH??? the git-end-of-time is beyond time_t on 32-bit systems - - date: detect underflow/overflow when parsing dates with timezone offset - - date parser updates to be more careful about underflowing epoch - based timestamp. - - Expecting a reroll. - cf. - cf. - source: - - * tb/incremental-midx-part-1 (2024-06-07) 19 commits - midx: implement support for writing incremental MIDX chains - t/t5313-pack-bounds-checks.sh: prepare for sub-directories @@ -495,61 +244,10 @@ Release tarballs are available at: "git mktree" has been rewritten, taking advantage of the cache-tree API. - Needs review. + Will merge to 'next'. source: -* xx/bundie-uri-fixes (2024-06-20) 3 commits - - 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 'next'? - source: - - -* ps/leakfixes-more (2024-06-11) 30 commits - - 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. - - Needs review. - source: - - * pp/add-parse-range-unit-test (2024-05-27) 1 commit - apply: add unit tests for parse_range @@ -561,19 +259,6 @@ Release tarballs are available at: source: -* ie/config-includeif-hostname (2024-03-19) 2 commits - - config: learn the "hostname:" includeIf condition - - t: add a test helper for getting hostname - - The conditional inclusion mechanism for configuration files learned - to switch on the hostname. - - Expecting a reroll. - cf. <20240319210428.GC1159535@coredump.intra.peff.net> - cf. <20240320001934.GA903718@coredump.intra.peff.net> - source: <20240319183722.211300-1-ignacio@iencinas.com> - - * 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 @@ -585,69 +270,291 @@ Release tarballs are available at: Expecting a reroll. source: +-------------------------------------------------- +[Cooking] -* bk/complete-dirname-for-am-and-format-patch (2024-01-12) 1 commit - - completion: dir-type optargs for am, format-patch +* 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 - Command line completion support (in contrib/) has been - updated for a few commands to complete directory names where a - directory name is expected. + More memory leaks have been plugged. - Expecting a reroll. - cf. <40c3a824-a961-490b-94d4-4eb23c8f713d@gmail.com> - cf. <6683f24e-7e56-489d-be2d-8afe1fc38d2b@gmail.com> - source: + Will merge to 'master'. + cf. + source: -* bk/complete-send-email (2024-01-12) 1 commit - - completion: don't complete revs when --no-format-patch +* 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 - Command line completion support (in contrib/) has been taught to - avoid offering revision names as candidates to "git send-email" when - the command is used to send pre-generated files. + date parser updates to be more careful about underflowing epoch + based timestamp. - Expecting a reroll. - cf. - source: + Will merge to 'master'. + source: <20240625231248.4070257-1-gitster@pobox.com> -* tb/path-filter-fix (2024-01-31) 16 commits - - 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()` +* 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 - 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. + 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. - Waiting for a final ack? - cf. - source: + Will merge to 'master'. + source: <20240614102439.GA222287@coredump.intra.peff.net> -* jc/rerere-cleanup (2023-08-25) 4 commits - - rerere: modernize use of empty strbuf - - rerere: try_merge() should use LL_MERGE_ERROR when it means an error - - rerere: fix comment on handle_file() helper - - rerere: simplify check_one_conflict() helper function +* 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 - Code clean-up. + "git archive --add-virtual-file=:" never paid + attention to the --prefix= option but the documentation + said it would. The documentation has been corrected. + + Will merge to 'master'. + source: + + +* jc/patch-id (2024-06-21) 5 commits + - patch-id: tighten code to detect the patch header + - patch-id: rewrite code that detects the beginning of a patch + - patch-id: make get_one_patchid() more extensible + - patch-id: call flush_current_id() only when needed + - t4204: patch-id supports various input format + + The patch parser in "git patch-id" has been tightened to avoid + getting confused by lines that look like a patch header in the log + message. + + Needs review. + source: <20240621231826.3280338-1-gitster@pobox.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 + + 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. + + Will merge to 'master'. + source: + + +* 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 + + Leakfix. + + Will merge to 'master'. + source: <20240622043648.M78681@dcvr> + + +* 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 + + "git diff --no-ext-diff" when diff.external is configured ignored + the "--color-moved" option. + + Will merge to 'master'. + source: + + +* 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. + source: + + +* 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 + + "git version --build-options" reports the version information of + OpenSSL and other libraries (if used) in the build. + + Will merge to 'master'. + source: <20240619172421.33548-1-randall.becker@nexbridge.ca> + source: <20240621180947.64419-1-randall.becker@nexbridge.ca> + + +* 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> - Not ready to be reviewed yet. - source: <20230824205456.1231371-1-gitster@pobox.com> + +* 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 + + The output from "git cat-file --batch-check" and "--batch-command + (info)" should not be unbuffered, for which some tests have been + added. + + Will merge to 'master'. + source: <20240617104326.3522535-1-e@80x24.org> + source: <20240618213041.M462972@dcvr> + + +* 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 + + 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. + + Will merge to 'master'. + source: + + +* en/ort-inner-merge-error-fix (2024-06-20) 7 commits + (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 + + merge-ort: loosen commented requirements + + merge-ort: clearer propagation of failure-to-function from merge_submodule + + merge-ort: fix type of local 'clean' var in handle_content_merge () + + merge-ort: maintain expected invariant for priv member + + merge-ort: extract handling of priv member into reusable function + + 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> + source: + + +* 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: + + +* 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: -------------------------------------------------- [Discarded] @@ -665,3 +572,53 @@ Release tarballs are available at: Expecting a reroll to work well with jk/am-retry source: <1ef0ac3a-3be5-4fc2-93f8-46610f3d1880@gmail.com> + + +* jc/rerere-cleanup (2023-08-25) 4 commits + . rerere: modernize use of empty strbuf + . rerere: try_merge() should use LL_MERGE_ERROR when it means an error + . rerere: fix comment on handle_file() helper + . rerere: simplify check_one_conflict() helper function + + Code clean-up. + + Discarded. + source: <20230824205456.1231371-1-gitster@pobox.com> + + +* ie/config-includeif-hostname (2024-03-19) 2 commits + . config: learn the "hostname:" includeIf condition + . t: add a test helper for getting hostname + + The conditional inclusion mechanism for configuration files learned + to switch on the hostname. + + Has been in the "Expecting a reroll." state for too long. + cf. <20240319210428.GC1159535@coredump.intra.peff.net> + cf. <20240320001934.GA903718@coredump.intra.peff.net> + source: <20240319183722.211300-1-ignacio@iencinas.com> + + +* bk/complete-dirname-for-am-and-format-patch (2024-01-12) 1 commit + . completion: dir-type optargs for am, format-patch + + Command line completion support (in contrib/) has been + updated for a few commands to complete directory names where a + directory name is expected. + + Has been in the "Expecting a reroll." state for too long. + cf. <40c3a824-a961-490b-94d4-4eb23c8f713d@gmail.com> + cf. <6683f24e-7e56-489d-be2d-8afe1fc38d2b@gmail.com> + source: + + +* bk/complete-send-email (2024-01-12) 1 commit + . completion: don't complete revs when --no-format-patch + + Command line completion support (in contrib/) has been taught to + avoid offering revision names as candidates to "git send-email" when + the command is used to send pre-generated files. + + Has been in the "Expecting a reroll." state for too long. + cf. + source: