From: Junio C Hamano <gitster@pobox.com>
To: git@vger.kernel.org
Subject: What's cooking in git.git (May 2025, #02; Mon, 5)
Date: Mon, 05 May 2025 18:20:16 -0700 [thread overview]
Message-ID: <xmqqcycmlelr.fsf@gitster.g> (raw)
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/
--------------------------------------------------
[Graduated to 'master']
* cf/wrapper-netbsd-errno-eftype (2025-05-02) 1 commit
- wrapper: NetBSD gives EFTYPE where POSIX uses ELOOP
source: <20250502233403.289761-1-collin.funk1@gmail.com>
* es/meson-cleanup (2025-04-25) 6 commits
(merged to 'next' on 2025-04-28 at 0cc8ee98dc)
+ meson: only check for missing networking syms on non-Windows; add compat impls
+ meson: fix typo in function check that prevented checking for hstrerror
+ meson: add a couple missing networking dependencies
+ meson: do a full usage-based compile check for sysinfo
+ meson: check for getpagesize before using it
+ meson: simplify and parameterize various standard function checks
Code clean-up for meson-based build infrastructure.
source: <20250425053345.17288-1-eschwartz@gentoo.org>
* js/ci-win-meson-timeout-workaround (2025-04-25) 1 commit
- ci(win+Meson): build in Release mode, avoiding t7001-mv hangs
win+Meson CI pipeline, unlike other pipelines for Windows,
used to build artifacts in develper mode, which has been changed to
build them in release mode for consistency.
Expecting a reroll, stating an updated rationale for the change.
cf. <xmqqjz6zuf80.fsf@gitster.g>
source: <pull.1908.git.1745593515875.gitgitgadget@gmail.com>
* js/windows-arm64 (2025-04-23) 6 commits
(merged to 'next' on 2025-04-28 at c3d4cea333)
+ max_tree_depth: lower it for clangarm64 on Windows
+ mingw(arm64): do move the `/etc/git*` location
+ msvc: do handle builds on Windows/ARM64
+ mingw: do not use nedmalloc on Windows/ARM64
+ config.mak.uname: add support for clangarm64
+ bswap.h: add support for built-in bswap functions
Update to arm64 Windows port.
source: <pull.1904.v2.git.1745395308.gitgitgadget@gmail.com>
* kn/meson-hdr-check (2025-04-23) 7 commits
(merged to 'next' on 2025-04-29 at c925448238)
+ makefile/meson: add 'check-headers' as alias for 'hdr-check'
+ meson: add support for 'hdr-check'
+ meson: rename 'third_party_sources' to 'third_party_excludes'
+ meson: move headers definition from 'contrib/coccinelle'
+ coccinelle: meson: rename variables to be more specific
+ ci/github: install git before checking out the repository
+ Merge branch 'es/meson-build-skip-coccinelle' into kn/meson-hdr-check
Add an equivalent to "make hdr-check" target to meson based builds.
source: <20250423-505-wire-up-sparse-via-meson-v5-0-d1e2be4b2078@gmail.com>
* ps/meson-build-perf-bench (2025-04-28) 5 commits
(merged to 'next' on 2025-04-28 at f563542bfd)
+ meson: wire up benchmarking options
+ meson: wire up benchmarks
+ t/perf: fix benchmarks with out-of-tree builds
+ t/perf: use configured PERL_PATH
+ t/perf: fix benchmarks with alternate repo formats
The build procedure based on Meson learned to drive the
benchmarking tests.
source: <20250428-pks-meson-benchmarks-v5-0-5010dd014d1d@pks.im>
--------------------------------------------------
[New Topics]
* cf/wrapper-bsd-eloop (2025-05-02) 1 commit
- wrapper: NetBSD gives EFTYPE where POSIX uses ELOOP
The fallback implementation of open_nofollow() depended on
open("symlink", O_NOFOLLOW) to set errno to ELOOP, but a few BSD
derived systems use different errno, which has been worked around.
source: <20250502233403.289761-1-collin.funk1@gmail.com>
* js/ci-build-win-in-release-mode (2025-05-05) 1 commit
- ci(win+Meson): build in Release mode
win+Meson CI pipeline, unlike other pipelines for Windows,
used to build artifacts in develper mode, which has been changed to
build them in release mode for consistency.
WIll merge to 'next'.
source: <pull.1908.v2.git.1746282346370.gitgitgadget@gmail.com>
* js/ci-buildsystems-cleanup (2025-05-05) 3 commits
- config.mak.uname: drop the `vcxproj` target
- contrib/buildsystems: drop support for building . vcproj/.vcxproj files
- ci: stop linking the `prove` cache
Code clean-up around stale CI elements and building with Visual Studio.
Will merge to 'next'.
source: <pull.1916.git.1746430790.gitgitgadget@gmail.com>
* kh/docfixes (2025-05-05) 2 commits
- doc: branch: fix inline-verbatim
- doc: reflog: fix `drop` subheading
Docfixes.
Will merge to 'next'.
source: <cover.1746299135.git.code@khaugsbakk.name>
* kj/glob-path-with-special-char (2025-05-05) 1 commit
- dir.c: literal match with wildcard in pathspec should still glob
"git add 'f?o'" did not add 'foo' if 'f?o', an unusual pathname,
also existed on the working tree, which has been corrected.
Will merge to 'next'.
source: <20250503060736.587286-1-jayatheerthkulkarni2005@gmail.com>
* ps/ci-test-aggreg-fix-for-meson (2025-05-05) 1 commit
- ci: fix aggregation of test results with Meson
Test result aggregation did not work in Meson based CI jobs.
Will merge to 'next'.
source: <20250505-b4-pks-meson-aggregate-results-v1-1-f38899a0a2cc@pks.im>
--------------------------------------------------
[Cooking]
* cc/promisor-remote-capability (2025-04-29) 3 commits
- promisor-remote: allow a client to check fields
- promisor-remote: allow a server to advertise more fields
- promisor-remote: refactor to get rid of 'struct strvec'
Expecting a reroll.
cf. <CAP8UFD2LzijGsU3-aO-JBPtEfT+UtR_X_mqcdVigoOfdVAg1uA@mail.gmail.com>
source: <20250429145243.992252-1-christian.couder@gmail.com>
* en/hashmap-clear-fix (2025-04-29) 1 commit
(merged to 'next' on 2025-04-30 at b0cdbeb28e)
+ hashmap: ensure hashmaps are reusable after hashmap_clear()
hashmap API clean-up to ensure hashmap_clear() leaves a cleared map
in a reusable state.
Will merge to 'master'.
source: <pull.1911.git.1745941663160.gitgitgadget@gmail.com>
* js/diff-codeql-false-positive-workaround (2025-04-29) 1 commit
(merged to 'next' on 2025-05-01 at a840276032)
+ diff: check range before dereferencing an array element
Work around false positive given by CodeQL.
Will merge to 'master'.
source: <pull.1887.v3.git.1745926679028.gitgitgadget@gmail.com>
* ng/xdiff-truly-minimal (2025-04-29) 1 commit
(merged to 'next' on 2025-05-05 at 62e0c33153)
+ xdiff: disable cleanup_records heuristic with --minimal
"git diff --minimal" used to give non-minimal output when its
optimization kicked in, which has been disabled.
Will merge to 'master'.
source: <20250429140949.2634935-1-n.glodny@campus.lmu.de>
* ds/scalar-no-maintenance (2025-05-05) 4 commits
- scalar reconfigure: add --no-maintenance option
- scalar clone: add --no-maintenance option
- scalar register: add --no-maintenance option
- scalar: customize register_dir()'s behavior
Two "scalar" subcommands that adds a repository that hasn't been
under "scalar"'s control are taught an option not to enable the
scheduled maintenance on it.
Will merge to 'next'?
source: <pull.1913.v2.git.1746458844.gitgitgadget@gmail.com>
* ps/mv-contradiction-fix (2025-04-30) 2 commits
(merged to 'next' on 2025-05-01 at 5c27b05f45)
+ builtin/mv: convert assert(3p) into `BUG()`
+ builtin/mv: bail out when trying to move child and its parent
"git mv a a/b dst" would ask to move the directory 'a' itself, as
well as its contents, in a single destination directory, which is
a contradicting request that is impossible to satisfy. This case is
now detected and the command errors out.
Will merge to 'master'.
source: <20250430-pks-mv-parent-child-conflict-v1-0-11a87c55ffb9@pks.im>
* en/get-tree-entry-doc (2025-05-02) 1 commit
- tree-walk.h: fix incorrect API comment
Doc update.
Will merge to 'next'.
source: <pull.1912.v2.git.1746213551473.gitgitgadget@gmail.com>
* jc/doc-synopsis-option-markup (2025-05-02) 3 commits
- git-daemon doc: update mark-up of synopsis option descriptions
- git-{var,write-tree} docs: update mark-up of synopsis option descriptions
- git-verify-* doc: update mark-up of synopsis option descriptions
Doc mark-up fixes.
Comments?
source: <20250503011537.3035416-1-gitster@pobox.com>
* jc/you-still-use-whatchanged (2025-05-05) 6 commits
- whatschanged: list it in BreakingChanges document
- whatchanged: remove when built with WITH_BREAKING_CHANGES
- whatchanged: require --i-still-use-this
- tests: prepare for a world without whatchanged
- doc: prepare for a world without whatchanged
- you-still-use-that??: help deprecating commands for removal
"git whatchanged" that is longer to type than "git log --raw"
which is its modern rough equivalent has outlived its usefulness
more than 10 years ago. Plan to deprecate and remove it.
Comments?
source: <20250503005814.3030099-1-gitster@pobox.com>
* jc/ci-skip-unavailable-external-software (2025-04-25) 2 commits
(merged to 'next' on 2025-05-05 at a13d958c1b)
+ ci: download JGit from maven, not eclipse.org
+ ci: update the message for unavailble third-party software
Further refinement on CI messages when an optional external
software is unavailable (e.g. due to third-party service outage).
Will merge to 'master'.
source: <20250425153827.147585-1-gitster@pobox.com>
* ps/maintenance-missing-tasks (2025-05-05) 7 commits
- builtin/maintenance: introduce "rerere-gc" task
- builtin/gc: move rerere garbage collection into separate function
- builtin/maintenance: introduce "worktree-prune" task
- worktree: expose function to retrieve worktree names
- builtin/gc: move pruning of worktrees into a separate function
- builtin/gc: remove global variables where it trivial to do
- builtin/gc: fix indentation of `cmd_gc()` parameters
Make repository clean-up tasks "gc" can do available to "git
maintenance" front-end.
Will merge to 'next'.
source: <20250505-pks-maintenance-missing-tasks-v4-0-141f4df906a1@pks.im>
* ag/send-email-outlook (2025-04-29) 2 commits
(merged to 'next' on 2025-05-05 at c85e7a2e65)
+ send-email: add --[no-]outlook-id-fix option
+ send-email: retrieve Message-ID from outlook SMTP server
Update send-email to work better with Outlook's smtp server.
Will merge to 'master'.
source: <PN3PR01MB95973F4B26A8CE2BF17A3AB1B8842@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM>
source: <PN3PR01MB9597DA8661D1AFDF4C927A11B8812@PN3PR01MB9597.INDPRD01.PROD.OUTLOOK.COM>
* ds/fix-thin-fix (2025-04-28) 3 commits
(merged to 'next' on 2025-05-05 at 200a988f98)
+ index-pack: allow revisiting REF_DELTA chains
+ t5309: create failing test for 'git index-pack'
+ test-tool: add pack-deltas helper
"git index-pack --fix-thin" used to abort to prevent a cycle in
delta chains from forming in a corner case even when there is no
such cycle.
Will merge to 'master'.
source: <pull.1906.v2.git.1745871885.gitgitgadget@gmail.com>
* ps/object-store-cleanup (2025-04-29) 8 commits
(merged to 'next' on 2025-05-05 at f91eca32c9)
+ object-store: drop `repo_has_object_file()`
+ treewide: convert users of `repo_has_object_file()` to `has_object()`
+ object-store: allow fetching objects via `has_object()`
+ object-store: move function declarations to their respective subsystems
+ object-store: move and rename `odb_pack_keep()`
+ object-store: drop `loose_object_path()`
+ object-store: move `struct packed_git` into "packfile.h"
+ Merge branch 'ps/object-file-cleanup' into ps/object-store-cleanup
Further code clean-up in the object-store layer.
Will merge to 'master'.
source: <20250429-pks-object-store-cleanups-v3-0-42902bad09a1@pks.im>
* cc/fast-import-export-signature-names (2025-04-24) 1 commit
. fast-(import|export): improve on the signature algorithm name
Clean up the way how signature on commit objects are exported to
and imported from fast-import stream.
Expecting a reroll.
cf. <aAq1nvcPRlIPal5l@tapette.crustytoothpaste.net>
cf. https://github.com/git/git/actions/runs/14671270673/job/41178138711
source: <20250424203904.909777-1-christian.couder@gmail.com>
* dd/meson-perl-custom-path (2025-04-24) 1 commit
- meson: allow customize perl installation path
Meson-based build framework update.
Looking good. Expecting a minor reroll.
cf. <aA8vSPKdznjzBf6W@pks.im>
source: <80a2a6ce7c6b05323cf931cdc20d4decb6270002.1745507677.git.congdanhqx@gmail.com>
* ps/meson-bin-sh (2025-04-25) 2 commits
(merged to 'next' on 2025-05-05 at 546cdf31bf)
+ meson: prefer shell at "/bin/sh"
+ meson: report detected runtime executable paths
Meson-based build framework update.
Will merge to 'master'.
source: <20250425-pks-meson-posix-shell-v3-0-01607a2e9334@pks.im>
* sj/string-list-typefix (2025-04-22) 5 commits
- u-string-list: move "remove duplicates" test to "u-string-list.c"
- u-string-list: move "filter string" test to "u-string-list.c"
- u-string-list: move "test_split_in_place" to "u-string-list.c"
- u-string-list: move "test_split" into "u-string-list.c"
- string-list: fix sign compare warnings
Code and test clean-up around string-list API.
Expecting a reroll.
cf. <aA8vSPKdznjzBf6W@pks.im>
source: <aAetW0dan8S3Fljq@ArchLinux>
* tb/midx-avoid-cruft-packs (2025-04-15) 9 commits
- repack: exclude cruft pack(s) from the MIDX where possible
- pack-objects: introduce '--stdin-packs=follow'
- pack-objects: swap 'show_{object,commit}_pack_hint'
- pack-objects: fix typo in 'show_object_pack_hint()'
- pack-objects: perform name-hash traversal for unpacked objects
- pack-objects: declare 'rev_info' for '--stdin-packs' earlier
- pack-objects: factor out handling '--stdin-packs'
- pack-objects: limit scope in 'add_object_entry_from_pack()'
- pack-objects: use standard option incompatibility functions
"pack-objects" has been taught to avoid pointing into objects in
cruft packs from midx.
Comments?
source: <cover.1744757204.git.me@ttaylorr.com>
* tb/pack-bitmap-lookup-tables (2025-04-17) 4 commits
- t/perf/lib-bitmap.sh: avoid test_perf during setup
- t/perf: avoid testing bitmaps without lookup table
- p5312: removed duplicate performance test script
- pack-bitmap: write lookup table extension by default
Enable lookup tables extension in pack bitmap (and midx bitmap) by
default.
Comments?
source: <cover.1744924321.git.me@ttaylorr.com>
* pb/status-rebase-fixes (2025-03-28) 4 commits
- wt-status: suggest 'git rebase --continue' to conclude 'merge' instruction
- wt-status: also abbreviate 'merge' and 'fixup -C' lines during rebase
- SQUASH??? - <CAPig+cS92W_gYuNsaTvQxiP3xBK7Wpg0__uVkgAU1x0OFJUZgQ@mail.gmail.com>
- rebase -r: do create merge commit after empty resolution
A few fixes around "git status" while "git rebase" is running,
plus a corner case bug fix for "git rebase -r".
Expecting a (small and hopefully final) clarifying reroll.
cf. <c2f93d99-2f4d-ee6d-7087-42320c6df0f2@gmx.de>
cf. <e9700234-324d-dc63-d91e-9b8f36fabc79@gmail.com>
source: <pull.1897.git.1743181401.gitgitgadget@gmail.com>
* md/userdiff-bash-shell-function (2025-04-01) 1 commit
- userdiff: extend Bash pattern to cover more shell function forms
The userdiff pattern for shell scripts has been updated to cope
with more bash-isms.
Comments?
source: <20250330134018.9662-2-dhar61595@gmail.com>
* sc/bundle-uri-use-all-refs-in-bundle (2025-04-25) 2 commits
- bundle-uri: add test for bundle-uri clones with tags
- bundle-uri: copy all bundle references ino the refs/bundle space
Bundle-URI feature did not use refs recorded in the bundle other
than normal branches as anchoring points to optimize the follow-up
fetch during "git clone"; now it is told to utilize all.
Ready?
source: <pull.1897.v4.git.git.1745587067.gitgitgadget@gmail.com>
* ds/path-walk-2 (2025-03-25) 13 commits
- pack-objects: allow --shallow and --path-walk
- path-walk: add new 'edge_aggressive' option
- pack-objects: thread the path-based compression
- pack-objects: refactor path-walk delta phase
- scalar: enable path-walk during push via config
- pack-objects: enable --path-walk via config
- repack: add --path-walk option
- t5538: add tests to confirm deltas in shallow pushes
- pack-objects: introduce GIT_TEST_PACK_PATH_WALK
- p5313: add performance tests for --path-walk
- pack-objects: update usage to match docs
- pack-objects: add --path-walk option
- pack-objects: extract should_attempt_deltas()
"git pack-objects" learns to find delta bases from blobs at the
same path, using the --path-walk API.
Will merge to 'next'?
cf. <aBVLC57bMJKjygyi@nand.local>
source: <pull.1819.v2.git.1742829769.gitgitgadget@gmail.com>
* ib/diff-S-G-with-longhand (2025-02-12) 10 commits
- diff: docs: Use --patch-{grep,modifies} over -G/-S
- diff: --pickaxe-{all,regex} help: Add --patch-{grep,modifies}
- diff: test: Use --patch-{grep,modifies} over -G/-S
- completion: Support --patch-{grep,modifies}
- diff: --patch-{grep,modifies} arg names for -G and -S
- docs: gitdiffcore: -G and -S: Use regex/string placeholders
- diff: short help: Add -G and --pickaxe-grep
- diff: short help: Correct -S description
- diff: -G description: Correct copy/paste error
- t/t4209-log-pickaxe: Naming typo: -G takes a regex
The commands in the "diff" family learned longhands for "-S" and
"-G" options.
Expecting a reroll.
source: <20250212032657.1807939-1-illia.bobyr@gmail.com>
* ej/cat-file-remote-object-info (2025-02-24) 8 commits
- cat-file: add remote-object-info to batch-command
- transport: add client support for object-info
- serve: advertise object-info feature
- fetch-pack: move fetch initialization
- fetch-pack: refactor packet writing
- t1006: split test utility functions into new "lib-cat-file.sh"
- cat-file: add declaration of variable i inside its for loop
- git-compat-util: add strtoul_ul() with error handling
"git cat-file --batch" and friends can optionally ask a remote
server about objects it does not have.
Expecting a reroll.
cf. <CAN2LT1Cc-UaUpabqcGascicR3nk6ZdFythamKje33Orhy5WoNA@mail.gmail.com>
source: <20250221190451.12536-1-eric.peijian@gmail.com>
next reply other threads:[~2025-05-06 1:20 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-06 1:20 Junio C Hamano [this message]
2025-05-06 8:34 ` What's cooking in git.git (May 2025, #02; Mon, 5) Christian Couder
2025-05-06 17:50 ` Eric Sunshine
2025-05-07 8:00 ` Patrick Steinhardt
2025-05-08 18:22 ` Junio C Hamano
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=xmqqcycmlelr.fsf@gitster.g \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).