What's cooking (2025/04 #06)

Junio C Hamano committed Apr 22, 2025 at 16:36 UTC fc9f575a617f95b9e2674dbf7eafa11651919207
1 file changed +89 -238
whats-cooking.txt
+89 -238
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Apr 2025, #05; Fri, 18)
2 +Subject: What's cooking in git.git (Apr 2025, #06; Tue, 22)
3 X-master-at: 4bbb303af69990ccd05fe3a2eb58a1ce036f8220
4 -X-next-at: 37484f566f6a755843cc88c219327d2d99bd680f
4 +X-next-at: 1f30a19c024a1458e9fb9991a929dcc38b1157d4
5 Bcc: lwn@lwn.net, gitster@pobox.com
6
7 -What's cooking in git.git (Apr 2025, #05; Fri, 18)
7 +What's cooking in git.git (Apr 2025, #06; Tue, 22)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -46,275 +46,128 @@ Release tarballs are available at:
46 https://www.kernel.org/pub/software/scm/git/
47
48 --------------------------------------------------
49 -[Graduated to 'master']
49 +[New Topics]
50
51 -* ab/environment-clean-header (2025-04-09) 1 commit
52 - (merged to 'next' on 2025-04-09 at 845b92c7ef)
53 - + environment.h: remove unused variables
51 +* js/git-perf-env-override (2025-04-20) 1 commit
52 + (merged to 'next' on 2025-04-22 at 77ea361791)
53 + + perf: do allow `GIT_PERF_*` to be overridden again
54
55 - Code clean-up.
56 - source: <2c547567-2b72-476c-9fc5-71cac050fa15@gmail.com>
55 + Developer support fix..
56
57 + Will merge to 'master'.
58 + source: <pull.1900.git.1743764167548.gitgitgadget@gmail.com>
59
59 -* ab/pathspec-sign-compare-workaround (2025-04-01) 1 commit
60 - (merged to 'next' on 2025-04-08 at 875fb0e3ee)
61 - + pathspec: fix sign comparison warnings
60
63 - Some warnings from "-Wsign-compare" for pathspec.c have been
64 - squelched.
65 - source: <127c3010-4b23-436e-a07d-e6031e746113@gmail.com>
61 +* ua/call-repo-config-with-possibly-null-repository (2025-04-20) 2 commits
62 + (merged to 'next' on 2025-04-22 at 1f30a19c02)
63 + + builtin/difftool: remove unnecessary if statement
64 + + builtin/add: remove unnecessary if statement
65
66 + Since a call to repo_config() can be called with repo set to NULL
67 + these days, a command that is marked as RUN_SETUP in the builtin
68 + command table does not have to check repo with NULL before making
69 + the call.
70
68 -* ab/rm-sign-compare (2025-03-29) 1 commit
69 - (merged to 'next' on 2025-04-08 at bc1f98e81c)
70 - + rm: fix sign comparison warnings
71 + Will merge to 'master'.
72 + source: <20250420025501.183290-1-usmanakinyemi202@gmail.com>
73
72 - Some warnings from "-Wsign-compare" for builtin/rm.c have been
73 - squelched.
74 - source: <ecaaa968-f337-466b-b719-22ebb3587167@gmail.com>
74
75 +* az/tighten-string-array-constness (2025-04-21) 1 commit
76 + - global: mark usage strings and string tables const
77
77 -* cj/refname-avail-check-optim-typofix (2025-04-09) 1 commit
78 - (merged to 'next' on 2025-04-09 at 95fe082872)
79 - + refs: fix duplicated word in comment
78 + Code clean-up.
79
81 - Comment fix.
82 - source: <pull.1940.v2.git.git.1743857867327.gitgitgadget@gmail.com>
80 + Will merge to 'next'.
81 + source: <daj53eijkqzsjy5cvuxchea4qm3pbiu673ehetihfffyvwzhgs@tarta.nabijaczleweli.xyz>
82
83
85 -* dd/sparse-glibc-workaround (2025-04-09) 1 commit
86 - (merged to 'next' on 2025-04-09 at 14ee53c8e4)
87 - + sparse: ignore warning from new glibc headers
84 +* es/meson-cleanup (2025-04-21) 6 commits
85 + - meson: only check for missing networking syms on non-Windows; add compat impls
86 + - meson: fix typo in function check that prevented checking for hstrerror
87 + - meson: add a couple missing networking dependencies
88 + - meson: do a full usage-based compile check for sysinfo
89 + - meson: check for getpagesize before using it
90 + - meson: simplify and parameterize various standard function checks
91
89 - Squelch false-positive from sparse.
90 - source: <a667da3985a0fe943cc0ff6ee8513d731d75a299.1721171853.git.congdanhqx@gmail.com>
92 + Code clean-up for meson-based build infrastructure.
93 +
94 + Comments?
95 + source: <20250421175247.240971-6-eschwartz@gentoo.org>
96
97
93 -* en/merge-recursive-debug (2025-04-08) 8 commits
94 - (merged to 'next' on 2025-04-09 at 555be94c73)
95 - + builtin/{merge,rebase,revert}: remove GIT_TEST_MERGE_ALGORITHM
96 - + tests: remove GIT_TEST_MERGE_ALGORITHM and test_expect_merge_algorithm
97 - + merge-recursive.[ch]: thoroughly debug these
98 - + merge, sequencer: switch recursive merges over to ort
99 - + sequencer: switch non-recursive merges over to ort
100 - + merge-ort: enable diff-algorithms other than histogram
101 - + builtin/merge-recursive: switch to using merge_ort_generic()
102 - + checkout: replace merge_trees() with merge_ort_nonrecursive()
98 +* jh/gc-launchctl-schedule-fix (2025-04-21) 1 commit
99 + - maintenance: fix launchctl calendar intervals
100
104 - Remove remnants of the recursive merge strategy backend, which was
105 - superseded by the ort merge strategy.
106 - source: <pull.1898.v3.git.1744127322.gitgitgadget@gmail.com>
101 + Fix for scheduled maintenance tasks on platforms using launchctl.
102
103 + Will merge to 'next'.
104 + source: <20250421054633.231069-2-joshiheinrichs@gmail.com>
105
109 -* jk/fetch-follow-remote-head-fix (2025-04-09) 4 commits
110 - (merged to 'next' on 2025-04-09 at 3071fce577)
111 - + fetch: make set_head() call easier to read
112 - (merged to 'next' on 2025-04-07 at ba5ac342a5)
113 - + fetch: don't ask for remote HEAD if followRemoteHEAD is "never"
114 - + fetch: only respect followRemoteHEAD with configured refspecs
115 - + Merge branch 'jk/fetch-ref-prefix-cleanup' into jk/fetch-follow-remote-head-fix
106
117 - "git fetch [<remote>]" with only the configured fetch refspec
118 - should be the only thing to update refs/remotes/<remote>/HEAD,
119 - but the code was overly eager to do so in other cases.
120 - cf. <Z9n7myvpnDOWFWqt@nand.local>
121 - source: <20250318053905.GA2051217@coredump.intra.peff.net>
122 - source: <20250404085812.GA772404@coredump.intra.peff.net>
107 +* js/windows-arm64 (2025-04-21) 6 commits
108 + - max_tree_depth: lower it for clangarm64 on Windows
109 + - mingw(arm64): do move the `/etc/git*` location
110 + - msvc: do handle builds on Windows/ARM64
111 + - mingw: do not use nedmalloc on Windows/ARM64
112 + - config.mak.uname: add support for clangarm64
113 + - bswap.h: add support for built-in bswap functions
114
115 + Update to arm64 Windows port.
116 +
117 + Will merge to 'next'.
118 + source: <pull.1904.git.1745239150.gitgitgadget@gmail.com>
119
125 -* js/ci-fedora-gawk (2025-04-16) 1 commit
126 - + ci(pedantic): ensure that awk is installed
120
128 - Work around CI breakage due to fedora base image getting updated.
129 - source: <81209cfd-049e-c853-9c4a-2cf9803e56a4@gmx.de>
121 +* jk/p5332-testfix (2025-04-22) 1 commit
122 + - p5332: drop "+" from --stdin-packs input
123
124 + A test fix.
125
132 -* js/ci-github-update-ubuntu (2025-04-09) 1 commit
133 - (merged to 'next' on 2025-04-09 at fae10a2b5b)
134 - + ci: upgrade `sparse` to supported build agents
126 + Will merge to 'next'.
127 + source: <20250422111632.GA1855088@coredump.intra.peff.net>
128
136 - Adjust to the deprecation of use of Ubuntu 20.04 GitHub Actions CI.
137 - source: <77f82414-261c-d2bc-f911-ed3d4b06c86e@gmx.de>
129
130 +* lo/remove-log-reencode-from-rev-info (2025-04-22) 1 commit
131 + - revision: remove log_reencode field from rev_info
132
140 -* jt/help-sha-backend-info-in-build-options (2025-04-07) 2 commits
141 - (merged to 'next' on 2025-04-08 at 7389752293)
142 - + help: include unsafe SHA-1 build info in version
143 - + help: include SHA implementation in version info
133 + Code clean-up.
134
145 - "git help --build-options" reports SHA-1 and SHA-256 backends used
146 - in the build.
147 - source: <20250403140529.497876-1-jltobler@gmail.com>
135 + Will merge to 'next'.
136 + source: <20250422213133.18685-1-lucasseikioshiro@gmail.com>
137
138
150 -* jt/ref-transaction-abort-fix (2025-03-21) 1 commit
151 - (merged to 'next' on 2025-04-08 at b653d86941)
152 - + builtin/fetch: avoid aborting closed reference transaction
139 +* ps/ci-resurrect-p4-on-github (2025-04-22) 1 commit
140 + - ci: fix p4d executable not being found on GitHub Actions
141
154 - A ref transaction corner case fix.
155 - cf. <Z-E2ns9VziejSLB2@pks.im>
156 - source: <20250321004437.505461-1-jltobler@gmail.com>
142 + CI fix.
143
144 + Will merge to 'next'.
145 + source: <aActb3dB-r3s69h6@pks.im>
146
159 -* jt/rev-list-z (2025-03-21) 5 commits
160 - (merged to 'next' on 2025-04-08 at e608ba85c1)
161 - + rev-list: support NUL-delimited --missing option
162 - + rev-list: support NUL-delimited --boundary option
163 - + rev-list: support delimiting objects with NUL bytes
164 - + rev-list: refactor early option parsing
165 - + rev-list: inline `show_object_with_name()` in `show_object()`
147
167 - "git rev-list" learns machine-parsable output format that delimits
168 - each field with NUL.
169 - source: <20250319183410.1225428-1-jltobler@gmail.com>
170 -
171 -
172 -* kn/blame-porcelain-unblamable (2025-04-07) 1 commit
173 - (merged to 'next' on 2025-04-09 at 971ba23ba0)
174 - + blame: print unblamable and ignored commits in porcelain mode
175 -
176 - "git blame --porcelain" mode now talks about unblamable lines and
177 - lines that are blamed to an ignored commit.
178 - source: <20250403160326.120124-1-karthik.188@gmail.com>
179 -
180 -
181 -* kn/non-transactional-batch-updates (2025-04-08) 9 commits
182 - (merged to 'next' on 2025-04-08 at de64e9c49e)
183 - + update-ref: add --batch-updates flag for stdin mode
184 - + refs: support rejection in batch updates during F/D checks
185 - + refs: implement batch reference update support
186 - + refs: introduce enum-based transaction error types
187 - + refs/reftable: extract code from the transaction preparation
188 - + refs/files: remove duplicate duplicates check
189 - + refs: move duplicate refname update check to generic layer
190 - + refs/files: remove redundant check in split_symref_update()
191 - + Merge branch 'ps/refname-avail-check-optim' into kn/non-transactional-batch-updates
192 -
193 - Updating multiple references have only been possible in all-or-none
194 - fashion with transactions, but it can be more efficient to batch
195 - multiple updates even when some of them are allowed to fail in a
196 - best-effort manner. A new "best effort batches of updates" mode
197 - has been introduced.
198 - source: <20250408085120.614893-1-karthik.188@gmail.com>
199 -
200 -
201 -* ps/cat-file-filter-batch (2025-04-07) 12 commits
202 - (merged to 'next' on 2025-04-08 at eb8dfb17ea)
203 - + builtin/cat-file: use bitmaps to efficiently filter by object type
204 - + builtin/cat-file: deduplicate logic to iterate over all objects
205 - + pack-bitmap: introduce function to check whether a pack is bitmapped
206 - + pack-bitmap: add function to iterate over filtered bitmapped objects
207 - + pack-bitmap: allow passing payloads to `show_reachable_fn()`
208 - + builtin/cat-file: support "object:type=" objects filter
209 - + builtin/cat-file: support "blob:limit=" objects filter
210 - + builtin/cat-file: support "blob:none" objects filter
211 - + builtin/cat-file: wire up an option to filter objects
212 - + builtin/cat-file: introduce function to report object status
213 - + builtin/cat-file: rename variable that tracks usage
214 - + Merge branch 'tb/incremental-midx-part-2' into ps/cat-file-filter-batch
215 -
216 - "git cat-file --batch" and friends learned to allow "--filter=" to
217 - omit certain objects, just like the transport layer does.
218 - source: <20250402-pks-cat-file-object-type-filter-v3-0-4da6bb21871c@pks.im>
219 -
220 -
221 -* ps/maintenance-reflog-expire (2025-04-08) 6 commits
222 - (merged to 'next' on 2025-04-08 at 40d6884143)
223 - + builtin/maintenance: introduce "reflog-expire" task
224 - + builtin/gc: split out function to expire reflog entries
225 - + builtin/reflog: make functions regarding `reflog_expire_options` public
226 - + builtin/reflog: stop storing per-reflog expiry dates globally
227 - + builtin/reflog: stop storing default reflog expiry dates globally
228 - + reflog: rename `cmd_reflog_expire_cb` to `reflog_expire_options`
229 -
230 - "git maintenance" learns a new task to expire reflog entries.
231 - source: <20250408-pks-maintenance-reflog-expire-v2-0-1ad8634798b7@pks.im>
232 -
233 -
234 -* ps/misc-build-fixes (2025-04-01) 5 commits
235 - (merged to 'next' on 2025-04-08 at 85693b6d96)
236 - + ci: use Visual Studio for win+meson job on GitHub Workflows
237 - + meson: distinguish build and target host binaries
238 - + meson: respect 'tests' build option in contrib
239 - + gitweb: fix generation of "gitweb.js"
240 - + meson: fix handling of '-Dcurl=auto'
241 -
242 - Random build fixes.
243 - cf. <CAOLa=ZQ8bTn-prAs2ycLdLLjVaLQL4GtLw_gFsvAcx_6j=MBjA@mail.gmail.com>
244 - source: <20250331-b4-pks-collect-build-fixes-v2-0-6b06136808f3@pks.im>
245 -
246 -
247 -* ps/refname-avail-check-optim (2025-04-09) 1 commit
248 - (merged to 'next' on 2025-04-09 at 0d35104147)
249 - + refs/packed: fix BUG when seeking refs with UTF-8 characters
250 -
251 - Incorrect sorting of refs with bytes with high-bit set on platforms
252 - with signed char led to a BUG, which has been corrected.
253 - cf. <20250404205740.GA780449@coredump.intra.peff.net>
254 - source: <20250404-b4-pks-packed-backend-seek-with-utf8-v1-1-6ceb694e3bd7@pks.im>
255 -
256 -
257 -* ps/test-wo-perl-prereq (2025-04-07) 20 commits
258 - (merged to 'next' on 2025-04-08 at 424e2eab23)
259 - + t5703: refactor test to not depend on Perl
260 - + t5316: refactor `max_chain()` to not depend on Perl
261 - + t0210: refactor trace2 scrubbing to not use Perl
262 - + t0021: refactor `generate_random_characters()` to not depend on Perl
263 - + t/lib-httpd: refactor "one-time-perl" CGI script to not depend on Perl
264 - + t/lib-t6000: refactor `name_from_description()` to not depend on Perl
265 - + t/lib-gpg: refactor `sanitize_pgp()` to not depend on Perl
266 - + t: refactor tests depending on Perl for textconv scripts
267 - + t: refactor tests depending on Perl to print data
268 - + t: refactor tests depending on Perl substitution operator
269 - + t: refactor tests depending on Perl transliteration operator
270 - + Makefile: stop requiring Perl when running tests
271 - + meson: stop requiring Perl when tests are enabled
272 - + t: adapt existing PERL prerequisites
273 - + t: introduce PERL_TEST_HELPERS prerequisite
274 - + t: adapt `test_readlink()` to not use Perl
275 - + t: adapt `test_copy_bytes()` to not use Perl
276 - + t: adapt character translation helpers to not use Perl
277 - + t: refactor environment sanitization to not use Perl
278 - + t: skip chain lint when PERL_PATH is unset
279 - (this branch is used by ps/fewer-perl.)
280 -
281 - "make test" used to have a hard dependency on (basic) Perl; tests
282 - have been rewritten help environment with NO_PERL test the build as
283 - much as possible.
284 - source: <20250403-b4-pks-t-perlless-v4-0-be20ac3db39a@pks.im>
285 -
286 -
287 -* sk/clar-trailer-urlmatch-norm-test (2025-03-04) 2 commits
288 - (merged to 'next' on 2025-04-08 at 51cb3c8bce)
289 - + t/unit-tests: convert urlmatch-normalization test to clar
290 - + t/unit-tests: convert trailer test to use clar
291 -
292 - A few traditional unit tests have been rewritten to use the clar
293 - framework.
294 - cf. <xmqqzfi0pthr.fsf@gitster.g>
295 - cf. <Z_TAtJ9LEeHo2AQN@pks.im>
296 - source: <20250304113323.10564-1-kuforiji98@gmail.com>
148 +* ps/install-bash-completion (2025-04-22) 1 commit
149 + - contrib/completion: install Bash completion
150
151 + Build update to install bash (but not zsh) completion script.
152
299 -* ua/update-update-server-info (2025-04-08) 1 commit
300 - (merged to 'next' on 2025-04-09 at f0d47e97b5)
301 - + builtin/update-server-info: remove unnecessary if statement
153 + Will merge to 'next'.
154 + source: <20250422-b4-pks-meson-install-completions-v2-1-ab29d399bc6c@pks.im>
155
303 - Code simplification.
304 - source: <20250407195850.299348-2-usmanakinyemi202@gmail.com>
156
157 +* sj/string-list-typefix (2025-04-22) 5 commits
158 + - u-string-list: move "remove duplicates" test to "u-string-list.c"
159 + - u-string-list: move "filter string" test to "u-string-list.c"
160 + - u-string-list: move "test_split_in_place" to "u-string-list.c"
161 + - u-string-list: move "test_split" into "u-string-list.c"
162 + - string-list: fix sign compare warnings
163
307 -* zy/send-email-error-handling (2025-04-07) 2 commits
308 - (merged to 'next' on 2025-04-08 at d5a716a940)
309 - + send-email: finer-grained SMTP error handling
310 - + send-email: capture errors in an eval {} block
164 + Code and test clean-up around string-list API.
165
312 - Auth-related (and unrelated) error handling in send-email has been
313 - made more robust.
314 - source: <20250326075246.2612627-1-05ZYT30@gmail.com>
166 + Comments?
167 + source: <aAetW0dan8S3Fljq@ArchLinux>
168
169 --------------------------------------------------
317 -[New Topics]
170 +[Cooking]
171
172 * ds/doc-disable-hooks (2025-04-16) 1 commit
173 (merged to 'next' on 2025-04-18 at 4b543e57a5)
@@ -366,10 +219,8 @@ Release tarballs are available at:
219 Will merge to 'next'.
220 source: <20250418185855.52950-1-abhijeet.nkt@gmaiil.com>
221
369 ---------------------------------------------------
370 -[Cooking]
222
372 -* ps/meson-build-perf-bench (2025-04-14) 5 commits
223 +* ps/meson-build-perf-bench (2025-04-22) 5 commits
224 - meson: wire up benchmarking options
225 - meson: wire up benchmarks
226 - t/perf: fix benchmarks with out-of-tree builds
@@ -380,7 +231,7 @@ Release tarballs are available at:
231 benchmarking tests.
232
233 Comments?
383 - source: <20250414-pks-meson-benchmarks-v2-0-04377080a167@pks.im>
234 + source: <20250422-pks-meson-benchmarks-v3-0-7aad68bac6fd@pks.im>
235
236
237 * aw/t9811-modernize (2025-04-18) 2 commits
@@ -437,19 +288,19 @@ Release tarballs are available at:
288 source: <20250408-488-generating-bundles-with-many-references-has-non-linear-performance-v2-0-0802fc36a23d@gmail.com>
289
290
440 -* kn/meson-hdr-check (2025-04-14) 5 commits
291 +* kn/meson-hdr-check (2025-04-20) 6 commits
292 . makefile/meson: add 'check-headers' as alias for 'hdr-check'
293 . meson: add support for 'hdr-check'
294 + . meson: rename 'third_party_sources' to 'third_party_excludes'
295 . meson: move headers definition from 'contrib/coccinelle'
296 . coccinelle: meson: rename variables to be more specific
297 . Merge branch 'es/meson-build-skip-coccinelle' into kn/meson-hdr-check
298
299 Add an equivalent to "make hdr-check" target to meson based builds.
300
449 - Seems to break linux.meson CI job at GitHub Actions.
450 - cf. <xmqqy0w2o0l0.fsf@gitster.g>
451 - cf. <xmqqcyd99ipm.fsf@gitster.g>
452 - source: <20250414-505-wire-up-sparse-via-meson-v3-0-edc6e7f26745@gmail.com>
301 + Seems to break linux.meson CI job.
302 + cf. https://github.com/git/git/actions/runs/14563669225/job/40850047961
303 + source: <20250420-505-wire-up-sparse-via-meson-v4-0-66e14134e822@gmail.com>
304
305
306 * ps/object-file-cleanup (2025-04-15) 11 commits