* What's cooking in git.git (Jul 2025, #08; Mon, 28)
@ 2025-07-29 1:57 Junio C Hamano
2025-07-29 2:05 ` Junio C Hamano
` (2 more replies)
0 siblings, 3 replies; 5+ messages in thread
From: Junio C Hamano @ 2025-07-29 1:57 UTC (permalink / raw)
To: git
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]
* am/xdiff-hash-tweak (2025-07-28) 3 commits
- fixup! xdiff: optimize xdl_hash_record_verbatim
- xdiff: optimize xdl_hash_record_verbatim
- xdiff: refactor xdl_hash_record()
source: <20250728190520.10962-1-amonakov@ispras.ru>
* cc/t9350-cleanup (2025-07-25) 1 commit
- t9350: redirect input to only fast-import
Test clean-up.
Will merge to 'next'.
source: <20250725160536.2909011-1-christian.couder@gmail.com>
* hy/blame-simplify-get-commit-info (2025-07-27) 1 commit
- blame: remove parameter detailed in get_commit_info()
Code simplification.
Will merge to 'next'.
source: <20250728035548.94277-1-hanyang.tony@bytedance.com>
* kn/for-each-ref-skip-updates (2025-07-28) 5 commits
- ref-filter: use REF_ITERATOR_SEEK_SET_PREFIX instead of '1'
- t6302: add test combining '--start-after' with '--exclude'
- for-each-ref: reword the documentation for '--start-after'
- for-each-ref: fix documentation argument ordering
- ref-cache: use 'size_t' instead of int for length
(this branch uses kn/for-each-ref-skip.)
Code clean-up.
Will merge to 'next'?
source: <20250728-kn-small-cleanups-v2-0-d3021c8bf471@gmail.com>
* ps/remote-rename-fix (2025-07-28) 5 commits
- builtin/remote: only iterate through refs that are to be renamed
- builtin/remote: rework how remote refs get renamed
- refs: simplify logic when migrating reflog entries
- refs: pass refname when invoking reflog entry callback
- Merge branch 'ps/reflog-migrate-fixes' into ps/remote-rename-fix
(this branch uses ps/reflog-migrate-fixes.)
"git remote rename origin upstream" failed to move origin/HEAD to
upstream/HEAD when origin/HEAD is unborn and performed other
renames extremely inefficiently, which has been corrected.
Will merge to 'next'?
source: <20250728-pks-remote-rename-improvements-v1-0-f654f2b5c5ae@pks.im>
* rs/tighten-alias-help (2025-07-25) 1 commit
- git: show alias info only with lone -h
"git -c alias.foo=bar foo -h baz" reported "'foo' is aliased to
'bar'" and then went on to do "git foo -h baz", which was
unexpected. Tighten the rule so that alias expansion is reported
only when "-h" is the sole option.
Will merge to 'next'?
source: <a35dc2bf-015c-472d-9528-6763f7aac180@web.de>
--------------------------------------------------
[Graduated to 'master']
* ac/auto-comment-char-fix (2025-07-16) 2 commits
(merged to 'next' on 2025-07-21 at be3e6c3480)
+ config: set comment_line_str to "#" when core.commentChar=auto
+ commit: avoid scanning trailing comments when 'core.commentChar' is "auto"
"git commit" that concludes a conflicted merge failed to notice and remove
existing comment added automatically (like "# Conflicts:") when the
core.commentstring is set to 'auto'.
source: <cover.1752665506.git.ayu.chandekar@gmail.com>
* bc/contribution-under-non-real-names (2025-07-15) 1 commit
(merged to 'next' on 2025-07-16 at 6ba607880d)
+ SubmittingPatches: allow non-real name contributions
Document that we do not require "real" name when signing your
patches off.
source: <20250716002523.1392423-1-sandals@crustytoothpaste.net>
* kl/test-installed-fix (2025-07-15) 2 commits
(merged to 'next' on 2025-07-16 at 512176f26c)
+ test-lib: respect GIT_TEST_INSTALLED when querying default hash
+ Merge branch 'bc/use-sha256-by-default-in-3.0' into kl/test-installed-fix
GIT_TEST_INSTALLED was not honored in the recent topic related to
SHA256 hashes, which has been corrected.
source: <pull.2011.git.git.1752605874596.gitgitgadget@gmail.com>
* pw/adopt-c99-bool-officially (2025-07-16) 3 commits
(merged to 'next' on 2025-07-16 at 62afce02b7)
+ strbuf: convert predicates to return bool
+ git-compat-util: convert string predicates to return bool
+ CodingGuidelines: allow the use of bool
Declare weather-balloon we raised for "bool" type 18 months ago a
success and officially allow using the type in our codebase.
source: <cover.1752658700.git.phillip.wood@dunelm.org.uk>
* pw/config-kvi-remove-path (2025-07-15) 1 commit
(merged to 'next' on 2025-07-16 at 3203507b49)
+ config: remove unneeded struct field
Remove a redundant member from kvi struct.
source: <31724ce432b19088b7c7643654788d8e712b3193.1752588042.git.phillip.wood@dunelm.org.uk>
* rj/meson-libexecdir-fix (2025-07-15) 2 commits
(merged to 'next' on 2025-07-16 at 36c2be9510)
+ po/meson.build: add missing 'ga' language code
+ meson: fix installation when -Dlibexexdir is set
Meson-based build did not handle libexecdir setting correctly,
which has been corrected.
source: <20250715233239.1539780-1-ramsay@ramsayjones.plus.com>
* rs/pop-recent-commit-with-prio-queue (2025-07-18) 3 commits
(merged to 'next' on 2025-07-22 at b859ed88ed)
+ commit: use prio_queue_replace() in pop_most_recent_commit()
+ prio-queue: add prio_queue_replace()
+ commit: convert pop_most_recent_commit() to prio_queue
The pop_most_recent_commit() function can have quite expensive
worst case performance characteristics, which has been optimized by
using prio-queue data structure.
source: <8ff40c56-368a-4347-aeae-2aca2cb6a5b2@web.de>
* ss/compat-bswap-revamp (2025-07-15) 6 commits
(merged to 'next' on 2025-07-16 at c8713eca28)
+ bswap.h: provide a built-in based version of bswap32/64 if possible
+ bswap.h: remove optimized x86 version of bswap32/64
+ bswap.h: always overwrite ntohl/ ntohll macros
+ bswap.h: define GIT_LITTLE_ENDIAN on msvc as little endian
+ bswap.h: add support for __BYTE_ORDER__
+ Merge branch 'ss/revert-builtin-bswap-stuff' into ss/compat-bswap-revamp
Clean-up compat/bswap.h mess.
cf. <aHbX4hIKbjO6h1R5@fruit.crustytoothpaste.net>
source: <20250715191230.12081-1-sebastian@breakpoint.cc>
--------------------------------------------------
[Cooking]
* jc/document-test-balloons-in-flight (2025-07-23) 1 commit
(merged to 'next' on 2025-07-24 at c239410df9)
+ CodingGuidelines: document test balloons in flight
To help our developers, document what C99 language features are
being considered for adoption, in addition to what past experiments
have already decided.
Will merge to 'master'.
source: <xmqqecu6n1pt.fsf@gitster.g>
* ly/pull-autostash (2025-07-20) 1 commit
(merged to 'next' on 2025-07-24 at dd85f09d69)
+ pull: add pull.autoStash config option
"git pull" learned to pay attention to pull.autostash configuration
variable, which overrides rebase/merge.autostash.
Will merge to 'master'.
source: <20250720124334.12045-1-yldhome2d2@gmail.com>
* jk/revision-no-early-output (2025-07-19) 1 commit
(merged to 'next' on 2025-07-23 at cfc20b3eb9)
+ revision: drop early output option
Remove unsupported, unused, and unsupportable old option from "git
log".
Will merge to 'master'.
source: <20250719070813.GA706382@coredump.intra.peff.net>
* ag/imap-send-list-folders-doc (2025-07-22) 1 commit
(merged to 'next' on 2025-07-24 at d7db48890b)
+ docs: explain how to use `git imap-send --list` command to get a list of available folders
Document recently added "git imap-send --list" with an example.
Will merge to 'master'.
source: <20250722114827.22493-1-gargaditya08@live.com>
* ag/send-email-imap-sent (2025-07-22) 1 commit
- send-email: add ability to send a copy of sent emails to an IMAP folder
"git send-email" learned to drive "git imap-send" to store already
sent e-mails in an IMAP folder.
A reroll (v4) exists.
cf. <PN3PR01MB9597EC4C5DF97943587AEEB4B85FA@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM>
source: <da7cee769f25871ed3f934e3ec7f2cccf0a0420c.1753182534.git.gargaditya08@live.com>
* en/ort-rename-fixes (2025-07-22) 6 commits
- merge-ort: fix directory rename on top of source of other rename/delete
- merge-ort: fix incorrect file handling
- t6423: fix missed staging of file in testcases 12i,12j,12k
- t6423: document two bugs with rename-to-self testcases
- merge-ort: drop unnecessary temporary in check_for_directory_rename()
- merge-ort: update comments to modern testfile location
Various bugs about rename handling in "ort" merge strategy have
been fixed.
Comments?
source: <pull.1943.git.1753197791.gitgitgadget@gmail.com>
* hl/test-helper-fd-close (2025-07-23) 4 commits
(merged to 'next' on 2025-07-28 at 1e63fd84fe)
+ test-delta: close output descriptor after use
+ test-delta: use strbufs to hold input files
+ test-delta: handle errors with die()
+ t/helper/test-truncate: close file descriptor after truncation
A few file descriptors left unclosed upon program completion in a
few test helper programs are now closed.
Will merge to 'master'.
source: <20250722174102.1876197-1-lhywkd22@gmail.com>
source: <20250723235929.GB592873@coredump.intra.peff.net>
* jb/t7510-gpg-program-path (2025-07-28) 2 commits
- t7510: Windows fix
(merged to 'next' on 2025-07-24 at eb8bc447f9)
+ t7510: add test cases for non-absolute gpg program
A new test to ensure that a recent change will keep working.
Broken on Windows.
cf. <20250725043043.GA3002998@coredump.intra.peff.net>
source: <20250722190922.51183-3-jonas.brandstoetter@gmx.at>
* jc/do-not-scan-argv-without-parsing (2025-07-21) 1 commit
(merged to 'next' on 2025-07-23 at 8e3db5dcca)
+ rev-list: update a NEEDSWORK comment
Update a hard-to-read in-code NEEDSWORK comment.
Will merge to 'master'.
source: <xmqqecu9w4a5.fsf@gitster.g>
* jc/rev-list-info-cleanup (2025-07-18) 1 commit
(merged to 'next' on 2025-07-23 at 09282d051a)
+ rev-list: make "struct rev_list_info" static to the only user
Move structure definition from unrelated header file to where it
belongs.
Will merge to 'master'.
source: <xmqqa551127o.fsf@gitster.g>
* jk/unleak-reflog-expire-entry (2025-07-22) 1 commit
(merged to 'next' on 2025-07-23 at 1663299f09)
+ reflog: close leak of reflog expire entry
Leakfix.
Will merge to 'master'.
source: <20250722-jk-fix-leak-reflog-expire-config-v4-1-b65a83551020@gmail.com>
* jt/switch-restore-no-longer-experimental (2025-07-28) 1 commit
- builtin: unmark git-switch and git-restore as experimental
Declare that "git switch" and "git restore" are no longer
experimental.
Will merge to 'next'.
source: <20250728194218.2379432-1-jltobler@gmail.com>
* ps/reflog-migrate-fixes (2025-07-24) 8 commits
- refs: fix invalid old object IDs when migrating reflogs
- refs: stop unsetting REF_HAVE_OLD for log-only updates
- refs: fix identity for migrated reflogs
- ident: fix type of string length parameter
- builtin/reflog: implement subcommand to write new entries
- refs: export `ref_transaction_update_reflog()`
- builtin/reflog: improve grouping of subcommands
- Documentation/git-reflog: convert to use synopsis type
(this branch is used by ps/remote-rename-fix.)
"git refs migrate" to migrate the reflog entries from a refs
backend to another had a handful of bugs squashed.
Will merge to 'next'.
source: <20250725-pks-reflog-append-v2-0-e4e7cbe3f578@pks.im>
* jc/ci-print-test-failures-fix (2025-07-16) 1 commit
(merged to 'next' on 2025-07-24 at a1924c981b)
+ ci: allow github-actions print test failures again
CI fix.
Will merge to 'master'.
source: <xmqqa553alp1.fsf_-_@gitster.g>
* ds/sparse-checkout-clean (2025-07-16) 9 commits
- sparse-checkout: make 'clean' clear more files
- 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
- Merge branch 'ac/deglobal-sparse-variables' into ds/sparse-checkout-clean
(this branch uses ac/deglobal-sparse-variables.)
"git sparse-checkout" subcommand learned a new "clean" action to
prune otherwise unused working-tree files that are outside the
areas of interest.
Needs to wait for the base topic to solidify.
source: <pull.1941.v2.git.1752716054.gitgitgadget@gmail.com>
* ps/config-wo-the-repository (2025-07-23) 22 commits
- config: fix sign comparison warnings
- config: move Git config parsing into "environment.c"
- config: remove unused `the_repository` wrappers
- config: drop `git_config_set_multivar()` wrapper
- config: drop `git_config_get_multivar_gently()` wrapper
- config: drop `git_config_set_multivar_in_file_gently()` wrapper
- config: drop `git_config_set_in_file_gently()` wrapper
- config: drop `git_config_set()` wrapper
- config: drop `git_config_set_gently()` wrapper
- config: drop `git_config_set_in_file()` wrapper
- config: drop `git_config_get_bool()` wrapper
- config: drop `git_config_get_ulong()` wrapper
- config: drop `git_config_get_int()` wrapper
- config: drop `git_config_get_string()` wrapper
- config: drop `git_config_get_string()` wrapper
- config: drop `git_config_get_string_multi()` wrapper
- config: drop `git_config_get_value()` wrapper
- config: drop `git_config_get_value()` wrapper
- config: drop `git_config_get()` wrapper
- config: drop `git_config_clear()` wrapper
- config: drop `git_config()` wrapper
- Merge branch 'bc/use-sha256-by-default-in-3.0' into ps/config-wo-the-repository
The config API had a set of convenience wrapper functions that
implicitly use the_repository instance; they have been removed and
inlined at the calling sites.
Will merge to 'next'?
source: <20250723-pks-config-wo-the-repository-v2-0-1502d60d3867@pks.im>
* cb/meson-avoid-broken-macos-pcre2 (2025-07-18) 1 commit
(merged to 'next' on 2025-07-24 at b8cea692a4)
+ meson: work around broken system PCRE2 dependency in macOS
Build fix for macOS.
Will merge to 'master'.
source: <20250718170225.6063-1-carenas@gmail.com>
* pw/3.0-commentchar-auto-deprecation (2025-07-08) 2 commits
- commit: print advice when core.commentString=auto
- breaking-changes: deprecate support for core.commentString=auto
Proposes to deprecate "core.commentChar=auto" that attempts to
dynamically pick a suitable comment character, as it is too much
trouble to support for little benefit.
Expecting a reroll.
cf. <b811a0dc-fb49-4f66-a9ae-89a45d7ff104@gmail.com>
source: <cover.1751983009.git.phillip.wood@dunelm.org.uk>
* ps/object-store-midx (2025-07-15) 9 commits
(merged to 'next' on 2025-07-28 at a6727995ac)
+ midx: remove now-unused linked list of multi-pack indices
+ packfile: stop using linked MIDX list in `get_all_packs()`
+ packfile: stop using linked MIDX list in `find_pack_entry()`
+ packfile: refactor `get_multi_pack_index()` to work on sources
+ midx: stop using linked list when closing MIDX
+ packfile: refactor `prepare_packed_git_one()` to work on sources
+ midx: start tracking per object database source
+ Merge branch 'tb/midx-avoid-cruft-packs' into ps/object-store-midx
+ Merge branch 'ps/object-store' into ps/object-store-midx
Redefine where the multi-pack-index sits in the object subsystem,
which recently was restructured to allow multiple backends that
support a single object source that belongs to one repository. A
midx does span mulitple "object sources".
Will merge to 'master'.
cf. <aIHoAiakZr5i2psM@pks.im>
source: <20250715-b4-pks-midx-via-odb-alternate-v2-0-b0ca0b4b516e@pks.im>
* ps/object-file-wo-the-repository (2025-07-16) 17 commits
- object-file: get rid of `the_repository` in index-related functions
- object-file: get rid of `the_repository` in `force_object_loose()`
- object-file: get rid of `the_repository` in `read_loose_object()`
- object-file: get rid of `the_repository` in loose object iterators
- object-file: remove declaration for `for_each_file_in_obj_subdir()`
- object-file: inline `for_each_loose_file_in_objdir_buf()`
- object-file: get rid of `the_repository` when writing objects
- odb: introduce `odb_write_object()`
- loose: write loose objects map via their source
- object-file: get rid of `the_repository` in `finalize_object_file()`
- object-file: get rid of `the_repository` in `loose_object_info()`
- object-file: get rid of `the_repository` when freshening objects
- object-file: inline `check_and_freshen()` functions
- object-file: get rid of `the_repository` in `has_loose_object()`
- object-file: stop using `the_hash_algo`
- object-file: fix -Wsign-compare warnings
- Merge branch 'ps/object-store' into ps/object-file-wo-the-repository
Reduce implicit assumption and dependence on the_repository in the
object-file subsystem.
Comments?
source: <20250717-pks-object-file-wo-the-repository-v2-0-36d2cd6c700e@pks.im>
* ua/t1517-short-help-tests (2025-07-21) 2 commits
. t5200: move `update-server-info -h` test from t1517
. t/t1517: automate `git subcmd -h` tests outside a repository
Test shuffling.
Seems to introduce a few "todo passed" when merged to 'seen'.
source: <20250721115519.140361-1-usmanakinyemi202@gmail.com>
* kn/for-each-ref-skip (2025-07-24) 6 commits
(merged to 'next' on 2025-07-28 at c721b90bdc)
+ ref-cache: set prefix_state when seeking
(merged to 'next' on 2025-07-15 at 4ea3c74afd)
+ for-each-ref: introduce a '--start-after' option
+ ref-filter: remove unnecessary else clause
+ refs: selectively set prefix in the seek functions
+ ref-cache: remove unused function 'find_ref_entry()'
+ refs: expose `ref_iterator` via 'refs.h'
(this branch is used by kn/for-each-ref-skip-updates.)
"git for-each-ref" learns "--skip-until" option to help
applications that want to page its output.
Will merge to 'master'.
source: <20250715-306-git-for-each-ref-pagination-v5-0-852d5a2f56e1@gmail.com>
* tc/last-modified (2025-07-18) 6 commits
- fixup! last-modified: support --extended format
- last-modified: support --extended format
- pretty: allow caller to disable indentation
- last-modified: use Bloom filters when available
- t/perf: add last-modified perf script
- last-modified: new subcommand to show when files were last modified
A new command "git last-modified" is proposed to show the closest
ancestor commit that touched each path.
Still in flux.
source: <20250716133206.1787549-1-toon@iotcl.com>
* lo/repo-info (2025-07-21) 5 commits
. repo: add the --format flag
. repo: add field layout.shallow
. repo: add field layout.bare
. repo: add the field references.format
. repo: declare the repo command
A new subcommand "git repo" gives users a way to grab various
repository characteristics.
Expecting a reroll.
Ejected as it seems to break CI when merged to 'seen'.
source: <20250722002835.33428-1-lucasseikioshiro@gmail.com>
* 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
(this branch is used by ds/sparse-checkout-clean.)
Two global variables related to sparse checkout have been moved to
the repository settings structure.
Ready?
source: <cover.1752882401.git.ayu.chandekar@gmail.com>
* ow/rebase-verify-insn-fmt-before-initializing-state (2025-06-09) 1 commit
(merged to 'next' on 2025-07-28 at 561f172338)
+ rebase: write script before initializing state
"git rebase -i" with bogus rebase.instructionFormat configuration
failed to produce the todo file after recording the state files,
leading to confused "git status"; this has been corrected.
Will merge to 'master'.
source: <20250609221055.136074-1-oystwa@gmail.com>
* sk/reftable-clarify-tests (2025-07-24) 10 commits
(merged to 'next' on 2025-07-24 at b3930223b7)
+ t/unit-tests: finalize migration of reftable-related tests
+ t/unit-tests: convert reftable stack test to use clar
+ t/unit-tests: convert reftable record test to use clar
+ t/unit-tests: convert reftable readwrite test to use clar
+ t/unit-tests: convert reftable table test to use clar
+ t/unit-tests: convert reftable pq test to use clar
+ t/unit-tests: convert reftable merged test to use clar
+ t/unit-tests: convert reftable block test to use clar
+ t/unit-tests: convert reftable basics test to use clar test framework
+ t/unit-tests: implement clar specific reftable test helper functions
The reftable unit tests are now ported to the "clar" unit testing
framework.
Will merge to 'master'.
cf. <aIJGNGxhkz9CESFu@pks.im>
source: <20250724142837.67149-1-kuforiji98@gmail.com>
* tb/prepare-midx-pack-cleanup (2025-05-28) 5 commits
- midx: return a `packed_git` pointer from `prepare_midx_pack()`
- midx-write.c: extract inner loop from fill_packs_from_midx()
- midx-write.c: guard against incremental MIDXs in want_included_pack()
- midx: access pack names through `nth_midxed_pack_name()`
- Merge branch 'ps/midx-negative-packfile-cache' into tb/prepare-midx-pack-cleanup
Improvement on Multi-pack-index API.
Expecting a reroll.
cf. <20250530065034.GC1321283@coredump.intra.peff.net>
source: <cover.1748473122.git.me@ttaylorr.com>
* kj/renamed-submodule (2025-07-24) 4 commits
- fixup! submodule: skip redundant active entries when pattern covers path
- fixup! submodule: prevent overwriting .gitmodules on path reuse
- submodule: skip redundant active entries when pattern covers path
- submodule: prevent overwriting .gitmodules on path reuse
The case where a new submodule takes a path where used to be a
completely different subproject is now dealt a bit better than
before.
Looking good.
source: <20250724152418.45226-1-jayatheerthkulkarni2005@gmail.com>
* lm/add-p-context (2025-07-23) 5 commits
- fixup! add-patch: add diff.context command line overrides
- add-patch: add diff.context command line overrides
- add-patch: respect diff.context configuration
- t: use test_config in t4055
- t: use test_grep in t3701 and t4055
"git add/etc -p" now honors diff.context configuration variable,
and learns to honor -U<n> option.
Expecting a reroll.
cf. <49703ba5-5f2a-4e91-b9c7-5500720d5d3d@gmail.com>
source: <pull.1915.v4.git.1752928113.gitgitgadget@gmail.com>
* cc/promisor-remote-capability (2025-07-21) 5 commits
- promisor-remote: use string constants for 'name' and 'url' too
- promisor-remote: allow a client to check fields
- promisor-remote: refactor how we parse advertised fields
- promisor-remote: allow a server to advertise more fields
- promisor-remote: refactor to get rid of 'struct strvec'
The "promisor-remote" capability mechanism has been updated to
allow the "partialCloneFilter" settings and the "token" value to be
communicated from the server side.
Will merge to 'next'?
source: <20250721141056.2283349-1-christian.couder@gmail.com>
--------------------------------------------------
[Discarded]
* pw/compound-literal-test-balloon (2025-07-14) 1 commit
. strbuf: add compound literal test balloon
Gauge if the world is ready for compound literal that can make the
resulting code clearer in some places.
Discarded; it turns out that we already have a test balloon on this.
source: <7ac55a5096c261b706f47ca239c381f71db2b67a.1752499653.git.phillip.wood@dunelm.org.uk>
* jc/tag-idempotent-no-op (2025-07-11) 1 commit
. tag: allow idempotent "git tag" without "--force"
"git tag T O" when the tag T is already pointing at the object O is
a no-op; we used to but no longer error out such a request and
require "--force" and instead turn it into a no-op.
Will discard.
cf. <dt5ruadvr7lmhsbypmb6yili5cookfx5btw4gzfeui7ehxxajv@ziael4udbbcy>
source: <xmqqv7nyzgp7.fsf@gitster.g>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: What's cooking in git.git (Jul 2025, #08; Mon, 28)
2025-07-29 1:57 What's cooking in git.git (Jul 2025, #08; Mon, 28) Junio C Hamano
@ 2025-07-29 2:05 ` Junio C Hamano
2025-07-29 6:15 ` Patrick Steinhardt
2025-07-29 7:37 ` Toon Claes
2 siblings, 0 replies; 5+ messages in thread
From: Junio C Hamano @ 2025-07-29 2:05 UTC (permalink / raw)
To: git
Junio C Hamano <gitster@pobox.com> writes:
> * lo/repo-info (2025-07-21) 5 commits
> . repo: add the --format flag
> . repo: add field layout.shallow
> . repo: add field layout.bare
> . repo: add the field references.format
> . repo: declare the repo command
>
> A new subcommand "git repo" gives users a way to grab various
> repository characteristics.
>
> Expecting a reroll.
> Ejected as it seems to break CI when merged to 'seen'.
> source: <20250722002835.33428-1-lucasseikioshiro@gmail.com>
Sorry for a false alarm.
cf. https://github.com/git/git/actions/runs/16584268807
All topics in flight including this one, when excluding the
tc/last-modified topic, seems to be fine in 'seen'.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: What's cooking in git.git (Jul 2025, #08; Mon, 28)
2025-07-29 1:57 What's cooking in git.git (Jul 2025, #08; Mon, 28) Junio C Hamano
2025-07-29 2:05 ` Junio C Hamano
@ 2025-07-29 6:15 ` Patrick Steinhardt
2025-07-29 7:37 ` Toon Claes
2 siblings, 0 replies; 5+ messages in thread
From: Patrick Steinhardt @ 2025-07-29 6:15 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
On Mon, Jul 28, 2025 at 06:57:27PM -0700, Junio C Hamano wrote:
> * ps/remote-rename-fix (2025-07-28) 5 commits
> - builtin/remote: only iterate through refs that are to be renamed
> - builtin/remote: rework how remote refs get renamed
> - refs: simplify logic when migrating reflog entries
> - refs: pass refname when invoking reflog entry callback
> - Merge branch 'ps/reflog-migrate-fixes' into ps/remote-rename-fix
> (this branch uses ps/reflog-migrate-fixes.)
>
> "git remote rename origin upstream" failed to move origin/HEAD to
> upstream/HEAD when origin/HEAD is unborn and performed other
> renames extremely inefficiently, which has been corrected.
>
> Will merge to 'next'?
> source: <20250728-pks-remote-rename-improvements-v1-0-f654f2b5c5ae@pks.im>
Let's wait a bit with this one. It's a non-trivial refactoring, so I'd
like to have a couple eyes on it.
> * ps/reflog-migrate-fixes (2025-07-24) 8 commits
> - refs: fix invalid old object IDs when migrating reflogs
> - refs: stop unsetting REF_HAVE_OLD for log-only updates
> - refs: fix identity for migrated reflogs
> - ident: fix type of string length parameter
> - builtin/reflog: implement subcommand to write new entries
> - refs: export `ref_transaction_update_reflog()`
> - builtin/reflog: improve grouping of subcommands
> - Documentation/git-reflog: convert to use synopsis type
> (this branch is used by ps/remote-rename-fix.)
>
> "git refs migrate" to migrate the reflog entries from a refs
> backend to another had a handful of bugs squashed.
>
> Will merge to 'next'.
> source: <20250725-pks-reflog-append-v2-0-e4e7cbe3f578@pks.im>
There's been some discussion with Peff at [1] around one of the commits.
I plan to send another revision later today that makes this area a bit
more robust. So please hold off merging this series for now.
> * ps/config-wo-the-repository (2025-07-23) 22 commits
> - config: fix sign comparison warnings
> - config: move Git config parsing into "environment.c"
> - config: remove unused `the_repository` wrappers
> - config: drop `git_config_set_multivar()` wrapper
> - config: drop `git_config_get_multivar_gently()` wrapper
> - config: drop `git_config_set_multivar_in_file_gently()` wrapper
> - config: drop `git_config_set_in_file_gently()` wrapper
> - config: drop `git_config_set()` wrapper
> - config: drop `git_config_set_gently()` wrapper
> - config: drop `git_config_set_in_file()` wrapper
> - config: drop `git_config_get_bool()` wrapper
> - config: drop `git_config_get_ulong()` wrapper
> - config: drop `git_config_get_int()` wrapper
> - config: drop `git_config_get_string()` wrapper
> - config: drop `git_config_get_string()` wrapper
> - config: drop `git_config_get_string_multi()` wrapper
> - config: drop `git_config_get_value()` wrapper
> - config: drop `git_config_get_value()` wrapper
> - config: drop `git_config_get()` wrapper
> - config: drop `git_config_clear()` wrapper
> - config: drop `git_config()` wrapper
> - Merge branch 'bc/use-sha256-by-default-in-3.0' into ps/config-wo-the-repository
>
> The config API had a set of convenience wrapper functions that
> implicitly use the_repository instance; they have been removed and
> inlined at the calling sites.
>
> Will merge to 'next'?
> source: <20250723-pks-config-wo-the-repository-v2-0-1502d60d3867@pks.im>
Yup, this one is ready from my perspective.
Thanks!
Patrick
[1]: <20250725113610.GA3015361@coredump.intra.peff.net>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: What's cooking in git.git (Jul 2025, #08; Mon, 28)
2025-07-29 1:57 What's cooking in git.git (Jul 2025, #08; Mon, 28) Junio C Hamano
2025-07-29 2:05 ` Junio C Hamano
2025-07-29 6:15 ` Patrick Steinhardt
@ 2025-07-29 7:37 ` Toon Claes
2025-07-29 15:30 ` Junio C Hamano
2 siblings, 1 reply; 5+ messages in thread
From: Toon Claes @ 2025-07-29 7:37 UTC (permalink / raw)
To: Junio C Hamano, git
Junio C Hamano <gitster@pobox.com> writes:
> * ps/object-file-wo-the-repository (2025-07-16) 17 commits
> - object-file: get rid of `the_repository` in index-related functions
> - object-file: get rid of `the_repository` in `force_object_loose()`
> - object-file: get rid of `the_repository` in `read_loose_object()`
> - object-file: get rid of `the_repository` in loose object iterators
> - object-file: remove declaration for `for_each_file_in_obj_subdir()`
> - object-file: inline `for_each_loose_file_in_objdir_buf()`
> - object-file: get rid of `the_repository` when writing objects
> - odb: introduce `odb_write_object()`
> - loose: write loose objects map via their source
> - object-file: get rid of `the_repository` in `finalize_object_file()`
> - object-file: get rid of `the_repository` in `loose_object_info()`
> - object-file: get rid of `the_repository` when freshening objects
> - object-file: inline `check_and_freshen()` functions
> - object-file: get rid of `the_repository` in `has_loose_object()`
> - object-file: stop using `the_hash_algo`
> - object-file: fix -Wsign-compare warnings
> - Merge branch 'ps/object-store' into ps/object-file-wo-the-repository
>
> Reduce implicit assumption and dependence on the_repository in the
> object-file subsystem.
>
> Comments?
> source: <20250717-pks-object-file-wo-the-repository-v2-0-36d2cd6c700e@pks.im>
I did do a thorough review on v1 in the past and did a little less
thorough review on v2, but the range-diff is tiny anyway.
Version two removes the controversial commits around global config. With
this, this patch series is not able to drop USE_THE_REPOSITORY_VARIABLE
from the object-file.c yet. Nevertheless, the whole series is still
worthwhile to me.
--
Cheers,
Toon
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: What's cooking in git.git (Jul 2025, #08; Mon, 28)
2025-07-29 7:37 ` Toon Claes
@ 2025-07-29 15:30 ` Junio C Hamano
0 siblings, 0 replies; 5+ messages in thread
From: Junio C Hamano @ 2025-07-29 15:30 UTC (permalink / raw)
To: Toon Claes; +Cc: git
Toon Claes <toon@iotcl.com> writes:
> Junio C Hamano <gitster@pobox.com> writes:
>
>> * ps/object-file-wo-the-repository (2025-07-16) 17 commits
>> - object-file: get rid of `the_repository` in index-related functions
>> - object-file: get rid of `the_repository` in `force_object_loose()`
>> - object-file: get rid of `the_repository` in `read_loose_object()`
>> - object-file: get rid of `the_repository` in loose object iterators
>> - object-file: remove declaration for `for_each_file_in_obj_subdir()`
>> - object-file: inline `for_each_loose_file_in_objdir_buf()`
>> - object-file: get rid of `the_repository` when writing objects
>> - odb: introduce `odb_write_object()`
>> - loose: write loose objects map via their source
>> - object-file: get rid of `the_repository` in `finalize_object_file()`
>> - object-file: get rid of `the_repository` in `loose_object_info()`
>> - object-file: get rid of `the_repository` when freshening objects
>> - object-file: inline `check_and_freshen()` functions
>> - object-file: get rid of `the_repository` in `has_loose_object()`
>> - object-file: stop using `the_hash_algo`
>> - object-file: fix -Wsign-compare warnings
>> - Merge branch 'ps/object-store' into ps/object-file-wo-the-repository
>>
>> Reduce implicit assumption and dependence on the_repository in the
>> object-file subsystem.
>>
>> Comments?
>> source: <20250717-pks-object-file-wo-the-repository-v2-0-36d2cd6c700e@pks.im>
>
> I did do a thorough review on v1 in the past and did a little less
> thorough review on v2, but the range-diff is tiny anyway.
>
> Version two removes the controversial commits around global config. With
> this, this patch series is not able to drop USE_THE_REPOSITORY_VARIABLE
> from the object-file.c yet. Nevertheless, the whole series is still
> worthwhile to me.
Thanks, I do recall reading your earlier reviews and they looked
sensible.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-07-29 15:30 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-07-29 1:57 What's cooking in git.git (Jul 2025, #08; Mon, 28) Junio C Hamano
2025-07-29 2:05 ` Junio C Hamano
2025-07-29 6:15 ` Patrick Steinhardt
2025-07-29 7:37 ` Toon Claes
2025-07-29 15:30 ` Junio C Hamano
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).