What's cooking (2024/08 #05)

Junio C Hamano committed Aug 14, 2024 at 15:28 UTC b07d82052222942aa5bfddaee846a28fd36a5728
1 file changed +419 -359
whats-cooking.txt
+419 -359
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Aug 2024, #04; Mon, 12)
3 -X-master-at: 25673b1c476756ec0587fb0596ab3c22b96dc52a
4 -X-next-at: ee80dbc4f68248653629bdd1361376c366b51623
2 +Subject: What's cooking in git.git (Aug 2024, #05; Wed, 14)
3 +X-master-at: 477ce5ccd69bda5c44f53e3b230f8a9c54217ed6
4 +X-next-at: ddde3f2535d17d0698e32c8f15e9fd627603e752
5 Bcc: lwn@lwn.net, gitster@pobox.com
6
7 -What's cooking in git.git (Aug 2024, #04; Mon, 12)
7 +What's cooking in git.git (Aug 2024, #05; Wed, 14)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -45,9 +45,366 @@ Release tarballs are available at:
45
46 https://www.kernel.org/pub/software/scm/git/
47
48 +--------------------------------------------------
49 +[Graduated to 'master']
50 +
51 +* cp/unit-test-reftable-pq (2024-08-01) 7 commits
52 + (merged to 'next' on 2024-08-05 at 05e47f7097)
53 + + t-reftable-pq: add tests for merged_iter_pqueue_top()
54 + + t-reftable-pq: add test for index based comparison
55 + + t-reftable-pq: make merged_iter_pqueue_check() callable by reference
56 + + t-reftable-pq: make merged_iter_pqueue_check() static
57 + + t: move reftable/pq_test.c to the unit testing framework
58 + + reftable: change the type of array indices to 'size_t' in reftable/pq.c
59 + + reftable: remove unnecessary curly braces in reftable/pq.c
60 +
61 + The tests for "pq" part of reftable library got rewritten to use
62 + the unit test framework.
63 + cf. <Zqt02XmevPRB3idt@tanuki>
64 + source: <20240801110453.5087-1-chandrapratap3519@gmail.com>
65 +
66 +
67 +* cp/unit-test-reftable-tree (2024-08-04) 5 commits
68 + (merged to 'next' on 2024-08-06 at e32c456e45)
69 + + t-reftable-tree: improve the test for infix_walk()
70 + + t-reftable-tree: add test for non-existent key
71 + + t-reftable-tree: split test_tree() into two sub-test functions
72 + + t: move reftable/tree_test.c to the unit testing framework
73 + + reftable: remove unnecessary curly braces in reftable/tree.c
74 +
75 + A test in reftable library has been rewritten using the unit test
76 + framework.
77 + cf. <Zqt1WTT_eJKEuO1z@tanuki>
78 + cf. <ZrCx0NWRbFOOReki@tanuki>
79 + source: <20240804141105.4268-1-chandrapratap3519@gmail.com>
80 +
81 +
82 +* jc/document-use-of-local (2024-07-15) 1 commit
83 + (merged to 'next' on 2024-08-07 at 3321b54659)
84 + + doc: note that AT&T ksh does not work with our test suite
85 +
86 + Doc update.
87 + source: <xmqq1q3u8zmr.fsf@gitster.g>
88 +
89 +
90 +* jc/jl-git-no-advice-fix (2024-08-01) 1 commit
91 + (merged to 'next' on 2024-08-06 at 468bfce24b)
92 + + t0018: remove leftover debugging cruft
93 +
94 + Remove leftover debugging cruft from a test script.
95 + source: <xmqq7cd0ulen.fsf_-_@gitster.g>
96 +
97 +
98 +* jc/leakfix-hashfile (2024-07-26) 1 commit
99 + (merged to 'next' on 2024-08-06 at 7793a7fc56)
100 + + csum-file: introduce discard_hashfile()
101 +
102 + Leakfix.
103 + source: <xmqqle1p1367.fsf@gitster.g>
104 +
105 +
106 +* jc/leakfix-mailmap (2024-07-26) 1 commit
107 + (merged to 'next' on 2024-08-06 at 22f73301fd)
108 + + mailmap: plug memory leak in read_mailmap_blob()
109 +
110 + Leakfix.
111 + source: <xmqqcyn112xi.fsf@gitster.g>
112 +
113 +
114 +* jc/patch-id (2024-07-29) 5 commits
115 + (merged to 'next' on 2024-08-06 at 9ad078b49c)
116 + + patch-id: tighten code to detect the patch header
117 + + patch-id: rewrite code that detects the beginning of a patch
118 + + patch-id: make get_one_patchid() more extensible
119 + + patch-id: call flush_current_id() only when needed
120 + + t4204: patch-id supports various input format
121 +
122 + The patch parser in "git patch-id" has been tightened to avoid
123 + getting confused by lines that look like a patch header in the log
124 + message.
125 + cf. <Zqh2T_2RLt0SeKF7@tanuki>
126 + source: <20240730011738.4032377-1-gitster@pobox.com>
127 +
128 +
129 +* jc/reflog-expire-lookup-commit-fix (2024-07-16) 1 commit
130 + (merged to 'next' on 2024-08-06 at 1e59eac417)
131 + + Revert "reflog expire: don't use lookup_commit_reference_gently()"
132 +
133 + "git reflog expire" failed to honor annotated tags when computing
134 + reachable commits.
135 + source: <xmqqv8156rh2.fsf@gitster.g>
136 +
137 +
138 +* jc/transport-leakfix (2024-08-07) 1 commit
139 + (merged to 'next' on 2024-08-07 at eec3a24826)
140 + + transport: fix leak with transport helper URLs
141 + (this branch is used by ps/transport-leakfix-test-updates.)
142 +
143 + Leakfix.
144 + source: <xmqq34nfn7ip.fsf@gitster.g>
145 +
146 +
147 +* jk/apply-patch-mode-check-fix (2024-08-05) 1 commit
148 + (merged to 'next' on 2024-08-05 at 2dc1a81c89)
149 + + apply: canonicalize modes read from patches
150 +
151 + The patch parser in 'git apply' has been a bit more lenient against
152 + unexpected mode bits, like 100664, recorded on extended header lines.
153 + source: <20240805060010.GA120016@coredump.intra.peff.net>
154 +
155 +
156 +* jk/osxkeychain-username-is-nul-terminated (2024-08-01) 1 commit
157 + (merged to 'next' on 2024-08-05 at 34a238e047)
158 + + credential/osxkeychain: respect NUL terminator in username
159 +
160 + The credential helper to talk to OSX keychain sometimes sent
161 + garbage bytes after the username, which has been corrected.
162 + source: <20240801082556.GA640360@coredump.intra.peff.net>
163 +
164 +
165 +* jr/ls-files-expand-literal-doc (2024-07-26) 1 commit
166 + (merged to 'next' on 2024-08-06 at 0e7c8858ef)
167 + + doc: fix hex code escapes in git-ls-files
168 +
169 + Docfix.
170 + source: <CACStHN-Gs2Sxej+md6zWr3V1dFo+pp=B4yEPm9=uPambDR2NaQ@mail.gmail.com>
171 +
172 +
173 +* kl/test-fixes (2024-08-05) 2 commits
174 + (merged to 'next' on 2024-08-06 at 2cdcac6ce4)
175 + + t6421: fix test to work when repo dir contains d0
176 + + set errno=0 before strtoX calls
177 +
178 + A flakey test and incorrect calls to strtoX() functions have been
179 + fixed.
180 + source: <pull.1756.v3.git.git.1722877808.gitgitgadget@gmail.com>
181 +
182 +
183 +* ps/leakfixes-part-3 (2024-08-01) 24 commits
184 + (merged to 'next' on 2024-08-05 at e3d94036ff)
185 + + commit-reach: fix trivial memory leak when computing reachability
186 + + convert: fix leaking config strings
187 + + entry: fix leaking pathnames during delayed checkout
188 + + object-name: fix leaking commit list items
189 + + t/test-repository: fix leaking repository
190 + + builtin/credential-cache: fix trivial leaks
191 + + builtin/worktree: fix leaking derived branch names
192 + + builtin/shortlog: fix various trivial memory leaks
193 + + builtin/rerere: fix various trivial memory leaks
194 + + builtin/credential-store: fix leaking credential
195 + + builtin/show-branch: fix several memory leaks
196 + + builtin/rev-parse: fix memory leak with `--parseopt`
197 + + builtin/stash: fix various trivial memory leaks
198 + + builtin/remote: fix various trivial memory leaks
199 + + builtin/remote: fix leaking strings in `branch_list`
200 + + builtin/ls-remote: fix leaking `pattern` strings
201 + + builtin/submodule--helper: fix leaking buffer in `is_tip_reachable`
202 + + builtin/submodule--helper: fix leaking clone depth parameter
203 + + builtin/name-rev: fix various trivial memory leaks
204 + + builtin/describe: fix trivial memory leak when describing blob
205 + + builtin/describe: fix leaking array when running diff-index
206 + + builtin/describe: fix memory leak with `--contains=`
207 + + builtin/log: fix leaking branch name when creating cover letters
208 + + builtin/replay: plug leaking `advance_name` variable
209 + (this branch is used by ps/leakfixes-part-4.)
210 +
211 + More leakfixes.
212 + cf. <ZqvDJpNxMkvd3hSZ@nand.local>
213 + source: <cover.1722499961.git.ps@pks.im>
214 +
215 +
216 +* ps/ls-remote-out-of-repo-fix (2024-08-02) 1 commit
217 + (merged to 'next' on 2024-08-05 at 6438d8196d)
218 + + builtin/ls-remote: fall back to SHA1 outside of a repo
219 +
220 + A recent update broke "git ls-remote" used outside a repository,
221 + which has been corrected.
222 + source: <c52112d3946b2fd8d030580cd7acb809fa54012a.1722573777.git.ps@pks.im>
223 +
224 +
225 +* ps/ref-api-cleanup (2024-08-02) 1 commit
226 + (merged to 'next' on 2024-08-05 at d57856ae19)
227 + + refs: drop `ref_store`-less functions
228 +
229 + Code clean-up.
230 + source: <1d9add71065dabb3d7bf81529d04afbcf91e3a69.1722577074.git.ps@pks.im>
231 +
232 +
233 +* ps/refs-wo-the-repository (2024-07-30) 5 commits
234 + (merged to 'next' on 2024-08-06 at fef5e26d47)
235 + + refs/reftable: stop using `the_repository`
236 + + refs/packed: stop using `the_repository`
237 + + refs/files: stop using `the_repository`
238 + + refs/files: stop using `the_repository` in `parse_loose_ref_contents()`
239 + + refs: stop using `the_repository`
240 + (this branch is used by ps/config-wo-the-repository.)
241 +
242 + In the refs subsystem, implicit reliance of the_repository has been
243 + eliminated; the repository associated with the ref store object is
244 + used instead.
245 + cf. <ZqnEuz9uFgUwWKkc@tanuki>
246 + source: <cover.1722316795.git.ps@pks.im>
247 +
248 +
249 +* rh/http-proxy-path (2024-08-02) 1 commit
250 + (merged to 'next' on 2024-08-05 at d6f1fb194a)
251 + + http: do not ignore proxy path
252 +
253 + The value of http.proxy can have "path" at the end for a socks
254 + proxy that listens to a unix-domain socket, but we started to
255 + discard it when we taught proxy auth code path to use the
256 + credential helpers, which has been corrected.
257 + source: <pull.1767.v5.git.1722576007398.gitgitgadget@gmail.com>
258 +
259 +
260 +* rs/use-decimal-width (2024-08-05) 1 commit
261 + (merged to 'next' on 2024-08-06 at 99ccbb43de)
262 + + log-tree: use decimal_width()
263 +
264 + Code clean-up.
265 + source: <06783722-5184-41d5-8edd-94f97b2f2794@web.de>
266 +
267 +
268 +* ss/packed-ref-store-leakfix (2024-08-05) 1 commit
269 + (merged to 'next' on 2024-08-06 at 5003ec4218)
270 + + refs/files: prevent memory leak by freeing packed_ref_store
271 +
272 + Leakfix.
273 + source: <pull.1757.v2.git.git.1722851612505.gitgitgadget@gmail.com>
274 +
275 +
276 +* tb/config-fixed-value-with-valueless-true (2024-08-01) 1 commit
277 + (merged to 'next' on 2024-08-06 at 0476e5ba76)
278 + + config.c: avoid segfault with --fixed-value and valueless config
279 +
280 + "git config --value=foo --fixed-value section.key newvalue" barfed
281 + when the existing value in the configuration file used the
282 + valueless true syntax, which has been corrected.
283 + source: <c78bacfa8fb274fbb48f259b13f4f30253932f69.1722532013.git.me@ttaylorr.com>
284 +
285 +
286 +* tb/t7704-deflake (2024-08-05) 1 commit
287 + (merged to 'next' on 2024-08-07 at d3c0727946)
288 + + t/t7704-repack-cruft.sh: avoid failures during long-running tests
289 +
290 + A test that fails on an unusually slow machine was found, and made
291 + less likely to cause trouble by lengthening the expiry value it
292 + uses.
293 + source: <95cdc30bad38f464b37e87d78f38e1d91c9e083b.1722886630.git.me@ttaylorr.com>
294 +
295 --------------------------------------------------
296 [New Topics]
297
298 +* gt/unit-test-urlmatch-normalization (2024-08-14) 1 commit
299 + - t: migrate t0110-urlmatch-normalization to the new framework
300 +
301 + Another rewrite of test.
302 +
303 + Comments?
304 + source: <20240814142057.94671-1-shyamthakkar001@gmail.com>
305 +
306 +
307 +* jk/midx-unused-fix (2024-08-13) 1 commit
308 + (merged to 'next' on 2024-08-14 at 2ec51e52e1)
309 + + midx: drop unused parameters from add_midx_to_chain()
310 + (this branch uses tb/incremental-midx-part-1.)
311 +
312 + Code clean-up in the base topic.
313 +
314 + Will merge to 'master'.
315 + source: <cover.1722958595.git.me@ttaylorr.com>
316 +
317 +
318 +* ps/bundle-outside-repo-fix (2024-08-13) 2 commits
319 + - bundle: default to SHA1 when reading bundle headers
320 + - builtin/bundle: have unbundle check for repo before opening its bundle
321 +
322 + "git bundle unbundle" outside a repository triggered a BUG()
323 + unnecessarily, which has been corrected.
324 +
325 + Will merge to 'next'.
326 + source: <cover.1723540604.git.ps@pks.im>
327 +
328 +
329 +* ps/clar-unit-test (2024-08-13) 8 commits
330 + . t/unit-tests: convert ctype tests to use clar
331 + . t/unit-tests: convert strvec tests to use clar
332 + . Makefile: wire up the clar unit testing framework
333 + . t/clar: fix compatibility with NonStop
334 + . t/clar: fix another whitespace error
335 + . t/clar: fix whitespace errors
336 + . t: import the clar unit testing framework
337 + . t: do not pass GIT_TEST_OPTS to unit tests with prove
338 +
339 + Import clar unit tests framework libgit2 folks invented for our
340 + use.
341 +
342 + On hold.
343 + cf. https://github.com/git/git/actions/runs/10377935505/job/28733214241
344 + Seems to break "make sparse" among other things.
345 + source: <cover.1723095269.git.ps@pks.im>
346 +
347 +
348 +* ps/maintenance-detach-fix (2024-08-13) 7 commits
349 + - builtin/maintenance: fix auto-detach with non-standard tasks
350 + - builtin/maintenance: add a `--detach` flag
351 + - builtin/gc: add a `--detach` flag
352 + - builtin/gc: stop processing log file on signal
353 + - builtin/gc: fix leaking config values
354 + - builtin/gc: refactor to read config into structure
355 + - config: fix constness of out parameter for `git_config_get_expiry()`
356 +
357 + Allow maintance tasks other than "gc" to properly go background
358 + when "git maintenance" run them.
359 +
360 + Expecting a reroll.
361 + cf. <a3e9a4f9-baef-4c11-9f38-f30ff333e87a@gmail.com>
362 + source: <cover.1723533091.git.ps@pks.im>
363 +
364 +
365 +* jk/send-email-translate-aliases (2024-08-14) 3 commits
366 + - send-email: teach git send-email option to translate aliases
367 + - t9001-send-email.sh: update alias list used for pine test
368 + - t9001-send-email.sh: fix quoting for mailrc --dump-aliases test
369 +
370 + "git send-email" learned "--translate-aliases" option that reads
371 + addresses from the standard input and emits the result of applying
372 + aliases on them to the standard output.
373 +
374 + Will merge to 'next'?
375 + source: <20240813-jk-translate-alias-send-email-v2-0-912db4eb6846@gmail.com>
376 +
377 +
378 +* cp/unit-test-reftable-block (2024-08-14) 10 commits
379 + - t-reftable-block: add tests for index blocks
380 + - t-reftable-block: add tests for obj blocks
381 + - t-reftable-block: add tests for log blocks
382 + - t-reftable-block: remove unnecessary variable 'j'
383 + - t-reftable-block: use xstrfmt() instead of xstrdup()
384 + - t-reftable-block: use block_iter_reset() instead of block_iter_close()
385 + - t-reftable-block: use reftable_record_key() instead of strbuf_addstr()
386 + - t-reftable-block: use reftable_record_equal() instead of check_str()
387 + - t-reftable-block: release used block reader
388 + - t: move reftable/block_test.c to the unit testing framework
389 +
390 + source: <20240814121122.4642-1-chandrapratap3519@gmail.com>
391 +
392 +--------------------------------------------------
393 +[Stalled]
394 +
395 +* pp/add-parse-range-unit-test (2024-05-27) 1 commit
396 + - apply: add unit tests for parse_range
397 +
398 + A unit test for code that parses the hunk offset and length from a
399 + patch fragment header as been added.
400 +
401 + Expecting a reroll.
402 + cf. <b7eca313-9ea8-4132-ba1d-ed9236e07095@gmail.com>
403 + source: <pull.1677.v2.git.git.1716710073910.gitgitgadget@gmail.com>
404 +
405 +--------------------------------------------------
406 +[Cooking]
407 +
408 * jc/tests-no-useless-tee (2024-08-08) 1 commit
409 (merged to 'next' on 2024-08-12 at 188e777e16)
410 + tests: drop use of 'tee' that hides exit status
@@ -86,6 +443,9 @@ Release tarballs are available at:
443 - doc: grammofix in git-diff-tree
444 - tutorial: grammofix
445
446 + Doc updates.
447 +
448 + Will merge to 'next'.
449 source: <xmqqed6xehzv.fsf@gitster.g>
450
451
@@ -94,23 +454,11 @@ Release tarballs are available at:
454 - remerge-diff: lazily prepare temporary objdir on demand
455 (this branch uses xx/diff-tree-remerge-diff-fix.)
456
97 - source: <pull.1771.git.1723123250958.gitgitgadget@gmail.com>
98 -
99 ---------------------------------------------------
100 -[Stalled]
101 -
102 -* pp/add-parse-range-unit-test (2024-05-27) 1 commit
103 - - apply: add unit tests for parse_range
104 -
105 - A unit test for code that parses the hunk offset and length from a
106 - patch fragment header as been added.
457 + Code clean-up.
458
108 - Expecting a reroll.
109 - cf. <b7eca313-9ea8-4132-ba1d-ed9236e07095@gmail.com>
110 - source: <pull.1677.v2.git.git.1716710073910.gitgitgadget@gmail.com>
459 + Comments?
460 + source: <pull.1771.git.1723123250958.gitgitgadget@gmail.com>
461
112 ---------------------------------------------------
113 -[Cooking]
462
463 * jc/t3206-test-when-finished-fix (2024-08-06) 1 commit
464 (merged to 'next' on 2024-08-08 at 46461db3a2)
@@ -134,7 +482,7 @@ Release tarballs are available at:
482 source: <20240806003539.3292562-1-gitster@pobox.com>
483
484
137 -* ps/leakfixes-part-4 (2024-08-08) 23 commits
485 +* ps/leakfixes-part-4 (2024-08-14) 23 commits
486 - builtin/diff: free symmetric diff members
487 - diff: free state populated via options
488 - builtin/log: fix leak when showing converted blob contents
@@ -150,7 +498,7 @@ Release tarballs are available at:
498 - builtin/notes: fix leaking `struct notes_tree` when merging notes
499 - builtin/rebase: fix leaking `commit.gpgsign` value
500 - config: fix leaking comment character config
153 - - submodule-config: fix leaking name enrty when traversing submodules
501 + - submodule-config: fix leaking name entry when traversing submodules
502 - read-cache: fix leaking hashfile when writing index fails
503 - bulk-checkin: fix leaking state TODO
504 - object-name: fix leaking symlink paths in object context
@@ -158,25 +506,24 @@ Release tarballs are available at:
506 - git: fix leaking system paths
507 - remote: plug memory leak when aliasing URLs
508 - Merge branch 'ps/leakfixes-part-3' into ps/leakfixes-part-4
161 - (this branch uses ps/leakfixes-part-3.)
509
510 More leak fixes.
511
512 Will merge to 'next'?
166 - source: <cover.1723121979.git.ps@pks.im>
513 + source: <cover.1723614263.git.ps@pks.im>
514
515
169 -* cp/unit-test-reftable-readwrite (2024-08-09) 4 commits
516 +* cp/unit-test-reftable-readwrite (2024-08-13) 4 commits
517 - t-reftable-readwrite: add test for known error
518 - t-reftable-readwrite: use 'for' in place of infinite 'while' loops
519 - t-reftable-readwrite: use free_names() instead of a for loop
520 - t: move reftable/readwrite_test.c to the unit testing framework
521
175 - Needs review.
176 - source: <20240809111312.4401-1-chandrapratap3519@gmail.com>
522 + Will merge to 'next' by 2024-08-17 or so.
523 + source: <20240813144440.4602-1-chandrapratap3519@gmail.com>
524
525
179 -* ps/config-wo-the-repository (2024-08-07) 21 commits
526 +* ps/config-wo-the-repository (2024-08-13) 21 commits
527 - config: hide functions using `the_repository` by default
528 - global: prepare for hiding away repo-less config functions
529 - config: don't depend on `the_repository` with branch conditions
@@ -195,162 +542,74 @@ Release tarballs are available at:
542 - path: stop relying on `the_repository` when reporting garbage
543 - hooks: remove implicit dependency on `the_repository`
544 - editor: do not rely on `the_repository` for interactive edits
198 - - path: expose `do_git_common_path()` as `strbuf_git_common_pathv()`
545 + - path: expose `do_git_common_path()` as `repo_common_pathv()`
546 - path: expose `do_git_path()` as `repo_git_pathv()`
547 - Merge branch 'ps/refs-wo-the-repository' into ps/config-wo-the-repository
201 - (this branch uses ps/refs-wo-the-repository.)
548
549 Use of API functions that implicitly depend on the_repository
550 object in the config subsystem has been rewritten to pass a
551 repository object through the callchain.
552
207 - Needs review.
208 - source: <cover.1723013714.git.ps@pks.im>
553 + Will merge to 'next'?
554 + source: <cover.1723540226.git.ps@pks.im>
555
556
557 * ps/submodule-ref-format (2024-08-08) 8 commits
558 (merged to 'next' on 2024-08-09 at 2b17964809)
559 + object: fix leaking packfiles when closing object store
214 - + submodule: fix leaking seen submodule names
215 - + submodule: fix leaking fetch tasks
216 - + builtin/submodule: allow "add" to use different ref storage format
217 - + refs: fix ref storage format for submodule ref stores
218 - + builtin/clone: propagate ref storage format to submodules
219 - + builtin/submodule: allow cloning with different ref storage format
220 - + git-submodule.sh: break overly long command lines
221 -
222 - Support to specify ref backend for submodules has been enhanced.
223 -
224 - Will merge to 'master'.
225 - source: <cover.1723102259.git.ps@pks.im>
226 -
227 -
228 -* jc/transport-leakfix (2024-08-07) 1 commit
229 - (merged to 'next' on 2024-08-07 at eec3a24826)
230 - + transport: fix leak with transport helper URLs
231 - (this branch is used by ps/transport-leakfix-test-updates.)
232 -
233 - Leakfix.
234 -
235 - Will merge to 'master'.
236 - source: <xmqq34nfn7ip.fsf@gitster.g>
237 -
238 -
239 -* ps/transport-leakfix-test-updates (2024-08-08) 1 commit
240 - (merged to 'next' on 2024-08-12 at ee80dbc4f6)
241 - + transport: mark more tests leak-free
242 - (this branch uses jc/transport-leakfix.)
243 -
244 - Test updates.
245 -
246 - Will merge to 'master'.
247 - source: <ZrRPD0ggZapZym7E@tanuki>
248 -
249 -
250 -* ag/t7004-modernize (2024-08-08) 8 commits
251 - (merged to 'next' on 2024-08-09 at 7bce577df4)
252 - + t7004: make use of write_script
253 - + t7004: use single quotes instead of double quotes
254 - + t7004: begin the test body on the same line as test_expect_success
255 - + t7004: description on the same line as test_expect_success
256 - + t7004: do not prepare things outside test_expect_success
257 - + t7004: use indented here-doc
258 - + t7004: one command per line
259 - + t7004: remove space after redirect operators
260 -
261 - Coding style fixes to a test script.
262 -
263 - Will merge to 'master'.
264 - source: <20240808163302.17521-1-abdobngad@gmail.com>
265 -
266 -
267 -* ds/for-each-ref-is-base (2024-08-12) 3 commits
268 - - p1500: add is-base performance tests
269 - - for-each-ref: add 'is-base' token
270 - - commit-reach: add get_branch_base_for_tip
271 -
272 - 'git for-each-ref' learned a new "--format" atom to find the branch
273 - that the history leading to a given commit "%(is-base:<commit>)" is
274 - likely based on.
275 -
276 - Comments?
277 - source: <pull.1768.v2.git.1723397687.gitgitgadget@gmail.com>
278 -
279 -
280 -* jk/apply-patch-mode-check-fix (2024-08-05) 1 commit
281 - (merged to 'next' on 2024-08-05 at 2dc1a81c89)
282 - + apply: canonicalize modes read from patches
283 -
284 - The patch parser in 'git apply' has been a bit more lenient against
285 - unexpected mode bits, like 100664, recorded on extended header lines.
286 -
287 - Will merge to 'master'.
288 - source: <20240805060010.GA120016@coredump.intra.peff.net>
289 -
290 -
291 -* kl/test-fixes (2024-08-05) 2 commits
292 - (merged to 'next' on 2024-08-06 at 2cdcac6ce4)
293 - + t6421: fix test to work when repo dir contains d0
294 - + set errno=0 before strtoX calls
295 -
296 - A flakey test and incorrect calls to strtoX() functions have been
297 - fixed.
298 -
299 - Will merge to 'master'.
300 - source: <pull.1756.v3.git.git.1722877808.gitgitgadget@gmail.com>
301 -
302 -
303 -* ps/ls-remote-out-of-repo-fix (2024-08-02) 1 commit
304 - (merged to 'next' on 2024-08-05 at 6438d8196d)
305 - + builtin/ls-remote: fall back to SHA1 outside of a repo
306 -
307 - A recent update broke "git ls-remote" used outside a repository,
308 - which has been corrected.
309 -
310 - Will merge to 'master'.
311 - source: <c52112d3946b2fd8d030580cd7acb809fa54012a.1722573777.git.ps@pks.im>
312 -
313 -
314 -* ps/ref-api-cleanup (2024-08-02) 1 commit
315 - (merged to 'next' on 2024-08-05 at d57856ae19)
316 - + refs: drop `ref_store`-less functions
560 + + submodule: fix leaking seen submodule names
561 + + submodule: fix leaking fetch tasks
562 + + builtin/submodule: allow "add" to use different ref storage format
563 + + refs: fix ref storage format for submodule ref stores
564 + + builtin/clone: propagate ref storage format to submodules
565 + + builtin/submodule: allow cloning with different ref storage format
566 + + git-submodule.sh: break overly long command lines
567
318 - Code clean-up.
568 + Support to specify ref backend for submodules has been enhanced.
569
570 Will merge to 'master'.
321 - source: <1d9add71065dabb3d7bf81529d04afbcf91e3a69.1722577074.git.ps@pks.im>
571 + source: <cover.1723102259.git.ps@pks.im>
572
573
324 -* rs/use-decimal-width (2024-08-05) 1 commit
325 - (merged to 'next' on 2024-08-06 at 99ccbb43de)
326 - + log-tree: use decimal_width()
574 +* ps/transport-leakfix-test-updates (2024-08-08) 1 commit
575 + (merged to 'next' on 2024-08-12 at ee80dbc4f6)
576 + + transport: mark more tests leak-free
577
328 - Code clean-up.
578 + Test updates.
579
580 Will merge to 'master'.
331 - source: <06783722-5184-41d5-8edd-94f97b2f2794@web.de>
581 + source: <ZrRV_HrUArsvRgn8@tanuki>
582
583
334 -* ss/packed-ref-store-leakfix (2024-08-05) 1 commit
335 - (merged to 'next' on 2024-08-06 at 5003ec4218)
336 - + refs/files: prevent memory leak by freeing packed_ref_store
584 +* ag/t7004-modernize (2024-08-08) 8 commits
585 + (merged to 'next' on 2024-08-09 at 7bce577df4)
586 + + t7004: make use of write_script
587 + + t7004: use single quotes instead of double quotes
588 + + t7004: begin the test body on the same line as test_expect_success
589 + + t7004: description on the same line as test_expect_success
590 + + t7004: do not prepare things outside test_expect_success
591 + + t7004: use indented here-doc
592 + + t7004: one command per line
593 + + t7004: remove space after redirect operators
594
338 - Leakfix.
595 + Coding style fixes to a test script.
596
597 Will merge to 'master'.
341 - source: <pull.1757.v2.git.git.1722851612505.gitgitgadget@gmail.com>
598 + source: <20240808163302.17521-1-abdobngad@gmail.com>
599
600
344 -* tb/t7704-deflake (2024-08-05) 1 commit
345 - (merged to 'next' on 2024-08-07 at d3c0727946)
346 - + t/t7704-repack-cruft.sh: avoid failures during long-running tests
601 +* ds/for-each-ref-is-base (2024-08-14) 4 commits
602 + - p1500: add is-base performance tests
603 + - for-each-ref: add 'is-base' token
604 + - commit: add gentle reference lookup method
605 + - commit-reach: add get_branch_base_for_tip
606
348 - A test that fails on an unusually slow machine was found, and made
349 - less likely to cause trouble by lengthening the expiry value it
350 - uses.
607 + 'git for-each-ref' learned a new "--format" atom to find the branch
608 + that the history leading to a given commit "%(is-base:<commit>)" is
609 + likely based on.
610
352 - Will merge to 'master'.
353 - source: <95cdc30bad38f464b37e87d78f38e1d91c9e083b.1722886630.git.me@ttaylorr.com>
611 + Comments?
612 + source: <pull.1768.v3.git.1723631490.gitgitgadget@gmail.com>
613
614
615 * sj/ref-fsck (2024-08-08) 9 commits
@@ -372,24 +631,6 @@ Release tarballs are available at:
631 source: <ZrSqMmD-quQ18a9F@ArchLinux.localdomain>
632
633
375 -* ps/refs-wo-the-repository (2024-07-30) 5 commits
376 - (merged to 'next' on 2024-08-06 at fef5e26d47)
377 - + refs/reftable: stop using `the_repository`
378 - + refs/packed: stop using `the_repository`
379 - + refs/files: stop using `the_repository`
380 - + refs/files: stop using `the_repository` in `parse_loose_ref_contents()`
381 - + refs: stop using `the_repository`
382 - (this branch is used by ps/config-wo-the-repository.)
383 -
384 - In the refs subsystem, implicit reliance of the_repository has been
385 - eliminated; the repository associated with the ref store object is
386 - used instead.
387 -
388 - Will merge to 'master'.
389 - cf. <ZqnEuz9uFgUwWKkc@tanuki>
390 - source: <cover.1722316795.git.ps@pks.im>
391 -
392 -
634 * rs/t-example-simplify (2024-07-30) 1 commit
635 (merged to 'next' on 2024-08-08 at edeb01c38e)
636 + t-example-decorate: remove test messages
@@ -411,7 +652,7 @@ Release tarballs are available at:
652 remotes it uses, so that the server side can omit objects that the
653 client can lazily obtain from these other promissor remotes.
654
414 - Inviting further discussion.
655 + Comments?
656 source: <20240731134014.2299361-1-christian.couder@gmail.com>
657
658
@@ -435,19 +676,6 @@ Release tarballs are available at:
676 source: <cover.1723123606.git.ps@pks.im>
677
678
438 -* rh/http-proxy-path (2024-08-02) 1 commit
439 - (merged to 'next' on 2024-08-05 at d6f1fb194a)
440 - + http: do not ignore proxy path
441 -
442 - The value of http.proxy can have "path" at the end for a socks
443 - proxy that listens to a unix-domain socket, but we started to
444 - discard it when we taught proxy auth code path to use the
445 - credential helpers, which has been corrected.
446 -
447 - Will merge to 'master'.
448 - source: <pull.1767.v5.git.1722576007398.gitgitgadget@gmail.com>
449 -
450 -
679 * jc/refs-symref-referent (2024-08-09) 3 commits
680 (merged to 'next' on 2024-08-09 at 3183f3d05b)
681 + ref-filter: populate symref from iterator
@@ -462,57 +690,6 @@ Release tarballs are available at:
690 source: <pull.1712.v4.git.git.1723217871.gitgitgadget@gmail.com>
691
692
465 -* jk/osxkeychain-username-is-nul-terminated (2024-08-01) 1 commit
466 - (merged to 'next' on 2024-08-05 at 34a238e047)
467 - + credential/osxkeychain: respect NUL terminator in username
468 -
469 - The credential helper to talk to OSX keychain sometimes sent
470 - garbage bytes after the username, which has been corrected.
471 -
472 - Will merge to 'master'.
473 - source: <20240801082556.GA640360@coredump.intra.peff.net>
474 -
475 -
476 -* tb/config-fixed-value-with-valueless-true (2024-08-01) 1 commit
477 - (merged to 'next' on 2024-08-06 at 0476e5ba76)
478 - + config.c: avoid segfault with --fixed-value and valueless config
479 -
480 - "git config --value=foo --fixed-value section.key newvalue" barfed
481 - when the existing value in the configuration file used the
482 - valueless true syntax, which has been corrected.
483 -
484 - Will merge to 'master'.
485 - source: <c78bacfa8fb274fbb48f259b13f4f30253932f69.1722532013.git.me@ttaylorr.com>
486 -
487 -
488 -* jc/jl-git-no-advice-fix (2024-08-01) 1 commit
489 - (merged to 'next' on 2024-08-06 at 468bfce24b)
490 - + t0018: remove leftover debugging cruft
491 -
492 - Remove leftover debugging cruft from a test script.
493 -
494 - Will merge to 'master'.
495 - source: <xmqq7cd0ulen.fsf_-_@gitster.g>
496 -
497 -
498 -* cp/unit-test-reftable-pq (2024-08-01) 7 commits
499 - (merged to 'next' on 2024-08-05 at 05e47f7097)
500 - + t-reftable-pq: add tests for merged_iter_pqueue_top()
501 - + t-reftable-pq: add test for index based comparison
502 - + t-reftable-pq: make merged_iter_pqueue_check() callable by reference
503 - + t-reftable-pq: make merged_iter_pqueue_check() static
504 - + t: move reftable/pq_test.c to the unit testing framework
505 - + reftable: change the type of array indices to 'size_t' in reftable/pq.c
506 - + reftable: remove unnecessary curly braces in reftable/pq.c
507 -
508 - The tests for "pq" part of reftable library got rewritten to use
509 - the unit test framework.
510 -
511 - Will merge to 'master'.
512 - cf. <Zqt02XmevPRB3idt@tanuki>
513 - source: <20240801110453.5087-1-chandrapratap3519@gmail.com>
514 -
515 -
693 * tb/incremental-midx-part-1 (2024-08-06) 19 commits
694 (merged to 'next' on 2024-08-12 at 92ec55fd49)
695 + midx: implement support for writing incremental MIDX chains
@@ -534,6 +711,7 @@ Release tarballs are available at:
711 + midx: teach `nth_midxed_pack_int_id()` about incremental MIDXs
712 + midx: add new fields for incremental MIDX chains
713 + Documentation: describe incremental MIDX format
714 + (this branch is used by jk/midx-unused-fix.)
715
716 Incremental updates of multi-pack index files.
717
@@ -565,72 +743,8 @@ Release tarballs are available at:
743 source: <ZqObobw8FsDMkllm@tanuki>
744
745
568 -* jc/leakfix-hashfile (2024-07-26) 1 commit
569 - (merged to 'next' on 2024-08-06 at 7793a7fc56)
570 - + csum-file: introduce discard_hashfile()
571 -
572 - Leakfix.
573 -
574 - Will merge to 'master'.
575 - source: <xmqqle1p1367.fsf@gitster.g>
576 -
577 -
578 -* jc/leakfix-mailmap (2024-07-26) 1 commit
579 - (merged to 'next' on 2024-08-06 at 22f73301fd)
580 - + mailmap: plug memory leak in read_mailmap_blob()
581 -
582 - Leakfix.
583 -
584 - Will merge to 'master'.
585 - source: <xmqqcyn112xi.fsf@gitster.g>
586 -
587 -
588 -* jr/ls-files-expand-literal-doc (2024-07-26) 1 commit
589 - (merged to 'next' on 2024-08-06 at 0e7c8858ef)
590 - + doc: fix hex code escapes in git-ls-files
591 -
592 - Docfix.
593 -
594 - Will merge to 'master'.
595 - source: <CACStHN-Gs2Sxej+md6zWr3V1dFo+pp=B4yEPm9=uPambDR2NaQ@mail.gmail.com>
596 -
597 -
598 -* ps/leakfixes-part-3 (2024-08-01) 24 commits
599 - (merged to 'next' on 2024-08-05 at e3d94036ff)
600 - + commit-reach: fix trivial memory leak when computing reachability
601 - + convert: fix leaking config strings
602 - + entry: fix leaking pathnames during delayed checkout
603 - + object-name: fix leaking commit list items
604 - + t/test-repository: fix leaking repository
605 - + builtin/credential-cache: fix trivial leaks
606 - + builtin/worktree: fix leaking derived branch names
607 - + builtin/shortlog: fix various trivial memory leaks
608 - + builtin/rerere: fix various trivial memory leaks
609 - + builtin/credential-store: fix leaking credential
610 - + builtin/show-branch: fix several memory leaks
611 - + builtin/rev-parse: fix memory leak with `--parseopt`
612 - + builtin/stash: fix various trivial memory leaks
613 - + builtin/remote: fix various trivial memory leaks
614 - + builtin/remote: fix leaking strings in `branch_list`
615 - + builtin/ls-remote: fix leaking `pattern` strings
616 - + builtin/submodule--helper: fix leaking buffer in `is_tip_reachable`
617 - + builtin/submodule--helper: fix leaking clone depth parameter
618 - + builtin/name-rev: fix various trivial memory leaks
619 - + builtin/describe: fix trivial memory leak when describing blob
620 - + builtin/describe: fix leaking array when running diff-index
621 - + builtin/describe: fix memory leak with `--contains=`
622 - + builtin/log: fix leaking branch name when creating cover letters
623 - + builtin/replay: plug leaking `advance_name` variable
624 - (this branch is used by ps/leakfixes-part-4.)
625 -
626 - More leakfixes.
627 -
628 - Will merge to 'master'.
629 - cf. <ZqvDJpNxMkvd3hSZ@nand.local>
630 - source: <cover.1722499961.git.ps@pks.im>
631 -
632 -
633 -* ag/git-svn-global-ignores (2024-07-18) 2 commits
746 +* ag/git-svn-global-ignores (2024-08-14) 3 commits
747 + - git-svn: mention `svn:global-ignores` in help+docs
748 (merged to 'next' on 2024-08-08 at 3ba5e164a6)
749 + git-svn: use `svn:global-ignores` to create .gitignore
750 + git-svn: add public property `svn:global-ignores`
@@ -638,8 +752,9 @@ Release tarballs are available at:
752 "git svn" has been taught about svn:global-ignores property
753 recent versions of Subversion has.
754
641 - Will merge to 'master'.
755 + Will merge to 'next'.
756 source: <pull.1747.v2.git.git.1721335657.gitgitgadget@gmail.com>
757 + source: <pull.1766.v2.git.git.1723578946962.gitgitgadget@gmail.com>
758
759
760 * jc/safe-directory (2024-07-30) 4 commits
@@ -655,23 +770,6 @@ Release tarballs are available at:
770 source: <20240730184352.2503276-1-gitster@pobox.com>
771
772
658 -* cp/unit-test-reftable-tree (2024-08-04) 5 commits
659 - (merged to 'next' on 2024-08-06 at e32c456e45)
660 - + t-reftable-tree: improve the test for infix_walk()
661 - + t-reftable-tree: add test for non-existent key
662 - + t-reftable-tree: split test_tree() into two sub-test functions
663 - + t: move reftable/tree_test.c to the unit testing framework
664 - + reftable: remove unnecessary curly braces in reftable/tree.c
665 -
666 - A test in reftable library has been rewritten using the unit test
667 - framework.
668 -
669 - Will merge to 'master'.
670 - cf. <Zqt1WTT_eJKEuO1z@tanuki>
671 - cf. <ZrCx0NWRbFOOReki@tanuki>
672 - source: <20240804141105.4268-1-chandrapratap3519@gmail.com>
673 -
674 -
773 * ew/cat-file-optim (2024-07-15) 10 commits
774 - cat-file: use writev(2) if available
775 - cat-file: batch_write: use size_t for length
@@ -691,27 +789,6 @@ Release tarballs are available at:
789 source: <20240715003519.2671385-1-e@80x24.org>
790
791
694 -* jc/document-use-of-local (2024-07-15) 1 commit
695 - (merged to 'next' on 2024-08-07 at 3321b54659)
696 - + doc: note that AT&T ksh does not work with our test suite
697 -
698 - Doc update.
699 -
700 - Will merge to 'master'.
701 - source: <xmqq1q3u8zmr.fsf@gitster.g>
702 -
703 -
704 -* jc/reflog-expire-lookup-commit-fix (2024-07-16) 1 commit
705 - (merged to 'next' on 2024-08-06 at 1e59eac417)
706 - + Revert "reflog expire: don't use lookup_commit_reference_gently()"
707 -
708 - "git reflog expire" failed to honor annotated tags when computing
709 - reachable commits.
710 -
711 - Will merge to 'master'.
712 - source: <xmqqv8156rh2.fsf@gitster.g>
713 -
714 -
792 * es/doc-platform-support-policy (2024-08-02) 1 commit
793 (merged to 'next' on 2024-08-09 at 110c94ea82)
794 + Documentation: add platform support policy
@@ -750,20 +827,3 @@ Release tarballs are available at:
827
828 Will merge to 'master'.
829 source: <077a178e-eb30-45ff-b653-a514bfd33077@web.de>
753 -
754 -
755 -* jc/patch-id (2024-07-29) 5 commits
756 - (merged to 'next' on 2024-08-06 at 9ad078b49c)
757 - + patch-id: tighten code to detect the patch header
758 - + patch-id: rewrite code that detects the beginning of a patch
759 - + patch-id: make get_one_patchid() more extensible
760 - + patch-id: call flush_current_id() only when needed
761 - + t4204: patch-id supports various input format
762 -
763 - The patch parser in "git patch-id" has been tightened to avoid
764 - getting confused by lines that look like a patch header in the log
765 - message.
766 -
767 - Will merge to 'master'.
768 - cf. <Zqh2T_2RLt0SeKF7@tanuki>
769 - source: <20240730011738.4032377-1-gitster@pobox.com>