What's cooking (2021/09 #06)
Junio C Hamano committed
Sep 20, 2021 at 15:53 UTC
40e115628dcf97fee758020e6b8dcdd0209761b3
1 file changed
+508
-510
whats-cooking.txt
+508
-510
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Sep 2021, #05; Fri, 17)
4
-X-master-at: 4c719308ce59dc70e606f910f40801f2c6051b24
5
-X-next-at: 186eaaae567db501179c0af0bf89b34cbea02c26
3
+Subject: What's cooking in git.git (Sep 2021, #06; Mon, 20)
4
+X-master-at: 99c99ed8259bf070cd8ae7b51a94904b7cf5c161
5
+X-next-at: d22421fcc6e5254ac802caac9a2af0b5cf0fb5d7
6
7
-What's cooking in git.git (Sep 2021, #05; Fri, 17)
7
+What's cooking in git.git (Sep 2021, #06; Mon, 20)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking in my tree. Commits
@@ -18,9 +18,7 @@ useful"). Do not read too much into a topic being in (or not in)
18
'seen'. The ones marked with '.' do not appear in any of the
19
integration branches, but I am still holding onto them.
20
21
-The sixth batch is out. I've marked quite many topics for 'next'
22
-but with a question mark in this issue of the report, to which help
23
-in triaging them would be greatly appreciated as ever.
21
+The seventh batch is out.
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
@@ -53,86 +51,508 @@ Release tarballs are available at:
51
--------------------------------------------------
52
[Graduated to 'master']
53
56
-* ab/no-more-check-bindir (2021-09-07) 1 commit
57
- (merged to 'next' on 2021-09-08 at 4fddb3864f)
58
- + Makefile: remove the check_bindir script
54
+* ab/make-tags-cleanup (2021-08-05) 5 commits
55
+ (merged to 'next' on 2021-09-12 at 79584f3c60)
56
+ + Makefile: normalize clobbering & xargs for tags targets
57
+ + Makefile: remove "cscope.out", not "cscope*" in cscope.out target
58
+ + Makefile: don't use "FORCE" for tags targets
59
+ + Makefile: add QUIET_GEN to "cscope" target
60
+ + Makefile: move ".PHONY: cscope" near its target
61
+
62
+ Build clean-up for "make tags" and friends.
63
+
64
+
65
+* ab/progress-users-adjust-counters (2021-09-09) 2 commits
66
+ (merged to 'next' on 2021-09-10 at b50c37aa44)
67
+ + entry: show finer-grained counter in "Filtering content" progress line
68
+ + commit-graph: fix bogus counter in "Scanning merged commits" progress line
69
+
70
+ The code to show progress indicator in a few code paths did not
71
+ cover between 0-100%, which has been corrected.
72
+
73
+
74
+* ab/serve-cleanup (2021-08-05) 10 commits
75
+ (merged to 'next' on 2021-09-12 at ea87ede873)
76
+ + upload-pack: document and rename --advertise-refs
77
+ + serve.[ch]: remove "serve_options", split up --advertise-refs code
78
+ + {upload,receive}-pack tests: add --advertise-refs tests
79
+ + serve.c: move version line to advertise_capabilities()
80
+ + serve: move transfer.advertiseSID check into session_id_advertise()
81
+ + serve.[ch]: don't pass "struct strvec *keys" to commands
82
+ + serve: use designated initializers
83
+ + transport: use designated initializers
84
+ + transport: rename "fetch" in transport_vtable to "fetch_refs"
85
+ + serve: mark has_capability() as static
86
+ (this branch is used by jk/reduce-malloc-in-v2-servers.)
87
+
88
+ Code clean-up around "git serve".
89
+
90
+
91
+* ab/tr2-leaks-and-fixes (2021-09-07) 6 commits
92
+ (merged to 'next' on 2021-09-10 at 14f0dd5580)
93
+ + tr2: log N parent process names on Linux
94
+ + tr2: do compiler enum check in trace2_collect_process_info()
95
+ + tr2: leave the parent list empty upon failure & don't leak memory
96
+ + tr2: stop leaking "thread_name" memory
97
+ + tr2: clarify TRACE2_PROCESS_INFO_EXIT comment under Linux
98
+ + tr2: remove NEEDSWORK comment for "non-procfs" implementations
99
+
100
+ The tracing of process ancestry information has been enhanced.
101
+
102
+
103
+* ab/unbundle-progress (2021-09-07) 4 commits
104
+ (merged to 'next' on 2021-09-12 at d7bacb391e)
105
+ + bundle: show progress on "unbundle"
106
+ + index-pack: add --progress-title option
107
+ + bundle API: change "flags" to be "extra_index_pack_args"
108
+ + bundle API: start writing API documentation
109
+
110
+ Add progress display to "git bundle unbundle".
111
+
112
+
113
+* ar/submodule-add-config (2021-08-10) 1 commit
114
+ (merged to 'next' on 2021-09-12 at fdabb4f0fc)
115
+ + submodule--helper: introduce add-config subcommand
116
+ (this branch is used by ar/submodule-add-more.)
117
+
118
+ Large part of "git submodule add" gets rewritten in C.
119
+
120
+
121
+* ar/submodule-add-more (2021-08-10) 10 commits
122
+ (merged to 'next' on 2021-09-12 at efebf6dad3)
123
+ + submodule--helper: rename compute_submodule_clone_url()
124
+ + submodule--helper: remove resolve-relative-url subcommand
125
+ + submodule--helper: remove add-config subcommand
126
+ + submodule--helper: remove add-clone subcommand
127
+ + submodule--helper: convert the bulk of cmd_add() to C
128
+ + dir: libify and export helper functions from clone.c
129
+ + submodule--helper: remove repeated code in sync_submodule()
130
+ + submodule--helper: refactor resolve_relative_url() helper
131
+ + submodule--helper: add options for compute_submodule_clone_url()
132
+ + Merge branch 'ar/submodule-add-config' into ar/submodule-add
133
+ (this branch uses ar/submodule-add-config.)
134
+
135
+ More parts of "git submodule add" has been rewritten in C.
136
+
137
+
138
+* ar/submodule-run-update-procedure (2021-08-24) 1 commit
139
+ (merged to 'next' on 2021-09-12 at fbe417715d)
140
+ + submodule--helper: run update procedures from C
141
+ (this branch is used by ar/submodule-update.)
142
+
143
+ Reimplementation of parts of "git submodule" in C continues.
144
+
145
+
146
+* cb/pedantic-build-for-developers (2021-09-03) 3 commits
147
+ (merged to 'next' on 2021-09-10 at b8df102019)
148
+ + developer: enable pedantic by default
149
+ + win32: allow building with pedantic mode enabled
150
+ + gettext: remove optional non-standard parens in N_() definition
151
+
152
+ Update the build procedure to use the "-pedantic" build when
153
+ DEVELOPER makefile macro is in effect.
154
+
155
+
156
+* ds/mergies-with-sparse-index (2021-09-09) 6 commits
157
+ (merged to 'next' on 2021-09-12 at 1535fa2dae)
158
+ + sparse-index: integrate with cherry-pick and rebase
159
+ + sequencer: ensure full index if not ORT strategy
160
+ + t1092: add cherry-pick, rebase tests
161
+ + merge-ort: expand only for out-of-cone conflicts
162
+ + merge: make sparse-aware with ORT
163
+ + diff: ignore sparse paths in diffstat
164
+ (this branch is used by ds/add-rm-with-sparse-index; uses ds/sparse-index-ignored-files.)
165
+
166
+ Various mergy operations have been prepared to work efficiently
167
+ with the sparse index.
168
+
169
+
170
+* ds/sparse-index-ignored-files (2021-09-07) 10 commits
171
+ (merged to 'next' on 2021-09-12 at 6993c73000)
172
+ + sparse-checkout: clear tracked sparse dirs
173
+ + sparse-index: add SPARSE_INDEX_MEMORY_ONLY flag
174
+ + attr: be careful about sparse directories
175
+ + sparse-checkout: create helper methods
176
+ + sparse-index: use WRITE_TREE_MISSING_OK
177
+ + sparse-index: silently return when cache tree fails
178
+ + unpack-trees: fix nested sparse-dir search
179
+ + sparse-index: silently return when not using cone-mode patterns
180
+ + t7519: rewrite sparse index test
181
+ + Merge branch 'ds/add-with-sparse-index' into ds/sparse-index-ignored-files
182
+ (this branch is used by ds/add-rm-with-sparse-index, ds/mergies-with-sparse-index and sg/test-split-index-fix.)
183
+
184
+ In cone mode, the sparse-index code path learned to remove ignored
185
+ files (like build artifacts) outside the sparse cone, allowing the
186
+ entire directory outside the sparse cone to be removed, which is
187
+ especially useful when the sparse patterns change.
188
+
189
+
190
+* dt/submodule-diff-fixes (2021-08-31) 3 commits
191
+ (merged to 'next' on 2021-09-10 at 21b773f4fe)
192
+ + diff --submodule=diff: don't print failure message twice
193
+ + diff --submodule=diff: do not fail on ever-initialied deleted submodules
194
+ + t4060: remove unused variable
195
+
196
+ "git diff --submodule=diff" showed failure from run_command() when
197
+ trying to run diff inside a submodule, when the user manually
198
+ removes the submodule directory.
199
+
200
+
201
+* jk/t5562-racefix (2021-09-09) 1 commit
202
+ (merged to 'next' on 2021-09-12 at 22d4bfa14b)
203
+ + t5562: use alarm() to interrupt timed child-wait
204
+
205
+ Test update.
206
+
207
+
208
+* js/pull-release-packs-before-fetching (2021-09-08) 2 commits
209
+ (merged to 'next' on 2021-09-12 at 05cdcab392)
210
+ + pull: release packs before fetching
211
+ + commit-graph: when closing the graph, also release the slab
212
+ (this branch is used by js/run-command-close-packs.)
213
+
214
+ "git pull" was taught to close open file descriptors to the
215
+ packfiles before spawning "git fetch" to help auto-gc that may be
216
+ invoked by it.
217
+
218
+
219
+* js/run-command-close-packs (2021-09-09) 4 commits
220
+ (merged to 'next' on 2021-09-12 at 97c3614c78)
221
+ + Close object store closer to spawning child processes
222
+ + run_auto_maintenance(): implicitly close the object store
223
+ + run-command: offer to close the object store before running
224
+ + run-command: prettify the `RUN_COMMAND_*` flags
225
+ (this branch uses js/pull-release-packs-before-fetching.)
226
+
227
+ The run-command API has been updated so that the callers can easily
228
+ ask the file descriptors open for packfiles to be closed immediately
229
+ before spawning commands that may trigger auto-gc.
230
+
231
+
232
+* jt/grep-wo-submodule-odb-as-alternate (2021-09-08) 8 commits
233
+ (merged to 'next' on 2021-09-08 at 67612d0b7f)
234
+ + t7814: show lack of alternate ODB-adding
235
+ + submodule-config: pass repo upon blob config read
236
+ + grep: add repository to OID grep sources
237
+ + grep: allocate subrepos on heap
238
+ + grep: read submodule entry with explicit repo
239
+ + grep: typesafe versions of grep_source_init
240
+ + grep: use submodule-ODB-as-alternate lazy-addition
241
+ + submodule: lazily add submodule ODBs as alternates
242
+ (this branch is used by jt/add-submodule-odb-clean-up.)
243
+
244
+ The code to make "git grep" recurse into submodules has been
245
+ updated to migrate away from the "add submodule's object store as
246
+ an alternate object store" mechanism (which is suboptimal).
247
+
248
+
249
+* jv/pkt-line-batch (2021-09-01) 2 commits
250
+ (merged to 'next' on 2021-09-10 at c31d871c9a)
251
+ + upload-pack: use stdio in send_ref callbacks
252
+ + pkt-line: add stdio packet write functions
253
+
254
+ Reduce number of write(2) system calls while sending the
255
+ ref advertisement.
256
+
257
+
258
+* lh/systemd-timers (2021-09-07) 3 commits
259
+ (merged to 'next' on 2021-09-10 at b27d72031a)
260
+ + maintenance: add support for systemd timers on Linux
261
+ + maintenance: `git maintenance run` learned `--scheduler=<scheduler>`
262
+ + cache.h: Introduce a generic "xdg_config_home_for(…)" function
263
+
264
+ "git maintenance" scheduler learned to use systemd timers as a
265
+ possible backend.
266
+
267
+
268
+* ps/fetch-optim (2021-09-01) 7 commits
269
+ (merged to 'next' on 2021-09-08 at 99f865125d)
270
+ + fetch: avoid second connectivity check if we already have all objects
271
+ + fetch: merge fetching and consuming refs
272
+ + fetch: refactor fetch refs to be more extendable
273
+ + fetch-pack: optimize loading of refs via commit graph
274
+ + connected: refactor iterator to return next object ID directly
275
+ + fetch: avoid unpacking headers in object existence check
276
+ + fetch: speed up lookup of want refs via commit-graph
277
+
278
+ Optimize code that handles large number of refs in the "git fetch"
279
+ code path.
280
+
281
+
282
+* rs/no-mode-to-open-when-appending (2021-09-09) 1 commit
283
+ (merged to 'next' on 2021-09-12 at a3ea25c5f1)
284
+ + refs/files-backend: remove unused open mode parameter
285
+
286
+ The "mode" word is useless in a call to open(2) that does not
287
+ create a new file. Such a call in the files backend of the ref
288
+ subsystem has been cleaned up.
289
+
290
+
291
+* rs/setup-use-xopen-and-xdup (2021-09-09) 1 commit
292
+ (merged to 'next' on 2021-09-12 at 544b481d15)
293
+ + setup: use xopen and xdup in sanitize_stdfds
294
+
295
+ Code clean-up.
296
+
297
+
298
+* tb/multi-pack-bitmaps (2021-09-09) 29 commits
299
+ (merged to 'next' on 2021-09-10 at 71559ef435)
300
+ + pack-bitmap: drop bitmap_index argument from try_partial_reuse()
301
+ + pack-bitmap: drop repository argument from prepare_midx_bitmap_git()
302
+ (merged to 'next' on 2021-09-08 at f2b7415bd8)
303
+ + p5326: perf tests for MIDX bitmaps
304
+ + p5310: extract full and partial bitmap tests
305
+ + midx: respect 'GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP'
306
+ + t7700: update to work with MIDX bitmap test knob
307
+ + t5319: don't write MIDX bitmaps in t5319
308
+ + t5310: disable GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP
309
+ + t0410: disable GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP
310
+ + t5326: test multi-pack bitmap behavior
311
+ + t/helper/test-read-midx.c: add --checksum mode
312
+ + t5310: move some tests to lib-bitmap.sh
313
+ + pack-bitmap: write multi-pack bitmaps
314
+ + pack-bitmap: read multi-pack bitmaps
315
+ + pack-bitmap.c: avoid redundant calls to try_partial_reuse
316
+ + pack-bitmap.c: introduce 'bitmap_is_preferred_refname()'
317
+ + pack-bitmap.c: introduce 'nth_bitmap_object_oid()'
318
+ + pack-bitmap.c: introduce 'bitmap_num_objects()'
319
+ + midx: avoid opening multiple MIDXs when writing
320
+ + midx: close linked MIDXs, avoid leaking memory
321
+ + midx: infer preferred pack when not given one
322
+ + midx: reject empty `--preferred-pack`'s
323
+ + midx: clear auxiliary .rev after replacing the MIDX
324
+ + midx: fix `*.rev` cleanups with `--object-dir`
325
+ + midx: disallow running outside of a repository
326
+ + Documentation: describe MIDX-based bitmaps
327
+ + pack-bitmap-write.c: free existing bitmaps
328
+ + pack-bitmap-write.c: gracefully fail to write non-closed bitmaps
329
+ + pack-bitmap.c: harden 'test_bitmap_walk()' to check type bitmaps
330
+ (this branch is used by tb/midx-write-propagate-namehash and tb/repack-write-midx.)
331
+
332
+ The reachability bitmap file used to be generated only for a single
333
+ pack, but now we've learned to generate bitmaps for history that
334
+ span across multiple packfiles.
335
+
336
+
337
+* tb/pack-finalize-ordering (2021-09-09) 9 commits
338
+ (merged to 'next' on 2021-09-10 at 7b39c39e31)
339
+ + pack-objects: rename .idx files into place after .bitmap files
340
+ + pack-write: split up finish_tmp_packfile() function
341
+ + builtin/index-pack.c: move `.idx` files into place last
342
+ + index-pack: refactor renaming in final()
343
+ + builtin/repack.c: move `.idx` files into place last
344
+ + pack-write.c: rename `.idx` files after `*.rev`
345
+ + pack-write: refactor renaming in finish_tmp_packfile()
346
+ + bulk-checkin.c: store checksum directly
347
+ + pack.h: line-wrap the definition of finish_tmp_packfile()
348
+
349
+ The order in which various files that make up a single (conceptual)
350
+ packfile has been reevaluated and straightened up. This matters in
351
+ correctness, as an incomplete set of files must not be shown to a
352
+ running Git.
353
+
354
+--------------------------------------------------
355
+[New Topics]
356
+
357
+* ab/repo-settings-cleanup (2021-09-20) 5 commits
358
+ - repository.h: don't use a mix of int and bitfields
359
+ - repo-settings.c: simplify the setup
360
+ - read-cache & fetch-negotiator: check "enum" values in switch()
361
+ - environment.c: remove test-specific "ignore_untracked..." variable
362
+ - wrapper.c: add x{un,}setenv(), and use xsetenv() in environment.c
363
+
364
+ Code cleanup.
365
+
366
+ Will merge to 'next'?
367
+ cf. <cover-v3-0.5-00000000000-20210919T084703Z-avarab@gmail.com>
368
+ Looks like we got an implicit Ack from Derrick?
369
+
370
+
371
+* ah/connect-parse-feature-v0-fix (2021-09-20) 1 commit
372
+ - connect: also update offset for features without values
373
+
374
+ Protocol v0 clients can get stuck parsing a malformed feature line.
375
+
376
+ Will merge to 'next'.
377
+
378
+
379
+* ah/unreak-revisions (2021-09-20) 2 commits
380
+ - log: UNLEAK original pending objects
381
+ - log: UNLEAK rev to silence a large number of leaks
382
+
383
+ Mark a few structures with UNLEAK() to help leak detection CI jobs.
384
+
385
+ Will merge to 'next'.
386
+
387
+
388
+* ar/submodule-update (2021-09-20) 8 commits
389
+ - submodule--helper: rename helper functions
390
+ - submodule--helper: remove unused helpers
391
+ - submodule--helper: remove update-clone subcommand
392
+ - submodule: move core cmd_update() logic to C
393
+ - submodule--helper: refactor get_submodule_displaypath()
394
+ - submodule--helper: rename helpers for update-clone
395
+ - submodule--helper: get remote names from any repository
396
+ - submodule--helper: split up ensure_core_worktree()
397
+
398
+ Rewrite of "git submodule update" in C.
399
+
400
+ Expecting a reroll.
401
+ Stomps on a handful of other topics and comes with an overly large step.
402
+
403
+
404
+* da/difftool (2021-09-20) 4 commits
405
+ - difftool: add a missing space to the run_dir_diff() comments
406
+ - difftool: use a strbuf to create a tmpdir path without repeated slashes
407
+ - Merge branch 'da/difftool-dir-diff-symlink-fix' into da/difftool
408
+ - Merge branch 'ab/retire-option-argument' into da/difftool
409
+ (this branch uses ab/retire-option-argument and da/difftool-dir-diff-symlink-fix.)
410
+
411
+ Code clean-up in "git difftool".
412
+
413
+
414
+* da/difftool-dir-diff-symlink-fix (2021-09-20) 1 commit
415
+ - difftool: fix symlink-file writing in dir-diff mode
416
+ (this branch is used by da/difftool.)
417
+
418
+ "git difftool --dir-diff" mishandled symbolic links.
419
+
420
+ Will merge to 'next'.
421
+
422
+
423
+* en/removing-untracked-fixes (2021-09-20) 7 commits
424
+ - Documentation: call out commands that nuke untracked files/directories
425
+ - Comment important codepaths regarding nuking untracked files/dirs
426
+ - unpack-trees: avoid nuking untracked dir in way of locally deleted file
427
+ - unpack-trees: avoid nuking untracked dir in way of unmerged file
428
+ - Split unpack_trees 'reset' flag into two for untracked handling
429
+ - t2500: add various tests for nuking untracked files
430
+ - Merge branch 'en/am-abort-fix' into en/removing-untracked-fixes
431
+ (this branch uses en/am-abort-fix.)
432
+
433
+ Various fixes in code paths that move untracked files away to make room.
434
+
435
+
436
+* en/typofixes (2021-09-20) 2 commits
437
+ (merged to 'next' on 2021-09-20 at 48648dafa3)
438
+ + merge-ort: fix completely wrong comment
439
+ + trace2.h: fix trivial comment typo
440
+
441
+ Typofixes.
442
+
443
+ Will merge to 'master'.
444
60
- Build simplification.
445
446
+* ks/submodule-add-message-fix (2021-09-20) 1 commit
447
+ - submodule--helper: fix incorrect newlines in an error message
448
63
-* ab/reverse-midx-optim (2021-09-07) 1 commit
64
- (merged to 'next' on 2021-09-08 at 1972c5931b)
65
- + pack-write: skip *.rev work when not writing *.rev
449
+ Message regression fix.
450
67
- The code that optionally creates the *.rev reverse index file has
68
- been optimized to avoid needless computation when it is not writing
69
- the file out.
451
+ Will merge to 'next'.
452
453
72
-* ab/send-email-config-fix (2021-09-07) 1 commit
73
- (merged to 'next' on 2021-09-08 at c2000e9689)
74
- + send-email: fix a "first config key wins" regression in v2.33.0
454
+* tb/commit-graph-usage-fix (2021-09-20) 1 commit
455
+ - builtin/commit-graph.c: don't accept common --[no-]progress
456
76
- Regression fix.
457
+ Regression fix for "git commit-graph" command line parsing.
458
459
+ Will merge to 'next'.
460
79
-* bs/doc-bugreport-outdir (2021-09-07) 1 commit
80
- (merged to 'next' on 2021-09-08 at 5ea3df204d)
81
- + Documentation: fix default directory of git bugreport -o
461
83
- Docfix.
462
+* ws/refer-to-forkpoint-config-in-rebase-doc (2021-09-20) 1 commit
463
+ - Document `rebase.forkpoint` in rebase man page
464
465
+ Doc update.
466
86
-* bs/install-strip (2021-09-05) 1 commit
87
- (merged to 'next' on 2021-09-08 at 40cfa71c8d)
88
- + make: add INSTALL_STRIP option variable
467
+ Will merge to 'next'?
468
90
- "make INSTALL_STRIP=-s install" allows the installation step to use
91
- "install -s" to strip the binaries as they get installed.
469
470
+* jk/clone-unborn-head-in-bare (2021-09-20) 1 commit
471
+ (merged to 'next' on 2021-09-20 at 93c93b8d51)
472
+ + clone: handle unborn branch in bare repos
473
94
-* jc/prefix-filename-allocates (2021-09-07) 1 commit
95
- (merged to 'next' on 2021-09-10 at a5221ea92e)
96
- + hash-object: prefix_filename() returns allocated memory these days
474
+ "git clone" from a repository whose HEAD is unborn into a bare
475
+ repository didn't follow the branch name the other side used, which
476
+ is corrected.
477
98
- Leakfix.
478
+ Will merge to 'master'.
479
+
480
+--------------------------------------------------
481
+[Stalled]
482
+
483
+* ab/pack-objects-stdin (2021-07-09) 5 commits
484
+ - pack-objects.c: make use of REV_INFO_STDIN_LINE_PROCESS
485
+ - pack-objects.c: do stdin parsing via revision.c's API
486
+ - revision.[ch]: add a "handle_stdin_line" API
487
+ - revision.h: refactor "disable_stdin" and "read_from_stdin"
488
+ - upload-pack: run is_repository_shallow() before setup_revisions()
489
+
490
+ Introduce handle_stdin_line callback to revision API and uses it.
491
+
492
+ Waiting for reviews.
493
494
101
-* jc/trivial-threeway-binary-merge (2021-09-05) 1 commit
102
- (merged to 'next' on 2021-09-08 at d6ba0735d8)
103
- + apply: resolve trivial merge without hitting ll-merge with "--3way"
495
+* es/config-based-hooks (2021-09-09) 6 commits
496
+ - hook: allow out-of-repo 'git hook' invocations
497
+ - hook: include hooks from the config
498
+ - hook: introduce "git hook list"
499
+ - hook: allow parallel hook execution
500
+ - fixup! hook: run a list of hooks instead
501
+ - hook: run a list of hooks instead
502
+ (this branch uses ab/config-based-hooks-base.)
503
105
- The "git apply -3" code path learned not to bother the lower level
106
- merge machinery when the three-way merge can be trivially resolved
107
- without the content level merge.
504
+ Revamp the hooks subsystem to allow multiple of them to trigger
505
+ upon the same event and control via the configuration variables.
506
507
+ On hold.
508
+ This is an interim one that goes with the updated ab/config-based-hooks-base.
509
110
-* pb/test-use-user-env (2021-09-07) 3 commits
111
- (merged to 'next' on 2021-09-08 at 6fa5d96723)
112
- + test-lib-functions: keep user's debugger config files and TERM in 'debug'
113
- + test-lib-functions: optionally keep HOME, TERM and SHELL in 'test_pause'
114
- + test-lib-functions: use 'TEST_SHELL_PATH' in 'test_pause'
510
116
- Teach "test_pause" and "debug" helpers to allow using the HOME and
117
- TERM environment variables the user usually uses.
511
+* es/superproject-aware-submodules (2021-08-19) 5 commits
512
+ . fixup! introduce submodule.superprojectGitDir record
513
+ . submodule: record superproject gitdir during 'update'
514
+ . submodule: record superproject gitdir during absorbgitdirs
515
+ . introduce submodule.superprojectGitDir record
516
+ . t7400-submodule-basic: modernize inspect() helper
517
518
+ A configuration variable in a submodule points at the location of
519
+ the superproject it is bound to (RFC).
520
120
-* rs/range-diff-avoid-segfault-with-I (2021-09-07) 1 commit
121
- (merged to 'next' on 2021-09-10 at e8bac5f9ea)
122
- + range-diff: avoid segfault with -I
521
+ Kicked out of 'seen' tentatively to see how well a conflicting
522
+ ar/submodule-update topic fares.
523
124
- "git range-diff -I... <range> <range>" segfaulted, which has been
125
- corrected.
524
525
+* ab/fsck-unexpected-type (2021-09-07) 22 commits
526
+ - fsck: report invalid object type-path combinations
527
+ - fsck: report invalid types recorded in objects
528
+ - object-store.h: move read_loose_object() below 'struct object_info'
529
+ - fsck: don't hard die on invalid object types
530
+ - object-file.c: use "enum" return type for unpack_loose_header()
531
+ - object-file.c: return -2 on "header too long" in unpack_loose_header()
532
+ - object-file.c: return -1, not "status" from unpack_loose_header()
533
+ - object-file.c: guard against future bugs in loose_object_info()
534
+ - object-file.c: stop dying in parse_loose_header()
535
+ - object-file.c: split up ternary in parse_loose_header()
536
+ - object-file.c: simplify unpack_loose_short_header()
537
+ - object-file.c: add missing braces to loose_object_info()
538
+ - object-file.c: make parse_loose_header_extended() public
539
+ - object-file.c: don't set "typep" when returning non-zero
540
+ - cache.h: move object functions to object-store.h
541
+ - cat-file tests: test for current --allow-unknown-type behavior
542
+ - cat-file tests: add corrupt loose object test
543
+ - rev-list tests: test for behavior with invalid object types
544
+ - cat-file tests: test that --allow-unknown-type isn't on by default
545
+ - cat-file tests: test for missing object with -t and -s
546
+ - fsck tests: add test for fsck-ing an unknown type
547
+ - fsck tests: refactor one test to use a sub-repo
548
128
-* so/diff-index-regression-fix (2021-09-07) 1 commit
129
- (merged to 'next' on 2021-09-08 at ca17912ed3)
130
- + diff-index: restore -c/--cc options handling
549
+ "git fsck" has been taught to report mismatch between expected and
550
+ actual types of an object better.
551
132
- Recent "diff -m" changes broke "gitk", which has been corrected.
552
+ Needs review.
553
554
--------------------------------------------------
135
-[New Topics]
555
+[Cooking]
556
557
* jk/reduce-malloc-in-v2-servers (2021-09-15) 12 commits
558
(merged to 'next' on 2021-09-16 at 40cfe41efc)
@@ -148,7 +568,6 @@ Release tarballs are available at:
568
+ serve: return capability "value" from get_capability()
569
+ serve: rename is_command() to parse_command()
570
+ Merge branch 'ab/serve-cleanup' into jk/reduce-malloc-in-v2-servers
151
- (this branch uses ab/serve-cleanup.)
571
572
Code cleanup to limit memory consumption and tighten protocol
573
message parsing.
@@ -206,14 +625,14 @@ Release tarballs are available at:
625
Will merge to 'master'.
626
627
209
-* jh/builtin-fsmonitor-part1 (2021-09-15) 7 commits
628
+* jh/builtin-fsmonitor-part1 (2021-09-20) 7 commits
629
- t/helper/simple-ipc: convert test-simple-ipc to use start_bg_command
630
- run-command: create start_bg_command
631
- simple-ipc/ipc-win32: add Windows ACL to named pipe
632
- simple-ipc/ipc-win32: add trace2 debugging
633
- simple-ipc: move definition of ipc_active_state outside of ifdef
634
- simple-ipc: preparations for supporting binary messages.
216
- - trace2: fix memory leak of thread name
635
+ - trace2: add trace2_child_ready() to report on background children
636
637
Built-in fsmonitor (part 1).
638
@@ -240,88 +659,14 @@ Release tarballs are available at:
659
660
661
* cb/unicode-14 (2021-09-17) 1 commit
243
- - unicode: update the width tables to Unicode 14
662
+ (merged to 'next' on 2021-09-20 at 7873b310ad)
663
+ + unicode: update the width tables to Unicode 14
664
665
The unicode character width table (used for output alignment) has
666
been updated.
667
248
- Will merge to 'next'.
249
-
250
---------------------------------------------------
251
-[Stalled]
252
-
253
-* ab/pack-objects-stdin (2021-07-09) 5 commits
254
- - pack-objects.c: make use of REV_INFO_STDIN_LINE_PROCESS
255
- - pack-objects.c: do stdin parsing via revision.c's API
256
- - revision.[ch]: add a "handle_stdin_line" API
257
- - revision.h: refactor "disable_stdin" and "read_from_stdin"
258
- - upload-pack: run is_repository_shallow() before setup_revisions()
259
-
260
- Introduce handle_stdin_line callback to revision API and uses it.
261
-
262
- Waiting for reviews.
263
-
264
-
265
-* es/config-based-hooks (2021-09-09) 6 commits
266
- - hook: allow out-of-repo 'git hook' invocations
267
- - hook: include hooks from the config
268
- - hook: introduce "git hook list"
269
- - hook: allow parallel hook execution
270
- - fixup! hook: run a list of hooks instead
271
- - hook: run a list of hooks instead
272
- (this branch uses ab/config-based-hooks-base.)
273
-
274
- Revamp the hooks subsystem to allow multiple of them to trigger
275
- upon the same event and control via the configuration variables.
276
-
277
- On hold.
278
- This is an interim one that goes with the updated ab/config-based-hooks-base.
279
-
280
-
281
-* es/superproject-aware-submodules (2021-08-19) 5 commits
282
- - fixup! introduce submodule.superprojectGitDir record
283
- - submodule: record superproject gitdir during 'update'
284
- - submodule: record superproject gitdir during absorbgitdirs
285
- - introduce submodule.superprojectGitDir record
286
- - t7400-submodule-basic: modernize inspect() helper
287
-
288
- A configuration variable in a submodule points at the location of
289
- the superproject it is bound to (RFC).
290
-
291
- Looking good.
292
-
293
-
294
-* ab/fsck-unexpected-type (2021-09-07) 22 commits
295
- - fsck: report invalid object type-path combinations
296
- - fsck: report invalid types recorded in objects
297
- - object-store.h: move read_loose_object() below 'struct object_info'
298
- - fsck: don't hard die on invalid object types
299
- - object-file.c: use "enum" return type for unpack_loose_header()
300
- - object-file.c: return -2 on "header too long" in unpack_loose_header()
301
- - object-file.c: return -1, not "status" from unpack_loose_header()
302
- - object-file.c: guard against future bugs in loose_object_info()
303
- - object-file.c: stop dying in parse_loose_header()
304
- - object-file.c: split up ternary in parse_loose_header()
305
- - object-file.c: simplify unpack_loose_short_header()
306
- - object-file.c: add missing braces to loose_object_info()
307
- - object-file.c: make parse_loose_header_extended() public
308
- - object-file.c: don't set "typep" when returning non-zero
309
- - cache.h: move object functions to object-store.h
310
- - cat-file tests: test for current --allow-unknown-type behavior
311
- - cat-file tests: add corrupt loose object test
312
- - rev-list tests: test for behavior with invalid object types
313
- - cat-file tests: test that --allow-unknown-type isn't on by default
314
- - cat-file tests: test for missing object with -t and -s
315
- - fsck tests: add test for fsck-ing an unknown type
316
- - fsck tests: refactor one test to use a sub-repo
317
-
318
- "git fsck" has been taught to report mismatch between expected and
319
- actual types of an object better.
320
-
321
- Needs review.
668
+ Will merge to 'master'.
669
323
---------------------------------------------------
324
-[Cooking]
670
671
* jk/http-server-protocol-versions (2021-09-10) 5 commits
672
(merged to 'next' on 2021-09-13 at 9174cd6d37)
@@ -370,6 +715,7 @@ Release tarballs are available at:
715
+ am: fix incorrect exit status on am fail to abort
716
+ t4151: add a few am --abort tests
717
+ git-am.txt: clarify --abort behavior
718
+ (this branch is used by en/removing-untracked-fixes.)
719
720
When "git am --abort" fails to abort correctly, it still exited
721
with exit status of 0, which has been corrected.
@@ -386,7 +732,6 @@ Release tarballs are available at:
732
- midx: preliminary support for `--refs-snapshot`
733
- builtin/multi-pack-index.c: support `--stdin-packs` mode
734
- midx: expose `write_midx_file_only()` publicly
389
- (this branch uses tb/multi-pack-bitmaps.)
735
736
"git repack" has been taught to generate multi-pack reachability
737
bitmaps.
@@ -450,13 +795,13 @@ Release tarballs are available at:
795
- dir: extract directory-matching logic
796
- t1092: behavior for adding sparse files
797
- t3705: test that 'sparse_entry' is unstaged
453
- (this branch uses ds/mergies-with-sparse-index and ds/sparse-index-ignored-files.)
798
799
"git add", "git mv", and "git rm" have been adjusted to avoid
800
updating paths outside of the sparse-checkout definition unless
801
the user specifies a "--sparse" option.
802
459
- Will merge to 'next'?
803
+ Expecting a reroll.
804
+ cf. <922bdab1-c521-84b5-51c1-a0413fd67394@gmail.com>
805
806
807
* en/tests-cleanup-leftover-untracked (2021-09-12) 1 commit
@@ -500,7 +845,7 @@ Release tarballs are available at:
845
Will merge to 'master'.
846
847
503
-* tb/midx-write-propagate-namehash (2021-09-14) 7 commits
848
+* tb/midx-write-propagate-namehash (2021-09-17) 7 commits
849
- t5326: test propagating hashcache values
850
- p5326: generate pack bitmaps before writing the MIDX bitmap
851
- p5326: don't set core.multiPackIndex unnecessarily
@@ -508,7 +853,6 @@ Release tarballs are available at:
853
- midx.c: respect 'pack.writeBitmapHashcache' when writing bitmaps
854
- pack-bitmap.c: propagate namehash values from existing bitmaps
855
- t/helper/test-bitmap.c: add 'dump-hashes' mode
511
- (this branch uses tb/multi-pack-bitmaps.)
856
857
"git multi-pack-index write --bitmap" learns to propagate the
858
hashcache from original bitmap to resulting bitmap.
@@ -522,6 +866,7 @@ Release tarballs are available at:
866
+ difftool: use run_command() API in run_file_diff()
867
+ difftool: prepare "diff" cmdline in cmd_difftool()
868
+ difftool: prepare "struct child_process" in cmd_difftool()
869
+ (this branch is used by da/difftool.)
870
871
An oddball OPTION_ARGUMENT feature has been removed from the
872
parse-options API.
@@ -558,7 +903,7 @@ Release tarballs are available at:
903
Expecting a reroll.
904
905
561
-* en/zdiff3 (2021-09-12) 2 commits
906
+* en/zdiff3 (2021-09-20) 2 commits
907
- update documentation for new zdiff3 conflictStyle
908
- xdiff: implement a zealous diff3, or "zdiff3"
909
@@ -566,26 +911,14 @@ Release tarballs are available at:
911
912
913
* en/stash-df-fix (2021-09-10) 3 commits
569
- - stash: restore untracked files AFTER restoring tracked files
570
- - stash: avoid feeding directories to update-index
571
- - t3903: document a pair of directory/file bugs
914
+ (merged to 'next' on 2021-09-20 at 513c11fb11)
915
+ + stash: restore untracked files AFTER restoring tracked files
916
+ + stash: avoid feeding directories to update-index
917
+ + t3903: document a pair of directory/file bugs
918
919
Fix "git stash" corner case where the tentative change involves
920
changing a directory to a file (or vice versa).
921
576
- Will merge to 'next'.
577
-
578
-
579
-* js/pull-release-packs-before-fetching (2021-09-08) 2 commits
580
- (merged to 'next' on 2021-09-12 at 05cdcab392)
581
- + pull: release packs before fetching
582
- + commit-graph: when closing the graph, also release the slab
583
- (this branch is used by js/run-command-close-packs.)
584
-
585
- "git pull" was taught to close open file descriptors to the
586
- packfiles before spawning "git fetch" to help auto-gc that may be
587
- invoked by it.
588
-
922
Will merge to 'master'.
923
924
@@ -607,42 +940,10 @@ Release tarballs are available at:
940
Will merge to 'master'.
941
942
610
-* ds/mergies-with-sparse-index (2021-09-09) 6 commits
611
- (merged to 'next' on 2021-09-12 at 1535fa2dae)
612
- + sparse-index: integrate with cherry-pick and rebase
613
- + sequencer: ensure full index if not ORT strategy
614
- + t1092: add cherry-pick, rebase tests
615
- + merge-ort: expand only for out-of-cone conflicts
616
- + merge: make sparse-aware with ORT
617
- + diff: ignore sparse paths in diffstat
618
- (this branch is used by ds/add-rm-with-sparse-index; uses ds/sparse-index-ignored-files.)
619
-
620
- Various mergy operations have been prepared to work efficiently
621
- with the sparse index.
622
-
623
- Will merge to 'master'.
624
-
625
-
626
-* js/run-command-close-packs (2021-09-09) 4 commits
627
- (merged to 'next' on 2021-09-12 at 97c3614c78)
628
- + Close object store closer to spawning child processes
629
- + run_auto_maintenance(): implicitly close the object store
630
- + run-command: offer to close the object store before running
631
- + run-command: prettify the `RUN_COMMAND_*` flags
632
- (this branch uses js/pull-release-packs-before-fetching.)
633
-
634
- The run-command API has been updated so that the callers can easily
635
- ask the file descriptors open for packfiles to be closed immediately
636
- before spawning commands that may trigger auto-gc.
637
-
638
- Will merge to 'master'.
639
-
640
-
943
* jt/add-submodule-odb-clean-up (2021-09-09) 3 commits
944
- revision: remove "submodule" from opt struct
945
- repository: support unabsorbed in repo_submodule_init
946
- submodule: remove unnecessary unabsorbed fallback
645
- (this branch uses jt/grep-wo-submodule-odb-as-alternate.)
947
948
More code paths that uses the hack to add submodule's object
949
database to the set of alternate object store have been cleaned up.
@@ -658,35 +959,6 @@ Release tarballs are available at:
959
Will merge to 'next'.
960
961
661
-* jk/t5562-racefix (2021-09-09) 1 commit
662
- (merged to 'next' on 2021-09-12 at 22d4bfa14b)
663
- + t5562: use alarm() to interrupt timed child-wait
664
-
665
- Test update.
666
-
667
- Will merge to 'master'.
668
-
669
-
670
-* rs/no-mode-to-open-when-appending (2021-09-09) 1 commit
671
- (merged to 'next' on 2021-09-12 at a3ea25c5f1)
672
- + refs/files-backend: remove unused open mode parameter
673
-
674
- The "mode" word is useless in a call to open(2) that does not
675
- create a new file. Such a call in the files backend of the ref
676
- subsystem has been cleaned up.
677
-
678
- Will merge to 'master'.
679
-
680
-
681
-* rs/setup-use-xopen-and-xdup (2021-09-09) 1 commit
682
- (merged to 'next' on 2021-09-12 at 544b481d15)
683
- + setup: use xopen and xdup in sanitize_stdfds
684
-
685
- Code clean-up.
686
-
687
- Will merge to 'master'.
688
-
689
-
962
* rs/use-xopen-in-index-pack (2021-09-10) 1 commit
963
(merged to 'next' on 2021-09-16 at 186eaaae56)
964
+ index-pack: use xopen in init_thread
@@ -696,18 +968,6 @@ Release tarballs are available at:
968
Will merge to 'master'.
969
970
699
-* cb/pedantic-build-for-developers (2021-09-03) 3 commits
700
- (merged to 'next' on 2021-09-10 at b8df102019)
701
- + developer: enable pedantic by default
702
- + win32: allow building with pedantic mode enabled
703
- + gettext: remove optional non-standard parens in N_() definition
704
-
705
- Update the build procedure to use the "-pedantic" build when
706
- DEVELOPER makefile macro is in effect.
707
-
708
- Will merge to 'master'.
709
-
710
-
971
* js/scalar (2021-09-14) 15 commits
972
- scalar: accept -C and -c options before the subcommand
973
- scalar: implement the `version` command
@@ -717,64 +977,30 @@ Release tarballs are available at:
977
- scalar: implement the `run` command
978
- scalar: teach 'clone' to support the --single-branch option
979
- scalar: implement the `clone` subcommand
720
- - scalar: implement 'scalar list'
721
- - scalar: let 'unregister' handle a deleted enlistment directory gracefully
722
- - scalar: 'unregister' stops background maintenance
723
- - scalar: 'register' sets recommended config and starts maintenance
724
- - scalar: create test infrastructure
725
- - scalar: start documenting the command
726
- - scalar: create a rudimentary executable
727
-
728
- Add pieces from "scalar" to contrib/.
729
-
730
-
731
-* ps/update-ref-batch-flush (2021-09-15) 2 commits
732
- (merged to 'next' on 2021-09-15 at 39a69141e3)
733
- + t1400: avoid SIGPIPE race condition on fifo
734
- (merged to 'next' on 2021-09-10 at 4ae19a5f34)
735
- + update-ref: fix streaming of status updates
736
-
737
- "git update-ref --stdin" failed to flush its output as needed,
738
- which potentially led the conversation to a deadlock.
739
-
740
- Will merge to 'master'.
741
-
742
-
743
-* ab/tr2-leaks-and-fixes (2021-09-07) 6 commits
744
- (merged to 'next' on 2021-09-10 at 14f0dd5580)
745
- + tr2: log N parent process names on Linux
746
- + tr2: do compiler enum check in trace2_collect_process_info()
747
- + tr2: leave the parent list empty upon failure & don't leak memory
748
- + tr2: stop leaking "thread_name" memory
749
- + tr2: clarify TRACE2_PROCESS_INFO_EXIT comment under Linux
750
- + tr2: remove NEEDSWORK comment for "non-procfs" implementations
751
-
752
- The tracing of process ancestry information has been enhanced.
980
+ - scalar: implement 'scalar list'
981
+ - scalar: let 'unregister' handle a deleted enlistment directory gracefully
982
+ - scalar: 'unregister' stops background maintenance
983
+ - scalar: 'register' sets recommended config and starts maintenance
984
+ - scalar: create test infrastructure
985
+ - scalar: start documenting the command
986
+ - scalar: create a rudimentary executable
987
754
- Will merge to 'master'.
988
+ Add pieces from "scalar" to contrib/.
989
990
757
-* tb/pack-finalize-ordering (2021-09-09) 9 commits
758
- (merged to 'next' on 2021-09-10 at 7b39c39e31)
759
- + pack-objects: rename .idx files into place after .bitmap files
760
- + pack-write: split up finish_tmp_packfile() function
761
- + builtin/index-pack.c: move `.idx` files into place last
762
- + index-pack: refactor renaming in final()
763
- + builtin/repack.c: move `.idx` files into place last
764
- + pack-write.c: rename `.idx` files after `*.rev`
765
- + pack-write: refactor renaming in finish_tmp_packfile()
766
- + bulk-checkin.c: store checksum directly
767
- + pack.h: line-wrap the definition of finish_tmp_packfile()
991
+* ps/update-ref-batch-flush (2021-09-15) 2 commits
992
+ (merged to 'next' on 2021-09-15 at 39a69141e3)
993
+ + t1400: avoid SIGPIPE race condition on fifo
994
+ (merged to 'next' on 2021-09-10 at 4ae19a5f34)
995
+ + update-ref: fix streaming of status updates
996
769
- The order in which various files that make up a single (conceptual)
770
- packfile has been reevaluated and straightened up. This matters in
771
- correctness, as an incomplete set of files must not be shown to a
772
- running Git.
997
+ "git update-ref --stdin" failed to flush its output as needed,
998
+ which potentially led the conversation to a deadlock.
999
1000
Will merge to 'master'.
1001
1002
777
-* ab/sanitize-leak-ci (2021-09-16) 2 commits
1003
+* ab/sanitize-leak-ci (2021-09-20) 2 commits
1004
- tests: add a test mode for SANITIZE=leak, run it in CI
1005
- Makefile: add SANITIZE=leak flag to GIT-BUILD-OPTIONS
1006
@@ -845,7 +1071,6 @@ Release tarballs are available at:
1071
- t1600-index: don't run git commands upstream of a pipe
1072
- t1600-index: remove unnecessary redirection
1073
- Merge branch 'ds/sparse-index-ignored-files' into sg/test-split-index-fix
848
- (this branch uses ds/sparse-index-ignored-files.)
1074
1075
Test updates.
1076
@@ -862,126 +1087,6 @@ Release tarballs are available at:
1087
The "remainder" of hn/refs-errno-cleanup topic.
1088
1089
865
-* jv/pkt-line-batch (2021-09-01) 2 commits
866
- (merged to 'next' on 2021-09-10 at c31d871c9a)
867
- + upload-pack: use stdio in send_ref callbacks
868
- + pkt-line: add stdio packet write functions
869
-
870
- Reduce number of write(2) system calls while sending the
871
- ref advertisement.
872
-
873
- Will merge to 'master'.
874
-
875
-
876
-* ab/unbundle-progress (2021-09-07) 4 commits
877
- (merged to 'next' on 2021-09-12 at d7bacb391e)
878
- + bundle: show progress on "unbundle"
879
- + index-pack: add --progress-title option
880
- + bundle API: change "flags" to be "extra_index_pack_args"
881
- + bundle API: start writing API documentation
882
-
883
- Add progress display to "git bundle unbundle".
884
-
885
- Will merge to 'master'.
886
-
887
-
888
-* lh/systemd-timers (2021-09-07) 3 commits
889
- (merged to 'next' on 2021-09-10 at b27d72031a)
890
- + maintenance: add support for systemd timers on Linux
891
- + maintenance: `git maintenance run` learned `--scheduler=<scheduler>`
892
- + cache.h: Introduce a generic "xdg_config_home_for(…)" function
893
-
894
- "git maintenance" scheduler learned to use systemd timers as a
895
- possible backend.
896
-
897
- Will merge to 'master'.
898
-
899
-
900
-* ps/fetch-optim (2021-09-01) 7 commits
901
- (merged to 'next' on 2021-09-08 at 99f865125d)
902
- + fetch: avoid second connectivity check if we already have all objects
903
- + fetch: merge fetching and consuming refs
904
- + fetch: refactor fetch refs to be more extendable
905
- + fetch-pack: optimize loading of refs via commit graph
906
- + connected: refactor iterator to return next object ID directly
907
- + fetch: avoid unpacking headers in object existence check
908
- + fetch: speed up lookup of want refs via commit-graph
909
-
910
- Optimize code that handles large number of refs in the "git fetch"
911
- code path.
912
-
913
- Will merge to 'master'.
914
-
915
-
916
-* ar/submodule-run-update-procedure (2021-08-24) 1 commit
917
- (merged to 'next' on 2021-09-12 at fbe417715d)
918
- + submodule--helper: run update procedures from C
919
-
920
- Reimplementation of parts of "git submodule" in C continues.
921
-
922
- Will merge to 'master'.
923
-
924
-
925
-* ds/sparse-index-ignored-files (2021-09-07) 10 commits
926
- (merged to 'next' on 2021-09-12 at 6993c73000)
927
- + sparse-checkout: clear tracked sparse dirs
928
- + sparse-index: add SPARSE_INDEX_MEMORY_ONLY flag
929
- + attr: be careful about sparse directories
930
- + sparse-checkout: create helper methods
931
- + sparse-index: use WRITE_TREE_MISSING_OK
932
- + sparse-index: silently return when cache tree fails
933
- + unpack-trees: fix nested sparse-dir search
934
- + sparse-index: silently return when not using cone-mode patterns
935
- + t7519: rewrite sparse index test
936
- + Merge branch 'ds/add-with-sparse-index' into ds/sparse-index-ignored-files
937
- (this branch is used by ds/add-rm-with-sparse-index, ds/mergies-with-sparse-index and sg/test-split-index-fix.)
938
-
939
- In cone mode, the sparse-index codepath learned to remove ignored
940
- files (like build artifacts) outside the sparse cone, allowing the
941
- entire directory outside the sparse cone to be removed, which is
942
- especially useful when the sparse patterns change.
943
-
944
- Will merge to 'master'.
945
-
946
-
947
-* jt/grep-wo-submodule-odb-as-alternate (2021-09-08) 8 commits
948
- (merged to 'next' on 2021-09-08 at 67612d0b7f)
949
- + t7814: show lack of alternate ODB-adding
950
- + submodule-config: pass repo upon blob config read
951
- + grep: add repository to OID grep sources
952
- + grep: allocate subrepos on heap
953
- + grep: read submodule entry with explicit repo
954
- + grep: typesafe versions of grep_source_init
955
- + grep: use submodule-ODB-as-alternate lazy-addition
956
- + submodule: lazily add submodule ODBs as alternates
957
- (this branch is used by jt/add-submodule-odb-clean-up.)
958
-
959
- The code to make "git grep" recurse into submodules has been
960
- updated to migrate away from the "add submodule's object store as
961
- an alternate object store" mechanism (which is suboptimal).
962
-
963
- Will merge to 'master'.
964
-
965
-
966
-* ar/submodule-add-more (2021-08-10) 10 commits
967
- (merged to 'next' on 2021-09-12 at efebf6dad3)
968
- + submodule--helper: rename compute_submodule_clone_url()
969
- + submodule--helper: remove resolve-relative-url subcommand
970
- + submodule--helper: remove add-config subcommand
971
- + submodule--helper: remove add-clone subcommand
972
- + submodule--helper: convert the bulk of cmd_add() to C
973
- + dir: libify and export helper functions from clone.c
974
- + submodule--helper: remove repeated code in sync_submodule()
975
- + submodule--helper: refactor resolve_relative_url() helper
976
- + submodule--helper: add options for compute_submodule_clone_url()
977
- + Merge branch 'ar/submodule-add-config' into ar/submodule-add
978
- (this branch uses ar/submodule-add-config.)
979
-
980
- More parts of "git submodule add" has been rewritten in C.
981
-
982
- Will merge to 'master'.
983
-
984
-
1090
* ab/lib-subtest (2021-08-05) 11 commits
1091
- test-lib tests: assert 1 exit code, not non-zero
1092
- test-lib tests: refactor common part of check_sub_test_lib_test*()
@@ -1014,40 +1119,6 @@ Release tarballs are available at:
1119
cf. <20210901050406.GB76263@szeder.dev>
1120
1121
1017
-* ab/progress-users-adjust-counters (2021-09-09) 2 commits
1018
- (merged to 'next' on 2021-09-10 at b50c37aa44)
1019
- + entry: show finer-grained counter in "Filtering content" progress line
1020
- + commit-graph: fix bogus counter in "Scanning merged commits" progress line
1021
-
1022
- The code to show progress indicator in a few codepaths did not
1023
- cover between 0-100%, which has been corrected.
1024
-
1025
- Will merge to 'master'.
1026
-
1027
-
1028
-* ar/submodule-add-config (2021-08-10) 1 commit
1029
- (merged to 'next' on 2021-09-12 at fdabb4f0fc)
1030
- + submodule--helper: introduce add-config subcommand
1031
- (this branch is used by ar/submodule-add-more.)
1032
-
1033
- Large part of "git submodule add" gets rewritten in C.
1034
-
1035
- Will merge to 'master'.
1036
-
1037
-
1038
-* dt/submodule-diff-fixes (2021-08-31) 3 commits
1039
- (merged to 'next' on 2021-09-10 at 21b773f4fe)
1040
- + diff --submodule=diff: don't print failure message twice
1041
- + diff --submodule=diff: do not fail on ever-initialied deleted submodules
1042
- + t4060: remove unused variable
1043
-
1044
- "git diff --submodule=diff" showed failure from run_command() when
1045
- trying to run diff inside a submodule, when the user manually
1046
- removes the submodule directory.
1047
-
1048
- Will merge to 'master'.
1049
-
1050
-
1122
* fs/ssh-signing (2021-09-10) 9 commits
1123
- ssh signing: test that gpg fails for unknown keys
1124
- ssh signing: tests for logs, tags & push certs
@@ -1076,60 +1147,6 @@ Release tarballs are available at:
1147
cf. <xmqqsg0ri5mq.fsf@gitster.g>
1148
1149
1079
-* ab/make-tags-cleanup (2021-08-05) 5 commits
1080
- (merged to 'next' on 2021-09-12 at 79584f3c60)
1081
- + Makefile: normalize clobbering & xargs for tags targets
1082
- + Makefile: remove "cscope.out", not "cscope*" in cscope.out target
1083
- + Makefile: don't use "FORCE" for tags targets
1084
- + Makefile: add QUIET_GEN to "cscope" target
1085
- + Makefile: move ".PHONY: cscope" near its target
1086
-
1087
- Build clean-up for "make tags" and friends.
1088
-
1089
- Will merge to 'master'.
1090
-
1091
-
1092
-* tb/multi-pack-bitmaps (2021-09-09) 29 commits
1093
- (merged to 'next' on 2021-09-10 at 71559ef435)
1094
- + pack-bitmap: drop bitmap_index argument from try_partial_reuse()
1095
- + pack-bitmap: drop repository argument from prepare_midx_bitmap_git()
1096
- (merged to 'next' on 2021-09-08 at f2b7415bd8)
1097
- + p5326: perf tests for MIDX bitmaps
1098
- + p5310: extract full and partial bitmap tests
1099
- + midx: respect 'GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP'
1100
- + t7700: update to work with MIDX bitmap test knob
1101
- + t5319: don't write MIDX bitmaps in t5319
1102
- + t5310: disable GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP
1103
- + t0410: disable GIT_TEST_MULTI_PACK_INDEX_WRITE_BITMAP
1104
- + t5326: test multi-pack bitmap behavior
1105
- + t/helper/test-read-midx.c: add --checksum mode
1106
- + t5310: move some tests to lib-bitmap.sh
1107
- + pack-bitmap: write multi-pack bitmaps
1108
- + pack-bitmap: read multi-pack bitmaps
1109
- + pack-bitmap.c: avoid redundant calls to try_partial_reuse
1110
- + pack-bitmap.c: introduce 'bitmap_is_preferred_refname()'
1111
- + pack-bitmap.c: introduce 'nth_bitmap_object_oid()'
1112
- + pack-bitmap.c: introduce 'bitmap_num_objects()'
1113
- + midx: avoid opening multiple MIDXs when writing
1114
- + midx: close linked MIDXs, avoid leaking memory
1115
- + midx: infer preferred pack when not given one
1116
- + midx: reject empty `--preferred-pack`'s
1117
- + midx: clear auxiliary .rev after replacing the MIDX
1118
- + midx: fix `*.rev` cleanups with `--object-dir`
1119
- + midx: disallow running outside of a repository
1120
- + Documentation: describe MIDX-based bitmaps
1121
- + pack-bitmap-write.c: free existing bitmaps
1122
- + pack-bitmap-write.c: gracefully fail to write non-closed bitmaps
1123
- + pack-bitmap.c: harden 'test_bitmap_walk()' to check type bitmaps
1124
- (this branch is used by tb/midx-write-propagate-namehash and tb/repack-write-midx.)
1125
-
1126
- The reachability bitmap file used to be generated only for a single
1127
- pack, but now we've learned to generate bitmaps for history that
1128
- span across multiple packfiles.
1129
-
1130
- Will merge to 'master'.
1131
-
1132
-
1150
* ab/config-based-hooks-base (2021-09-09) 36 commits
1151
- hooks: fix a TOCTOU in "did we run a hook?" heuristic
1152
- receive-pack: convert receive hooks to hook.h
@@ -1176,25 +1193,6 @@ Release tarballs are available at:
1193
Waiting for reviews.
1194
1195
1179
-* ab/serve-cleanup (2021-08-05) 10 commits
1180
- (merged to 'next' on 2021-09-12 at ea87ede873)
1181
- + upload-pack: document and rename --advertise-refs
1182
- + serve.[ch]: remove "serve_options", split up --advertise-refs code
1183
- + {upload,receive}-pack tests: add --advertise-refs tests
1184
- + serve.c: move version line to advertise_capabilities()
1185
- + serve: move transfer.advertiseSID check into session_id_advertise()
1186
- + serve.[ch]: don't pass "struct strvec *keys" to commands
1187
- + serve: use designated initializers
1188
- + transport: use designated initializers
1189
- + transport: rename "fetch" in transport_vtable to "fetch_refs"
1190
- + serve: mark has_capability() as static
1191
- (this branch is used by jk/reduce-malloc-in-v2-servers.)
1192
-
1193
- Code clean-up around "git serve".
1194
-
1195
- Will merge to 'master'.
1196
-
1197
-
1196
* pw/diff-color-moved-fix (2021-08-05) 13 commits
1197
- diff: drop unused options parameter from cmp_in_block_with_wsd()
1198
- diff --color-moved: intern strings