{"thread":{"id":"62996","subject":"What's cooking in git.git (Feb 2025, #07; Mon, 24)","startedAt":"2025-02-25T02:47:26Z","lastAt":"2025-02-25T17:06:42Z","messageCount":3,"participants":["Junio C Hamano","Patrick Steinhardt"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"512939","messageId":"xmqq1pvm4u6c.fsf@gitster.g","threadId":"62996","inReplyTo":null,"subject":"What's cooking in git.git (Feb 2025, #07; Mon, 24)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-02-25T02:47:23Z","receivedAt":"2025-02-25T02:47:26Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Here are the topics that have been cooking in my tree.  Commits\nprefixed with '+' are in 'next' (being in 'next' is a sign that a\ntopic is stable enough to be used and are candidate to be in a\nfuture release).  Commits prefixed with '-' are only in 'seen', and\naren't considered \"accepted\" at all and may be annotated with an URL\nto a message that raises issues but they are no means exhaustive.  A\ntopic without enough support may be discarded after a long period of\nno activity (of course they can be resubmit when new interests\narise).\n\nCopies of the source code to Git live in many repositories, and the\nfollowing is a list of the ones I push into or their mirrors.  Some\nrepositories have only a subset of branches.\n\nWith maint, master, next, seen, todo:\n\n\tgit://git.kernel.org/pub/scm/git/git.git/\n\tgit://repo.or.cz/alt-git.git/\n\thttps://kernel.googlesource.com/pub/scm/git/git/\n\thttps://github.com/git/git/\n\thttps://gitlab.com/git-scm/git/\n\nWith all the integration branches and topics broken out:\n\n\thttps://github.com/gitster/git/\n\nEven though the preformatted documentation in HTML and man format\nare not sources, they are published in these repositories for\nconvenience (replace \"htmldocs\" with \"manpages\" for the manual\npages):\n\n\tgit://git.kernel.org/pub/scm/git/git-htmldocs.git/\n\thttps://github.com/gitster/git-htmldocs.git/\n\nRelease tarballs are available at:\n\n\thttps://www.kernel.org/pub/software/scm/git/\n\n--------------------------------------------------\n[Graduated to 'master']\n\n* ac/doc-http-ssl-type-config (2025-02-05) 1 commit\n  (merged to 'next' on 2025-02-13 at 4767266eb4)\n + docs: indicate http.sslCertType and sslKeyType\n\n Two configuration variables about SSL authentication material that\n weren't mentioned in the documentations are now mentioned.\n source: <20250205053856.72723-1-andrew@emailcarter.com>\n\n\n* en/doc-renormalize (2025-02-11) 1 commit\n  (merged to 'next' on 2025-02-13 at 2069f4865c)\n + doc: clarify the intent of the renormalize option in the merge machinery\n\n Doc updates.\n source: <pull.1861.git.1739307712372.gitgitgadget@gmail.com>\n\n\n* jc/doc-boolean-synonyms (2025-02-11) 1 commit\n  (merged to 'next' on 2025-02-13 at ab142d21e8)\n + doc: centrally document various ways tospell `true` and `false`\n\n Doc updates.\n source: <xmqqy0ycz9dk.fsf@gitster.g>\n\n\n* ua/update-server-info-sans-the-repository (2025-02-10) 1 commit\n  (merged to 'next' on 2025-02-13 at d4e8288c9b)\n + builtin/update-server-info: remove the_repository global variable\n\n Code clean-up.\n source: <20250210181103.3609495-1-usmanakinyemi202@gmail.com>\n\n--------------------------------------------------\n[New Topics]\n\n* ek/mingw-rename-symlink (2025-02-21) 1 commit\n  (merged to 'next' on 2025-02-24 at 8a9f3a5cdc)\n + compat/mingw: rename the symlink, not the target\n\n Symlink renaming fix.\n\n Will merge to 'master'.\n source: <pull.1864.git.1740139296483.gitgitgadget@gmail.com>\n\n\n* jk/check-mailmap-wo-name-fix (2025-02-21) 1 commit\n - mailmap: fix check-mailmap with full mailmap line\n\n \"git check-mailmap\" segfault fix.\n\n Will merge to 'next'.\n source: <20250221-jk-fix-sendemail-mailinfo-v2-1-9aca7dc05dbb@gmail.com>\n\n\n* bc/http-push-auth-netrc-fix (2025-02-24) 1 commit\n - http: allow using netrc for WebDAV-based HTTP protocol\n\n source: <20250223015331.588161-2-sandals@crustytoothpaste.net>\n\n\n* cc/signed-fast-export-import (2025-02-24) 6 commits\n - fast-export, fast-import: add support for signed-commits\n - fast-export: do not modify memory from get_commit_buffer\n - git-fast-export.txt: clarify why 'verbatim' may not be a good idea\n - fast-export: rename --signed-tags='warn' to 'warn-verbatim'\n - fast-export: fix missing whitespace after switch\n - git-fast-import.adoc: add missing LF in the BNF\n\n source: <20250224142744.279643-1-christian.couder@gmail.com>\n\n\n* dk/test-aggregate-results-paste-fix (2025-02-24) 1 commit\n - t/aggregate-results: fix paste(1) invocation\n\n source: <20250224192724.7625-1-ben.knoble+github@gmail.com>\n\n\n* rs/clear-commit-marks-optim (2025-02-24) 1 commit\n - commit: avoid parent list buildup in clear_commit_marks_many()\n\n source: <2bd2d71f-0ee6-405f-bec8-368406ca53c8@web.de>\n\n\n* sk/unit-test-oid (2025-02-24) 5 commits\n - fixup! t/unit-tests: implement clar specific oid helper functions\n - t/unit-tests: convert oidtree test to use clar test framework\n - t/unit-tests: convert oidmap test to use clar test framework\n - t/unit-tests: convert oid-array test to use clar test framework\n - t/unit-tests: implement clar specific oid helper functions\n\n source: <20250224152704.70289-1-kuforiji98@gmail.com>\n\n--------------------------------------------------\n[Cooking]\n\n* ad/set-default-target-in-makefiles (2025-02-18) 1 commit\n  (merged to 'next' on 2025-02-19 at 21d81b4f09)\n + Makefile: set default goals in makefiles\n\n Correct the default target in Documentation/Makefile, and\n future-proof all Makefiles from similar breakages by declaring the\n default target (which happens to be \"all\") upfront.\n\n Will merge to 'master'.\n source: <20250215211904.41883-1-adam@dinwoodie.org>\n\n\n* bc/diff-reject-empty-arg-to-pickaxe (2025-02-18) 1 commit\n  (merged to 'next' on 2025-02-19 at 85d8a43baa)\n + diff: don't crash with empty argument to -G or -S\n\n The -G/-S options to the \"diff\" family of commands caused us to hit\n a BUG() when they get no values; they have been corrected.\n\n Will merge to 'master'.\n source: <20250217175759.1576684-1-sandals@crustytoothpaste.net>\n\n\n* ms/rename-match-name-with-pattern (2025-02-18) 1 commit\n  (merged to 'next' on 2025-02-19 at 717d13af36)\n + refspec: clarify function naming and documentation\n\n Code renaming.\n\n Will merge to 'master'.\n source: <20250215084539.73799-1-meetsoni3017@gmail.com>\n\n\n* po/meson-perl-fix (2025-02-19) 2 commits\n  (merged to 'next' on 2025-02-19 at 168d449ef4)\n + meson: fix Perl version check for Meson versions before 1.7.0\n + meson: bump minimum required Perl version to 5.26.0\n\n Upgrade the minimum Perl version enforced by meson-based build to\n match what Makefile-based build uses.\n\n Will merge to 'master'.\n source: <20250218153043.63535-1-git@mavit.org.uk>\n\n\n* ps/meson-contrib-bits (2025-02-20) 10 commits\n - ci: exercise credential helpers\n - ci: fix propagating UTF-8 test locale in musl-based Meson job\n - meson: wire up static analysis via Coccinelle\n - meson: wire up git-contacts(1)\n - meson: wire up credential helpers\n - contrib/credential: fix compilation of \"osxkeychain\" helper\n - contrib/credential: fix compiling \"libsecret\" helper\n - contrib/credential: fix compilation of wincred helper with MSVC\n - contrib/credential: fix \"netrc\" tests with out-of-tree builds\n - GIT-BUILD-OPTIONS: propagate project's source directory\n\n Update meson-based build procedure to cover contrib/ and other\n places as well.\n\n Expecting a reroll.\n source: <20250218-b4-pks-meson-contrib-v1-0-c3edd292beb8@pks.im>\n\n\n* pw/merge-tree-stdin-deadlock-fix (2025-02-18) 5 commits\n  (merged to 'next' on 2025-02-19 at ebc3ae6ffc)\n + merge-tree: fix link formatting in html docs\n + merge-tree: improve docs for --stdin\n + merge-tree: only use basic merge config\n + merge-tree: remove redundant code\n + merge-tree --stdin: flush stdout to avoid deadlock\n\n \"git merge-tree --stdin\" has been improved (including a workaround\n for a deadlock).\n\n Will merge to 'master'.\n source: <pull.1862.v2.git.1739895879.gitgitgadget@gmail.com>\n\n\n* mh/doc-commit-title-not-subject (2025-02-18) 1 commit\n  (merged to 'next' on 2025-02-19 at ee145da188)\n + doc: use 'title' consistently\n\n Update \"git commit\" documentation to refer to commit titles as\n such, not \"subject\".\n\n Will merge to 'master'.\n source: <pull.1893.v2.git.git.1739739761445.gitgitgadget@gmail.com>\n\n\n* tb/new-make-fix (2025-02-13) 1 commit\n  (merged to 'next' on 2025-02-18 at 8fd74ceeed)\n + Makefile: remove accidental recipe prefix in conditional\n\n Workaround the overly picky HT/SP rule in newer GNU Make.\n\n Will merge to 'master'.\n source: <a79e9e9f50410721d85747b03559d55be98bca20.1739478347.git.me@ttaylorr.com>\n\n\n* ms/merge-recursive-string-list-micro-optimization (2025-02-13) 1 commit\n - merge-recursive: optimize time complexity for process_renames\n\n source: <20250214044129.15282-1-meetsoni3017@gmail.com>\n\n\n* pb/doc-follow-remote-head (2025-02-14) 2 commits\n - config/remote.txt: improve wording for 'remote.<name>.followRemoteHEAD'\n - config/remote.txt: reunite 'severOption' description paragraphs\n\n source: <pull.1894.git.git.1739554578.gitgitgadget@gmail.com>\n\n\n* da/xdiff-w-sign-compare-workaround (2025-02-12) 6 commits\n  (merged to 'next' on 2025-02-18 at 4af44766d5)\n + xdiff: avoid signed vs. unsigned comparisons in xutils.c\n + xdiff: avoid signed vs. unsigned comparisons in xpatience.c\n + xdiff: avoid signed vs. unsigned comparisons in xhistogram.c\n + xdiff: avoid signed vs. unsigned comparisons in xemit.c\n + xdiff: avoid signed vs. unsigned comparisons in xdiffi.c\n + xdiff: move sign comparison warning guard into each file\n\n Noises from \"-Wsign-compare\" in the borrowed xdiff code has been\n squelched.\n\n Will merge to 'master'.\n source: <20250212060418.1645241-6-davvid@gmail.com>\n\n\n* jt/diff-pairs (2025-02-12) 4 commits\n - builtin/diff-pairs: allow explicit diff queue flush\n - builtin: introduce diff-pairs command\n - diff: return diff_filepair from diff queue helpers\n - Merge branch 'bc/doc-adoc-not-txt' into jt/diff-pairs\n\n A post-processing filter for \"diff --raw\" output has been\n introduced.\n\n Needs review (and most likely a bit more polish).\n source: <20250212041825.2455031-1-jltobler@gmail.com>\n\n\n* kn/ref-migrate-skip-reflog (2025-02-21) 1 commit\n - builtin/refs: add '--no-reflog' flag to drop reflogs\n\n \"git refs migrate\" can optionally be told not to migrate the reflog.\n\n Will merge to 'next'.\n source: <20250221100423.91075-1-karthik.188@gmail.com>\n\n\n* ps/path-sans-the-repository (2025-02-24) 17 commits\n - fixup! rerere: let `rerere_path()` write paths into a caller-provided buffer\n - path: adjust last remaining users of `the_repository`\n - environment: move access to \"core.sharedRepository\" into repo settings\n - environment: move access to \"core.hooksPath\" into repo settings\n - repo-settings: introduce function to clear struct\n - path: drop `git_path()` in favor of `repo_git_path()`\n - rerere: let `rerere_path()` write paths into a caller-provided buffer\n - path: drop `git_common_path()` in favor of `repo_common_path()`\n - worktree: return allocated string from `get_worktree_git_dir()`\n - path: drop `git_path_buf()` in favor of `repo_git_path_replace()`\n - path: drop `git_pathdup()` in favor of `repo_git_path()`\n - path: drop unused `strbuf_git_path()` function\n - path: refactor `repo_submodule_path()` family of functions\n - submodule: refactor `submodule_to_gitdir()` to accept a repo\n - path: refactor `repo_worktree_path()` family of functions\n - path: refactor `repo_git_path()` family of functions\n - path: refactor `repo_common_path()` family of functions\n\n The path.[ch] API takes an explicit repository parameter passed\n throughout the callchain, instead of relying on the_repository\n singleton instance.\n\n Will merge to 'next'?\n source: <20250207-b4-pks-path-drop-the-repository-v2-0-13cad3c11b8a@pks.im>\n\n\n* pw/rebase-i-ff-empty-commit (2025-02-11) 1 commit\n - rebase -i: reword empty commit after fast-forward\n\n \"git rebase -i\" failed to allow rewording an empty commit that has\n been fast-forwarded.\n\n Will merge to 'next'?\n source: <pull.1860.v2.git.1739289549299.gitgitgadget@gmail.com>\n\n\n* ib/diff-S-G-with-longhand (2025-02-12) 10 commits\n - diff: docs: Use --patch-{grep,modifies} over -G/-S\n - diff: --pickaxe-{all,regex} help: Add --patch-{grep,modifies}\n - diff: test: Use --patch-{grep,modifies} over -G/-S\n - completion: Support --patch-{grep,modifies}\n - diff: --patch-{grep,modifies} arg names for -G and -S\n - docs: gitdiffcore: -G and -S: Use regex/string placeholders\n - diff: short help: Add -G and --pickaxe-grep\n - diff: short help: Correct -S description\n - diff: -G description: Correct copy/paste error\n - t/t4209-log-pickaxe: Naming typo: -G takes a regex\n\n The commands in the \"diff\" family learned longhands for \"-S\" and\n \"-G\" options.\n\n The core part looked mostly good.\n source: <20250212032657.1807939-1-illia.bobyr@gmail.com>\n\n\n* ps/reftable-windows-unlink-fix (2025-02-18) 2 commits\n - reftable: ignore file-in-use errors when unlink(3p) fails on Windows\n - Merge branch 'ps/reftable-sans-compat-util' into ps/reftable-windows-unlink-fix\n (this branch uses ps/reftable-sans-compat-util.)\n\n Portability fix.\n\n Waiting for the base topic to settle.\n source: <20250206-b4-pks-reftable-win32-in-use-errors-v2-1-56985a4f6186@pks.im>\n\n\n* ps/build-meson-fixes-0130 (2025-01-30) 14 commits\n  (merged to 'next' on 2025-02-24 at 6cd5b60792)\n + gitlab-ci: restrict maximum number of link jobs on Windows\n + meson: consistently use custom program paths to resolve programs\n + meson: fix overwritten `git` variable\n + meson: prevent finding sed(1) in a loop\n + meson: improve handling of `sane_tool_path` option\n + meson: improve PATH handling\n + meson: drop separate version library\n + meson: stop linking libcurl into all executables\n + meson: introduce `libgit_curl` dependency\n + meson: simplify use of the common-main library\n + meson: inline the static 'git' library\n + meson: fix OpenSSL fallback when not explicitly required\n + meson: fix exec path with enabled runtime prefix\n + Merge branch 'ps/build-meson-fixes' into ps/build-meson-fixes-0130\n\n Assorted fixes and improvements to the build procedure based on\n meson.\n\n Will merge to 'master'.\n source: <20250130-b4-pks-meson-improvements-v2-0-2f05581ffb44@pks.im>\n\n\n* ps/reftable-sans-compat-util (2025-02-18) 18 commits\n - Makefile: skip reftable library for Coccinelle\n - reftable: decouple from Git codebase by pulling in \"compat/posix.h\"\n - git-compat-util.h: split out POSIX-emulating bits\n - compat/mingw: split out POSIX-related bits\n - reftable/basics: introduce `REFTABLE_UNUSED` annotation\n - reftable/basics: stop using `SWAP()` macro\n - reftable/stack: stop using `sleep_millisec()`\n - reftable/system: introduce `reftable_rand()`\n - reftable/reader: stop using `ARRAY_SIZE()` macro\n - reftable/basics: provide wrappers for big endian conversion\n - reftable/basics: stop using `st_mult()` in array allocators\n - reftable: stop using `BUG()` in trivial cases\n - reftable/record: don't `BUG()` in `reftable_record_cmp()`\n - reftable/record: stop using `BUG()` in `reftable_record_init()`\n - reftable/record: stop using `COPY_ARRAY()`\n - reftable/blocksource: stop using `xmmap()`\n - reftable/stack: stop using `write_in_full()`\n - reftable/stack: stop using `read_in_full()`\n (this branch is used by ps/reftable-windows-unlink-fix.)\n\n Make the code in reftable library less reliant on the service\n routines it used to borrow from Git proper, to make it easier to\n use by external users of the library.\n\n Waiting for Acks, especially for Windows bits?\n source: <20250218-pks-reftable-drop-git-compat-util-v6-0-8c1f39fb4c02@pks.im>\n\n\n* sj/ref-consistency-checks-more (2025-02-13) 8 commits\n - builtin/fsck: add `git refs verify` child process\n - packed-backend: check whether the \"packed-refs\" is sorted\n - packed-backend: add \"packed-refs\" entry consistency check\n - packed-backend: check whether the refname contains NUL characters\n - packed-backend: add \"packed-refs\" header consistency check\n - packed-backend: check whether the \"packed-refs\" is regular file\n - builtin/refs: get worktrees without reading head information\n - t0602: use subshell to ensure working directory unchanged\n\n \"git fsck\" becomes more careful when checking the refs.\n\n Comments?\n source: <Z67LkxAFIAeaYr0U@ArchLinux>\n\n\n* ua/os-version-capability (2025-02-19) 6 commits\n  (merged to 'next' on 2025-02-24 at 89ad48db14)\n + agent: advertise OS name via agent capability\n + t5701: add setup test to remove side-effect dependency\n + version: extend get_uname_info() to hide system details\n + version: refactor get_uname_info()\n + version: refactor redact_non_printables()\n + version: replace manual ASCII checks with isprint() for clarity\n\n The value of \"uname -s\" is by default sent over the wire as a new\n capability, with an opt-out for privacy-concious folks.\n\n Will merge to 'master'.\n source: <20250215155130.1756934-1-usmanakinyemi202@gmail.com>\n\n\n* jc/doc-attr-tree (2024-12-14) 1 commit\n - doc: give attr.tree a bit more visibility\n\n Make sure that \"git --attr-source=X\", GIT_ATTR_SOURCE, and\n attr.tree configuration variables appear at the same places in the\n documentation.\n\n On hold.\n cf. <20241216111112.GA2201417@coredump.intra.peff.net>\n source: <xmqq5xnladwi.fsf@gitster.g>\n\n\n* cc/lop-remote (2025-02-18) 3 commits\n - doc: add technical design doc for large object promisors\n - promisor-remote: check advertised name or URL\n - Add 'promisor-remote' capability to protocol v2\n\n Large-object promisor protocol extension.\n\n Comments?\n source: <20250218113204.2847463-1-christian.couder@gmail.com>\n\n\n* tb/incremental-midx-part-2 (2024-11-20) 15 commits\n - midx: implement writing incremental MIDX bitmaps\n - pack-bitmap.c: use `ewah_or_iterator` for type bitmap iterators\n - pack-bitmap.c: keep track of each layer's type bitmaps\n - ewah: implement `struct ewah_or_iterator`\n - pack-bitmap.c: apply pseudo-merge commits with incremental MIDXs\n - pack-bitmap.c: compute disk-usage with incremental MIDXs\n - pack-bitmap.c: teach `rev-list --test-bitmap` about incremental MIDXs\n - pack-bitmap.c: support bitmap pack-reuse with incremental MIDXs\n - pack-bitmap.c: teach `show_objects_for_type()` about incremental MIDXs\n - pack-bitmap.c: teach `bitmap_for_commit()` about incremental MIDXs\n - pack-bitmap.c: open and store incremental bitmap layers\n - pack-revindex: prepare for incremental MIDX bitmaps\n - Documentation: describe incremental MIDX bitmaps\n - Merge branch 'tb/pseudo-merge-bitmap-fixes' into tb/incremental-midx-part-2\n - Merge branch 'tb/incremental-midx-part-1' into tb/incremental-midx-part-2\n\n Incrementally updating multi-pack index files.\n\n Needs review.\n source: <cover.1732054032.git.me@ttaylorr.com>\n\n\n* ej/cat-file-remote-object-info (2025-02-24) 8 commits\n - cat-file: add remote-object-info to batch-command\n - transport: add client support for object-info\n - serve: advertise object-info feature\n - fetch-pack: move fetch initialization\n - fetch-pack: refactor packet writing\n - t1006: split test utility functions into new \"lib-cat-file.sh\"\n - cat-file: add declaration of variable i inside its for loop\n - git-compat-util: add strtoul_ul() with error handling\n\n \"git cat-file --batch\" and friends can optionally ask a remote\n server about objects it does not have.\n\n source: <20250221190451.12536-1-eric.peijian@gmail.com>\n\n--------------------------------------------------\n[Discarded]\n\n* md/userdiff-bash-update (2025-02-18) 1 commit\n . userdiff: extend Bash pattern to cover more shell function forms\n\n The userdiff patterns for shell language have been updated.\n\n Broken.\n cf. <xmqq34gaj02j.fsf@gitster.g>\n source: <20250218153537.16320-2-dhar61595@gmail.com>\n"},{"id":"512954","messageId":"Z71ns00inrW0rZN8@pks.im","threadId":"62996","inReplyTo":"xmqq1pvm4u6c.fsf@gitster.g","subject":"Re: What's cooking in git.git (Feb 2025, #07; Mon, 24)","fromName":"Patrick Steinhardt","fromEmail":"ps@pks.im","sentAt":"2025-02-25T06:48:19Z","receivedAt":"2025-02-25T06:48:28Z","isPatch":false,"sender":{"key":"ps@pks.im","avatar":"https://avatars.githubusercontent.com/u/4056630?v=4"},"body":"On Mon, Feb 24, 2025 at 06:47:23PM -0800, Junio C Hamano wrote:\n> * ps/meson-contrib-bits (2025-02-20) 10 commits\n>  - ci: exercise credential helpers\n>  - ci: fix propagating UTF-8 test locale in musl-based Meson job\n>  - meson: wire up static analysis via Coccinelle\n>  - meson: wire up git-contacts(1)\n>  - meson: wire up credential helpers\n>  - contrib/credential: fix compilation of \"osxkeychain\" helper\n>  - contrib/credential: fix compiling \"libsecret\" helper\n>  - contrib/credential: fix compilation of wincred helper with MSVC\n>  - contrib/credential: fix \"netrc\" tests with out-of-tree builds\n>  - GIT-BUILD-OPTIONS: propagate project's source directory\n> \n>  Update meson-based build procedure to cover contrib/ and other\n>  places as well.\n> \n>  Expecting a reroll.\n>  source: <20250218-b4-pks-meson-contrib-v1-0-c3edd292beb8@pks.im>\n\nv2 of this patch series hasn't yet received any comments that require a\nreroll, unless I've missed something.\n\n> * ps/path-sans-the-repository (2025-02-24) 17 commits\n>  - fixup! rerere: let `rerere_path()` write paths into a caller-provided buffer\n>  - path: adjust last remaining users of `the_repository`\n>  - environment: move access to \"core.sharedRepository\" into repo settings\n>  - environment: move access to \"core.hooksPath\" into repo settings\n>  - repo-settings: introduce function to clear struct\n>  - path: drop `git_path()` in favor of `repo_git_path()`\n>  - rerere: let `rerere_path()` write paths into a caller-provided buffer\n>  - path: drop `git_common_path()` in favor of `repo_common_path()`\n>  - worktree: return allocated string from `get_worktree_git_dir()`\n>  - path: drop `git_path_buf()` in favor of `repo_git_path_replace()`\n>  - path: drop `git_pathdup()` in favor of `repo_git_path()`\n>  - path: drop unused `strbuf_git_path()` function\n>  - path: refactor `repo_submodule_path()` family of functions\n>  - submodule: refactor `submodule_to_gitdir()` to accept a repo\n>  - path: refactor `repo_worktree_path()` family of functions\n>  - path: refactor `repo_git_path()` family of functions\n>  - path: refactor `repo_common_path()` family of functions\n> \n>  The path.[ch] API takes an explicit repository parameter passed\n>  throughout the callchain, instead of relying on the_repository\n>  singleton instance.\n> \n>  Will merge to 'next'?\n>  source: <20250207-b4-pks-path-drop-the-repository-v2-0-13cad3c11b8a@pks.im>\n\nThe fixup commit looks good to me, so I'll refrain from sending a v3\nonly to roll the fix into the series.\n\n> * pw/rebase-i-ff-empty-commit (2025-02-11) 1 commit\n>  - rebase -i: reword empty commit after fast-forward\n> \n>  \"git rebase -i\" failed to allow rewording an empty commit that has\n>  been fast-forwarded.\n> \n>  Will merge to 'next'?\n>  source: <pull.1860.v2.git.1739289549299.gitgitgadget@gmail.com>\n\nI had a quick read of this patch and didn't have anything to say on it,\nso I think it should be ready for next.\n\n> * sj/ref-consistency-checks-more (2025-02-13) 8 commits\n>  - builtin/fsck: add `git refs verify` child process\n>  - packed-backend: check whether the \"packed-refs\" is sorted\n>  - packed-backend: add \"packed-refs\" entry consistency check\n>  - packed-backend: check whether the refname contains NUL characters\n>  - packed-backend: add \"packed-refs\" header consistency check\n>  - packed-backend: check whether the \"packed-refs\" is regular file\n>  - builtin/refs: get worktrees without reading head information\n>  - t0602: use subshell to ensure working directory unchanged\n> \n>  \"git fsck\" becomes more careful when checking the refs.\n> \n>  Comments?\n>  source: <Z67LkxAFIAeaYr0U@ArchLinux>\n\nI'll make sure to give this series another read today.\n\nPatrick\n"},{"id":"513030","messageId":"xmqq5xkykl7j.fsf@gitster.g","threadId":"62996","inReplyTo":"Z71ns00inrW0rZN8@pks.im","subject":"Re: What's cooking in git.git (Feb 2025, #07; Mon, 24)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2025-02-25T17:06:40Z","receivedAt":"2025-02-25T17:06:42Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Patrick Steinhardt <ps@pks.im> writes:\n\n> On Mon, Feb 24, 2025 at 06:47:23PM -0800, Junio C Hamano wrote:\n>> * ps/meson-contrib-bits (2025-02-20) 10 commits\n>>  - ci: exercise credential helpers\n>>  - ci: fix propagating UTF-8 test locale in musl-based Meson job\n>>  - meson: wire up static analysis via Coccinelle\n>>  - meson: wire up git-contacts(1)\n>>  - meson: wire up credential helpers\n>>  - contrib/credential: fix compilation of \"osxkeychain\" helper\n>>  - contrib/credential: fix compiling \"libsecret\" helper\n>>  - contrib/credential: fix compilation of wincred helper with MSVC\n>>  - contrib/credential: fix \"netrc\" tests with out-of-tree builds\n>>  - GIT-BUILD-OPTIONS: propagate project's source directory\n>> \n>>  Update meson-based build procedure to cover contrib/ and other\n>>  places as well.\n>> \n>>  Expecting a reroll.\n>>  source: <20250218-b4-pks-meson-contrib-v1-0-c3edd292beb8@pks.im>\n>\n> v2 of this patch series hasn't yet received any comments that require a\n> reroll, unless I've missed something.\n\nI misread the exchange between you and Ramsay; I am fine with the\ndecision to leave the sparse and the hdr-check outside this series,\nfor some future follow-up work.  Let me mark it for 'next'.\n\n>> * ps/path-sans-the-repository (2025-02-24) 17 commits\n>>  - fixup! rerere: let `rerere_path()` write paths into a caller-provided buffer\n>>  - path: adjust last remaining users of `the_repository`\n>>  - environment: move access to \"core.sharedRepository\" into repo settings\n>>  - environment: move access to \"core.hooksPath\" into repo settings\n>>  - repo-settings: introduce function to clear struct\n>>  - path: drop `git_path()` in favor of `repo_git_path()`\n>>  - rerere: let `rerere_path()` write paths into a caller-provided buffer\n>>  - path: drop `git_common_path()` in favor of `repo_common_path()`\n>>  - worktree: return allocated string from `get_worktree_git_dir()`\n>>  - path: drop `git_path_buf()` in favor of `repo_git_path_replace()`\n>>  - path: drop `git_pathdup()` in favor of `repo_git_path()`\n>>  - path: drop unused `strbuf_git_path()` function\n>>  - path: refactor `repo_submodule_path()` family of functions\n>>  - submodule: refactor `submodule_to_gitdir()` to accept a repo\n>>  - path: refactor `repo_worktree_path()` family of functions\n>>  - path: refactor `repo_git_path()` family of functions\n>>  - path: refactor `repo_common_path()` family of functions\n>> \n>>  The path.[ch] API takes an explicit repository parameter passed\n>>  throughout the callchain, instead of relying on the_repository\n>>  singleton instance.\n>> \n>>  Will merge to 'next'?\n>>  source: <20250207-b4-pks-path-drop-the-repository-v2-0-13cad3c11b8a@pks.im>\n>\n> The fixup commit looks good to me, so I'll refrain from sending a v3\n> only to roll the fix into the series.\n\nOK.  I read them over before saying \"'next'?\" and still missed what\nPeff spotted, so I have no confidence in my reviews over these\npatches, which is a bit of a problem for me.\n\nThanks.\n"}]}