What's cooking (2021/09 #02)
Junio C Hamano committed
Sep 8, 2021 at 08:34 UTC
ba15317769e1c10287e31d6acfaad3134d407946
1 file changed
+439
-269
whats-cooking.txt
+439
-269
@@ -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, #01; Thu, 2)
4
-X-master-at: 6c40894d2466d4e7fddc047a05116aa9d14712ee
5
-X-next-at: 3052b894382a0debd2b7c8345f86f70277b76a3e
3
+Subject: What's cooking in git.git (Sep 2021, #02; Wed, 8)
4
+X-master-at: e0a2f5cbc585657e757385ad918f167f519cfb96
5
+X-next-at: be952f7c3b737964aa95523b0a01473c6e35c5c9
6
7
-What's cooking in git.git (Sep 2021, #01; Thu, 2)
7
+What's cooking in git.git (Sep 2021, #02; Wed, 8)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking in my tree. Commits
@@ -46,69 +46,303 @@ Release tarballs are available at:
46
47
https://www.kernel.org/pub/software/scm/git/
48
49
+--------------------------------------------------
50
+[Graduated to 'master']
51
+
52
+* ab/santize-leak-ci (2021-09-07) 3 commits
53
+ - tests: add a test mode for SANITIZE=leak, run it in CI
54
+ - CI: refactor "if" to "case" statement
55
+ - Makefile: add SANITIZE=leak flag to GIT-BUILD-OPTIONS
56
+
57
+ CI learns to run the leak sanitizer builds.
58
+
59
+ Will merge to 'next'?
60
+
61
+
62
+* cb/ci-use-upload-artifacts-v1 (2021-08-15) 1 commit
63
+ (merged to 'next' on 2021-08-24 at afdbb7ee8d)
64
+ + ci: use upload-artifacts v1 for dockerized jobs
65
+
66
+ Use upload-artifacts v1 (instead of v2) for 32-bit linux, as the
67
+ new version has a blocker bug for that architecture.
68
+
69
+
70
+* fc/completion-updates (2021-08-18) 4 commits
71
+ (merged to 'next' on 2021-08-24 at 593cd75c64)
72
+ + completion: bash: add correct suffix in variables
73
+ + completion: bash: fix for multiple dash commands
74
+ + completion: bash: fix for suboptions with value
75
+ + completion: bash: fix prefix detection in branch.*
76
+
77
+ Command line completion updates.
78
+
79
+
80
+* jk/commit-edit-fixup-fix (2021-08-15) 1 commit
81
+ (merged to 'next' on 2021-08-24 at 0c625438c3)
82
+ + commit: restore --edit when combined with --fixup
83
+
84
+ "git commit --fixup" now works with "--edit" again, after it was
85
+ broken in v2.32.
86
+
87
+
88
+* ps/connectivity-optim (2021-08-09) 5 commits
89
+ (merged to 'next' on 2021-08-24 at 94a7a04ca4)
90
+ + revision: avoid hitting packfiles when commits are in commit-graph
91
+ + commit-graph: split out function to search commit position
92
+ + revision: stop retrieving reference twice
93
+ + connected: do not sort input revisions
94
+ + revision: separate walk and unsorted flags
95
+
96
+ The revision traversal API has been optimized by taking advantage
97
+ of the commit-graph, when available, to determine if a commit is
98
+ reachable from any of the existing refs.
99
+
100
+
101
+* pw/rebase-r-fixes (2021-08-23) 4 commits
102
+ (merged to 'next' on 2021-08-24 at 81c6aff70a)
103
+ + rebase -r: fix merge -c with a merge strategy
104
+ + rebase -r: don't write .git/MERGE_MSG when fast-forwarding
105
+ + rebase -i: add another reword test
106
+ + rebase -r: make 'merge -c' behave like reword
107
+
108
+ Various bugs in "git rebase -r" have been fixed.
109
+
110
+
111
+* pw/rebase-skip-final-fix (2021-08-13) 3 commits
112
+ (merged to 'next' on 2021-08-24 at 73ec41e9dd)
113
+ + rebase --continue: remove .git/MERGE_MSG
114
+ + rebase --apply: restore some tests
115
+ + t3403: fix commit authorship
116
+
117
+ Checking out all the paths from HEAD during the last conflicted
118
+ step in "git rebase" and continuing would cause the step to be
119
+ skipped (which is expected), but leaves MERGE_MSG file behind in
120
+ $GIT_DIR and confuses the next "git commit", which has been
121
+ corrected.
122
+
123
+
124
+* sg/make-fix-ar-invocation (2021-08-19) 1 commit
125
+ (merged to 'next' on 2021-08-24 at 9a3df9ec56)
126
+ + Makefile: remove archives before manipulating them with 'ar'
127
+
128
+ Build fix.
129
+
130
+
131
+* ti/tcsh-completion-regression-fix (2021-08-18) 1 commit
132
+ (merged to 'next' on 2021-08-24 at 8fa66cf037)
133
+ + completion: tcsh: Fix regression by drop of wrapper functions
134
+
135
+ Update to the command line completion (in contrib/) for tcsh.
136
+
137
--------------------------------------------------
138
[New Topics]
139
52
-* ms/customizable-ident-expansion (2021-09-01) 1 commit
53
- - keyword expansion: make "$Id$" string configurable
140
+* bs/install-strip (2021-09-05) 1 commit
141
+ - make: add INSTALL_STRIP option variable
142
55
- Instead of "$Id$", user-specified string (like $FreeBSD$) can be
56
- used as an in-blob placeholder for keyword expansion.
143
+ "make INSTALL_STRIP=-s install" allows the installation step to use
144
+ "install -s" to strip the binaries as they get installed.
145
146
+ Will merge to 'next'.
147
59
-* pb/test-use-user-env (2021-09-01) 3 commits
60
- - test-lib-functions: optionally keep HOME and TERM in 'debug'
61
- - test-lib-functions: optionally keep HOME, TERM and SHELL in 'test_pause'
62
- - test-lib-functions: use 'TEST_SHELL_PATH' in 'test_pause'
148
64
- Teach test_pause and test_debug to allow using the HOME and TERM
65
- environment variables the user usually uses.
149
+* cb/pedantic-build-for-developers (2021-09-03) 3 commits
150
+ - developer: enable pedantic by default
151
+ - win32: allow building with pedantic mode enabled
152
+ - gettext: remove optional non-standard parens in N_() definition
153
+
154
+ Update the build procedure to use the "-pedantic" build when
155
+ DEVELOPER makefile macro is in effect.
156
157
Will merge to 'next'?
158
159
70
-* js/retire-preserve-merges (2021-09-01) 7 commits
71
- - tests: stop testing `git rebase --preserve-merges`
72
- - remote: warn about unhandled branch.<name>.rebase values
73
- - t5520: do not use `pull.rebase=preserve`
74
- - rebase: drop the internal `rebase--interactive` command
75
- - git-svn: drop support for `--preserve-merges`
76
- - rebase: drop support for `--preserve-merges`
77
- - pull: remove support for `--rebase=preserve`
160
+* js/scalar (2021-09-03) 15 commits
161
+ - scalar: accept -C and -c options before the subcommand
162
+ - scalar: implement the `version` command
163
+ - scalar: implement the `delete` command
164
+ - scalar: teach 'reconfigure' to optionally handle all registered enlistments
165
+ - scalar: allow reconfiguring an existing enlistment
166
+ - scalar: implement the `run` command
167
+ - scalar: teach 'clone' to support the --single-branch option
168
+ - scalar: implement the `clone` subcommand
169
+ - scalar: implement 'scalar list'
170
+ - scalar: let 'unregister' handle a deleted enlistment directory gracefully
171
+ - scalar: 'unregister' stops background maintenance
172
+ - scalar: 'register' sets recommended config and starts maintenance
173
+ - scalar: create test infrastructure
174
+ - scalar: start documenting the command
175
+ - scalar: create a rudimentary executable
176
79
- The "--preserve-merges" option of "git rebase" has been removed.
177
+ Add pieces from "scalar" to contrib/.
178
+
179
+
180
+* ps/update-ref-batch-flush (2021-09-03) 1 commit
181
+ - update-ref: fix streaming of status updates
182
+
183
+ "git update-ref --stdin" failed to flush its output as needed,
184
+ which potentially led the conversation to a deadlock.
185
186
Will merge to 'next'?
187
188
84
-* cb/remote-ndebug-fix (2021-09-02) 1 commit
85
- - remote: avoid -Wunused-but-set-variable in gcc with -DNDEBUG
189
+* ab/no-more-check-bindir (2021-09-07) 1 commit
190
+ - Makefile: remove the check_bindir script
191
87
- Build fix.
192
+ Build simplification.
193
194
Will merge to 'next'.
195
196
92
-* mr/bisect-in-c-4 (2021-09-02) 6 commits
93
- - bisect--helper: retire `--bisect-next-check` subcommand
94
- - bisect--helper: reimplement `bisect_run` shell
95
- - bisect--helper: reimplement `bisect_visualize()`shell function in C
96
- - run-command: make `exists_in_PATH()` non-static
97
- - t6030-bisect-porcelain: add test for bisect visualize
98
- - t6030-bisect-porcelain: add tests to control bisect run exit cases
197
+* ab/send-email-config-fix (2021-09-07) 1 commit
198
+ - send-email: fix a "first config key wins" regression in v2.33.0
199
100
- Rewrite of "git bisect" in C continues.
200
+ Regression fix.
201
+
202
+ Will merge to 'next' and then to 'master'.
203
+
204
+
205
+* ab/tr2-leaks-and-fixes (2021-09-07) 6 commits
206
+ - tr2: log N parent process names on Linux
207
+ - tr2: do compiler enum check in trace2_collect_process_info()
208
+ - tr2: leave the parent list empty upon failure & don't leak memory
209
+ - tr2: stop leaking "thread_name" memory
210
+ - tr2: clarify TRACE2_PROCESS_INFO_EXIT comment under Linux
211
+ - tr2: remove NEEDSWORK comment for "non-procfs" implementations
212
+
213
+ The tracing of process ancestry information has been enhanced.
214
+
215
+ Will merge to 'next'.
216
+
217
+
218
+* bs/doc-bugreport-outdir (2021-09-07) 1 commit
219
+ - Documentation: fix default directory of git bugreport -o
220
+
221
+ Docfix.
222
+
223
+ Will merge to 'next'.
224
+
225
+
226
+* jc/prefix-filename-allocates (2021-09-07) 1 commit
227
+ - hash-object: prefix_filename() returns allocated memory these days
228
+
229
+ Leakfix.
230
+
231
+ Will merge to 'next'?
232
+
233
+
234
+* kr/doc-webserver-config-for-v2 (2021-09-07) 1 commit
235
+ - Docs: web server must setenv GIT_PROTOCOL for v2
236
+
237
+ Hints to set GIT_PROTOCOL environment in various CGI environments
238
+ are added to the documentation.
239
+
240
+ Will merge to 'next'?
241
+
242
+
243
+* rs/range-diff-avoid-segfault-with-I (2021-09-07) 1 commit
244
+ - range-diff: avoid segfault with -I
245
+
246
+ "git range-diff -I... <range> <range>" segfaulted, which has been
247
+ corrected.
248
+
249
+ Will merge to 'next'?
250
+
251
+
252
+* so/diff-index-regression-fix (2021-09-07) 1 commit
253
+ - diff-index: restore -c/--cc options handling
254
+
255
+ Recent "diff -m" changes broke "gitk", which has been corrected.
256
+
257
+ Will merge to 'next' and then to 'master'.
258
+
259
+
260
+* tb/pack-finalize-ordering (2021-09-07) 2 commits
261
+ - builtin/repack.c: move `.idx` files into place last
262
+ - pack-write.c: rename `.idx` file into place last
263
+
264
+ The order in which various files that make up a single (conceptual)
265
+ packfile has been reevaluated and straightened up. This matters in
266
+ correctness, as an incomplete set of files must not be shown to a
267
+ running Git.
268
+
269
+ Will merge to 'next'?
270
+
271
+
272
+* ab/reverse-midx-optim (2021-09-07) 1 commit
273
+ - pack-write: skip *.rev work when not writing *.rev
274
+
275
+
276
+* ab/sanitize-leak-ci (2021-09-07) 3 commits
277
+ - tests: add a test mode for SANITIZE=leak, run it in CI
278
+ - CI: refactor "if" to "case" statement
279
+ - Makefile: add SANITIZE=leak flag to GIT-BUILD-OPTIONS
280
281
--------------------------------------------------
282
[Stalled]
283
105
-* gh/gitweb-branch-sort (2021-06-10) 1 commit
106
- - gitweb: use HEAD as secondary sort key in git_get_heads_list()
284
+* es/config-based-hooks (2021-08-19) 7 commits
285
+ - hook: allow out-of-repo 'git hook' invocations
286
+ - hook: include hooks from the config
287
+ - hook: allow running non-native hooks
288
+ - hook: introduce "git hook list"
289
+ - hook: allow parallel hook execution
290
+ - hook: run a list of hooks instead
291
+ - Merge branch 'ab/config-based-hooks-base' into es/config-based-hooks
292
+ (this branch uses ab/config-based-hooks-base.)
293
108
- Tie-break branches that point at the same object in the list of
109
- branches on GitWeb to show the one pointed at by HEAD early.
294
+ Revamp the hooks subsystem to allow multiple of them to trigger
295
+ upon the same event and control via the configuration variables.
296
111
- Waiting for reviews.
297
+ Expecting a reroll
298
+ but ab/config-based-hooks-base needs to be in a better shape first.
299
+ cf. <87v93wflm0.fsf@evledraar.gmail.com>
300
+ cf. <87tuj7xhqo.fsf@evledraar.gmail.com>
301
+
302
+
303
+* jh/builtin-fsmonitor (2021-09-03) 37 commits
304
+ - fixup! fsmonitor--daemon: implement handle_client callback
305
+ - SQUASH??? https://github.com/git/git/runs/3438543601?check_suite_focus=true#step:5:136
306
+ - BANDAID: sparse fixes
307
+ - t7527: test FS event reporing on MacOS WRT case and Unicode
308
+ - fsmonitor: handle shortname for .git
309
+ - t7527: test status with untracked-cache and fsmonitor--daemon
310
+ - fsmonitor: force update index after large responses
311
+ - fsmonitor: enhance existing comments
312
+ - fsmonitor--daemon: use a cookie file to sync with file system
313
+ - fsmonitor--daemon: periodically truncate list of modified files
314
+ - t7527: create test for fsmonitor--daemon
315
+ - t/perf/p7519: add fsmonitor--daemon test cases
316
+ - t/perf: avoid copying builtin fsmonitor files into test repo
317
+ - t/perf/p7519: speed up test using "test-tool touch"
318
+ - t/helper/test-touch: add helper to touch a series of files
319
+ - fsmonitor--daemon: implement handle_client callback
320
+ - fsmonitor-fs-listen-macos: implement FSEvent listener on MacOS
321
+ - fsmonitor-fs-listen-macos: add macos header files for FSEvent
322
+ - fsmonitor-fs-listen-win32: implement FSMonitor backend on Windows
323
+ - fsmonitor--daemon: create token-based changed path cache
324
+ - fsmonitor--daemon: define token-ids
325
+ - fsmonitor--daemon: add pathname classification
326
+ - fsmonitor: do not try to operate on bare repos
327
+ - fsmonitor--daemon: implement 'start' command
328
+ - fsmonitor--daemon: implement 'run' command
329
+ - fsmonitor-fs-listen-macos: stub in backend for MacOS
330
+ - fsmonitor-fs-listen-win32: stub in backend for Windows
331
+ - t/helper/fsmonitor-client: create IPC client to talk to FSMonitor Daemon
332
+ - fsmonitor--daemon: implement 'stop' and 'status' commands
333
+ - fsmonitor--daemon: add a built-in fsmonitor daemon
334
+ - fsmonitor: use IPC to query the builtin FSMonitor daemon
335
+ - fsmonitor: config settings are repository-specific
336
+ - help: include fsmonitor--daemon feature flag in version info
337
+ - fsmonitor-ipc: create client routines for git-fsmonitor--daemon
338
+ - fsmonitor--daemon: update fsmonitor documentation
339
+ - fsmonitor--daemon: man page
340
+ - simple-ipc: preparations for supporting binary messages.
341
+
342
+ An attempt to write and ship with a watchman equivalent tailored
343
+ for our use.
344
+
345
+ Expecting a reroll post 2.33 release.
346
347
348
* es/superproject-aware-submodules (2021-08-19) 5 commits
@@ -155,11 +389,12 @@ Release tarballs are available at:
389
Waiting for reviews.
390
391
158
-* ab/fsck-unexpected-type (2021-07-12) 21 commits
392
+* ab/fsck-unexpected-type (2021-09-07) 22 commits
393
- fsck: report invalid object type-path combinations
394
- fsck: report invalid types recorded in objects
395
- object-store.h: move read_loose_object() below 'struct object_info'
396
- fsck: don't hard die on invalid object types
397
+ - object-file.c: use "enum" return type for unpack_loose_header()
398
- object-file.c: return -2 on "header too long" in unpack_loose_header()
399
- object-file.c: return -1, not "status" from unpack_loose_header()
400
- object-file.c: guard against future bugs in loose_object_info()
@@ -186,6 +421,81 @@ Release tarballs are available at:
421
--------------------------------------------------
422
[Cooking]
423
424
+* jc/trivial-threeway-binary-merge (2021-09-05) 1 commit
425
+ - apply: resolve trivial merge without hitting ll-merge with "--3way"
426
+
427
+ The "git apply -3" code path learned not to bother the lower level
428
+ merge machinery when the three-way merge can be trivially resolved
429
+ without the content level merge.
430
+
431
+ Will merge to 'next'.
432
+
433
+
434
+* gh/gitweb-branch-sort (2021-06-10) 1 commit
435
+ - gitweb: use HEAD as secondary sort key in git_get_heads_list()
436
+
437
+ Tie-break branches that point at the same object in the list of
438
+ branches on GitWeb to show the one pointed at by HEAD early.
439
+
440
+ Will merge to 'next'.
441
+
442
+
443
+* ms/customizable-ident-expansion (2021-09-01) 1 commit
444
+ - keyword expansion: make "$Id$" string configurable
445
+
446
+ Instead of "$Id$", user-specified string (like $FreeBSD$) can be
447
+ used as an in-blob placeholder for keyword expansion.
448
+
449
+
450
+* pb/test-use-user-env (2021-09-07) 3 commits
451
+ - test-lib-functions: keep user's debugger config files and TERM in 'debug'
452
+ - test-lib-functions: optionally keep HOME, TERM and SHELL in 'test_pause'
453
+ - test-lib-functions: use 'TEST_SHELL_PATH' in 'test_pause'
454
+
455
+ Teach test_pause and test_debug to allow using the HOME and TERM
456
+ environment variables the user usually uses.
457
+
458
+ Will merge to 'next'?
459
+
460
+
461
+* js/retire-preserve-merges (2021-09-07) 11 commits
462
+ - sequencer: restrict scope of a formerly public function
463
+ - rebase: remove a no-longer-used function
464
+ - rebase: stop mentioning the -p option in comments
465
+ - rebase: remove obsolete code comment
466
+ - rebase: drop the internal `rebase--interactive` command
467
+ - git-svn: drop support for `--preserve-merges`
468
+ - rebase: drop support for `--preserve-merges`
469
+ - pull: remove support for `--rebase=preserve`
470
+ - tests: stop testing `git rebase --preserve-merges`
471
+ - remote: warn about unhandled branch.<name>.rebase values
472
+ - t5520: do not use `pull.rebase=preserve`
473
+
474
+ The "--preserve-merges" option of "git rebase" has been removed.
475
+
476
+ Will merge to 'next'?
477
+
478
+
479
+* cb/remote-ndebug-fix (2021-09-02) 1 commit
480
+ (merged to 'next' on 2021-09-03 at a47f44ca9d)
481
+ + remote: avoid -Wunused-but-set-variable in gcc with -DNDEBUG
482
+
483
+ Build fix.
484
+
485
+ Will merge to 'master'.
486
+
487
+
488
+* mr/bisect-in-c-4 (2021-09-02) 6 commits
489
+ - bisect--helper: retire `--bisect-next-check` subcommand
490
+ - bisect--helper: reimplement `bisect_run` shell
491
+ - bisect--helper: reimplement `bisect_visualize()`shell function in C
492
+ - run-command: make `exists_in_PATH()` non-static
493
+ - t6030-bisect-porcelain: add test for bisect visualize
494
+ - t6030-bisect-porcelain: add tests to control bisect run exit cases
495
+
496
+ Rewrite of "git bisect" in C continues.
497
+
498
+
499
* tb/add-objects-in-unpacked-packs-simplify (2021-08-29) 3 commits
500
(merged to 'next' on 2021-09-01 at 66b0f8564d)
501
+ builtin/pack-objects.c: remove duplicate hash lookup
@@ -217,14 +527,15 @@ Release tarballs are available at:
527
528
529
* mh/send-email-reset-in-reply-to (2021-08-30) 1 commit
220
- - send-email: avoid incorrect header propagation
530
+ (merged to 'next' on 2021-09-03 at 3a60892d9a)
531
+ + send-email: avoid incorrect header propagation
532
533
Even when running "git send-email" without its own threaded
534
discussion support, a threading related header in one message is
535
carried over to the subsequent message to result in an unwanted
536
threading, which has been corrected.
537
227
- Will merge to 'next'.
538
+ Will merge to 'master'.
539
540
541
* rs/more-fspathcmp (2021-08-30) 1 commit
@@ -248,27 +559,30 @@ Release tarballs are available at:
559
560
561
* ab/gc-log-rephrase (2021-09-02) 1 commit
251
- - gc: remove trailing dot from "gc.log" line
562
+ (merged to 'next' on 2021-09-03 at 24c51e3df1)
563
+ + gc: remove trailing dot from "gc.log" line
564
565
A pathname in an advice message has been made cut-and-paste ready.
566
255
- Will merge to 'next'.
567
+ Will merge to 'master'.
568
569
570
* ab/mailmap-leakfix (2021-08-31) 1 commit
259
- - mailmap.c: fix a memory leak in free_mailap_{info,entry}()
571
+ (merged to 'next' on 2021-09-03 at 348fe07b87)
572
+ + mailmap.c: fix a memory leak in free_mailap_{info,entry}()
573
574
Leakfix.
575
263
- Will merge to 'next'.
576
+ Will merge to 'master'.
577
578
579
* ba/object-info (2021-08-31) 1 commit
267
- - protocol-caps.c: fix memory leak in send_info()
580
+ (merged to 'next' on 2021-09-03 at 6d47f59ab4)
581
+ + protocol-caps.c: fix memory leak in send_info()
582
583
Leakfix.
584
271
- Will merge to 'next'.
585
+ Will merge to 'master'.
586
587
588
* en/remerge-diff (2021-08-31) 7 commits
@@ -285,7 +599,7 @@ Release tarballs are available at:
599
conflicted) merge results and the recorded resolution.
600
601
288
-* sg/test-split-index-fix (2021-08-31) 7 commits
602
+* sg/test-split-index-fix (2021-09-07) 7 commits
603
- read-cache: fix GIT_TEST_SPLIT_INDEX
604
- tests: disable GIT_TEST_SPLIT_INDEX for sparse index tests
605
- read-cache: look for shared index files next to the index, too
@@ -299,34 +613,37 @@ Release tarballs are available at:
613
614
615
* tk/fast-export-anonymized-tag-fix (2021-08-31) 1 commit
302
- - fast-export: fix anonymized tag using original length
616
+ (merged to 'next' on 2021-09-03 at 15ce1ab44f)
617
+ + fast-export: fix anonymized tag using original length
618
619
The output from "git fast-export", when its anonymization feature
620
is in use, showed an annotated tag incorrectly.
621
307
- Will merge to 'next'.
622
+ Will merge to 'master'.
623
624
625
* uk/userdiff-php-enum (2021-08-31) 1 commit
311
- - userdiff: support enum keyword in PHP hunk header
626
+ (merged to 'next' on 2021-09-03 at 5c9eb654fe)
627
+ + userdiff: support enum keyword in PHP hunk header
628
629
Update the userdiff pattern for PHP.
630
315
- Will merge to 'next'.
631
+ Will merge to 'master'.
632
633
634
* ab/commit-graph-usage (2021-08-30) 7 commits
319
- - commit-graph: show "unexpected subcommand" error
320
- - commit-graph: show usage on "commit-graph [write|verify] garbage"
321
- - commit-graph: early exit to "usage" on !argc
322
- - multi-pack-index: refactor "goto usage" pattern
323
- - commit-graph: use parse_options_concat()
324
- - commit-graph: remove redundant handling of -h
325
- - commit-graph: define common usage with a macro
635
+ (merged to 'next' on 2021-09-03 at 2254ea1e58)
636
+ + commit-graph: show "unexpected subcommand" error
637
+ + commit-graph: show usage on "commit-graph [write|verify] garbage"
638
+ + commit-graph: early exit to "usage" on !argc
639
+ + multi-pack-index: refactor "goto usage" pattern
640
+ + commit-graph: use parse_options_concat()
641
+ + commit-graph: remove redundant handling of -h
642
+ + commit-graph: define common usage with a macro
643
644
Fixes on usage message from "git commit-graph".
645
329
- Will merge to 'next'.
646
+ Will merge to 'master'.
647
648
649
* ab/ls-remote-packet-trace (2021-08-24) 1 commit
@@ -352,21 +669,22 @@ Release tarballs are available at:
669
- refs: explicitly return failure_errno from parse_loose_ref_contents
670
- branch tests: test for errno propagating on failing read
671
- refs: add failure_errno to refs_read_raw_ref() signature
355
- (this branch is used by hn/reftable; uses ab/refs-files-cleanup and hn/refs-errno-cleanup.)
672
+ (this branch uses ab/refs-files-cleanup and hn/refs-errno-cleanup.)
673
674
The "remainder" of hn/refs-errno-cleanup topic.
675
676
677
* ab/retire-advice-config (2021-08-25) 4 commits
361
- - advice: move advice.graftFileDeprecated squashing to commit.[ch]
362
- - advice: remove use of global advice_add_embedded_repo
363
- - advice: remove read uses of most global `advice_` variables
364
- - advice: add enum variants for missing advice variables
678
+ (merged to 'next' on 2021-09-03 at 0045df3dbb)
679
+ + advice: move advice.graftFileDeprecated squashing to commit.[ch]
680
+ + advice: remove use of global advice_add_embedded_repo
681
+ + advice: remove read uses of most global `advice_` variables
682
+ + advice: add enum variants for missing advice variables
683
684
Code clean up to migrate callers from older advice_config[] based
685
API to newer advice_if_enabled() and advice_enabled() API.
686
369
- Will merge to 'next'.
687
+ Will merge to 'master'.
688
689
690
* dd/diff-files-unmerged-fix (2021-08-25) 1 commit
@@ -527,33 +845,43 @@ Release tarballs are available at:
845
Will merge to 'master'.
846
847
530
-* ab/unbundle-progress (2021-08-27) 5 commits
848
+* ab/unbundle-progress (2021-09-07) 4 commits
849
- bundle: show progress on "unbundle"
850
- index-pack: add --progress-title option
851
- bundle API: change "flags" to be "extra_index_pack_args"
534
- - strvec: add a strvec_pushvec()
852
- bundle API: start writing API documentation
853
854
Add progress display to "git bundle unbundle".
855
539
- Expecting a reroll.
540
- cf. <87tuj7xhqo.fsf@evledraar.gmail.com>
856
+ Will merge to 'next'?
857
858
859
* jk/log-warn-on-bogus-encoding (2021-08-27) 2 commits
860
- docs: use "character encoding" to refer to commit-object encoding
861
- logmsg_reencode(): warn when iconv() fails
862
863
+ Doc update plus improved error reporting.
864
+
865
+ Will merge to 'next'.
866
+
867
868
* rs/archive-use-object-id (2021-08-27) 1 commit
869
- archive: convert queue_directory to struct object_id
870
871
+ Code cleanup.
872
+
873
+ Will merge to 'next'.
874
+
875
876
* rs/show-branch-simplify (2021-08-27) 1 commit
877
- show-branch: simplify rev_is_head()
878
879
+ Code cleanup.
880
+
881
+ Will merge to 'next'.
882
+
883
556
-* lh/systemd-timers (2021-08-27) 3 commits
884
+* lh/systemd-timers (2021-09-07) 3 commits
885
- maintenance: add support for systemd timers on Linux
886
- maintenance: `git maintenance run` learned `--scheduler=<scheduler>`
887
- cache.h: Introduce a generic "xdg_config_home_for(…)" function
@@ -561,6 +889,8 @@ Release tarballs are available at:
889
"git maintenance" scheduler learned to use systemd timers as a
890
possible backend.
891
892
+ Will merge to 'next'.
893
+
894
895
* ps/fetch-optim (2021-09-01) 7 commits
896
- fetch: avoid second connectivity check if we already have all objects
@@ -574,35 +904,7 @@ Release tarballs are available at:
904
Optimize code that handles large number of refs in the "git fetch"
905
code path.
906
577
-
578
-* sg/make-fix-ar-invocation (2021-08-19) 1 commit
579
- (merged to 'next' on 2021-08-24 at 9a3df9ec56)
580
- + Makefile: remove archives before manipulating them with 'ar'
581
-
582
- Build fix.
583
-
584
- Will merge to 'master'.
585
-
586
-
587
-* ti/tcsh-completion-regression-fix (2021-08-18) 1 commit
588
- (merged to 'next' on 2021-08-24 at 8fa66cf037)
589
- + completion: tcsh: Fix regression by drop of wrapper functions
590
-
591
- Update to the command line completion (in contrib/) for tcsh.
592
-
593
- Will merge to 'master'.
594
-
595
-
596
-* fc/completion-updates (2021-08-18) 4 commits
597
- (merged to 'next' on 2021-08-24 at 593cd75c64)
598
- + completion: bash: add correct suffix in variables
599
- + completion: bash: fix for multiple dash commands
600
- + completion: bash: fix for suboptions with value
601
- + completion: bash: fix prefix detection in branch.*
602
-
603
- Command line completion updates.
604
-
605
- Will merge to 'master'.
907
+ Will merge to 'next'.
908
909
910
* ar/submodule-run-update-procedure (2021-08-24) 1 commit
@@ -610,30 +912,7 @@ Release tarballs are available at:
912
913
Reimplementation of parts of "git submodule" in C continues.
914
613
-
614
-* cb/ci-use-upload-artifacts-v1 (2021-08-15) 1 commit
615
- (merged to 'next' on 2021-08-24 at afdbb7ee8d)
616
- + ci: use upload-artifacts v1 for dockerized jobs
617
-
618
- Use upload-artifacts v1 (instead of v2) for 32-bit linux, as the
619
- new version has a blocker bug for that architecture.
620
-
621
- Will merge to 'master'.
622
-
623
-
624
-* pw/rebase-skip-final-fix (2021-08-13) 3 commits
625
- (merged to 'next' on 2021-08-24 at 73ec41e9dd)
626
- + rebase --continue: remove .git/MERGE_MSG
627
- + rebase --apply: restore some tests
628
- + t3403: fix commit authorship
629
-
630
- Checking out all the paths from HEAD during the last conflicted
631
- step in "git rebase" and continuing would cause the step to be
632
- skipped (which is expected), but leaves MERGE_MSG file behind in
633
- $GIT_DIR and confuses the next "git commit", which has been
634
- corrected.
635
-
636
- Will merge to 'master'.
915
+ Will merge to 'next'.
916
917
918
* ab/help-autocorrect-prompt (2021-08-14) 1 commit
@@ -643,17 +922,7 @@ Release tarballs are available at:
922
interactive when the help.autocorrect configuration variable is set
923
to true.
924
646
-
647
-* pw/rebase-r-fixes (2021-08-23) 4 commits
648
- (merged to 'next' on 2021-08-24 at 81c6aff70a)
649
- + rebase -r: fix merge -c with a merge strategy
650
- + rebase -r: don't write .git/MERGE_MSG when fast-forwarding
651
- + rebase -i: add another reword test
652
- + rebase -r: make 'merge -c' behave like reword
653
-
654
- Various bugs in "git rebase -r" have been fixed.
655
-
656
- Will merge to 'master'.
925
+ Will merge to 'next'.
926
927
928
* zh/cherry-pick-advice (2021-08-23) 1 commit
@@ -667,27 +936,9 @@ Release tarballs are available at:
936
Will merge to 'master'.
937
938
670
-* es/config-based-hooks (2021-08-19) 7 commits
671
- - hook: allow out-of-repo 'git hook' invocations
672
- - hook: include hooks from the config
673
- - hook: allow running non-native hooks
674
- - hook: introduce "git hook list"
675
- - hook: allow parallel hook execution
676
- - hook: run a list of hooks instead
677
- - Merge branch 'ab/config-based-hooks-base' into es/config-based-hooks
678
- (this branch uses ab/config-based-hooks-base.)
679
-
680
- Revamp the hooks subsystem to allow multiple of them to trigger
681
- upon the same event and control via the configuration variables.
682
-
683
- Expecting a reroll
684
- but ab/config-based-hooks-base needs to be in a better shape first.
685
- cf. <87v93wflm0.fsf@evledraar.gmail.com>
686
- cf. <87tuj7xhqo.fsf@evledraar.gmail.com>
687
-
688
-
939
* mk/clone-recurse-submodules (2021-08-30) 1 commit
690
- - clone: set submodule.recurse=true if submodule.stickyRecursiveClone enabled
940
+ (merged to 'next' on 2021-09-03 at 9787178599)
941
+ + clone: set submodule.recurse=true if submodule.stickyRecursiveClone enabled
942
943
After "git clone --recurse-submodules", all submodules are cloned
944
but they are not by default recursed into by other commands. With
@@ -695,16 +946,6 @@ Release tarballs are available at:
946
configuration is set to true in a repository created by "clone"
947
with "--recurse-submodules" option.
948
698
- Will merge to 'next'.
699
-
700
-
701
-* jk/commit-edit-fixup-fix (2021-08-15) 1 commit
702
- (merged to 'next' on 2021-08-24 at 0c625438c3)
703
- + commit: restore --edit when combined with --fixup
704
-
705
- "git commit --fixup" now works with "--edit" again, after it was
706
- broken in v2.32.
707
-
949
Will merge to 'master'.
950
951
@@ -726,16 +967,17 @@ Release tarballs are available at:
967
968
CI update.
969
729
- Expecting a reroll.
970
+ Will merge to 'next'.
971
972
732
-* ds/sparse-index-ignored-files (2021-08-10) 9 commits
973
+* ds/sparse-index-ignored-files (2021-09-07) 10 commits
974
- sparse-checkout: clear tracked sparse dirs
734
- - sparse-index: add SPARSE_INDEX_IGNORE_CONFIG flag
975
+ - sparse-index: add SPARSE_INDEX_MEMORY_ONLY flag
976
- attr: be careful about sparse directories
977
- sparse-checkout: create helper methods
737
- - unpack-trees: fix nested sparse-dir search
978
+ - sparse-index: use WRITE_TREE_MISSING_OK
979
- sparse-index: silently return when cache tree fails
980
+ - unpack-trees: fix nested sparse-dir search
981
- sparse-index: silently return when not using cone-mode patterns
982
- t7519: rewrite sparse index test
983
- Merge branch 'ds/add-with-sparse-index' into ds/sparse-index-ignored-files
@@ -746,6 +988,8 @@ Release tarballs are available at:
988
entire directory outside the sparse cone to be removed, which is
989
especially useful when the sparse patterns change.
990
991
+ Will merge to 'next'?
992
+
993
994
* js/advise-when-skipping-cherry-picked (2021-08-30) 1 commit
995
(merged to 'next' on 2021-09-01 at bc883fce56)
@@ -760,7 +1004,7 @@ Release tarballs are available at:
1004
Will merge to 'master'.
1005
1006
763
-* jt/grep-wo-submodule-odb-as-alternate (2021-08-13) 8 commits
1007
+* jt/grep-wo-submodule-odb-as-alternate (2021-09-07) 8 commits
1008
- t7814: show lack of alternate ODB-adding
1009
- submodule-config: pass repo upon blob config read
1010
- grep: add repository to OID grep sources
@@ -774,20 +1018,7 @@ Release tarballs are available at:
1018
updated to migrate away from the "add submodule's object store as
1019
an alternate object store" mechanism (which is suboptimal).
1020
777
-
778
-* ps/connectivity-optim (2021-08-09) 5 commits
779
- (merged to 'next' on 2021-08-24 at 94a7a04ca4)
780
- + revision: avoid hitting packfiles when commits are in commit-graph
781
- + commit-graph: split out function to search commit position
782
- + revision: stop retrieving reference twice
783
- + connected: do not sort input revisions
784
- + revision: separate walk and unsorted flags
785
-
786
- The revision traversal API has been optimized by taking advantage
787
- of the commit-graph, when available, to determine if a commit is
788
- reachable from any of the existing refs.
789
-
790
- Will merge to 'master'.
1021
+ Will merge to 'next'.
1022
1023
1024
* ar/submodule-add-more (2021-08-10) 10 commits
@@ -805,6 +1036,8 @@ Release tarballs are available at:
1036
1037
More parts of "git submoudle add" has been rewritten in C.
1038
1039
+ Will merge to 'next'.
1040
+
1041
1042
* cb/makefile-apple-clang (2021-08-06) 3 commits
1043
(merged to 'next' on 2021-08-30 at 9fe8f1a9b3)
@@ -812,7 +1045,7 @@ Release tarballs are available at:
1045
+ build: clang version may not be followed by extra words
1046
+ build: update detect-compiler for newer Xcode version
1047
815
- Build update.
1048
+ Build update for Apple clang.
1049
1050
Will merge to 'master'.
1051
@@ -865,6 +1098,8 @@ Release tarballs are available at:
1098
1099
Large part of "git submodule add" gets rewritten in C.
1100
1101
+ Will merge to 'next'.
1102
+
1103
1104
* dt/submodule-diff-fixes (2021-08-31) 3 commits
1105
- diff --submodule=diff: don't print failure message twice
@@ -880,19 +1115,21 @@ Release tarballs are available at:
1115
1116
1117
* fs/ssh-signing (2021-08-29) 9 commits
883
- - ssh signing: test that gpg fails for unknown keys
884
- - ssh signing: tests for logs, tags & push certs
885
- - ssh signing: duplicate t7510 tests for commits
886
- - ssh signing: verify signatures using ssh-keygen
887
- - ssh signing: provide a textual signing_key_id
888
- - ssh signing: retrieve a default key from ssh-agent
889
- - ssh signing: add ssh key format and signing code
890
- - ssh signing: add test prereqs
891
- - ssh signing: preliminary refactoring and clean-up
1118
+ (merged to 'next' on 2021-09-03 at eed4e814c0)
1119
+ + ssh signing: test that gpg fails for unknown keys
1120
+ + ssh signing: tests for logs, tags & push certs
1121
+ + ssh signing: duplicate t7510 tests for commits
1122
+ + ssh signing: verify signatures using ssh-keygen
1123
+ + ssh signing: provide a textual signing_key_id
1124
+ + ssh signing: retrieve a default key from ssh-agent
1125
+ + ssh signing: add ssh key format and signing code
1126
+ + ssh signing: add test prereqs
1127
+ + ssh signing: preliminary refactoring and clean-up
1128
1129
Use ssh public crypto for object and push-cert signing.
1130
895
- Will merge to 'next'.
1131
+ On hold.
1132
+ cf. <xmqq4kawcmqg.fsf@gitster.g>
1133
1134
1135
* cf/fetch-set-upstream-while-detached (2021-07-06) 1 commit
@@ -950,7 +1187,7 @@ Release tarballs are available at:
1187
pack, but now we've learned to generate bitmaps for history that
1188
span across multiple packfiles.
1189
953
- Will merge to 'next'?
1190
+ Will merge to 'next'.
1191
1192
1193
* ab/config-based-hooks-base (2021-08-03) 36 commits
@@ -1064,17 +1301,8 @@ Release tarballs are available at:
1301
cf. <8bec1a6d-5052-50c3-4100-e6348289d581@gmail.com>
1302
1303
1067
-* hn/reftable (2021-08-26) 29 commits
1068
- - SQUASH??? https://github.com/git/git/runs/3439941236?check_suite_focus=true#step:5:700
1069
- - reftable: fixup for new base topic 3/3
1070
- - reftable: fixup for new base topic 2/3
1071
- - reftable: fixup for new base topic 1/3
1072
- - t1404: annotate test cases with REFFILES
1073
- - t1401,t2011: parameterize HEAD.lock for REFFILES
1074
- - t1301: document what needs to be done for reftable
1304
+* hn/reftable (2021-09-07) 19 commits
1305
- Add "test-tool dump-reftable" command.
1076
- - git-prompt: prepare for reftable refs backend
1077
- - refs: RFC: Reftable support for git-core
1306
- reftable: add dump utility
1307
- reftable: implement stack, a mutable database of reftable files.
1308
- reftable: implement refname validation
@@ -1092,11 +1320,10 @@ Release tarballs are available at:
1320
- reftable: utility functions
1321
- reftable: add error related functionality
1322
- reftable: RFC: add LICENSE
1095
- - init-db: set the_repository->hash_algo early on
1323
- hash.h: provide constants for the hash IDs
1097
- (this branch uses ab/refs-errno-cleanup, ab/refs-files-cleanup and hn/refs-errno-cleanup.)
1324
1099
- The "reftable" backend for the refs API.
1325
+ The "reftable" backend for the refs API, without integrating into
1326
+ the refs subsystem.
1327
1328
1329
* ab/refs-files-cleanup (2021-08-25) 13 commits
@@ -1113,7 +1340,7 @@ Release tarballs are available at:
1340
- refs: drop unused "flags" parameter to lock_ref_oid_basic()
1341
- refs/files: remove unused REF_DELETING in lock_ref_oid_basic()
1342
- refs/packet: add missing BUG() invocations to reflog callbacks
1116
- (this branch is used by ab/refs-errno-cleanup, hn/refs-errno-cleanup and hn/reftable.)
1343
+ (this branch is used by ab/refs-errno-cleanup and hn/refs-errno-cleanup.)
1344
1345
Continued work on top of the hn/refs-errno-cleanup topic.
1346
@@ -1123,55 +1350,11 @@ Release tarballs are available at:
1350
- refs/files-backend: stop setting errno from lock_ref_oid_basic
1351
- refs: remove EINVAL errno output from specification of read_raw_ref_fn
1352
- refs file backend: move raceproof_create_file() here
1126
- (this branch is used by ab/refs-errno-cleanup and hn/reftable; uses ab/refs-files-cleanup.)
1353
+ (this branch is used by ab/refs-errno-cleanup; uses ab/refs-files-cleanup.)
1354
1355
Futz with the way 'errno' is relied on in the refs API to carry the
1356
failure modes up the callchain.
1357
1131
-
1132
-* jh/builtin-fsmonitor (2021-08-26) 36 commits
1133
- - SQUASH??? https://github.com/git/git/runs/3438543601?check_suite_focus=true#step:5:136
1134
- - BANDAID: sparse fixes
1135
- - t7527: test FS event reporing on MacOS WRT case and Unicode
1136
- - fsmonitor: handle shortname for .git
1137
- - t7527: test status with untracked-cache and fsmonitor--daemon
1138
- - fsmonitor: force update index after large responses
1139
- - fsmonitor: enhance existing comments
1140
- - fsmonitor--daemon: use a cookie file to sync with file system
1141
- - fsmonitor--daemon: periodically truncate list of modified files
1142
- - t7527: create test for fsmonitor--daemon
1143
- - t/perf/p7519: add fsmonitor--daemon test cases
1144
- - t/perf: avoid copying builtin fsmonitor files into test repo
1145
- - t/perf/p7519: speed up test using "test-tool touch"
1146
- - t/helper/test-touch: add helper to touch a series of files
1147
- - fsmonitor--daemon: implement handle_client callback
1148
- - fsmonitor-fs-listen-macos: implement FSEvent listener on MacOS
1149
- - fsmonitor-fs-listen-macos: add macos header files for FSEvent
1150
- - fsmonitor-fs-listen-win32: implement FSMonitor backend on Windows
1151
- - fsmonitor--daemon: create token-based changed path cache
1152
- - fsmonitor--daemon: define token-ids
1153
- - fsmonitor--daemon: add pathname classification
1154
- - fsmonitor: do not try to operate on bare repos
1155
- - fsmonitor--daemon: implement 'start' command
1156
- - fsmonitor--daemon: implement 'run' command
1157
- - fsmonitor-fs-listen-macos: stub in backend for MacOS
1158
- - fsmonitor-fs-listen-win32: stub in backend for Windows
1159
- - t/helper/fsmonitor-client: create IPC client to talk to FSMonitor Daemon
1160
- - fsmonitor--daemon: implement 'stop' and 'status' commands
1161
- - fsmonitor--daemon: add a built-in fsmonitor daemon
1162
- - fsmonitor: use IPC to query the builtin FSMonitor daemon
1163
- - fsmonitor: config settings are repository-specific
1164
- - help: include fsmonitor--daemon feature flag in version info
1165
- - fsmonitor-ipc: create client routines for git-fsmonitor--daemon
1166
- - fsmonitor--daemon: update fsmonitor documentation
1167
- - fsmonitor--daemon: man page
1168
- - simple-ipc: preparations for supporting binary messages.
1169
-
1170
- An attempt to write and ship with a watchman equivalent tailored
1171
- for our use.
1172
-
1173
- Expecting a reroll post 2.33 release.
1174
-
1358
--------------------------------------------------
1359
[Discarded]
1360
@@ -1205,19 +1388,6 @@ Release tarballs are available at:
1388
cf. <20210802174944.53745-1-oystwa@gmail.com>
1389
1390
1208
-* jc/trivial-threeway-binary-merge (2021-07-28) 1 commit
1209
- - ll-merge: teach ll_binary_merge() a trivial three-way merge
1210
-
1211
- The built-in merge driver for binary files learned to resolve
1212
- trivial three-way merges (e.g. apply change, which turns A into B,
1213
- to content A) by itself, which would help "git apply --3way" used
1214
- when there is no need to use "--3way".
1215
-
1216
- Will discard.
1217
- Replace with a trivial-merge logic in apply.c::try_treeway() or
1218
- apply.c::three_way_merge().
1219
-
1220
-
1391
* np/blame-ignore-revs-file-may-be-optional (2021-08-09) 1 commit
1392
- blame: add config `blame.ignoreRevsFileIsOptional`
1393