What's cooking (2024/08 #01)

Junio C Hamano committed Aug 1, 2024 at 14:00 UTC 5d775b5a86ec6cad3b8e6024cd457b84ebdbd97e
1 file changed +430 -300
whats-cooking.txt
+430 -300
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Jul 2024, #09; Mon, 29)
3 -X-master-at: 39bf06adf96da25b87c9aa7d35a32ef3683eb4a4
4 -X-next-at: 1c80b25241079052bdf3727e0ab9a5d77c51ea6e
2 +Subject: What's cooking in git.git (Aug 2024, #01; Thu, 1)
3 +X-master-at: 406f326d271e0bacecdb00425422c5fa3f314930
4 +X-next-at: e559c4bf1a306cf5814418d318cc0fea070da3c7
5 Bcc: lwn@lwn.net, gitster@pobox.com
6
7 -What's cooking in git.git (Jul 2024, #09; Mon, 29)
7 +What's cooking in git.git (Aug 2024, #01; Thu, 1)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -17,16 +17,8 @@ topic without enough support may be discarded after a long period of
17 no activity (of course they can be resubmit when new interests
18 arise).
19
20 -Git 2.46 has been tagged. As usual, we'll wait for embarrassing
21 -bugs to be reported for a week or so, try to fix them, and then
22 -reopen the tree for the next iteration (probably called 2.47).
23 -
24 -We already have known fallouts left from the removal of fallback to
25 -SHA-1 in operations that do not require an repository, which we may
26 -want to address next. There may be more work needed to alleviate
27 -the issues caused by the over-eager defense-in-depth changes
28 -introduced by 2.45.1, even though they were somewhat loosened in
29 -2.45.2 already.
20 +The first two batches of topics have graduated to 'master' and
21 +'next' has been rewound on top of 'master'.
22
23 Copies of the source code to Git live in many repositories, and the
24 following is a list of the ones I push into or their mirrors. Some
@@ -57,51 +49,56 @@ Release tarballs are available at:
49 https://www.kernel.org/pub/software/scm/git/
50
51 --------------------------------------------------
60 -[New Topics]
61 -
62 -* ja/doc-synopsis-markup (2024-07-24) 3 commits
63 - - doc: apply synopsis simplification on git-clone and git-init
64 - - doc: update the guidelines to reflect the current formatting rules
65 - - doc: introduce a synopsis custom paragraph attribute
52 +[Graduated to 'master']
53
67 - The way AsciiDoc is used for SYNOPSIS part of the manual pages has
68 - been revamped. The sources, at least for the simple cases, got
69 - vastly pleasant to work with.
54 +* ad/merge-with-diff-algorithm (2024-07-13) 1 commit
55 + (merged to 'next' on 2024-07-16 at 90fe5aff4d)
56 + + merge-recursive: honor diff.algorithm
57
71 - Inviting further discussion.
72 - source: <pull.1766.v2.git.1721855179.gitgitgadget@gmail.com>
58 + Many Porcelain commands that internally use the merge machinery
59 + were taught to consistently honor the diff.algorithm configuration.
60 + source: <pull.1743.v3.git.git.1720889507066.gitgitgadget@gmail.com>
61
62
75 -* ps/doc-more-c-coding-guidelines (2024-07-24) 3 commits
76 - - Documentation: document difference between release and free
77 - - Documentation: document naming schema for struct-related functions
78 - - Documentation: clarify indentation style for C preprocessor directives
63 +* as/show-ref-option-help-update (2024-07-25) 1 commit
64 + (merged to 'next' on 2024-07-26 at bbdc971c38)
65 + + show-ref: improve short help messages of options
66
80 - Some project conventions have been added to CodingGuidelines.
67 + A few descriptions in "git show-ref -h" have been clarified.
68 + source: <20240724111116.91615-1-ash@kambanaria.org>
69
82 - Inviting further discussion.
83 - source: <cover.1721818488.git.ps@pks.im>
70
71 +* cp/unit-test-reftable-merged (2024-07-12) 7 commits
72 + (merged to 'next' on 2024-07-23 at 88d2a9ee28)
73 + + t-reftable-merged: add test for REFTABLE_FORMAT_ERROR
74 + + t-reftable-merged: use reftable_ref_record_equal to compare ref records
75 + + t-reftable-merged: add tests for reftable_merged_table_max_update_index
76 + + t-reftable-merged: improve the const-correctness of helper functions
77 + + t-reftable-merged: improve the test t_merged_single_record()
78 + + t: harmonize t-reftable-merged.c with coding guidelines
79 + + t: move reftable/merged_test.c to the unit testing framework
80
86 -* tc/fetch-bundle-uri (2024-07-24) 3 commits
87 - - fetch: use bundle URIs when having creationToken heuristic
88 - - transport: introduce transport_has_remote_bundle_uri()
89 - - clone: remove double bundle list clear code
81 + Another reftable test has been ported to use the unit test framework.
82 + source: <20240712055041.6476-1-chandrapratap3519@gmail.com>
83
91 - Allow "git fetch" take advantage of bundleURI feature.
84
93 - Needs review.
94 - source: <20240724144957.3033840-1-toon@iotcl.com>
85 +* jc/checkout-no-op-switch-errors (2024-07-02) 1 commit
86 + (merged to 'next' on 2024-07-22 at 9573259db9)
87 + + checkout: special case error messages during noop switching
88
89 + "git checkout --ours" (no other arguments) complained that the
90 + option is incompatible with branch switching, which is technically
91 + correct, but found confusing by some users. It now says that the
92 + user needs to give pathspec to specify what paths to checkout.
93 + source: <xmqqikxnqzz4.fsf@gitster.g>
94
97 -* as/show-ref-option-help-update (2024-07-25) 1 commit
98 - (merged to 'next' on 2024-07-26 at bbdc971c38)
99 - + show-ref: improve short help messages of options
95
101 - A few descriptions in "git show-ref -h" have been clarified.
96 +* jc/doc-one-shot-export-with-shell-func (2024-07-23) 1 commit
97 + (merged to 'next' on 2024-07-23 at 621c29e4f6)
98 + + CodingGuidelines: document a shell that "fails" "VAR=VAL shell_func"
99
103 - Will merge to 'master'.
104 - source: <20240724111116.91615-1-ash@kambanaria.org>
100 + It has been documented that we avoid "VAR=VAL shell_func" and why.
101 + source: <xmqqwmld55y1.fsf@gitster.g>
102
103
104 * jc/doc-rebase-fuzz-vs-offset-fix (2024-07-25) 1 commit
@@ -111,8 +108,6 @@ Release tarballs are available at:
108 "git rebase --help" referred to "offset" (the difference between
109 the location a change was taken from and the change gets replaced)
110 incorrectly and called it "fuzz", which has been corrected.
114 -
115 - Will merge to 'master'.
111 source: <xmqqplr1fkla.fsf@gitster.g>
112
113
@@ -122,92 +117,309 @@ Release tarballs are available at:
117
118 The reviewing guidelines document now explicitly encourages people
119 to give positive reviews and how.
120 + source: <xmqqle1pjwtt.fsf@gitster.g>
121 +
122 +
123 +* jc/how-to-maintain-updates (2024-07-19) 2 commits
124 + (merged to 'next' on 2024-07-26 at c950efa46d)
125 + + howto-maintain: update daily tasks
126 + + howto-maintain: cover a whole development cycle
127 +
128 + Doc update.
129 + source: <xmqq1q3phzpi.fsf@gitster.g>
130 +
131 +
132 +* jt/doc-post-receive-hook-update (2024-07-15) 1 commit
133 + (merged to 'next' on 2024-07-17 at 624ac4ebe2)
134 + + doc: clarify post-receive hook behavior
135 +
136 + Doc update.
137 + source: <20240715183739.7808-1-jltobler@gmail.com>
138 +
139 +
140 +* kn/ci-clang-format (2024-07-23) 6 commits
141 + (merged to 'next' on 2024-07-23 at 3aca45d08a)
142 + + ci/style-check: add `RemoveBracesLLVM` in CI job
143 + + check-whitespace: detect if no base_commit is provided
144 + + ci: run style check on GitHub and GitLab
145 + + clang-format: formalize some of the spacing rules
146 + + clang-format: avoid spacing around bitfield colon
147 + + clang-format: indent preprocessor directives after hash
148 + (this branch is used by ps/doc-more-c-coding-guidelines.)
149 +
150 + A CI job that use clang-format to check coding style issues in new
151 + code has been added.
152 + source: <20240723082111.874382-1-karthik.188@gmail.com>
153 +
154 +
155 +* pw/add-patch-with-suppress-blank-empty (2024-07-20) 2 commits
156 + (merged to 'next' on 2024-07-22 at 5437b7dee3)
157 + + add-patch: use normalize_marker() when recounting edited hunk
158 + + add-patch: handle splitting hunks with diff.suppressBlankEmpty
159 +
160 + "git add -p" by users with diff.suppressBlankEmpty set to true
161 + failed to parse the patch that represents an unmodified empty line
162 + with an empty line (not a line with a single space on it), which
163 + has been corrected.
164 + source: <pull.1763.v2.git.1721491320.gitgitgadget@gmail.com>
165 +
166 +
167 +* rj/make-cleanup (2024-07-18) 2 commits
168 + (merged to 'next' on 2024-07-22 at bf3991f70f)
169 + + config.mak.uname: remove unused uname_P variable
170 + + Makefile: drop -Wno-universal-initializer from SP_EXTRA_FLAGS
171 +
172 + A build tweak knob has been simplified by not setting the value
173 + that is already the default; another unused one has been removed.
174 + source: <0d132370-3e07-4332-bcfb-c4450100d736@ramsayjones.plus.com>
175 +
176 +
177 +* rs/t-strvec-use-test-msg (2024-07-16) 3 commits
178 + (merged to 'next' on 2024-07-16 at 3e860b3f12)
179 + + t-strvec: fix type mismatch in check_strvec
180 + (merged to 'next' on 2024-07-15 at f26e434515)
181 + + t-strvec: improve check_strvec() output
182 + (merged to 'next' on 2024-07-08 at c28c2553de)
183 + + t-strvec: use test_msg()
184 +
185 + Unit test clean-up.
186 + source: <35b0ba6b-d485-44f2-a19f-3ce816f8b435@web.de>
187 + source: <983be396-f47c-4573-8c33-af8367f8ddbe@web.de>
188 + source: <1521ed89-989e-452b-b7fc-9e73672e0764@web.de>
189 +
190 +
191 +* tn/doc-commit-fix (2024-07-22) 1 commit
192 + (merged to 'next' on 2024-07-23 at eb73e04ee4)
193 + + doc: remove dangling closing parenthesis
194 +
195 + Docfix.
196 + source: <20240722225302.124356-1-tomasn@posteo.net>
197 +
198 +--------------------------------------------------
199 +[New Topics]
200 +
201 +* dd/notes-empty-no-edit-by-default (2024-07-29) 1 commit
202 + (merged to 'next' on 2024-08-01 at fe75c53260)
203 + + notes: do not trigger editor when adding an empty note
204 +
205 + "git notes add -m '' --allow-empty" and friends that take prepared
206 + data to create notes should not invoke an editor, but it started
207 + doing so since Git 2.42, which has been corrected.
208
209 Will merge to 'master'.
127 - source: <xmqqle1pjwtt.fsf@gitster.g>
210 + source: <20240729151639.19192-2-ddiss@suse.de>
211
212
130 -* jc/leakfix-hashfile (2024-07-26) 1 commit
131 - - csum-file: introduce discard_hashfile()
213 +* ks/unit-test-comment-typofix (2024-07-29) 1 commit
214 + (merged to 'next' on 2024-08-01 at 35c44187b1)
215 + + unit-tests/test-lib: fix typo in check_pointer_eq() description
216
133 - source: <xmqqle1p1367.fsf@gitster.g>
217 + Typofix.
218
219 + Will merge to 'master'.
220 + source: <20240729043303.3486-1-five231003@gmail.com>
221
136 -* jc/leakfix-mailmap (2024-07-26) 1 commit
137 - - mailmap: plug memory leak in read_mailmap_blob()
222
139 - source: <xmqqcyn112xi.fsf@gitster.g>
223 +* dh/encoding-trace-optim (2024-07-31) 1 commit
224 + (merged to 'next' on 2024-08-01 at c5e023eeaf)
225 + + convert: return early when not tracing
226
227 + An expensive operation to prepare tracing was done in re-encoding
228 + code path even when the tracing was not requested, which has been
229 + corrected.
230
142 -* jr/ls-files-expand-literal-doc (2024-07-26) 1 commit
143 - - doc: fix hex code escapes in git-ls-files
231 + Will merge to 'master'.
232 + source: <pull.1744.v6.git.git.1722432839473.gitgitgadget@gmail.com>
233
145 - source: <CACStHN-Gs2Sxej+md6zWr3V1dFo+pp=B4yEPm9=uPambDR2NaQ@mail.gmail.com>
234
235 +* ps/refs-wo-the-repository (2024-07-30) 5 commits
236 + - refs/reftable: stop using `the_repository`
237 + - refs/packed: stop using `the_repository`
238 + - refs/files: stop using `the_repository`
239 + - refs/files: stop using `the_repository` in `parse_loose_ref_contents()`
240 + - refs: stop using `the_repository`
241
148 -* ps/leakfixes-part-3 (2024-07-26) 23 commits
149 - - commit-reach: fix trivial memory leak when computing reachability
150 - - convert: fix leaking config strings
151 - - entry: fix leaking pathnames during delayed checkout
152 - - object-name: fix leaking commit list items
153 - - t/test-repository: fix leaking repository
154 - - builtin/credential-cache: fix trivial leaks
155 - - builtin/worktree: fix leaking derived branch names
156 - - builtin/shortlog: fix various trivial memory leaks
157 - - builtin/rerere: fix various trivial memory leaks
158 - - builtin/credential-store: fix leaking credential
159 - - builtin/show-branch: fix several memory leaks
160 - - builtin/rev-parse: fix memory leak with `--parseopt`
161 - - builtin/stash: fix various trivial memory leaks
162 - - builtin/remote: fix various trivial memory leaks
163 - - builtin/remote: fix leaking strings in `branch_list`
164 - - builtin/ls-remote: fix leaking `pattern` strings
165 - - builtin/submodule--helper: fix various trivial memory leaks
166 - - builtin/name-rev: fix various trivial memory leaks
167 - - builtin/describe: fix trivial memory leak when describing blob
168 - - builtin/describe: fix leaking array when running diff-index
169 - - builtin/describe: fix memory leak with `--contains=`
170 - - builtin/log: fix leaking branch name when creating cover letters
171 - - builtin/replay: plug leaking `advance_name` variable
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 +
246 + Will merge to 'next'?
247 + cf. <ZqnEuz9uFgUwWKkc@tanuki>
248 + source: <cover.1722316795.git.ps@pks.im>
249 +
250 +
251 +* rs/grep-omit-blank-lines-after-function-at-eof (2024-07-30) 1 commit
252 + (merged to 'next' on 2024-08-01 at 0c6e2b21f9)
253 + + grep: -W: skip trailing empty lines at EOF, too
254
173 - source: <cover.1721995576.git.ps@pks.im>
255 + "git grep -W" omits blank lines that follow the found function at
256 + the end of the file, just like it omits blank lines before the next
257 + function.
258 +
259 + Will merge to 'master'.
260 + source: <8b90e0ec-251f-46b3-8777-96efd58e227b@web.de>
261 +
262 +
263 +* rs/t-example-simplify (2024-07-30) 1 commit
264 + - t-example-decorate: remove test messages
265 +
266 + Unit test simplification.
267 +
268 + Will merge to 'next'?
269 + source: <5c838884-b606-465a-8f7e-ab760ddadef8@web.de>
270 +
271 +
272 +* cc/promisor-remote-capability (2024-07-31) 4 commits
273 + - promisor-remote: check advertised name or URL
274 + - Add 'promisor-remote' capability to protocol v2
275 + - strbuf: refactor strbuf_trim_trailing_ch()
276 + - version: refactor strbuf_sanitize()
277 +
278 + The v2 protocol learned to allow the server to advertise possible
279 + promisor remotes, and the client to respond with what promissor
280 + remotes it uses, so that the server side can omit objects that the
281 + client can lazily obtain from these other promissor remotes.
282 +
283 + Inviting further discussion.
284 + source: <20240731134014.2299361-1-christian.couder@gmail.com>
285 +
286 +
287 +* ps/reftable-stack-compaction (2024-07-31) 8 commits
288 + - reftable/stack: handle locked tables during auto-compaction
289 + - reftable/stack: fix corruption on concurrent compaction
290 + - reftable/stack: use lock_file when adding table to "tables.list"
291 + - reftable/stack: do not die when fsyncing lock file files
292 + - reftable/stack: simplify tracking of table locks
293 + - reftable/stack: update stats on failed full compaction
294 + - reftable/stack: test compaction with already-locked tables
295 + - reftable/stack: refactor function to gather table sizes
296 +
297 + The code paths to compact multiple reftable files have been updated
298 + to correctly deal with multiple compaction triggering at the same
299 + time.
300 +
301 + Needs review.
302 + source: <cover.1722435214.git.ps@pks.im>
303 +
304 +
305 +* rh/http-proxy-path (2024-08-01) 1 commit
306 + - http: do not ignore proxy path
307 +
308 + The value of http.proxy can have "path" at the end for a socks
309 + proxy that listens to a unix-domain socket, but we started to
310 + discard it when we taught proxy auth code path to use the
311 + credential helpers, which has been corrected.
312 +
313 + Will merge to 'next'.
314 + source: <pull.1767.v4.git.1722489776279.gitgitgadget@gmail.com>
315 +
316 +
317 +* jc/refs-symref-referent (2024-08-01) 4 commits
318 + - SQUASH???
319 + - ref-filter: populate symref from iterator
320 + - refs: add referent to each_ref_fn
321 + - refs: keep track of unresolved reference value in iterators
322 +
323 + The refs API has been taught to give symref target information to
324 + the users of ref iterators, allowing for-each-ref and friends to
325 + avoid an extra ref_resolve_* API call per a symbolic ref.
326 +
327 + Inviting further discussion.
328 + source: <pull.1712.v2.git.git.1722524334.gitgitgadget@gmail.com>
329 +
330 +
331 +* jk/osxkeychain-username-is-nul-terminated (2024-08-01) 1 commit
332 + - credential/osxkeychain: respect NUL terminator in username
333 +
334 + The credential helper to talk to OSX keychain sometimes sent
335 + garbage bytes after the username, which has been corrected.
336 +
337 + Will merge to 'next'.
338 + source: <20240801082556.GA640360@coredump.intra.peff.net>
339 +
340 +
341 +* tb/config-fixed-value-with-valueless-true (2024-08-01) 1 commit
342 + - config.c: avoid segfault with --fixed-value and valueless config
343 +
344 + "git config --value=foo --fixed-value section.key newvalue" barfed
345 + when the existing value in the configuration file used the
346 + valueless true syntax, which has been corrected.
347 +
348 + Will merge to 'next'.
349 + source: <c78bacfa8fb274fbb48f259b13f4f30253932f69.1722532013.git.me@ttaylorr.com>
350 +
351 +
352 +* jc/jl-git-no-advice-fix (2024-08-01) 1 commit
353 + - t0018: remove leftover debugging cruft
354 +
355 + Remove leftover debugging cruft from a test script.
356 +
357 + Will merge to 'next'.
358 + source: <xmqq7cd0ulen.fsf_-_@gitster.g>
359
360 --------------------------------------------------
361 [Stalled]
362
178 -* sj/ref-fsck (2024-07-15) 10 commits
179 - - fsck: add ref content check for files backend
180 - - fsck: add ref name check for files backend
181 - - files-backend: add unified interface for refs scanning
182 - - builtin/fsck: add `git-refs verify` child process
183 - - git refs: add verify subcommand
184 - - refs: set up ref consistency check infrastructure
185 - - fsck: add refs-related error report function
186 - - fsck: rename objects-related fsck error functions
187 - - fsck: add a unified interface for reporting fsck messages
188 - - fsck: rename "skiplist" to "skip_oids"
363 +* sj/ref-fsck (2024-07-30) 10 commits
364 + . fsck: add ref content check for files backend
365 + . fsck: add ref name check for files backend
366 + . files-backend: add unified interface for refs scanning
367 + . builtin/fsck: add `git-refs verify` child process
368 + . git refs: add verify subcommand
369 + . refs: set up ref consistency check infrastructure
370 + . fsck: add refs-related error report function
371 + . fsck: rename objects-related fsck error functions
372 + . fsck: add a unified interface for reporting fsck messages
373 + . fsck: rename "skiplist" to "skip_oids"
374
375 "git fsck" infrastructure has been taught to also check the sanity
376 of the ref database, in addition to the object database.
377
193 - Needs review.
194 - source: <ZpPEdmUN1Z5tqbK3@ArchLinux>
378 + Needs update.
379 + Contradicts with Patrick's the_repository elimination series.
380 + source: <ZqeXrPROpEg_pRS2@ArchLinux>
381 +
382 +
383 +* pp/add-parse-range-unit-test (2024-05-27) 1 commit
384 + - apply: add unit tests for parse_range
385 +
386 + A unit test for code that parses the hunk offset and length from a
387 + patch fragment header as been added.
388
389 + Expecting a reroll.
390 + cf. <b7eca313-9ea8-4132-ba1d-ed9236e07095@gmail.com>
391 + source: <pull.1677.v2.git.git.1716710073910.gitgitgadget@gmail.com>
392 +
393 +
394 +* cw/git-std-lib (2024-02-28) 4 commits
395 + . SQUASH??? get rid of apparent debugging crufts
396 + . test-stdlib: show that git-std-lib is independent
397 + . git-std-lib: introduce Git Standard Library
398 + . pager: include stdint.h because uintmax_t is used
399
197 -* cp/unit-test-reftable-pq (2024-07-23) 7 commits
400 + Split libgit.a out to a separate git-std-lib tor easier reuse.
401 +
402 + Expecting a reroll.
403 + source: <cover.1696021277.git.jonathantanmy@google.com>
404 +
405 +--------------------------------------------------
406 +[Cooking]
407 +
408 +* cp/unit-test-reftable-pq (2024-08-01) 7 commits
409 - t-reftable-pq: add tests for merged_iter_pqueue_top()
410 - t-reftable-pq: add test for index based comparison
411 - t-reftable-pq: make merged_iter_pqueue_check() callable by reference
412 - t-reftable-pq: make merged_iter_pqueue_check() static
413 - t: move reftable/pq_test.c to the unit testing framework
414 - reftable: change the type of array indices to 'size_t' in reftable/pq.c
204 - - reftable: remove unncessary curly braces in reftable/pq.c
415 + - reftable: remove unnecessary curly braces in reftable/pq.c
416
417 The tests for "pq" part of reftable library got rewritten to use
418 the unit test framework.
419
209 - Needs review.
210 - source: <20240723143032.4261-1-chandrapratap3519@gmail.com>
420 + Will merge to 'next'.
421 + cf. <Zqt02XmevPRB3idt@tanuki>
422 + source: <20240801110453.5087-1-chandrapratap3519@gmail.com>
423
424
425 * tb/incremental-midx-part-1 (2024-07-17) 19 commits
@@ -233,54 +445,112 @@ Release tarballs are available at:
445
446 Incremental updates of multi-pack index files.
447
236 - Needs review.
448 + Expecting a reroll.
449 + cf. <ZqvZeWDGDAeZNZjW@nand.local>
450 source: <cover.1721250704.git.me@ttaylorr.com>
451
452
240 -* pp/add-parse-range-unit-test (2024-05-27) 1 commit
241 - - apply: add unit tests for parse_range
453 +* ja/doc-synopsis-markup (2024-07-24) 3 commits
454 + - doc: apply synopsis simplification on git-clone and git-init
455 + - doc: update the guidelines to reflect the current formatting rules
456 + - doc: introduce a synopsis custom paragraph attribute
457
243 - A unit test for code that parses the hunk offset and length from a
244 - patch fragment header as been added.
458 + The way AsciiDoc is used for SYNOPSIS part of the manual pages has
459 + been revamped. The sources, at least for the simple cases, got
460 + vastly pleasant to work with.
461
246 - Expecting a reroll.
247 - cf. <b7eca313-9ea8-4132-ba1d-ed9236e07095@gmail.com>
248 - source: <pull.1677.v2.git.git.1716710073910.gitgitgadget@gmail.com>
462 + Inviting further discussion.
463 + source: <pull.1766.v2.git.1721855179.gitgitgadget@gmail.com>
464
465
251 -* cw/git-std-lib (2024-02-28) 4 commits
252 - . SQUASH??? get rid of apparent debugging crufts
253 - . test-stdlib: show that git-std-lib is independent
254 - . git-std-lib: introduce Git Standard Library
255 - . pager: include stdint.h because uintmax_t is used
466 +* ps/doc-more-c-coding-guidelines (2024-07-30) 6 commits
467 + (merged to 'next' on 2024-08-01 at 8f8ac5d6ca)
468 + + Documentation: consistently use spaces inside initializers
469 + + Documentation: document idiomatic function names
470 + + Documentation: document naming schema for structs and their functions
471 + + Documentation: clarify indentation style for C preprocessor directives
472 + + clang-format: fix indentation width for preprocessor directives
473 + + Merge branch 'kn/ci-clang-format' into ps/doc-more-c-coding-guidelines
474
257 - Split libgit.a out to a separate git-std-lib tor easier reuse.
475 + Some project conventions have been added to CodingGuidelines.
476
259 - Expecting a reroll.
260 - source: <cover.1696021277.git.jonathantanmy@google.com>
477 + Will merge to 'master'.
478 + source: <cover.1722323818.git.ps@pks.im>
479
262 ---------------------------------------------------
263 -[Cooking]
480
265 -* ps/p4-tests-updates (2024-07-23) 3 commits
266 - - t98xx: mark Perforce tests as memory-leak free
267 - - ci: update Perforce version to r23.2
268 - - t98xx: fix Perforce tests with p4d r23 and newer
481 +* tc/fetch-bundle-uri (2024-07-24) 3 commits
482 + - fetch: use bundle URIs when having creationToken heuristic
483 + - transport: introduce transport_has_remote_bundle_uri()
484 + - clone: remove double bundle list clear code
485
270 - Perforce tests have been updated.
486 + Allow "git fetch" take advantage of bundleURI feature.
487
488 Needs review.
273 - source: <cover.1721740612.git.ps@pks.im>
489 + source: <20240724144957.3033840-1-toon@iotcl.com>
490
491
276 -* jc/doc-one-shot-export-with-shell-func (2024-07-23) 1 commit
277 - (merged to 'next' on 2024-07-23 at 621c29e4f6)
278 - + CodingGuidelines: document a shell that "fails" "VAR=VAL shell_func"
492 +* jc/leakfix-hashfile (2024-07-26) 1 commit
493 + - csum-file: introduce discard_hashfile()
494 +
495 + source: <xmqqle1p1367.fsf@gitster.g>
496 +
497 +
498 +* jc/leakfix-mailmap (2024-07-26) 1 commit
499 + - mailmap: plug memory leak in read_mailmap_blob()
500 +
501 + source: <xmqqcyn112xi.fsf@gitster.g>
502
280 - It has been documented that we avoid "VAR=VAL shell_func" and why.
503 +
504 +* jr/ls-files-expand-literal-doc (2024-07-26) 1 commit
505 + - doc: fix hex code escapes in git-ls-files
506 +
507 + source: <CACStHN-Gs2Sxej+md6zWr3V1dFo+pp=B4yEPm9=uPambDR2NaQ@mail.gmail.com>
508 +
509 +
510 +* ps/leakfixes-part-3 (2024-08-01) 24 commits
511 + - commit-reach: fix trivial memory leak when computing reachability
512 + - convert: fix leaking config strings
513 + - entry: fix leaking pathnames during delayed checkout
514 + - object-name: fix leaking commit list items
515 + - t/test-repository: fix leaking repository
516 + - builtin/credential-cache: fix trivial leaks
517 + - builtin/worktree: fix leaking derived branch names
518 + - builtin/shortlog: fix various trivial memory leaks
519 + - builtin/rerere: fix various trivial memory leaks
520 + - builtin/credential-store: fix leaking credential
521 + - builtin/show-branch: fix several memory leaks
522 + - builtin/rev-parse: fix memory leak with `--parseopt`
523 + - builtin/stash: fix various trivial memory leaks
524 + - builtin/remote: fix various trivial memory leaks
525 + - builtin/remote: fix leaking strings in `branch_list`
526 + - builtin/ls-remote: fix leaking `pattern` strings
527 + - builtin/submodule--helper: fix leaking buffer in `is_tip_reachable`
528 + - builtin/submodule--helper: fix leaking clone depth parameter
529 + - builtin/name-rev: fix various trivial memory leaks
530 + - builtin/describe: fix trivial memory leak when describing blob
531 + - builtin/describe: fix leaking array when running diff-index
532 + - builtin/describe: fix memory leak with `--contains=`
533 + - builtin/log: fix leaking branch name when creating cover letters
534 + - builtin/replay: plug leaking `advance_name` variable
535 +
536 + More leakfixes.
537 +
538 + Will merge to 'next'.
539 + cf. <ZqvDJpNxMkvd3hSZ@nand.local>
540 + source: <cover.1722499961.git.ps@pks.im>
541 +
542 +
543 +* ps/p4-tests-updates (2024-07-31) 3 commits
544 + (merged to 'next' on 2024-08-01 at e559c4bf1a)
545 + + t98xx: mark Perforce tests as memory-leak free
546 + + ci: update Perforce version to r23.2
547 + + t98xx: fix Perforce tests with p4d r23 and newer
548 +
549 + Perforce tests have been updated.
550
551 Will merge to 'master'.
283 - source: <xmqqwmld55y1.fsf@gitster.g>
552 + cf. <na5mwletzpnacietbc7pzqcgb622mvrwgrkjgjosysz3gvjcso@gzxxi7d7icr7>
553 + source: <cover.1722421911.git.ps@pks.im>
554
555
556 * ag/git-svn-global-ignores (2024-07-18) 2 commits
@@ -290,69 +560,36 @@ Release tarballs are available at:
560 "git svn" has been taught about svn:global-ignores property
561 recent versions of Subversion has.
562
293 - Needs review.
563 + Will merge to 'next'?
564 source: <pull.1747.v2.git.git.1721335657.gitgitgadget@gmail.com>
565
566
297 -* jc/how-to-maintain-updates (2024-07-19) 2 commits
298 - (merged to 'next' on 2024-07-26 at c950efa46d)
299 - + howto-maintain: update daily tasks
300 - + howto-maintain: cover a whole development cycle
301 -
302 - Doc update.
303 -
304 - Will merge to 'master'.
305 - source: <xmqq1q3phzpi.fsf@gitster.g>
306 -
307 -
567 * es/shell-check-updates (2024-07-26) 5 commits
309 - - check-non-portable-shell: improve `VAR=val shell-func` detection
310 - - check-non-portable-shell: suggest alternative for `VAR=val shell-func`
311 - - check-non-portable-shell: loosen one-shot assignment error message
312 - - t4034: fix use of one-shot variable assignment with shell function
313 - - t3430: drop unnecessary one-shot "VAR=val shell-func" invocation
568 + (merged to 'next' on 2024-08-01 at cf06aced6d)
569 + + check-non-portable-shell: improve `VAR=val shell-func` detection
570 + + check-non-portable-shell: suggest alternative for `VAR=val shell-func`
571 + + check-non-portable-shell: loosen one-shot assignment error message
572 + + t4034: fix use of one-shot variable assignment with shell function
573 + + t3430: drop unnecessary one-shot "VAR=val shell-func" invocation
574
575 Test script linter has been updated to catch an attempt to use
576 one-shot export construct "VAR=VAL func" for shell functions (which
577 does not work for some shells) better.
578
319 - Will merge to 'next'.
579 + Will merge to 'master'.
580 source: <20240727053509.34339-1-ericsunshine@charter.net>
581
582
323 -* jc/safe-directory (2024-07-22) 3 commits
583 +* jc/safe-directory (2024-07-30) 4 commits
584 - safe.directory: setting safe.directory="." allows the "current" directory
585 - safe.directory: normalize the configured path
586 - safe.directory: normalize the checked path
587 + - safe.directory: preliminary clean-up
588
589 Follow-up on 2.45.1 regression fix.
590
330 - Needs review.
331 - source: <20240723021900.388020-1-gitster@pobox.com>
332 -
333 -
334 -* pw/add-patch-with-suppress-blank-empty (2024-07-20) 2 commits
335 - (merged to 'next' on 2024-07-22 at 5437b7dee3)
336 - + add-patch: use normalize_marker() when recounting edited hunk
337 - + add-patch: handle splitting hunks with diff.suppressBlankEmpty
338 -
339 - "git add -p" by users with diff.suppressBlankEmpty set to true
340 - failed to parse the patch that represents an unmodified empty line
341 - with an empty line (not a line with a single space on it), which
342 - has been corrected.
343 -
344 - Will merge to 'master'.
345 - source: <pull.1763.v2.git.1721491320.gitgitgadget@gmail.com>
346 -
347 -
348 -* tn/doc-commit-fix (2024-07-22) 1 commit
349 - (merged to 'next' on 2024-07-23 at eb73e04ee4)
350 - + doc: remove dangling closing parenthesis
351 -
352 - Docfix.
353 -
354 - Will merge to 'master'.
355 - source: <20240722225302.124356-1-tomasn@posteo.net>
591 + Will merge to 'next'.
592 + source: <20240730184352.2503276-1-gitster@pobox.com>
593
594
595 * cp/unit-test-reftable-tree (2024-07-22) 5 commits
@@ -369,18 +606,6 @@ Release tarballs are available at:
606 source: <20240722061836.4176-1-chandrapratap3519@gmail.com>
607
608
372 -* rj/make-cleanup (2024-07-18) 2 commits
373 - (merged to 'next' on 2024-07-22 at bf3991f70f)
374 - + config.mak.uname: remove unused uname_P variable
375 - + Makefile: drop -Wno-universal-initializer from SP_EXTRA_FLAGS
376 -
377 - A build tweak knob has been simplified by not setting the value
378 - that is already the default; another unused one has been removed.
379 -
380 - Will merge to 'master'.
381 - source: <0d132370-3e07-4332-bcfb-c4450100d736@ramsayjones.plus.com>
382 -
383 -
609 * ew/cat-file-optim (2024-07-15) 10 commits
610 - cat-file: use writev(2) if available
611 - cat-file: batch_write: use size_t for length
@@ -408,16 +633,6 @@ Release tarballs are available at:
633 source: <xmqq1q3u8zmr.fsf@gitster.g>
634
635
411 -* jt/doc-post-receive-hook-update (2024-07-15) 1 commit
412 - (merged to 'next' on 2024-07-17 at 624ac4ebe2)
413 - + doc: clarify post-receive hook behavior
414 -
415 - Doc update.
416 -
417 - Will merge to 'master'.
418 - source: <20240715183739.7808-1-jltobler@gmail.com>
419 -
420 -
636 * jc/reflog-expire-lookup-commit-fix (2024-07-16) 1 commit
637 - Revert "reflog expire: don't use lookup_commit_reference_gently()"
638
@@ -428,128 +643,57 @@ Release tarballs are available at:
643 source: <xmqqv8156rh2.fsf@gitster.g>
644
645
431 -* es/doc-platform-support-policy (2024-07-18) 2 commits
432 - - SQUASH???
646 +* es/doc-platform-support-policy (2024-07-30) 1 commit
647 - Documentation: add platform support policy
648
649 A policy document that describes platform support levels and
650 expectation on platform stakeholders has been introduced.
437 - source: <20240718173843.2411415-1-emilyshaffer@google.com>
438 -
439 -
440 -* kn/ci-clang-format (2024-07-23) 6 commits
441 - (merged to 'next' on 2024-07-23 at 3aca45d08a)
442 - + ci/style-check: add `RemoveBracesLLVM` in CI job
443 - + check-whitespace: detect if no base_commit is provided
444 - + ci: run style check on GitHub and GitLab
445 - + clang-format: formalize some of the spacing rules
446 - + clang-format: avoid spacing around bitfield colon
447 - + clang-format: indent preprocessor directives after hash
448 -
449 - A CI job that use clang-format to check coding style issues in new
450 - code has been added.
651
452 - Will merge to 'master'.
453 - source: <20240723082111.874382-1-karthik.188@gmail.com>
652 + Inviding further discussion.
653 + source: <20240730175448.1727373-1-emilyshaffer@google.com>
654
655
656 * rj/add-p-pager (2024-07-25) 4 commits
457 - - add-patch: render hunks through the pager
458 - - pager: introduce wait_for_pager
459 - - pager: do not close fd 2 unnecessarily
460 - - add-patch: test for 'p' command
657 + (merged to 'next' on 2024-08-01 at 6f66ace52d)
658 + + add-patch: render hunks through the pager
659 + + pager: introduce wait_for_pager
660 + + pager: do not close fd 2 unnecessarily
661 + + add-patch: test for 'p' command
662
663 A 'P' command to "git add -p" that passes the patch hunk to the
664 pager has been added.
665
465 - Will merge to 'next'.
466 - source: <76936fb1-446d-455f-b4e7-6e24dda3c17d@gmail.com>
467 -
468 -
469 -* ad/merge-with-diff-algorithm (2024-07-13) 1 commit
470 - (merged to 'next' on 2024-07-16 at 90fe5aff4d)
471 - + merge-recursive: honor diff.algorithm
472 -
473 - Many Porcelain commands that internally use the merge machinery
474 - were taught to consistently honor the diff.algorithm configuration.
475 -
476 - Will merge to 'master'.
477 - source: <pull.1743.v3.git.git.1720889507066.gitgitgadget@gmail.com>
478 -
479 -
480 -* jc/checkout-no-op-switch-errors (2024-07-02) 1 commit
481 - (merged to 'next' on 2024-07-22 at 9573259db9)
482 - + checkout: special case error messages during noop switching
483 -
484 - "git checkout --ours" (no other arguments) complained that the
485 - option is incompatible with branch switching, which is technically
486 - correct, but found confusing by some users. It now says that the
487 - user needs to give pathspec to specify what paths to checkout.
488 -
489 - Will merge to 'master'.
490 - source: <xmqqikxnqzz4.fsf@gitster.g>
491 -
492 -
493 -* cp/unit-test-reftable-merged (2024-07-12) 7 commits
494 - (merged to 'next' on 2024-07-23 at 88d2a9ee28)
495 - + t-reftable-merged: add test for REFTABLE_FORMAT_ERROR
496 - + t-reftable-merged: use reftable_ref_record_equal to compare ref records
497 - + t-reftable-merged: add tests for reftable_merged_table_max_update_index
498 - + t-reftable-merged: improve the const-correctness of helper functions
499 - + t-reftable-merged: improve the test t_merged_single_record()
500 - + t: harmonize t-reftable-merged.c with coding guidelines
501 - + t: move reftable/merged_test.c to the unit testing framework
502 -
503 - Another reftable test has been ported to use the unit test framework.
504 -
505 - Will merge to 'master'.
506 - source: <20240712055041.6476-1-chandrapratap3519@gmail.com>
507 -
508 -
509 -* rs/t-strvec-use-test-msg (2024-07-16) 3 commits
510 - (merged to 'next' on 2024-07-16 at 3e860b3f12)
511 - + t-strvec: fix type mismatch in check_strvec
512 - (merged to 'next' on 2024-07-15 at f26e434515)
513 - + t-strvec: improve check_strvec() output
514 - (merged to 'next' on 2024-07-08 at c28c2553de)
515 - + t-strvec: use test_msg()
516 -
517 - Unit test clean-up.
518 -
666 Will merge to 'master'.
520 - source: <35b0ba6b-d485-44f2-a19f-3ce816f8b435@web.de>
521 - source: <983be396-f47c-4573-8c33-af8367f8ddbe@web.de>
522 - source: <1521ed89-989e-452b-b7fc-9e73672e0764@web.de>
667 + source: <76936fb1-446d-455f-b4e7-6e24dda3c17d@gmail.com>
668
669
525 -* gt/unit-test-hashmap (2024-07-12) 1 commit
670 +* gt/unit-test-hashmap (2024-07-30) 1 commit
671 - t: port helper/test-hashmap.c to unit-tests/t-hashmap.c
672
673 An existing test of hashmap API has been rewritten with the
674 unit-test framework.
675
676 What's the doneness of this one?
532 - source: <20240711235159.5320-1-shyamthakkar001@gmail.com>
677 + source: <20240730115101.188100-1-author@example.com>
678
679
535 -* rs/unit-tests-test-run (2024-07-24) 7 commits
536 - - t-strbuf: use for_test
537 - - t-strvec: use for_test
538 - - t-reftable-basics: use for_test
539 - - t-ctype: use for_test
540 - - unit-tests: add for_test
680 +* rs/unit-tests-test-run (2024-07-30) 6 commits
681 + - t-strvec: use if_test
682 + - t-reftable-basics: use if_test
683 + - t-ctype: use if_test
684 + - unit-tests: add if_test
685 - unit-tests: show location of checks outside of tests
686 - t0080: use here-doc test body
687
688 Unit-test framework clean-up.
689
690 Still under discussion.
547 - source: <73465c3d-1be0-456b-9471-f875e819c566@web.de>
691 + source: <077a178e-eb30-45ff-b653-a514bfd33077@web.de>
692
693
694 * jc/patch-id (2024-07-29) 5 commits
551 - . patch-id: tighten code to detect the patch header
552 - . patch-id: rewrite code that detects the beginning of a patch
695 + - patch-id: tighten code to detect the patch header
696 + - patch-id: rewrite code that detects the beginning of a patch
697 - patch-id: make get_one_patchid() more extensible
698 - patch-id: call flush_current_id() only when needed
699 - t4204: patch-id supports various input format
@@ -559,18 +703,4 @@ Release tarballs are available at:
703 message.
704
705 Inviding further discussion.
562 - source: <20240621231826.3280338-1-gitster@pobox.com>
563 -
564 ---------------------------------------------------
565 -[Discarded]
566 -
567 -* jk/add-patch-with-suppress-blank-empty (2024-07-10) 1 commit
568 - (merged to 'next' on 2024-07-11 at cec8ebb668)
569 - + add-patch: handle splitting hunks with diff.suppressBlankEmpty
570 -
571 - When the diff.suppressBlankEmpty configuration variable is set,
572 - "git add -p" failed to process a patch with an unmodified empty
573 - line, which has been corrected.
574 -
575 - Reverted out of 'next'.
576 - source: <20240710093610.GA2076910@coredump.intra.peff.net>
706 + source: <20240730011738.4032377-1-gitster@pobox.com>