From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from fout-a6-smtp.messagingengine.com (fout-a6-smtp.messagingengine.com [103.168.172.149]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A6EC91FAC4B for ; Mon, 6 Oct 2025 23:41:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=103.168.172.149 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759794101; cv=none; b=IewKkjGwQ0RrgrC84MQXb9sZhkoFiRLBhif4HmxBSwc7IFy24xgd8J/PlT7X6w9HAeOS96ZJeiH+fGINmjq0OwIYE7qkIqWtL6cvOlQY+lyl8RZMk/cVkSmu3h3yk16XrzgOyKtziz0WAo8+HW0I0h7zjMG1ajyQSsmKroJL0pQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1759794101; c=relaxed/simple; bh=Ec0iUFR3ff+AVTwZOkXcttATFLv+ANnl+QYV4ELA2yk=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type; b=d3k3L8CupSLyzaiqe/pVZTFjbtj8UncCB2pJVfef/ScoFQsew0KlcOhri6YG53sZHquzyDvJh72IePT7hZzN5mRRvQP6mNTbt/juwbBhrLKlUKdEQyz9qfqSalTNvxinPLrQ35ewxd/X8O1xWnhMnjmPGnnc45/JHWYoZJt9u5Q= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=pobox.com; spf=pass smtp.mailfrom=pobox.com; dkim=pass (2048-bit key) header.d=pobox.com header.i=@pobox.com header.b=hgsd2e8D; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b=rBdjffvJ; arc=none smtp.client-ip=103.168.172.149 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=pobox.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=pobox.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=pobox.com header.i=@pobox.com header.b="hgsd2e8D"; dkim=pass (2048-bit key) header.d=messagingengine.com header.i=@messagingengine.com header.b="rBdjffvJ" Received: from phl-compute-07.internal (phl-compute-07.internal [10.202.2.47]) by mailfout.phl.internal (Postfix) with ESMTP id C0405EC01E4; Mon, 6 Oct 2025 19:41:36 -0400 (EDT) Received: from phl-frontend-01 ([10.202.2.160]) by phl-compute-07.internal (MEProxy); Mon, 06 Oct 2025 19:41:36 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pobox.com; h=cc :content-type:content-type:date:date:from:from:in-reply-to :message-id:mime-version:reply-to:subject:subject:to:to; s=fm1; t=1759794096; x=1759880496; bh=HKgADOxG1EbodwsUaqn0jOGp26B7cqSc 6Td/qnQ1Xa8=; b=hgsd2e8Dl6EibELs5AGylVYIy5WbHfP8+Ri7PmGRq6E++03G hR6WuN8Ey31V1x1+aoQymZvB1cEGsr3ZcRG16qnmvyEzY6Ain+qm+23vyAG0TpqP Hz2+fVoy+xSZVGAjWgzukRlZovwwwr+6e6nw5GV8j4Bl28ClvysI+OOj++lP0WoO 0KH/FwpRlo0vt0M+uU+BHRYCr2USjeMIdBl/50jOC6axk79Qv/cKJk64Oji0oOIk nVTDH+iTVam6WPf0u4NqdWJx887LdLCO7CeV4PTPyENukhfCjn9vkJ9asyl9/+ZK DgLONbwgKqXx7SKjRydsFtFAzWBXJjgevFKlKw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:message-id :mime-version:reply-to:subject:subject:to:to:x-me-proxy :x-me-sender:x-me-sender:x-sasl-enc; s=fm2; t=1759794096; x= 1759880496; bh=HKgADOxG1EbodwsUaqn0jOGp26B7cqSc6Td/qnQ1Xa8=; b=r BdjffvJT0YqNXNwE8qetnnYQmpfX/hFzGLMQsOjDNRJro6HJwHPfO4bGiRr84lMs 3mjNQnMD1EKjzcOnDLVbG7sHmEFzQNapAw8Hco8FDFfQM/k+/ZwTPaEIiW6OrkAd K+Y2+5IOPvCLDpIqELwFyfMbdrEB09ST12FpZZHOGgQ7d+MD8RxZL6PWO181GjTa 80L09Rd43oJesVLNhgsanYywFjdTiJUJMUSfPpMkK+5nvbsvgh6QdlC+Hg01nkQ1 VOWKP13463aC/qi/HmBp96GgoDQPEhYbD6S7nB6AbJWlUpzuJpxIOYtL1YTIwxLJ LcfUEezDaFdbh8Wkk9+Tw== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeeffedrtdeggdelkeekkecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpuffrtefokffrpgfnqfghnecuuegr ihhlohhuthemuceftddtnecunecujfgurhephffvufffkfgfgggtsehttdfotddtredtne cuhfhrohhmpefluhhnihhoucevucfjrghmrghnohcuoehgihhtshhtvghrsehpohgsohig rdgtohhmqeenucggtffrrghtthgvrhhnpeevteeivdfghfeuleeugfdtjeehudeivdeuje eigfeufeelheetkeejffetudeivdenucffohhmrghinhepkhgvrhhnvghlrdhorhhgpdho rhdrtgiipdhgohhoghhlvghsohhurhgtvgdrtghomhdpghhithhhuhgsrdgtohhmpdhgih htlhgrsgdrtghomhdpuhhsvghrrdhnrghmvgdpshgvvghnrdhltgenucevlhhushhtvghr ufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehgihhtshhtvghrsehpohgsoh igrdgtohhmpdhnsggprhgtphhtthhopeefpdhmohguvgepshhmthhpohhuthdprhgtphht thhopehgihhtsehvghgvrhdrkhgvrhhnvghlrdhorhhgpdhrtghpthhtoheplhifnheslh ifnhdrnhgvthdprhgtphhtthhopehgihhtshhtvghrsehpohgsohigrdgtohhm X-ME-Proxy: Feedback-ID: if26b431b:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Mon, 6 Oct 2025 19:41:36 -0400 (EDT) From: Junio C Hamano To: git@vger.kernel.org Subject: What's cooking in git.git (Oct 2025, #02; Mon, 6) X-master-at: 45547b60aca32b45d2f1ef93462cf9df28637c13 X-next-at: 787ff6f08aa94a0b11d31482879f7efece126361 Date: Mon, 06 Oct 2025 16:41:34 -0700 Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Precedence: bulk X-Mailing-List: git@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain Here are the topics that have been cooking in my tree. Commits prefixed with '+' are in 'next' (being in 'next' is a sign that a topic is stable enough to be used and are candidate to be in a future release). Commits prefixed with '-' are only in 'seen', and aren't considered "accepted" at all and may be annotated with an URL to a message that raises issues but they are no means exhaustive. A topic without enough support may be discarded after a long period of no activity (of course they can be resubmit when new interests arise). Copies of the source code to Git live in many repositories, and the following is a list of the ones I push into or their mirrors. Some repositories have only a subset of branches. With maint, master, next, seen, todo: git://git.kernel.org/pub/scm/git/git.git/ git://repo.or.cz/alt-git.git/ https://kernel.googlesource.com/pub/scm/git/git/ https://github.com/git/git/ https://gitlab.com/git-scm/git/ With all the integration branches and topics broken out: https://github.com/gitster/git/ Even though the preformatted documentation in HTML and man format are not sources, they are published in these repositories for convenience (replace "htmldocs" with "manpages" for the manual pages): git://git.kernel.org/pub/scm/git/git-htmldocs.git/ https://github.com/gitster/git-htmldocs.git/ Release tarballs are available at: https://www.kernel.org/pub/software/scm/git/ -------------------------------------------------- [New Topics] * en/doc-merge-tree-describe-merge-base (2025-10-02) 1 commit (merged to 'next' on 2025-10-06 at 787ff6f08a) + Documentation/git-merge-tree.adoc: clarify the --merge-base option Clarify the "--merge-base" command line option in "git merge-tree". Will merge to 'master'. source: * je/doc-data-model (2025-10-03) 1 commit - doc: add a explanation of Git's data model Add a new manual that describes the data model. Comments? source: * rs/add-patch-options-fix (2025-10-06) 6 commits - add-patch: reset "permitted" at loop start - add-patch: let options a and d roll over like y and n - add-patch: let options k and K roll over like j and J - add-patch: let options y, n, j, and e roll over to next undecided - add-patch: document that option J rolls over - add-patch: improve help for options j, J, k, and K The code in "git add -p" and friends to iterate over hunks was riddled with bugs, which has been corrected. Will merge to 'next'? source: * jn/doc-help-translaing-pretty-options (2025-10-05) 1 commit - doc: do not break sentences into "lego" pieces Documentation for "git log --pretty" options has been updated to make it easier to translate. Will merge to 'next'. source: * jn/doc-synopsis (2025-10-05) 3 commits - doc: convert git worktree to synopsis style - doc: convert git tag to synopsis style - doc: convert git-stash.adoc to synopis style Doc-mark-up modernization continues. Will merge to 'next'. source: -------------------------------------------------- [Cooking] * tb/incremental-midx-part-3.1 (2025-09-29) 51 commits - SQUASH??? play well with other topics by preemptively including "repository.h" - builtin/repack.c: clean up unused `#include`s - repack: move `write_cruft_pack()` out of the builtin - repack: move `write_filtered_pack()` out of the builtin - repack: move `pack_kept_objects` to `struct pack_objects_args` - repack: move `finish_pack_objects_cmd()` out of the builtin - builtin/repack.c: pass `write_pack_opts` to `finish_pack_objects_cmd()` - repack: extract `write_pack_opts_is_local()` - repack: move `find_pack_prefix()` out of the builtin - builtin/repack.c: use `write_pack_opts` within `write_cruft_pack()` - builtin/repack.c: introduce `struct write_pack_opts` - repack: 'write_midx_included_packs' API from the builtin - builtin/repack.c: inline packs within `write_midx_included_packs()` - builtin/repack.c: pass `repack_write_midx_opts` to `midx_included_packs` - builtin/repack.c: inline `remove_redundant_bitmaps()` - builtin/repack.c: reorder `remove_redundant_bitmaps()` - repack: keep track of MIDX pack names using existing_packs - builtin/repack.c: use a string_list for 'midx_pack_names' - builtin/repack.c: extract opts struct for 'write_midx_included_packs()' - builtin/repack.c: remove ref snapshotting from builtin - repack: remove pack_geometry API from the builtin - builtin/repack.c: pass 'packdir' to `pack_geometry_remove_redundant()` - builtin/repack.c: pass 'pack_kept_objects' to `pack_geometry_init()` - builtin/repack.c: rename various pack_geometry functions - builtin/repack.c: remove "repack_promisor_objects()" from the builtin - builtin/repack.c: pass "packtmp" to `repack_promisor_objects()` - repack: remove 'generated_pack' API from the builtin - builtin/repack.c: provide pack locations to `generated_pack_install()` - builtin/repack.c: pass "packtmp" to `generated_pack_populate()` - builtin/repack.c: factor our "generated_pack_install" - builtin/repack.c: rename "struct generated_pack_data" - repack: remove 'existing_packs' API from the builtin - builtin/repack.c: avoid unnecessary numeric casts in existing_packs - builtin/repack.c: pass "packdir" when removing packs - repack: remove 'remove_redundant_pack' from the builtin - builtin/repack.c: rename many 'struct existing_packs' functions - repack: remove 'prepare_pack_objects' from the builtin - repack: move 'delta_base_offset' to 'struct pack_objects_args' - builtin/repack.c: pass both pack_objects args to repack_config - repack: introduce new compilation unit - builtin/repack.c: avoid using `hash_to_hex()` in pack geometry - builtin/repack.c: avoid "the_hash_algo" in `finish_pack_objects_cmd()` - builtin/repack: avoid "the_hash_algo" in `repack_promisor_objects()` - builtin/repack.c: avoid "the_hash_algo" in `write_oid()` - builtin/repack.c: avoid "the_hash_algo" when deleting packs - builtin/repack.c: avoid "the_repository" when repacking promisor objects - builtin/repack.c: avoid "the_repository" when removing packs - builtin/repack.c: avoid "the_repository" when taking a ref snapshot - builtin/repack.c: avoid "the_repository" in existing packs API - builtin/repack.c: avoid "the_repository" in `cmd_repack()` - Merge branch 'ps/packfile-store' into tb/incremental-midx-part-3.1 (this branch uses ps/packfile-store.) Comments? source: * cc/doc-submitting-patches-with-ai (2025-10-01) 1 commit - SubmittingPatches: add section about AI AI guidelines. Perhaps we should adopt what QEMU uses for simplicity? cf. source: <20251001140310.527097-1-christian.couder@gmail.com> * kn/ref-cache-seek-fix (2025-10-01) 1 commit (merged to 'next' on 2025-10-02 at 5896b8c896) + refs/ref-cache: fix SEGFAULT when seeking in empty directories Fix handling of an empty subdirectory of .git/refs/ in the ref-files backend. Will merge to 'master'. source: <20251001-583-git-for-each-ref-start-after-v3-1-000f03837a92@gmail.com> * mh/doc-credential-url-prefix (2025-10-01) 1 commit (merged to 'next' on 2025-10-02 at dd0d9a1c59) + docs/gitcredentials: describe URL prefix matching Doc update to describe a feature that has already been implemented. Will merge to 'master'. source: * ml/reflog-write-committer-info-fix (2025-09-30) 1 commit (merged to 'next' on 2025-10-02 at 9a61d07bac) + builtin/reflog: respect user config in "write" subcommand "git reflog write" did not honor the configured user.name/email which has been corrected. Will merge to 'master'. source: <20250930195320.23825-1-git@lohmann.sh> * ps/history (2025-10-01) 13 commits - builtin/history: implement "split" subcommand - cache-tree: allow writing in-memory index as tree - add-patch: add support for in-memory index patching - add-patch: remove dependency on "add-interactive" subsystem - add-patch: split out `struct interactive_options` - add-patch: split out header from "add-interactive.h" - builtin/history: implement "reword" subcommand - builtin: add new "history" command - replay: parse commits before dereferencing them - replay: stop using `the_repository` - replay: extract logic to pick commits - wt-status: provide function to expose status for trees - Merge branch 'sa/replay-atomic-ref-updates' into ps/history (this branch uses sa/replay-atomic-ref-updates.) "git history" history rewriting UI. source: <20251001-b4-pks-history-builtin-v4-0-8e61ddb86317@pks.im> * en/make-libgit-a (2025-10-02) 2 commits - make: delete REFTABLE_LIB, add reftable to LIB_OBJS - make: delete XDIFF_LIB, add xdiff to LIB_OBJS Instead of three library archives (one for git, one for reftable, and one for xdiff), roll everything into a single libgit.a archive. This would help later effort to FFI into Rust. Will merge to 'next'? source: * ms/doc-worktree-side-by-side (2025-10-02) 4 commits - amend! doc: git-worktree: Add side by side branch checkout example - doc: git-worktree: Add side by side branch checkout example - amend! doc: git-worktree: Link to examples - doc: git-worktree: Link to examples Document "git worktree add" and use of out-of-tree worktrees with examples. Comments? source: * ps/gitlab-ci-windows-improvements (2025-10-02) 5 commits (merged to 'next' on 2025-10-03 at 6adb054d12) + t8020: fix test failure due to indeterministic tag sorting + gitlab-ci: upload Meson test logs as JUnit reports + gitlab-ci: drop workaround for Python certificate store on Windows + gitlab-ci: ignore failures to disable realtime monitoring + gitlab-ci: dedup instructions to disable realtime monitoring GitLab CI improvements. Will merge to 'master'. source: <20251002-pks-gitlab-ci-windows-improvements-v1-0-6a8b6b45d728@pks.im> * rj/doc-missing-technical-docs (2025-10-02) 1 commit (merged to 'next' on 2025-10-06 at f639955fdc) + doc: add some missing technical documents (this branch is used by rj/doc-technical-fixes.) Doc updates. Will merge to 'master'. source: <20251002221233.541844-2-ramsay@ramsayjones.plus.com> * rj/doc-technical-fixes (2025-10-02) 3 commits - doc: commit-graph.adoc: fix up some formatting - doc: sparse-checkout.adoc: fix asciidoc warnings - doc: remembering-renames.adoc: fix asciidoc warnings (this branch uses rj/doc-missing-technical-docs.) Documenation mark-up fixes. Comments? source: <20251002221233.541844-1-ramsay@ramsayjones.plus.com> * ja/doc-markup-attached-paragraph-fix (2025-09-27) 1 commit (merged to 'next' on 2025-09-30 at a91ca5db03) + doc: change the markup of paragraphs following a nested list item Documentation mark-up fix. Expecting an incremental follow-up to avoid regerssion. cf. <2239952.irdbgypaU6@cayenne> source: <20250927195032.37223-1-jn.avila@free.fr> * jc/optional-path (2025-09-28) 4 commits - parseopt: values of pathname type can be prefixed with :(optional) - config: values of pathname type can be prefixed with :(optional) - t7500: fix GIT_EDITOR shell snippet - t7500: make each piece more independent Configuration variables that take a pathname as a value (e.g. blame.ignorerevsfile) can be marked as optional by prefixing ":(optoinal)" before its value. Will merge to 'next'? source: * jt/clang-format-foreach-wo-space-before-parenthesis (2025-09-27) 1 commit (merged to 'next' on 2025-09-30 at c32668ab36) + clang-format: exclude control macros from SpaceBeforeParens Clang-format update to let our control macros formatted the way we had them traditionally, e.g., "for_each_string_list_item()" without space before the parentheses. Will merge to 'master'. source: <20250927145049.723341-4-jltobler@gmail.com> * kh/doc-patch-id-markup-fix (2025-09-29) 1 commit - doc: patch-id: fix accidental literal blocks Documenaotin mark-up fix. Will merge to 'next'? source: * sa/replay-atomic-ref-updates (2025-09-26) 1 commit - replay: make atomic ref updates the default behavior (this branch is used by ps/history.) "git replay" (experimental) learned to perform ref updates itself in a transaction by default, instead of emitting where each refs should point at and leaving the actual update to another command. Comments? source: <20250926230838.35870-2-siddharthasthana31@gmail.com> * kh/format-patch-range-diff-notes (2025-09-25) 3 commits - format-patch: handle range-diff on notes correctly for single patches - revision: add rdiff_log_arg to rev_info - range-diff: rename other_arg to log_arg "git format-patch --range-diff=... --notes=..." did not drive the underlying range-diff with correct --notes parameter, ending up comparing with different set of notes from its main patch output you would get from "git format-patch --notes=..." for a singleton patch. Will merge to 'next'? source: * je/doc-pull (2025-09-23) 4 commits - doc: git-pull: clarify how to exit a conflicted merge - doc: git-pull: delete the example - doc: git-pull: clarify options for integrating remote branch - doc: git-pull: move and params Documentation updates. source: * je/doc-push-upstream (2025-10-06) 5 commits - doc: git-push: add explanation of `git push origin main` - doc: git-push: clarify "what to push" - doc: git-push: clarify "where to push" - doc: add an UPSTREAM BRANCHES section to pull/push/fetch - doc: git-push: clarify intro Documentation updates. Will merge to 'next'? source: * jk/diff-no-index-with-pathspec-fix (2025-09-24) 1 commit - diff --no-index: fix logic for paths ending in '/' An earlier addition to "git diff --no-index A B" to limit the output with pathspec after the two directories misbehaved when these directories were given with a trailing slash, which has been corrected. source: <20250924-jk-fix-no-index-path-with-slash-v1-1-6b2028c0de92@intel.com> * jt/repo-stats (2025-09-27) 6 commits - builtin/repo: add progress meter for stats - builtin/repo: add keyvalue and nul format for stats - builtin/repo: add object counts in stats output - builtin/repo: introduce stats subcommand - ref-filter: allow NULL filter pattern - builtin/repo: rename repo_info() to cmd_repo_info() "git repo stats", a new command. Comments? source: <20250927145049.723341-1-jltobler@gmail.com> * js/curl-off-t-fixes (2025-09-26) 3 commits (merged to 'next' on 2025-09-30 at 6d1e5fd288) + http-push: avoid new compile error + imap-send: be more careful when casting to `curl_off_t` + http: offer to cast `size_t` to `curl_off_t` safely A few places where an size_t value was cast to curl_off_t without checking has been updated to use the existing helper function. Will merge to 'master'. source: * kn/reftable-consistency-checks (2025-10-06) 7 commits - refs/reftable: add fsck check for checking the table name - reftable: add code to facilitate consistency checks - fsck: order 'fsck_msg_type' alphabetically - Documentation/fsck-msgids: remove duplicate msg id - reftable: check for trailing newline in 'tables.list' - refs: move consistency check msg to generic layer - refs: remove unused headers The reftable backend learned to sanity check its on-disk data more carefully. Comments? source: <20251006-228-reftable-introduce-consistency-checks-v5-0-f196d386214f@gmail.com> * bc/sha1-256-interop-01 (2025-10-02) 9 commits - t1010: use BROKEN_OBJECTS prerequisite - t: allow specifying compatibility hash - fsck: consider gpgsig headers expected in tags - rev-parse: allow printing compatibility hash - docs: add documentation for loose objects - docs: improve ambiguous areas of pack format documentation - docs: reflect actual double signature for tags - docs: update offset order for pack index v3 - docs: update pack index v3 format The beginning of SHA1-SHA256 interoperability work. Will merge to 'next'? source: <20251002223855.1022847-1-sandals@crustytoothpaste.net> * pw/add-p-hunk-splitting-fix (2025-09-25) 2 commits - add-patch: update hunk splitability after editing - add -p: mark split hunks as undecided Marking a hunk 'selected' in "git add -p" and then splitting made all the split pieces 'selected'; this has been changed to make them all 'undecided', which gives better end-user experience. Will merge to 'next'? source: * en/xdiff-cleanup (2025-09-26) 12 commits - xdiff: change type of xdfile_t.changed from char to bool - xdiff: add macros DISCARD(0), KEEP(1), INVESTIGATE(2) in xprepare.c - xdiff: rename rchg -> changed in xdfile_t - xdiff: delete chastore from xdfile_t - xdiff: delete fields ha, line, size in xdlclass_t in favor of an xrecord_t - xdiff: delete redundant array xdfile_t.ha - xdiff: delete struct diffdata_t - xdiff: delete local variables that alias fields in xrecord_t - xdiff: delete superfluous function xdl_get_rec() in xemit - xdiff: delete unnecessary fields from xrecord_t and xdfile_t - xdiff: delete local variables and initialize/free xdfile_t directly - xdiff: delete static forward declarations in xprepare A lot of code clean-up of xdiff. Split out of a larger topic. Will merge to 'next'? source: * ar/submodule-gitdir-tweak (2025-10-06) 5 commits - submodule: error out if gitdir name is too long - submodule: encode gitdir paths to avoid conflicts - strbuf: bring back is_rfc3986_unreserved - submodule: add gitdir path config override - submodule--helper: use submodule_name_to_gitdir in add_submodule Avoid local submodule repository directory paths overlapping with each other by encoding submodule names before using them as path components. Comments? source: <20251006112518.3764240-1-adrian.ratiu@collabora.com> * je/doc-push (2025-09-23) 2 commits (merged to 'next' on 2025-09-29 at 4ff1b675ed) + doc: git-push: rewrite refspec specification + doc: git-push: create PUSH RULES section Doc updates. Will merge to 'master'. source: * ps/odb-clean-stale-wrappers (2025-09-10) 1 commit (merged to 'next' on 2025-09-30 at 90f1033b8c) + odb: drop deprecated wrapper functions Code clean-up. Will merge to 'master'. source: <20250910-b4-pks-odb-drop-wrappers-v1-1-6ed660cb1eec@pks.im> * ps/commit-graph-per-object-source (2025-09-04) 5 commits - commit-graph: pass graphs that are to be merged as parameter - commit-graph: return commit graph from `repo_find_commit_pos_in_graph()` - commit-graph: return the prepared commit graph from `prepare_commit_graph()` - revision: drop explicit check for commit graph - blame: drop explicit check for commit graph Declare commit-graph is per object_source, which may not be a good idea. Will merge to 'next'. cf. cf. source: <20250904-b4-pks-commit-graph-via-source-v1-0-d932c2481e1a@pks.im> * ps/rust-balloon (2025-10-02) 9 commits (merged to 'next' on 2025-10-02 at fe4cdc2dfa) + ci: enable Rust for breaking-changes jobs + ci: convert "pedantic" job into full build with breaking changes + BreakingChanges: announce Rust becoming mandatory + varint: reimplement as test balloon for Rust + varint: use explicit width for integers + help: report on whether or not Rust is enabled + Makefile: introduce infrastructure to build internal Rust library + Makefile: reorder sources after includes + meson: add infrastructure to build internal Rust library Dip our toes a bit to (optionally) use Rust implemented helper called from our C code. Will merge to 'master'. cf. source: <20251002-b4-pks-rust-breaking-change-v8-0-3a89fd5b1ce7@pks.im> * sj/string-list (2025-10-05) 4 commits - refs: enable sign compare warnings check - string-list: change "string_list_find_insert_index" return type to "size_t" - string-list: replace negative index encoding with "exact_match" parameter - string-list: use bool instead of int for "exact_match" The "string-list" API function to find where a given string would be inserted got updated so that it can use unrealistically huge array index that would only fit in size_t but not int or ssize_t to achieve unstated goal. Will merge to 'next'? source: * ps/packfile-store (2025-09-23) 16 commits (merged to 'next' on 2025-09-29 at 342bb57fc2) + packfile: refactor `get_packed_git_mru()` to work on packfile store + packfile: refactor `get_all_packs()` to work on packfile store + packfile: refactor `get_packed_git()` to work on packfile store + packfile: move `get_multi_pack_index()` into "midx.c" + packfile: introduce function to load and add packfiles + packfile: refactor `install_packed_git()` to work on packfile store + packfile: split up responsibilities of `reprepare_packed_git()` + packfile: refactor `prepare_packed_git()` to work on packfile store + packfile: reorder functions to avoid function declaration + odb: move kept cache into `struct packfile_store` + odb: move MRU list of packfiles into `struct packfile_store` + odb: move packfile map into `struct packfile_store` + odb: move initialization bit into `struct packfile_store` + odb: move list of packfiles into `struct packfile_store` + packfile: introduce a new `struct packfile_store` + Merge branch 'ps/object-store-midx-dedup-info' into ps/packfile-store (this branch is used by tb/incremental-midx-part-3.1.) Code clean-up around the in-core list of all the pack files and object database(s). Will merge to 'master'. cf. source: <20250923-b4-pks-packfiles-store-v6-0-b48f2a882759@pks.im> * ds/sparse-checkout-clean (2025-09-12) 7 commits (merged to 'next' on 2025-09-25 at 00b296f153) + t: expand tests around sparse merges and clean + sparse-index: point users to new 'clean' action + sparse-checkout: add --verbose option to 'clean' + dir: add generic "walk all files" helper + sparse-checkout: match some 'clean' behavior + sparse-checkout: add basics of 'clean' command + sparse-checkout: remove use of the_repository "git sparse-checkout" subcommand learned a new "clean" action to prune otherwise unused working-tree files that are outside the areas of interest. On hold. cf. <3537e220-44b6-4e37-a568-cef34a2fddfd@gmail.com> source: -------------------------------------------------- [Discarded] These have been kept outside 'seen' for some time, and were removed for now, until they get resubmit in a shape that plays well with other topics in 'seen'. * lc/rebase-trailer (2025-08-03) 2 commits . rebase: support --trailer . trailer: append trailers in-process and drop the fork to `interpret-trailers` Has been expecting a reroll for way too long. cf. <198826af571.62b85cb31711042.2415806544948206668@linux.beauty> cf. cf. <1995bf77c93.3eeb42b4972717.3783775021840050008@linux.beauty> source: <20250803150059.402017-1-me@linux.beauty> * ac/deglobal-sparse-variables (2025-07-18) 3 commits . environment: remove the global variable 'sparse_expect_files_outside_of_patterns' . environment: move access to "core.sparsecheckoutcone" into repo_settings . environment: move access to "core.sparsecheckout" into repo_settings Two global variables related to sparse checkout have been moved to the repository settings structure. Has been expecting a reroll for way too long. cf. Ejected out of 'seen' for now. source: