What's cooking (2024/12 #02)

Junio C Hamano committed Dec 5, 2024 at 06:23 UTC dece6c1d3ac19664af557a54e7534c09908552c0
1 file changed +236 -247
whats-cooking.txt
+236 -247
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Dec 2024, #01; Tue, 3)
3 -X-master-at: cc01bad4a9f566cf4453c7edd6b433851b0835e2
4 -X-next-at: 3c1d2e2a6a4cf624a0e213880d579d03ad3e60cc
2 +Subject: What's cooking in git.git (Dec 2024, #02; Thu, 5)
3 +X-master-at: 23692e08c638df0de3344357658fb7e6fd20d931
4 +X-next-at: a4f8a869558d59677e8d9798666a23391f0b4ca8
5 Bcc: lwn@lwn.net, gitster@pobox.com
6
7 -What's cooking in git.git (Dec 2024, #01; Tue, 3)
7 +What's cooking in git.git (Dec 2024, #02; Thu, 5)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -45,28 +45,213 @@ Release tarballs are available at:
45
46 https://www.kernel.org/pub/software/scm/git/
47
48 +--------------------------------------------------
49 +[Graduated to 'master']
50 +
51 +* bc/drop-ancient-libcurl-and-perl (2024-10-23) 12 commits
52 + (merged to 'next' on 2024-11-27 at aa7866a3ab)
53 + + gitweb: make use of s///r
54 + + Require Perl 5.26.0
55 + + INSTALL: document requirement for libcurl 7.61.0
56 + + git-curl-compat: remove check for curl 7.56.0
57 + + git-curl-compat: remove check for curl 7.53.0
58 + + git-curl-compat: remove check for curl 7.52.0
59 + + git-curl-compat: remove check for curl 7.44.0
60 + + git-curl-compat: remove check for curl 7.43.0
61 + + git-curl-compat: remove check for curl 7.39.0
62 + + git-curl-compat: remove check for curl 7.34.0
63 + + git-curl-compat: remove check for curl 7.25.0
64 + + git-curl-compat: remove check for curl 7.21.5
65 +
66 + Drop support for older libcURL and Perl.
67 + source: <20241023004600.1645313-1-sandals@crustytoothpaste.net>
68 +
69 +
70 +* ja/git-diff-doc-markup (2024-11-19) 5 commits
71 + (merged to 'next' on 2024-11-27 at b33b5ae49b)
72 + + doc: git-diff: apply format changes to config part
73 + + doc: git-diff: apply format changes to diff-generate-patch
74 + + doc: git-diff: apply format changes to diff-format
75 + + doc: git-diff: apply format changes to diff-options
76 + + doc: git-diff: apply new documentation guidelines
77 +
78 + Documentation mark-up updates.
79 + source: <pull.1769.v4.git.1731967553.gitgitgadget@gmail.com>
80 +
81 +
82 +* kn/pass-repo-to-builtin-sub-sub-commands (2024-11-26) 1 commit
83 + (merged to 'next' on 2024-11-27 at 668c0913f5)
84 + + builtin: pass repository to sub commands
85 + (this branch is used by kn/midx-wo-the-repository.)
86 +
87 + Built-in Git subcommands are supplied the repository object to work
88 + with; they learned to do the same when they invoke sub-subcommands.
89 + source: <20241125-374-add-repository-to-subsubcommands-v1-1-637a5e22ba48@gmail.com>
90 +
91 +
92 +* ps/bisect-double-free-fix (2024-11-26) 2 commits
93 + (merged to 'next' on 2024-11-27 at e163bce018)
94 + + bisect: address Coverity warning about potential double free
95 + + Merge branch 'ps/leakfixes-part-10' into ps/bisect-double-free-fix
96 + (this branch uses ps/leakfixes-part-10.)
97 +
98 + Work around Coverity warning that would not trigger in practice.
99 + source: <20241125-pks-leak-fixes-address-double-free-v1-1-d33fd8ebf55b@pks.im>
100 +
101 +
102 +* ps/gc-stale-lock-warning (2024-11-25) 2 commits
103 + (merged to 'next' on 2024-11-26 at ed3858b2ea)
104 + + t7900: fix host-dependent behaviour when testing git-maintenance(1)
105 + (merged to 'next' on 2024-11-20 at 1099c31715)
106 + + builtin/gc: provide hint when maintenance hits a stale schedule lock
107 +
108 + Give a bit of advice/hint message when "git maintenance" stops finding a
109 + lock file left by another instance that still is potentially running.
110 + source: <20241119-pks-maintenance-hint-with-stale-lock-v1-1-f9f9a98e12a0@pks.im>
111 + source: <eb504a75147d8609be66e131d239a69d192d693d.1732511129.git.ps@pks.im>
112 +
113 +
114 +* ps/leakfixes-part-10 (2024-11-21) 28 commits
115 + (merged to 'next' on 2024-11-25 at 7284f186b8)
116 + + t: remove TEST_PASSES_SANITIZE_LEAK annotations
117 + + test-lib: unconditionally enable leak checking
118 + + t: remove unneeded !SANITIZE_LEAK prerequisites
119 + + t: mark some tests as leak free
120 + + t5601: work around leak sanitizer issue
121 + + git-compat-util: drop now-unused `UNLEAK()` macro
122 + + global: drop `UNLEAK()` annotation
123 + + t/helper: fix leaking commit graph in "read-graph" subcommand
124 + + builtin/branch: fix leaking sorting options
125 + + builtin/init-db: fix leaking directory paths
126 + + builtin/help: fix leaks in `check_git_cmd()`
127 + + help: fix leaking return value from `help_unknown_cmd()`
128 + + help: fix leaking `struct cmdnames`
129 + + help: refactor to not use globals for reading config
130 + + builtin/sparse-checkout: fix leaking sanitized patterns
131 + + split-index: fix memory leak in `move_cache_to_base_index()`
132 + + git: refactor builtin handling to use a `struct strvec`
133 + + git: refactor alias handling to use a `struct strvec`
134 + + strvec: introduce new `strvec_splice()` function
135 + + line-log: fix leak when rewriting commit parents
136 + + bisect: fix various cases where we leak commit list items
137 + + bisect: fix leaking commit list items in `check_merge_base()`
138 + + bisect: fix multiple leaks in `bisect_next_all()`
139 + + bisect: fix leaking `current_bad_oid`
140 + + bisect: fix leaking string in `handle_bad_merge_base()`
141 + + bisect: fix leaking good/bad terms when reading multipe times
142 + + builtin/blame: fix leaking blame entries with `--incremental`
143 + + Merge branch 'ps/leakfixes-part-9' into ps/leakfixes-part-10
144 + (this branch is used by ps/bisect-double-free-fix and rj/strvec-splice-fix.)
145 +
146 + Leakfixes.
147 + source: <20241120-b4-pks-leak-fixes-pt10-v3-0-d67f08f45c74@pks.im>
148 +
149 +
150 +* ps/ref-backend-migration-optim (2024-11-26) 12 commits
151 + (merged to 'next' on 2024-11-26 at 7bb66a1faf)
152 + + reftable: rename scratch buffer
153 + + refs: adapt `initial_transaction` flag to be unsigned
154 + (merged to 'next' on 2024-11-25 at ee2e588790)
155 + + reftable/block: optimize allocations by using scratch buffer
156 + + reftable/block: rename `block_writer::buf` variable
157 + + reftable/writer: optimize allocations by using a scratch buffer
158 + + refs: don't normalize log messages with `REF_SKIP_CREATE_REFLOG`
159 + + refs: skip collision checks in initial transactions
160 + + refs: use "initial" transaction semantics to migrate refs
161 + + refs/files: support symbolic and root refs in initial transaction
162 + + refs: introduce "initial" transaction flag
163 + + refs/files: move logic to commit initial transaction
164 + + refs: allow passing flags when setting up a transaction
165 +
166 + The migration procedure between two ref backends has been optimized.
167 + source: <20241120-pks-refs-optimize-migrations-v2-0-a233374b7452@pks.im>
168 + source: <20241125-pks-refs-migration-optimization-followup-v1-0-0e1b4a2af384@pks.im>
169 +
170 +
171 +* sj/ref-contents-check (2024-11-21) 9 commits
172 + (merged to 'next' on 2024-11-25 at 53e29ae705)
173 + + ref: add symlink ref content check for files backend
174 + + ref: check whether the target of the symref is a ref
175 + + ref: add basic symref content check for files backend
176 + + ref: add more strict checks for regular refs
177 + + ref: port git-fsck(1) regular refs check for files backend
178 + + ref: support multiple worktrees check for refs
179 + + ref: initialize ref name outside of check functions
180 + + ref: check the full refname instead of basename
181 + + ref: initialize "fsck_ref_report" with zero
182 +
183 + "git fsck" learned to issue warnings on "curiously formatted" ref
184 + contents that have always been taken valid but something Git
185 + wouldn't have written itself (e.g., missing terminating end-of-line
186 + after the full object name).
187 + source: <Zz3MON9_9DGD6nsy@ArchLinux>
188 +
189 +
190 +* tb/boundary-traversal-fix (2024-11-22) 1 commit
191 + (merged to 'next' on 2024-11-25 at f312b2f8eb)
192 + + pack-bitmap.c: typofix in `find_boundary_objects()`
193 +
194 + A trivial "correctness" fix that does not yet matter in practice.
195 + source: <cf49115db4e8dcd406a17c946659c2eef3ec6045.1732229420.git.me@ttaylorr.com>
196 +
197 +
198 +* tb/use-test-file-size-more (2024-11-22) 1 commit
199 + (merged to 'next' on 2024-11-25 at 2bdd016a16)
200 + + t/perf: use 'test_file_size' in more places
201 +
202 + Use the right helper program to measure file size in performance tests.
203 + source: <50c1368630684f235548d2e9a68d4de3745b5fe6.1732220875.git.me@ttaylorr.com>
204 +
205 --------------------------------------------------
206 [New Topics]
207
208 +* jt/fix-fattening-promisor-fetch (2024-12-04) 4 commits
209 + - index-pack: work around false positive use of uninitialized variable
210 + - index-pack --promisor: also check commits' trees
211 + - index-pack --promisor: don't check blobs
212 + - index-pack --promisor: dedup before checking links
213 +
214 + Fix performance regression of a recent "fatten promisor pack with
215 + local objects" protection against an unwanted gc.
216 +
217 + Need to squash the fix-up at the tip.
218 + source: <cover.1733262661.git.jonathantanmy@google.com>
219 +
220 +
221 +* kk/doc-ancestry-path (2024-12-04) 1 commit
222 + - doc: mention rev-list --ancestry-path restrictions
223 +
224 + The --ancestry-path option is designed to be given a commit that is
225 + on the path, which was not documented, which has been corrected.
226 +
227 + Will merge to 'next'.
228 + source: <CADYQcGrD5KtM1sZQbccAtDaLmUXD8Gxv_nUWmapjfZm=TMq=Jw@mail.gmail.com>
229 +
230 +--------------------------------------------------
231 +[Cooking]
232 +
233 * kh/doc-bundle-typofix (2024-12-02) 1 commit
52 - - Documentation/git-bundle.txt: fix word join typo
234 + (merged to 'next' on 2024-12-04 at 5da441ce36)
235 + + Documentation/git-bundle.txt: fix word join typo
236
237 Typofix.
238
56 - Will merge to 'next'.
239 + Will merge to 'master'.
240 source: <164b94bab9214f6030909df8f1e7c476b7f79e55.1732822997.git.code@khaugsbakk.name>
241
242
243 * kh/doc-update-ref-grammofix (2024-12-02) 1 commit
61 - - Documentation/git-update-ref.txt: add missing word
244 + (merged to 'next' on 2024-12-04 at 9905f16afc)
245 + + Documentation/git-update-ref.txt: add missing word
246
247 Grammofix.
248
65 - Will merge to 'next'.
249 + Will merge to 'master'.
250 source: <6cc7a9d60216c966bcf77675aa22a39cfa8993e2.1732906187.git.code@khaugsbakk.name>
251
252
69 -* ps/build-sign-compare (2024-12-03) 14 commits
253 +* ps/build-sign-compare (2024-12-04) 15 commits
254 + - sign-compare: 32-bit support
255 - t/helper: don't depend on implicit wraparound
256 - scalar: address -Wsign-compare warnings
257 - builtin/patch-id: fix type of `get_one_patchid()`
@@ -83,20 +268,15 @@ Release tarballs are available at:
268 - git-compat-util: introduce macros to disable "-Wsign-compare" warnings
269
270 Start working to make the codebase buildable with -Wsign-compare.
86 -
271 source: <20241202-pks-sign-compare-v2-0-e7f0ad92a749@pks.im>
272
273
90 -* rj/strvec-splice-fix (2024-12-02) 2 commits
274 +* rj/strvec-splice-fix (2024-12-04) 2 commits
275 - strvec: `strvec_splice()` to a statically initialized vector
276 - Merge branch 'ps/leakfixes-part-10' into rj/strvec-splice-fix
93 - (this branch uses ps/leakfixes-part-10.)
277
278 Correct strvec_splice() that misbehaved when the strvec is empty.
96 -
97 - Expecting a reroll.
98 - cf. <b0bd6c5d-83eb-4545-9b38-ab4e69d3882c@gmail.com>
99 - source: <37d0abbf-c703-481d-9f26-b237aac54c05@gmail.com>
279 + source: <5bea9f20-eb0d-409d-8f37-f20697d6ce14@gmail.com>
280
281
282 * jc/forbid-head-as-tagname (2024-12-03) 4 commits
@@ -112,10 +292,9 @@ Release tarballs are available at:
292 Will merge to 'next'?
293 source: <20241203023240.3852850-1-gitster@pobox.com>
294
115 ---------------------------------------------------
116 -[Cooking]
295
118 -* en/fast-import-verify-path (2024-12-02) 2 commits
296 +* en/fast-import-verify-path (2024-12-04) 3 commits
297 + - t9300: test verification of renamed paths
298 (merged to 'next' on 2024-12-02 at 2932fa51e4)
299 + fast-import: disallow more path components
300 (merged to 'next' on 2024-11-27 at 8b145bb543)
@@ -124,33 +303,10 @@ Release tarballs are available at:
303 "git fast-import" learned to reject paths with ".." and "." as
304 their components to avoid creating invalid tree objects.
305
127 - Will merge to 'master'.
306 + Will merge to 'next' and then to 'master'.
307 source: <pull.1831.v2.git.1732561248717.gitgitgadget@gmail.com>
308 source: <pull.1832.git.1732740464398.gitgitgadget@gmail.com>
130 -
131 -
132 -* kn/pass-repo-to-builtin-sub-sub-commands (2024-11-26) 1 commit
133 - (merged to 'next' on 2024-11-27 at 668c0913f5)
134 - + builtin: pass repository to sub commands
135 - (this branch is used by kn/midx-wo-the-repository.)
136 -
137 - Built-in Git subcommands are supplied the repository object to work
138 - with; they learned to do the same when they invoke sub-subcommands.
139 -
140 - Will merge to 'master'.
141 - source: <20241125-374-add-repository-to-subsubcommands-v1-1-637a5e22ba48@gmail.com>
142 -
143 -
144 -* ps/bisect-double-free-fix (2024-11-26) 2 commits
145 - (merged to 'next' on 2024-11-27 at e163bce018)
146 - + bisect: address Coverity warning about potential double free
147 - + Merge branch 'ps/leakfixes-part-10' into ps/bisect-double-free-fix
148 - (this branch uses ps/leakfixes-part-10.)
149 -
150 - Work around Coverity warning that would not trigger in practice.
151 -
152 - Will merge to 'master'.
153 - source: <20241125-pks-leak-fixes-address-double-free-v1-1-d33fd8ebf55b@pks.im>
309 + source: <20241203210652.GA1413195@coredump.intra.peff.net>
310
311
312 * sj/refs-symref-referent-fix (2024-11-27) 1 commit
@@ -164,25 +320,31 @@ Release tarballs are available at:
320 source: <Z0Xd-cYPNNrxwuAB@ArchLinux>
321
322
167 -* bf/fetch-set-head-config (2024-12-02) 2 commits
168 - - fetch: add configuration for set_head behaviour
169 - - Merge branch 'bf/set-head-symref' into bf/fetch-set-head-config
323 +* bf/fetch-set-head-config (2024-12-04) 5 commits
324 + - remote set-head: set followRemoteHEAD to "warn" if "always"
325 + - fetch set_head: add warn-if-not-$branch option
326 + - fetch set_head: move warn advice into advise_if_enabled
327 + (merged to 'next' on 2024-12-04 at 69bfc59fb5)
328 + + fetch: add configuration for set_head behaviour
329 + + Merge branch 'bf/set-head-symref' into bf/fetch-set-head-config
330 (this branch uses bf/set-head-symref.)
331
332 "git fetch" honors "remote.<remote>.followRemoteHEAD" settings to
333 tweak the remote-tracking HEAD in "refs/remotes/<remote>/HEAD".
334
175 - Will merge to 'next'.
335 + Will merge to 'next'?
336 source: <20241128230806.2058962-1-bence@ferdinandy.com>
337 + source: <20241204104003.514905-1-bence@ferdinandy.com>
338
339
340 * jc/doc-error-message-guidelines (2024-11-29) 1 commit
180 - - CodingGuidelines: a handful of error message guidelines
341 + (merged to 'next' on 2024-12-04 at 2d19ff44e5)
342 + + CodingGuidelines: a handful of error message guidelines
343
344 Developer documentation update.
345
184 - Will merge to 'next'.
185 - source: <xmqq1pywvmhq.fsf_-_@gitster.g>
346 + Will merge to 'master'.
347 + source: <xmqqa5dkqjmr.fsf_-_@gitster.g>
348
349
350 * jc/doc-opt-tilde-expand (2024-11-25) 1 commit
@@ -196,7 +358,7 @@ Release tarballs are available at:
358 source: <xmqqh67w6m4m.fsf@gitster.g>
359
360
199 -* kn/midx-wo-the-repository (2024-11-28) 10 commits
361 +* kn/midx-wo-the-repository (2024-12-04) 10 commits
362 - midx: inline the `MIDX_MIN_SIZE` definition
363 - midx: pass down `hash_algo` to functions using global variables
364 - midx: pass `repository` to `load_multi_pack_index`
@@ -207,11 +369,11 @@ Release tarballs are available at:
369 - midx-write: pass down repository to static functions
370 - Merge branch 'kn/pass-repo-to-builtin-sub-sub-commands' into kn/midx-wo-the-repository
371 - Merge branch 'kn/the-repository' into kn/midx-wo-the-repository
210 - (this branch uses kn/pass-repo-to-builtin-sub-sub-commands and kn/the-repository.)
372 + (this branch uses kn/the-repository.)
373
374 Yet another "pass the repository through the callchain" topic.
375
214 - Will merge to 'next'?
376 + Will merge to 'next'.
377 source: <20241127-374-refactor-midx-c-and-midx-write-c-to-not-depend-on-global-state-v3-0-c5a99f85009b@gmail.com>
378
379
@@ -228,37 +390,19 @@ Release tarballs are available at:
390
391
392 * jt/bundle-fsck (2024-11-28) 4 commits
231 - - transport: propagate fsck configuration during bundle fetch
232 - - fetch-pack: split out fsck config parsing
233 - - bundle: support fsck message configuration
234 - - bundle: add bundle verification options type
393 + (merged to 'next' on 2024-12-04 at bfd07a8936)
394 + + transport: propagate fsck configuration during bundle fetch
395 + + fetch-pack: split out fsck config parsing
396 + + bundle: support fsck message configuration
397 + + bundle: add bundle verification options type
398
399 "git bundle --unbundle" and "git clone" running on a bundle file
400 both learned to trigger fsck over the new objects with configurable
401 fck check levels.
402
240 - Will merge to 'next'?
241 - source: <20241127233312.27710-1-jltobler@gmail.com>
242 -
243 -
244 -* tb/boundary-traversal-fix (2024-11-22) 1 commit
245 - (merged to 'next' on 2024-11-25 at f312b2f8eb)
246 - + pack-bitmap.c: typofix in `find_boundary_objects()`
247 -
248 - A trivial "correctness" fix that does not yet matter in practice.
249 -
403 Will merge to 'master'.
251 - source: <cf49115db4e8dcd406a17c946659c2eef3ec6045.1732229420.git.me@ttaylorr.com>
252 -
253 -
254 -* tb/use-test-file-size-more (2024-11-22) 1 commit
255 - (merged to 'next' on 2024-11-25 at 2bdd016a16)
256 - + t/perf: use 'test_file_size' in more places
257 -
258 - Use the right helper program to measure file size in performance tests.
259 -
260 - Will merge to 'master'.
261 - source: <50c1368630684f235548d2e9a68d4de3745b5fe6.1732220875.git.me@ttaylorr.com>
404 + cf. <Z08VoOHGZ1wecUx6@pks.im>
405 + source: <20241127233312.27710-1-jltobler@gmail.com>
406
407
408 * bc/allow-upload-pack-from-other-people (2024-11-15) 1 commit
@@ -274,20 +418,6 @@ Release tarballs are available at:
418 source: <20241115005404.3747302-2-sandals@crustytoothpaste.net>
419
420
277 -* ps/gc-stale-lock-warning (2024-11-25) 2 commits
278 - (merged to 'next' on 2024-11-26 at ed3858b2ea)
279 - + t7900: fix host-dependent behaviour when testing git-maintenance(1)
280 - (merged to 'next' on 2024-11-20 at 1099c31715)
281 - + builtin/gc: provide hint when maintenance hits a stale schedule lock
282 -
283 - Give a bit of advice/hint message when "git maintenance" stops finding a
284 - lock file left by another instance that still is potentially running.
285 -
286 - Will merge to 'master'.
287 - source: <20241119-pks-maintenance-hint-with-stale-lock-v1-1-f9f9a98e12a0@pks.im>
288 - source: <eb504a75147d8609be66e131d239a69d192d693d.1732511129.git.ps@pks.im>
289 -
290 -
421 * tb/incremental-midx-part-2 (2024-11-20) 15 commits
422 - midx: implement writing incremental MIDX bitmaps
423 - pack-bitmap.c: use `ewah_or_iterator` for type bitmap iterators
@@ -311,20 +441,6 @@ Release tarballs are available at:
441 source: <cover.1732054032.git.me@ttaylorr.com>
442
443
314 -* ja/git-diff-doc-markup (2024-11-19) 5 commits
315 - (merged to 'next' on 2024-11-27 at b33b5ae49b)
316 - + doc: git-diff: apply format changes to config part
317 - + doc: git-diff: apply format changes to diff-generate-patch
318 - + doc: git-diff: apply format changes to diff-format
319 - + doc: git-diff: apply format changes to diff-options
320 - + doc: git-diff: apply new documentation guidelines
321 -
322 - Documentation mark-up updates.
323 -
324 - Will merge to 'master'.
325 - source: <pull.1769.v4.git.1731967553.gitgitgadget@gmail.com>
326 -
327 -
444 * pb/mergetool-errors (2024-11-25) 5 commits
445 (merged to 'next' on 2024-12-02 at b439b146c2)
446 + git-difftool--helper.sh: exit upon initialize_merge_tool errors
@@ -340,44 +456,16 @@ Release tarballs are available at:
456 source: <pull.1827.v2.git.1732305022.gitgitgadget@gmail.com>
457
458
343 -* ps/send-pack-unhide-error-in-atomic-push (2024-11-15) 6 commits
344 - - push: not send push-options to server with --dry-run
345 - - push: only ignore finish_connect() for dry-run mode
346 - - t5543: atomic push reports exit code failure
459 +* ps/send-pack-unhide-error-in-atomic-push (2024-11-14) 2 commits
460 + - transport: don't ignore git-receive-pack(1) exit code on atomic push
461 - t5504: modernize test by moving heredocs into test bodies
348 - - push: fix the behavior of the Done message for porcelain
349 - - t5548: new test cases for push --porcelain and --dry-run
462
463 "git push --atomic --porcelain" used to ignore failures from the
464 other side, losing the error status from the child process, which
465 has been corrected.
466
355 - Probably needs a redesign.
356 - cf. <Z0Q0wfSTk_cUXH0F@pks.im>
357 - source: <cover.1731603991.git.zhiyou.jx@alibaba-inc.com>
358 -
359 -
360 -* ps/ref-backend-migration-optim (2024-11-26) 12 commits
361 - (merged to 'next' on 2024-11-26 at 7bb66a1faf)
362 - + reftable: rename scratch buffer
363 - + refs: adapt `initial_transaction` flag to be unsigned
364 - (merged to 'next' on 2024-11-25 at ee2e588790)
365 - + reftable/block: optimize allocations by using scratch buffer
366 - + reftable/block: rename `block_writer::buf` variable
367 - + reftable/writer: optimize allocations by using a scratch buffer
368 - + refs: don't normalize log messages with `REF_SKIP_CREATE_REFLOG`
369 - + refs: skip collision checks in initial transactions
370 - + refs: use "initial" transaction semantics to migrate refs
371 - + refs/files: support symbolic and root refs in initial transaction
372 - + refs: introduce "initial" transaction flag
373 - + refs/files: move logic to commit initial transaction
374 - + refs: allow passing flags when setting up a transaction
375 -
376 - Optimize migration procedure between two ref backends.
377 -
378 - Will merge to 'master'.
379 - source: <20241120-pks-refs-optimize-migrations-v2-0-a233374b7452@pks.im>
380 - source: <20241125-pks-refs-migration-optimization-followup-v1-0-0e1b4a2af384@pks.im>
467 + Needs review.
468 + source: <20241113-pks-push-atomic-respect-exit-code-v1-0-7965f01e7f4e@pks.im>
469
470
471 * js/log-remerge-keep-ancestry (2024-11-12) 1 commit
@@ -450,44 +538,6 @@ Release tarballs are available at:
538 source: <pull.1734.v2.git.1731073383564.gitgitgadget@gmail.com>
539
540
453 -* ps/leakfixes-part-10 (2024-11-21) 28 commits
454 - (merged to 'next' on 2024-11-25 at 7284f186b8)
455 - + t: remove TEST_PASSES_SANITIZE_LEAK annotations
456 - + test-lib: unconditionally enable leak checking
457 - + t: remove unneeded !SANITIZE_LEAK prerequisites
458 - + t: mark some tests as leak free
459 - + t5601: work around leak sanitizer issue
460 - + git-compat-util: drop now-unused `UNLEAK()` macro
461 - + global: drop `UNLEAK()` annotation
462 - + t/helper: fix leaking commit graph in "read-graph" subcommand
463 - + builtin/branch: fix leaking sorting options
464 - + builtin/init-db: fix leaking directory paths
465 - + builtin/help: fix leaks in `check_git_cmd()`
466 - + help: fix leaking return value from `help_unknown_cmd()`
467 - + help: fix leaking `struct cmdnames`
468 - + help: refactor to not use globals for reading config
469 - + builtin/sparse-checkout: fix leaking sanitized patterns
470 - + split-index: fix memory leak in `move_cache_to_base_index()`
471 - + git: refactor builtin handling to use a `struct strvec`
472 - + git: refactor alias handling to use a `struct strvec`
473 - + strvec: introduce new `strvec_splice()` function
474 - + line-log: fix leak when rewriting commit parents
475 - + bisect: fix various cases where we leak commit list items
476 - + bisect: fix leaking commit list items in `check_merge_base()`
477 - + bisect: fix multiple leaks in `bisect_next_all()`
478 - + bisect: fix leaking `current_bad_oid`
479 - + bisect: fix leaking string in `handle_bad_merge_base()`
480 - + bisect: fix leaking good/bad terms when reading multipe times
481 - + builtin/blame: fix leaking blame entries with `--incremental`
482 - + Merge branch 'ps/leakfixes-part-9' into ps/leakfixes-part-10
483 - (this branch is used by ps/bisect-double-free-fix and rj/strvec-splice-fix.)
484 -
485 - Leakfixes.
486 -
487 - Will merge to 'master'.
488 - source: <20241120-b4-pks-leak-fixes-pt10-v3-0-d67f08f45c74@pks.im>
489 -
490 -
541 * kh/sequencer-comment-char (2024-11-26) 3 commits
542 (merged to 'next' on 2024-11-28 at 84693f6bb7)
543 + sequencer: comment commit messages properly
@@ -514,7 +564,6 @@ Release tarballs are available at:
564 to use an alternative path-hash function to improve delta-base
565 selection to produce a packfile with deeper history than window
566 size.
517 -
567 source: <pull.1823.v2.git.1733181682.gitgitgadget@gmail.com>
568
569
@@ -559,7 +608,8 @@ Release tarballs are available at:
608 Introduce a new repository extension to prevent older Git versions
609 from mis-interpreting worktrees created with relative paths.
610
562 - Will merge to 'next'?
611 + Will merge to 'next'.
612 + cf. <103c7a4d-a74b-4381-a9c7-33a89d5db192@gmail.com>
613 source: <20241129-wt_relative_options-v6-0-44e4e0bec8c3@pm.me>
614
615
@@ -598,7 +648,7 @@ Release tarballs are available at:
648 Support conditionally including configuration by remote name, instead
649 of just URL.
650
601 - Needs review.
651 + Will discard?
652 source: <20241020173216.40852-2-ken@kmatsui.me>
653
654
@@ -608,31 +658,10 @@ Release tarballs are available at:
658 Delay setting up the pager in 'git diff' until after the diff contents
659 itself is fully prepared.
660
611 - Needs review.
661 + Will discard?
662 source: <pull.1817.git.git.1729370390416.gitgitgadget@gmail.com>
663
664
615 -* bc/drop-ancient-libcurl-and-perl (2024-10-23) 12 commits
616 - (merged to 'next' on 2024-11-27 at aa7866a3ab)
617 - + gitweb: make use of s///r
618 - + Require Perl 5.26.0
619 - + INSTALL: document requirement for libcurl 7.61.0
620 - + git-curl-compat: remove check for curl 7.56.0
621 - + git-curl-compat: remove check for curl 7.53.0
622 - + git-curl-compat: remove check for curl 7.52.0
623 - + git-curl-compat: remove check for curl 7.44.0
624 - + git-curl-compat: remove check for curl 7.43.0
625 - + git-curl-compat: remove check for curl 7.39.0
626 - + git-curl-compat: remove check for curl 7.34.0
627 - + git-curl-compat: remove check for curl 7.25.0
628 - + git-curl-compat: remove check for curl 7.21.5
629 -
630 - Drop support for older libcURL and Perl.
631 -
632 - Will merge to 'master'.
633 - source: <20241023004600.1645313-1-sandals@crustytoothpaste.net>
634 -
635 -
665 * es/oss-fuzz (2024-10-16) 3 commits
666 - fuzz: port fuzz-url-decode-mem from OSS-Fuzz
667 - fuzz: port fuzz-parse-attr-line from OSS-Fuzz
@@ -640,7 +669,7 @@ Release tarballs are available at:
669
670 Backport oss-fuzz tests for us to our codebase.
671
643 - Needs review.
672 + Will merge to 'next'.
673 source: <cover.1728939687.git.steadmon@google.com>
674
675
@@ -714,27 +743,6 @@ Release tarballs are available at:
743 source: <20241125053616.25170-1-eric.peijian@gmail.com>
744
745
717 -* sj/ref-contents-check (2024-11-21) 9 commits
718 - (merged to 'next' on 2024-11-25 at 53e29ae705)
719 - + ref: add symlink ref content check for files backend
720 - + ref: check whether the target of the symref is a ref
721 - + ref: add basic symref content check for files backend
722 - + ref: add more strict checks for regular refs
723 - + ref: port git-fsck(1) regular refs check for files backend
724 - + ref: support multiple worktrees check for refs
725 - + ref: initialize ref name outside of check functions
726 - + ref: check the full refname instead of basename
727 - + ref: initialize "fsck_ref_report" with zero
728 -
729 - "git fsck" learned to issue warnings on "curiously formatted" ref
730 - contents that have always been taken valid but something Git
731 - wouldn't have written itself (e.g., missing terminating end-of-line
732 - after the full object name).
733 -
734 - Will merge to 'master'.
735 - source: <Zz3MON9_9DGD6nsy@ArchLinux>
736 -
737 -
746 * js/libgit-rust (2024-10-16) 5 commits
747 - Makefile: add option to build and test libgit-rs and libgit-rs-sys
748 - libgit: add higher-level libgit crate
@@ -744,11 +752,11 @@ Release tarballs are available at:
752
753 An rust binding to libgit.a functions has been introduced.
754
747 - Needs review.
755 + Will discard?
756 source: <cover.1729032373.git.steadmon@google.com>
757
758
751 -* kn/the-repository (2024-11-27) 10 commits
759 +* kn/the-repository (2024-12-04) 10 commits
760 - packfile.c: remove unnecessary prepare_packed_git() call
761 - midx: add repository to `multi_pack_index` struct
762 - config: make `packed_git_(limit|window_size)` non-global variables
@@ -764,24 +772,5 @@ Release tarballs are available at:
772 Various implicit uses of 'the_repoository' in the packfile code
773 have been eliminated.
774
767 - Will merge to 'next'?
768 - source: <cover.1732618495.git.karthik.188@gmail.com>
769 -
770 ---------------------------------------------------
771 -[Discarded]
772 -
773 -* cc/promisor-remote-capability (2024-09-10) 4 commits
774 - . promisor-remote: check advertised name or URL
775 - . Add 'promisor-remote' capability to protocol v2
776 - . strbuf: refactor strbuf_trim_trailing_ch()
777 - . version: refactor strbuf_sanitize()
778 -
779 - The v2 protocol learned to allow the server to advertise possible
780 - promisor remotes, and the client to respond with what promissor
781 - remotes it uses, so that the server side can omit objects that the
782 - client can lazily obtain from these other promissor remotes.
783 -
784 - Discarded for now.
785 - cf. <ZvpZv_fed_su4w2-@pks.im>
786 - cf. <xmqqserboqot.fsf@gitster.g>
787 - source: <20240910163000.1985723-1-christian.couder@gmail.com>
775 + Will merge to 'next'.
776 + source: <cover.1733236936.git.karthik.188@gmail.com>