What's cooking (2021/07 #01)

Junio C Hamano committed Jul 6, 2021 at 15:18 UTC 167c827110c6c03dd07b20f3b732702b580e81a6
1 file changed +454 -192
whats-cooking.txt
+454 -192
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Jun 2021, #07; Wed, 30)
3 +Subject: What's cooking in git.git (Jul 2021, #01; Tue, 6)
4 X-master-at: 670b81a890388c60b7032a4f5b879f2ece8c4558
5 -X-next-at: 670b81a890388c60b7032a4f5b879f2ece8c4558
5 +X-next-at: 7674896d58f7c91447ddcd64037ff660f9387632
6
7 -What's cooking in git.git (Jun 2021, #07; Wed, 30)
7 +What's cooking in git.git (Jul 2021, #01; Tue, 6)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking in my tree. Commits
@@ -19,11 +19,9 @@ another topic already in flight" or "this may turn out to be
19 useful")---do not read too much into a topic being in (or not in)
20 'seen'.
21
22 -Some new topics have been merged to 'seen' and are listed in this
23 -report but there may well be topics that I haven't got around to
24 -pick them up. Also, among those that are in 'seen', I haven't
25 -summarized many of them in this rerpot (let alone decided what to do
26 -with them). Help and patience is greatly appreciated.
22 +Among those that are in 'seen', I haven't summarized many of them in
23 +this issue of report (let alone decided what to do with them). Help
24 +and patience is greatly appreciated.
25
26 Copies of the source code to Git live in many repositories, and the
27 following is a list of the ones I push into or their mirrors. Some
@@ -56,64 +54,255 @@ Release tarballs are available at:
54 --------------------------------------------------
55 [New Topics]
56
57 +* ab/lib-subtest (2021-07-01) 8 commits
58 + - test-lib tests: assert 1 exit code, not non-zero
59 + - test-lib tests: refactor common part of check_sub_test_lib_test*()
60 + - test-lib tests: avoid subshell for "test_cmp" for readability
61 + - test-lib tests: get rid of copy/pasted mock test code
62 + - test-lib tests: don't provide a description for the sub-tests
63 + - test-lib tests: stop using a subshell in write_sub_test_lib_test()
64 + - test-lib tests: split up "write and run" into two functions
65 + - test-lib tests: move "run_sub_test" to a new lib-subtest.sh
66 +
67 + Refactor tests on test framework.
68 +
69 + WHat's the review status of this thing?
70 +
71 +
72 +* ab/struct-init (2021-07-01) 5 commits
73 + - string-list.h users: change to use *_{nodup,dup}()
74 + - string-list.[ch]: add a string_list_init_{nodup,dup}()
75 + - dir.[ch]: replace dir_init() with DIR_INIT
76 + - *.c *_init(): define in terms of corresponding *_INIT macro
77 + - *.h: move some *_INIT to designated initializers
78 +
79 + Code cleanup around struct_type_init() functions.
80 +
81 + Will merge to 'next'.
82 +
83 +
84 +* bc/inactive-submodules (2021-07-02) 1 commit
85 + - submodule: mark submodules with update=none as inactive
86 +
87 + Usability update for inactive submodules.
88 +
89 + Will merge to 'next'.
90 +
91 +
92 +* en/ort-perf-batch-14 (2021-07-01) 7 commits
93 + - merge-ort: restart merge with cached renames to reduce process entry cost
94 + - merge-ort: avoid recursing into directories when we don't need to
95 + - merge-ort: defer recursing into directories when merge base is matched
96 + - merge-ort: add a handle_deferred_entries() helper function
97 + - merge-ort: add data structures for allowable trivial directory resolves
98 + - merge-ort: add some more explanations in collect_merge_info_callback()
99 + - merge-ort: resolve paths early when we have sufficient information
100 +
101 + Further optimization on "merge -sort" backend.
102 +
103 +
104 +* ar/help-micro-cleanup (2021-07-06) 1 commit
105 + - help: convert git_cmd to page in one place
106 +
107 + Tiny code clean-up.
108 +
109 + Will merge to 'next.
110 +
111 +
112 +* ar/submodule-helper-include-cleanup (2021-07-06) 1 commit
113 + - submodule--helper: remove redundant include
114 +
115 + Code clean-up.
116 +
117 + Will merge to 'next'.
118 +
119 +
120 +* cf/fetch-set-upstream-while-detached (2021-07-06) 1 commit
121 + - fetch: fix segfault on --set-upstream while on a detached HEAD
122 +
123 + "git fetch --set-upstream" while on detached HEAD segfaulted
124 + instead of noticing that such an operation did not make sense.
125 +
126 + Expecting a reroll.
127 +
128 +
129 +* dd/test-stdout-count-lines (2021-07-06) 3 commits
130 + - t6402: preserve git exit status code
131 + - t6400: preserve git ls-files exit status code
132 + - test-lib-functions: introduce test_stdout_line_count
133 +
134 + Tiny test clean-up.
135 +
136 + Will merge to 'next'.
137 +
138 +
139 +* hn/refs-iterator-peel-returns-boolean (2021-05-20) 1 commit
140 + - refs: make explicit that ref_iterator_peel returns boolean
141 + (this branch is used by hn/reftable.)
142 +
143 + Tiny API tweak.
144 +
145 + Will merge to 'next'.
146 +
147 +
148 +* hn/refs-test-cleanup (2021-07-06) 2 commits
149 + - t7509: avoid direct file access for writing CHERRY_PICK_HEAD
150 + - t1415: avoid direct filesystem access for writing refs
151 +
152 + Test clean-up.
153 +
154 + Will merge to 'next'.
155 +
156 +
157 +* ps/perf-with-separate-output-directory (2021-07-02) 1 commit
158 + - perf: fix when running with TEST_OUTPUT_DIRECTORY
159 +
160 + Test update.
161 +
162 + What's the status of this one?
163 +
164 +
165 +* rs/khash-alloc-cleanup (2021-07-06) 1 commit
166 + - khash: clarify that allocations never fail
167 +
168 + Code clean-up.
169 +
170 + Will merge to 'next'.
171 +
172 +
173 +* sm/worktree-add-lock (2021-07-06) 1 commit
174 + - worktree: teach `add` to accept --reason <string> with --lock
175 +
176 + "git worktree add --lock" learned to record why the worktree is
177 + locked with a custom message.
178 +
179 + Expecting a reroll.
180 +
181 +--------------------------------------------------
182 +[Stalled]
183 +
184 +* hn/reftable (2021-05-20) 27 commits
185 + . t1404: annotate test cases with REFFILES
186 + . t1401,t2011: parameterize HEAD.lock for REFTABLE
187 + . t1301: document what needs to be done for REFTABLE
188 + . Add "test-tool dump-reftable" command.
189 + . git-prompt: prepare for reftable refs backend
190 + . Reftable support for git-core
191 + . reftable: add dump utility
192 + . reftable: implement stack, a mutable database of reftable files.
193 + . reftable: implement refname validation
194 + . reftable: add merged table view
195 + . reftable: add a heap-based priority queue for reftable records
196 + . reftable: reftable file level tests
197 + . reftable: read reftable files
198 + . reftable: generic interface to tables
199 + . reftable: write reftable files
200 + . reftable: a generic binary tree implementation
201 + . reftable: reading/writing blocks
202 + . Provide zlib's uncompress2 from compat/zlib-compat.c
203 + . reftable: (de)serialization for the polymorphic record type.
204 + . reftable: add blocksource, an abstraction for random access reads
205 + . reftable: utility functions
206 + . reftable: add error related functionality
207 + . reftable: add LICENSE
208 + . init-db: set the_repository->hash_algo early on
209 + . hash.h: provide constants for the hash IDs
210 + . refs/debug: trace into reflog expiry too
211 + . refs: document reflog_expire_fn's flag argument
212 + (this branch uses hn/refs-iterator-peel-returns-boolean.)
213 +
214 + The "reftable" backend for the refs API.
215 +
216 +
217 +* ao/p4-avoid-decoding (2021-04-12) 2 commits
218 + - git-p4: do not decode data from perforce by default
219 + - git-p4: avoid decoding more data from perforce
220 +
221 + "git p4" in Python-2 days used to accept a lot more kinds of data
222 + from Perforce server as uninterrupted byte sequence, but after
223 + switching to Python-3, too many things are expected to be in UTF-8,
224 + which broke traditional use cases.
225 +
226 + Waiting for reviews.
227 +
228 +
229 +* tv/p4-fallback-encoding (2021-04-30) 1 commit
230 + - git-p4: git-p4.fallbackEncoding to specify non UTF-8 charset
231 +
232 + "git p4" learns the fallbackEncoding configuration variable to
233 + safely accept changeset descriptions that aren't written in UTF-8.
234 +
235 + Waiting for reviews.
236 +
237 +--------------------------------------------------
238 +[Cooking]
239 +
240 * fw/complete-cmd-idx-fix (2021-06-19) 1 commit
60 - - completion: bash: fix late declaration of __git_cmd_idx
241 + (merged to 'next' on 2021-07-01 at f16784c4cb)
242 + + completion: bash: fix late declaration of __git_cmd_idx
243
244 Recent update to completion script (in contrib/) broke those who
245 use the __git_complete helper to define completion to their custom
246 command.
247
66 - Will merge to 'next'.
248 + Will merge to 'master'.
249
250
69 -* jk/test-avoid-globmatch-with-skip-patterns (2021-06-17) 1 commit
70 - - test-lib: avoid accidental globbing in match_pattern_list()
251 +* jk/test-avoid-globmatch-with-skip-patterns (2021-07-01) 1 commit
252 + (merged to 'next' on 2021-07-01 at 139fa916d1)
253 + + test-lib: avoid accidental globbing in match_pattern_list()
254
255 We broke "GIT_SKIP_TESTS=t?000" to skip certain tests in recent
256 update, which got fixed.
257
75 - Will merge to 'next'.
258 + Will merge to 'master'.
259
260
261 * jk/test-without-readlink-1 (2021-06-19) 1 commit
79 - - t: use portable wrapper for readlink(1)
262 + (merged to 'next' on 2021-07-01 at fb3bf5a6b0)
263 + + t: use portable wrapper for readlink(1)
264
265 Some test scripts assumed that readlink(1) was universally
266 installed and available, which is not the case.
267
84 - Will merge to 'next'.
268 + Will merge to 'master'.
269
270
271 * jx/sideband-cleanup (2021-06-17) 4 commits
88 - - test: refactor to use "get_abbrev_oid" to get abbrev oid
89 - - test: refactor to use "test_commit" to create commits
90 - - test: compare raw output, not mangle tabs and spaces
91 - - sideband: don't lose clear-to-eol at packet boundary
272 + (merged to 'next' on 2021-07-01 at 0eb604e8c2)
273 + + test: refactor to use "get_abbrev_oid" to get abbrev oid
274 + + test: refactor to use "test_commit" to create commits
275 + + test: compare raw output, not mangle tabs and spaces
276 + + sideband: don't lose clear-to-eol at packet boundary
277
278 The side-band demultiplexer that is used to display progress output
279 from the remote end did not clear the line properly when the end of
280 line hits at a packet boundary, which has been corrected. Also
281 comes with test clean-ups.
282
98 - Will merge to 'next'.
283 + Will merge to 'master'.
284
285
101 -* ab/bundle-doc (2021-06-30) 3 commits
286 +* ab/bundle-doc (2021-07-02) 3 commits
287 - bundle doc: elaborate on rev<->ref restriction
103 - - bundle doc: split out open v.s. closed discussion from <rev-arg>
288 + - bundle doc: elaborate on object prerequisites
289 - bundle doc: rewrite the "DESCRIPTION" section
290
291 Doc update.
292
293 + Expecting a reroll.
294 + at least for the second patch.
295 +
296
297 * ab/fix-columns-to-80-during-tests (2021-06-29) 1 commit
110 - - test-lib.sh: set COLUMNS=80 for --verbose repeatability
298 + (merged to 'next' on 2021-07-01 at e8cbef661b)
299 + + test-lib.sh: set COLUMNS=80 for --verbose repeatability
300
301 Output from some of our tests were affected by the width of the
302 terminal that they were run in, which has been corrected by
303 exporting a fixed value in the COLUMNS environment.
304
116 - Will merge to 'next'.
305 + Will merge to 'master'.
306
307
308 * ab/pack-stdin-packs-fix (2021-06-28) 2 commits
@@ -123,26 +312,36 @@ Release tarballs are available at:
312 Input validation of "git pack-objects --stdin-packs" has been
313 corrected.
314
315 + Expecting a reroll.
316 cf. <YND3h2l10PlnSNGJ@nand.local>
317
318
319 * ar/more-typofix (2021-06-28) 3 commits
130 - - git-worktree.txt: fix typo in example path
131 - - t: fix typos in test messages
132 - - blame: correct name of config option in docs
320 + (merged to 'next' on 2021-07-01 at 02ca61ee96)
321 + + git-worktree.txt: fix typo in example path
322 + + t: fix typos in test messages
323 + + blame: correct name of config option in docs
324
325 Typofixes.
326
136 - Will merge to 'next'.
327 + Will merge to 'master'.
328
329
330 * bk/doc-commit-typofix (2021-06-28) 1 commit
331 - Documentation: fix typo in the --patch option of the commit command
332
333 + Doc typo/grammo-fix.
334 +
335 + Will merge to 'next'.
336 +
337
338 * dc/p4-binary-submit-fix (2021-06-28) 1 commit
339 - git-p4: fix failed submit by skip non-text data files
340
341 + Prevent "git p4" from failing to submit changes to binary file.
342 +
343 + Will merge to 'next'.
344 +
345
346 * ds/commit-and-checkout-with-sparse-index (2021-06-28) 5 commits
347 - checkout: stop expanding sparse indexes
@@ -152,12 +351,22 @@ Release tarballs are available at:
351 - p2000: add 'git checkout -' test and decrease depth
352 (this branch uses ds/status-with-sparse-index.)
353
354 + "git checkout" and "git commit" learn to work without unnecessarily
355 + expanding sparse indexes.
356 +
357 + Comments?
358 +
359
360 * en/merge-dir-rename-corner-case-fix (2021-06-30) 3 commits
361 - merge-recursive: handle rename-to-self case
362 - merge-ort: ensure we consult df_conflict and path_conflicts
363 - t6423: test directory renames causing rename-to-self
364
365 + The merge code had funny interactions between content based rename
366 + detection and directory rename detection.
367 +
368 + Will merge to 'next'.
369 +
370
371 * ew/many-alternate-optim (2021-06-29) 5 commits
372 - oidtree: a crit-bit tree for odb_loose_cache
@@ -166,6 +375,10 @@ Release tarballs are available at:
375 - avoid strlen via strbuf_addstr in link_alt_odb_entry
376 - speed up alt_odb_usable() with many alternates
377
378 + Optimization for repositories with many alternate object store.
379 +
380 + Will merge to 'next'.
381 +
382
383 * jk/log-decorate-optim (2021-06-28) 6 commits
384 - add_ref_decoration(): rename s/type/deco_type/
@@ -175,39 +388,69 @@ Release tarballs are available at:
388 - log: avoid loading decorations for userformats that don't need it
389 - pretty.h: update and expand docstring for userformat_find_requirements()
390
391 + Optimize "git log" for cases where we wasted cycles to load ref
392 + decoration data that may not be needed.
393 +
394 + Will merge to 'next'.
395
179 -* js/ci-windows-update (2021-06-28) 6 commits
396 +
397 +* js/ci-windows-update (2021-07-06) 7 commits
398 - ci: accelerate the checkout
181 - - ci(vs-build): build with NO_GETTEXT
182 - - ci(windows): transfer also the Git-tracked files to the test jobs
399 + - ci (vs-build): build with NO_GETTEXT
400 + - artifacts-tar: respect NO_GETTEXT
401 + - ci (windows): transfer also the Git-tracked files to the test jobs
402 - ci: upgrade to using actions/{up,down}load-artifacts v2
403 - ci (vs-build): use `cmd` to copy the DLLs, not `powershell`
404 - ci: use the new GitHub Action to download git-sdk-64-minimal
405
406 + GitHub Actions / CI update.
407 +
408
409 * js/config-mak-windows-pcre-fix (2021-06-28) 1 commit
410 - config.mak.uname: PCRE1 cleanup
411
412 + Whitespace fix.
413 +
414 + Will merge to 'next'.
415 +
416
417 * js/gfw-system-config-loc-fix (2021-06-28) 3 commits
418 - config: normalize the path of the system gitconfig
419 - cmake(windows): set correct path to the system Git config
420 - mingw: move Git for Windows' system config where users expect it
421
422 + Update the location of system-side configuration file on Windows.
423 +
424 + Will merge to 'next'.
425 +
426
427 * jt/push-negotiation-fixes (2021-06-28) 3 commits
428 - fetch: die on invalid --negotiation-tip hash
429 - send-pack: fix push nego. when remote has refs
430 - send-pack: fix push.negotiate with remote helper
431
432 + Bugfix for common ancestor negotiation recently introduced in "git
433 + push" codepath.
434 +
435 + Comments?
436 +
437
438 * ks/submodule-cleanup (2021-06-28) 1 commit
439 - submodule: remove unnecessary `prefix` based option logic
440
441 + Code cleanup.
442 +
443 + Will merge to 'next'.
444 +
445
446 * rs/grep-parser-fix (2021-06-30) 1 commit
447 - grep: report missing left operand of --and
448
449 + "git grep --and -e foo" ought to have been diagnosed as an error
450 + but instead segfaulted, which has been corrected.
451 +
452 + Will merge to 'next'.
453 +
454
455 * tb/midx-use-checksum (2021-06-28) 4 commits
456 - midx: report checksum mismatches during 'verify'
@@ -215,22 +458,41 @@ Release tarballs are available at:
458 - commit-graph: rewrite to use checksum_valid()
459 - csum-file: introduce checksum_valid()
460
461 + When rebuilding the multi-pack index file reusing an existing one,
462 + we used to blindly trust the existing file and ended up carrying
463 + corrupted data into the updated file, which has been corrected.
464 +
465 + Will merge to 'next'.
466 +
467
219 -* ab/bundle-updates (2021-06-30) 3 commits
468 +* ab/bundle-updates (2021-07-06) 3 commits
469 - bundle: remove "ref_list" in favor of string-list.c API
470 - bundle.c: use a temporary variable for OIDs and names
471 - bundle cmd: stop leaking memory from parse_options_cmd_bundle()
472
473 + Code clean-up and leak plugging in "git bundle".
474 +
475 + Will merge to 'next'.
476 +
477
478 * ab/fetch-negotiate-segv-fix (2021-06-30) 3 commits
479 - fetch: fix segfault in --negotiate-only without --negotiation-tip=*
480 - fetch: document the --negotiate-only option
481 - send-pack.c: move "no refs in common" abort earlier
482
483 + Code recently added to support common ancestory negotiation during
484 + "git push" did not sanity check its arguments carefully enough.
485 +
486 + Will merge to 'next'.
487 +
488
489 * ab/make-delete-on-error (2021-06-29) 1 commit
490 - Makefile: add and use the ".DELETE_ON_ERROR" flag
491
492 + Use ".DELETE_ON_ERROR" pseudo target to simplify our Makefile.
493 +
494 + Will merge to 'next'.
495 +
496
497 * ab/make-tags-cleanup (2021-06-29) 5 commits
498 - Makefile: normalize clobbering & xargs for tags targets
@@ -239,71 +501,21 @@ Release tarballs are available at:
501 - Makefile: add QUIET_GEN to "cscope" target
502 - Makefile: move ".PHONY: cscope" near its target
503
504 + Build clean-up for "make tags" and friends.
505
243 -* ew/mmap-failures (2021-06-29) 1 commit
244 - - xmmap: inform Linux users of tuning knobs on ENOMEM
245 -
246 ---------------------------------------------------
247 -[Stalled]
248 -
249 -* hn/reftable (2021-05-20) 28 commits
250 - . t1404: annotate test cases with REFFILES
251 - . t1401,t2011: parameterize HEAD.lock for REFTABLE
252 - . t1301: document what needs to be done for REFTABLE
253 - . Add "test-tool dump-reftable" command.
254 - . git-prompt: prepare for reftable refs backend
255 - . Reftable support for git-core
256 - . reftable: add dump utility
257 - . reftable: implement stack, a mutable database of reftable files.
258 - . reftable: implement refname validation
259 - . reftable: add merged table view
260 - . reftable: add a heap-based priority queue for reftable records
261 - . reftable: reftable file level tests
262 - . reftable: read reftable files
263 - . reftable: generic interface to tables
264 - . reftable: write reftable files
265 - . reftable: a generic binary tree implementation
266 - . reftable: reading/writing blocks
267 - . Provide zlib's uncompress2 from compat/zlib-compat.c
268 - . reftable: (de)serialization for the polymorphic record type.
269 - . reftable: add blocksource, an abstraction for random access reads
270 - . reftable: utility functions
271 - . reftable: add error related functionality
272 - . reftable: add LICENSE
273 - . init-db: set the_repository->hash_algo early on
274 - . hash.h: provide constants for the hash IDs
275 - . refs/debug: trace into reflog expiry too
276 - . refs: document reflog_expire_fn's flag argument
277 - . refs: make explicit that ref_iterator_peel returns boolean
278 -
279 - The "reftable" backend for the refs API.
280 -
281 - Waiting for reviews.
282 - Seems to break tests when merged to 'seen'.
283 -
284 -
285 -* ao/p4-avoid-decoding (2021-04-12) 2 commits
286 - - git-p4: do not decode data from perforce by default
287 - - git-p4: avoid decoding more data from perforce
288 -
289 - "git p4" in Python-2 days used to accept a lot more kinds of data
290 - from Perforce server as uninterrupted byte sequence, but after
291 - switching to Python-3, too many things are expected to be in UTF-8,
292 - which broke traditional use cases.
293 -
294 - Waiting for reviews.
506 + Expecting a reroll.
507 + Hopefully with a final reroll it would become good enough shape for 'next'?
508 + cf. <YN5AwdVC3QAcy2tA@coredump.intra.peff.net>
509 + cf. <67c45b13-df8f-8065-377a-fbd2f80992ee@ramsayjones.plus.com>
510
511
297 -* tv/p4-fallback-encoding (2021-04-30) 1 commit
298 - - git-p4: git-p4.fallbackEncoding to specify non UTF-8 charset
512 +* ew/mmap-failures (2021-06-29) 1 commit
513 + - xmmap: inform Linux users of tuning knobs on ENOMEM
514
300 - "git p4" learns the fallbackEncoding configuration variable to
301 - safely accept changeset descriptions that aren't written in UTF-8.
515 + Error message update.
516
303 - Waiting for reviews.
517 + Will merge to 'next'.
518
305 ---------------------------------------------------
306 -[Cooking]
519
520 * tb/multi-pack-bitmaps (2021-06-28) 24 commits
521 - p5326: perf tests for MIDX bitmaps
@@ -335,6 +547,8 @@ Release tarballs are available at:
547 pack, but now we've learned to generate bitmaps for history that
548 span across multiple packfiles.
549
550 + Comments?
551 +
552
553 * ds/status-with-sparse-index (2021-06-28) 16 commits
554 - fsmonitor: integrate with sparse index
@@ -358,6 +572,8 @@ Release tarballs are available at:
572 "git status" codepath learned to work with sparsely populated index
573 without hydrating it fully.
574
575 + Will merge to 'next'?
576 +
577
578 * ab/describe-tests-fix (2021-05-11) 5 commits
579 - describe tests: support -C in "check_describe"
@@ -444,11 +660,12 @@ Release tarballs are available at:
660
661
662 * ab/config-hooks-path-testfix (2021-06-16) 1 commit
447 - - pre-commit hook tests: don't leave "actual" nonexisting on failure
663 + (merged to 'next' on 2021-07-01 at 2ab6dbe8af)
664 + + pre-commit hook tests: don't leave "actual" nonexisting on failure
665
666 Test fix.
667
451 - Will merge to 'next'.
668 + Will merge to 'master'.
669
670
671 * ab/doc-retire-alice-bob (2021-06-16) 6 commits
@@ -459,6 +676,9 @@ Release tarballs are available at:
676 - gitcvs-migration doc: replace "alice" and "bob" with "you" and "www-data"
677 - gittutorial doc: replace "alice" and "bob" with "you" and "www-data"
678
679 + Documentation update to avoid Alice and Bob in contexts where Eve
680 + does not appear in.
681 +
682
683 * ab/pre-auto-gc-hook-test (2021-06-16) 1 commit
684 - gc tests: add a test for the "pre-auto-gc" hook
@@ -469,11 +689,12 @@ Release tarballs are available at:
689
690
691 * jv/userdiff-csharp-update (2021-06-16) 1 commit
472 - - userdiff: add support for C# record types
692 + (merged to 'next' on 2021-07-01 at a2371d0580)
693 + + userdiff: add support for C# record types
694
695 The userdiff pattern for C# learned the token "record".
696
476 - Will merge to 'next'.
697 + Will merge to 'master'.
698
699
700 * en/ort-perf-batch-13 (2021-06-28) 5 commits
@@ -485,6 +706,8 @@ Release tarballs are available at:
706
707 Performance tweaks of "git merge -sort" around lazy fetching of objects.
708
709 + Will merge to 'next'.
710 +
711
712 * ab/serve-cleanup (2021-06-28) 8 commits
713 - upload-pack.c: convert to new serve.c "startup" config cb
@@ -500,7 +723,8 @@ Release tarballs are available at:
723
724
725 * js/stop-exporting-bogus-columns (2021-06-28) 1 commit
503 - - pager: avoid setting COLUMNS when we're guessing its value
726 + (merged to 'next' on 2021-07-02 at 7674896d58)
727 + + pager: avoid setting COLUMNS when we're guessing its value
728
729 When we cannot figure out how wide the terminal is, we use a
730 fallback value of 80 ourselves (which cannot be avoided), but when
@@ -509,33 +733,36 @@ Release tarballs are available at:
733 capable to figure it out itself. Stop exporting COLUMNS when we
734 fall back on the hardcoded default value for our own use.
735
512 - Will merge to 'next'.
736 + Will merge to 'master'.
737
738
739 * ah/uninitialized-reads-fix (2021-06-15) 3 commits
516 - - builtin/checkout--worker: zero-initialise struct to avoid MSAN complaints
517 - - split-index: use oideq instead of memcmp to compare object_id's
518 - - bulk-checkin: make buffer reuse more obvious and safer
740 + (merged to 'next' on 2021-07-01 at 61a967c340)
741 + + builtin/checkout--worker: zero-initialise struct to avoid MSAN complaints
742 + + split-index: use oideq instead of memcmp to compare object_id's
743 + + bulk-checkin: make buffer reuse more obvious and safer
744
745 Make the codebase MSAN clean.
746
522 - Will merge to 'next'.
747 + Will merge to 'master'.
748
749
750 * ar/typofix (2021-06-14) 1 commit
526 - - *: fix typos which duplicate a word
751 + (merged to 'next' on 2021-07-01 at 8d10d6d568)
752 + + *: fix typos which duplicate a word
753
754 Typofixes.
755
530 - Will merge to 'next'.
756 + Will merge to 'master'.
757
758
759 * jk/revision-squelch-gcc-warning (2021-06-11) 1 commit
534 - - add_pending_object_with_path(): work around "gcc -O3" complaint
760 + (merged to 'next' on 2021-07-01 at 28f4da3e7d)
761 + + add_pending_object_with_path(): work around "gcc -O3" complaint
762
763 Warning fix.
764
538 - Will merge to 'next'.
765 + Will merge to 'master'.
766
767
768 * jk/union-merge-binary (2021-06-11) 3 commits
@@ -550,20 +777,22 @@ Release tarballs are available at:
777
778
779 * js/no-more-multimail (2021-06-11) 1 commit
553 - - multimail: stop shipping a copy
780 + (merged to 'next' on 2021-07-01 at ed7a4efc75)
781 + + multimail: stop shipping a copy
782
783 Remove multimail from contrib/
784
557 - Will merge to 'next'.
785 + Will merge to 'master'.
786
787
788 * js/subtree-on-windows-fix (2021-06-15) 2 commits
561 - - subtree: fix assumption about the directory separator
562 - - subtree: fix the GIT_EXEC_PATH sanity check to work on Windows
789 + (merged to 'next' on 2021-07-01 at d4e4ccde63)
790 + + subtree: fix assumption about the directory separator
791 + + subtree: fix the GIT_EXEC_PATH sanity check to work on Windows
792
793 Update "git subtree" to work better on Windows.
794
566 - Will merge to 'next'.
795 + Will merge to 'master'.
796
797
798 * jt/partial-clone-submodule-1 (2021-06-28) 5 commits
@@ -589,6 +818,8 @@ Release tarballs are available at:
818
819 Fill test gaps.
820
821 + Will merge to 'next'.
822 +
823
824 * ab/show-branch-tests (2021-06-28) 4 commits
825 - show-branch tests: add missing tests
@@ -598,13 +829,16 @@ Release tarballs are available at:
829
830 Fill test gaps.
831
832 + Will merge to 'next'.
833 +
834
835 * ah/graph-typofix (2021-06-15) 1 commit
603 - - graph: improve grammar of "invalid color" error message
836 + (merged to 'next' on 2021-07-01 at c71fb8cbcb)
837 + + graph: improve grammar of "invalid color" error message
838
839 Typofix in an error message.
840
607 - Will merge to 'next'.
841 + Will merge to 'master'.
842
843
844 * es/superproject-aware-submodules (2021-06-16) 5 commits
@@ -621,30 +855,33 @@ Release tarballs are available at:
855
856
857 * fc/pull-cleanups (2021-06-19) 3 commits
624 - - pull: trivial whitespace style fix
625 - - pull: trivial cleanup
626 - - pull: cleanup autostash check
858 + (merged to 'next' on 2021-07-01 at f8d7a3fc78)
859 + + pull: trivial whitespace style fix
860 + + pull: trivial cleanup
861 + + pull: cleanup autostash check
862
863 Code cleanup.
864
630 - Will merge to 'next'.
865 + Will merge to 'master'.
866
867
868 * jk/bitmap-tree-optim (2021-06-15) 1 commit
634 - - bitmaps: don't recurse into trees already in the bitmap
869 + (merged to 'next' on 2021-07-01 at 2e0f108bb6)
870 + + bitmaps: don't recurse into trees already in the bitmap
871
872 Avoid duplicated work while building reachability bitmaps.
873
638 - Will merge to 'next'.
874 + Will merge to 'master'.
875
876
877 * jx/t6020-with-older-bash (2021-06-17) 1 commit
642 - - t6020: fix incompatible parameter expansion
878 + (merged to 'next' on 2021-07-01 at 55d71ed779)
879 + + t6020: fix incompatible parameter expansion
880
881 Work around inefficient glob substitution in older versions of bash
882 by rewriting parts of a test.
883
647 - Will merge to 'next'.
884 + Will merge to 'master'.
885
886
887 * en/zdiff3 (2021-06-15) 2 commits
@@ -672,15 +909,15 @@ Release tarballs are available at:
909 Long-overdue correctness and performance update to "diff
910 --color-moved" feature.
911
675 - Waiting for reviews.
912 + Expecting a reroll.
913 + cf. <094f5e5f-d447-8867-a9a7-be5c8827bba6@gmail.com>
914
915
678 -* hn/refs-errno-cleanup (2021-06-11) 8 commits
679 - - refs: explicitly propagate errno from refs_read_raw_ref
680 - - refs: clear errno return in refs_resolve_ref_unsafe()
681 - - refs: add failure_errno to refs_read_raw_ref() signature
682 - - refs: use refs_resolve_ref_unsafe_with_errno() where needed
916 +* hn/refs-errno-cleanup (2021-07-06) 7 commits
917 + - SQUASH???
918 - refs: make errno output explicit for refs_resolve_ref_unsafe
919 + - refs: explicitly return failure_errno from parse_loose_ref_contents
920 + - refs: add failure_errno to refs_read_raw_ref() signature
921 - refs: make errno output explicit for read_raw_ref_fn
922 - refs/files-backend: stop setting errno from lock_ref_oid_basic
923 - refs: remove EINVAL errno output from specification of read_raw_ref_fn
@@ -688,23 +925,25 @@ Release tarballs are available at:
925 Futz with the way 'errno' is relied on in the refs API to carry the
926 failure modes up the callchain.
927
691 - Will merge to 'next'?
928 + Expecting a (hopefully final) reroll.
929
930
931 * ab/cmd-foo-should-return (2021-06-09) 1 commit
695 - - builtins + test helpers: use return instead of exit() in cmd_*
932 + (merged to 'next' on 2021-07-02 at 4f91c90007)
933 + + builtins + test helpers: use return instead of exit() in cmd_*
934
935 Code clean-up.
936
699 - Will merge to 'next'.
937 + Will merge to 'master'.
938
939
940 * ab/progress-cleanup (2021-06-08) 1 commit
703 - - read-cache.c: don't guard calls to progress.c API
941 + (merged to 'next' on 2021-07-02 at 288570c95a)
942 + + read-cache.c: don't guard calls to progress.c API
943
944 Code clean-up.
945
707 - Will merge to 'next'.
946 + Will merge to 'master'.
947
948
949 * ab/test-tool-cache-cleanup (2021-06-08) 4 commits
@@ -719,52 +958,58 @@ Release tarballs are available at:
958
959
960 * ab/xdiff-bug-cleanup (2021-06-08) 1 commit
722 - - xdiff: use BUG(...), not xdl_bug(...)
961 + (merged to 'next' on 2021-07-02 at f4920ba6d1)
962 + + xdiff: use BUG(...), not xdl_bug(...)
963
964 Code clean-up.
965
726 - Will merge to 'next'.
966 + Will merge to 'master'.
967
968
969 * ar/test-code-cleanup (2021-06-08) 1 commit
730 - - t: fix whitespace around &&
970 + (merged to 'next' on 2021-07-02 at 12d23f8a42)
971 + + t: fix whitespace around &&
972
973 Test code clean-up.
974
734 - Will merge to 'next'.
975 + Will merge to 'master'.
976
977
978 * ba/object-info (2021-06-08) 1 commit
738 - - protocol-caps.h: add newline at end of file
979 + (merged to 'next' on 2021-07-02 at c7fb4f900e)
980 + + protocol-caps.h: add newline at end of file
981
982 Code clean-up.
983
742 - Will merge to 'next'.
984 + Will merge to 'master'.
985
986
987 * dd/document-log-decorate-default (2021-06-08) 1 commit
746 - - doc/log: correct default for --decorate
988 + (merged to 'next' on 2021-07-02 at 529d71a690)
989 + + doc/log: correct default for --decorate
990
991 Doc clean-up.
992
750 - Will merge to 'next'.
993 + Will merge to 'master'.
994
995
996 * fc/doc-default-to-upstream-config (2021-06-08) 1 commit
754 - - doc: merge: mention default of defaulttoupstream
997 + (merged to 'next' on 2021-07-01 at 3ce7d14f26)
998 + + doc: merge: mention default of defaulttoupstream
999
1000 Doc clean-up.
1001
758 - Will merge to 'next'.
1002 + Will merge to 'master'.
1003
1004
1005 * ms/mergetools-kdiff3-on-windows (2021-06-08) 1 commit
762 - - mergetools/kdiff3: make kdiff3 work on Windows too
1006 + (merged to 'next' on 2021-07-02 at 5ca2515f34)
1007 + + mergetools/kdiff3: make kdiff3 work on Windows too
1008
1009 On Windows, mergetool has been taught to find kdiff3.exe just like
1010 it finds winmerge.exe.
1011
767 - Will merge to 'next'.
1012 + Will merge to 'master'.
1013
1014
1015 * ab/pack-objects-stdin (2021-06-28) 4 commits
@@ -777,19 +1022,21 @@ Release tarballs are available at:
1022
1023
1024 * ar/doc-libera-chat-in-my-first-contrib (2021-06-09) 1 commit
780 - - MyFirstContribution: link #git-devel to Libera Chat
1025 + (merged to 'next' on 2021-07-02 at a0e3a1f5f2)
1026 + + MyFirstContribution: link #git-devel to Libera Chat
1027
1028 Update MyFirst document.
1029
784 - Will merge to 'next'.
1030 + Will merge to 'master'.
1031
1032
1033 * ar/mailinfo-memcmp-to-skip-prefix (2021-06-09) 1 commit
788 - - mailinfo: use starts_with() when checking scissors
1034 + (merged to 'next' on 2021-07-02 at e5122960c0)
1035 + + mailinfo: use starts_with() when checking scissors
1036
1037 Code clean-up.
1038
792 - Will merge to 'next'.
1039 + Will merge to 'master'.
1040
1041
1042 * ar/submodule-add (2021-06-16) 3 commits
@@ -827,14 +1074,15 @@ Release tarballs are available at:
1074
1075
1076 * jk/doc-max-pack-size (2021-06-09) 1 commit
830 - - doc: warn people against --max-pack-size
1077 + (merged to 'next' on 2021-07-02 at b272fddb22)
1078 + + doc: warn people against --max-pack-size
1079
1080 Doc update.
1081
834 - Will merge to 'next'.
1082 + Will merge to 'master'.
1083
1084
837 -* lh/systemd-timers (2021-06-14) 3 commits
1085 +* lh/systemd-timers (2021-07-02) 3 commits
1086 - maintenance: add support for systemd timers on Linux
1087 - maintenance: `git maintenance run` learned `--scheduler=<scheduler>`
1088 - cache.h: Introduce a generic "xdg_config_home_for(…)" function
@@ -846,13 +1094,14 @@ Release tarballs are available at:
1094
1095
1096 * dd/svn-test-wo-locale-a (2021-06-08) 1 commit
849 - - t: use user-specified utf-8 locale for testing svn
1097 + (merged to 'next' on 2021-07-01 at 9fa432af22)
1098 + + t: use user-specified utf-8 locale for testing svn
1099
1100 "git-svn" tests assumed that "locale -a", which is used to pick an
1101 available UTF-8 locale, is available everywhere. A knob has been
1102 introduced to allow testers to specify a suitable locale to use.
1103
855 - Will merge to 'next'.
1104 + Will merge to 'master'.
1105
1106
1107 * fc/completion-updates (2021-06-07) 4 commits
@@ -920,29 +1169,33 @@ Release tarballs are available at:
1169
1170
1171 * js/trace2-discard-event-docfix (2021-06-04) 1 commit
923 - - docs: fix api-trace2 doc for "too_many_files" event
1172 + (merged to 'next' on 2021-07-01 at 9fc3c6285e)
1173 + + docs: fix api-trace2 doc for "too_many_files" event
1174
1175 Docfix.
1176
927 - Will merge to 'next'.
1177 + Will merge to 'master'.
1178
1179
1180 * tk/partial-clone-repack-doc (2021-06-04) 1 commit
931 - - Remove warning that repack only works on non-promisor packfiles
1181 + (merged to 'next' on 2021-07-01 at fe4c6280bc)
1182 + + Remove warning that repack only works on non-promisor packfiles
1183
1184 Docfix.
1185
935 - Will merge to 'next'.
1186 + Will merge to 'master'.
1187
1188
1189 * zh/cat-file-batch-fix (2021-06-04) 2 commits
939 - - cat-file: merge two block into one
940 - - cat-file: handle trivial --batch format with --batch-all-objects
1190 + (merged to 'next' on 2021-07-01 at 28b788e905)
1191 + + cat-file: merge two block into one
1192 + + cat-file: handle trivial --batch format with --batch-all-objects
1193 + (this branch is used by zh/ref-filter-raw-data.)
1194
1195 "git cat-file --batch-all-objects"" misbehaved when "--batch" is in
1196 use and did not ask for certain object traits.
1197
945 - Will merge to 'next'.
1198 + Will merge to 'master'.
1199
1200
1201 * fc/push-simple-updates (2021-06-02) 7 commits
@@ -982,12 +1235,13 @@ Release tarballs are available at:
1235
1236
1237 * tb/complete-diff-anchored (2021-05-31) 1 commit
985 - - completion: add --anchored to diff's options
1238 + (merged to 'next' on 2021-07-01 at 19878daaa9)
1239 + + completion: add --anchored to diff's options
1240
1241 The command line completion (in contrib/) learned that "git diff"
1242 takes the "--anchored" option.
1243
990 - Will merge to 'next'.
1244 + Will merge to 'master'.
1245
1246
1247 * en/ort-perf-batch-12 (2021-06-09) 4 commits
@@ -1001,40 +1255,44 @@ Release tarballs are available at:
1255 Will merge to 'next'.
1256
1257
1004 -* zh/ref-filter-raw-data (2021-06-28) 15 commits
1005 - . ref-filter: remove grab_oid() function
1006 - . cat-file: re-implement --textconv, --filters options
1007 - . cat-file: reuse err buf in batch_object_write()
1008 - . cat-file: reuse ref-filter logic
1009 - . cat-file: change batch_objects parameter name
1010 - . cat-file: add has_object_file() check
1011 - . ref-filter: modify the error message and value in get_object
1012 - . ref-filter: add cat_file_mode in struct ref_format
1013 - . ref-filter: introduce free_ref_array_item_value() function
1014 - . ref-filter: pass get_object() return value to their callers
1015 - . ref-filter: add %(rest) atom
1016 - . ref-filter: use non-const ref_format in *_atom_parser()
1017 - . ref-filter: --format=%(raw) re-support --perl
1018 - . ref-filter: add %(raw) atom
1019 - . ref-filter: add obj-type check in grab contents
1258 +* zh/ref-filter-raw-data (2021-07-01) 16 commits
1259 + - ref-filter: remove grab_oid() function
1260 + - cat-file: re-implement --textconv, --filters options
1261 + - cat-file: reuse err buf in batch_object_write()
1262 + - cat-file: reuse ref-filter logic
1263 + - cat-file: change batch_objects parameter name
1264 + - cat-file: add has_object_file() check
1265 + - ref-filter: modify the error message and value in get_object
1266 + - ref-filter: add cat_file_mode in struct ref_format
1267 + - ref-filter: introduce free_ref_array_item_value() function
1268 + - ref-filter: pass get_object() return value to their callers
1269 + - ref-filter: add %(rest) atom
1270 + - ref-filter: use non-const ref_format in *_atom_parser()
1271 + - ref-filter: --format=%(raw) re-support --perl
1272 + - ref-filter: add %(raw) atom
1273 + - ref-filter: add obj-type check in grab contents
1274 + - Merge branch 'zh/cat-file-batch-fix' into zh/ref-filter-raw-data
1275 + (this branch uses zh/cat-file-batch-fix.)
1276
1277 Prepare the "ref-filter" machinery that drives the "--format"
1278 option of "git for-each-ref" and its friends to be used in "git
1279 cat-file --batch".
1280
1025 - This conflicts with the other topic on "cat-file --batch" by the
1026 - same author.
1281
1282
1029 -* jh/builtin-fsmonitor (2021-05-24) 30 commits
1030 - - t/perf: avoid copying builtin fsmonitor files into test repo
1283 +* jh/builtin-fsmonitor (2021-07-01) 34 commits
1284 + - t7527: test FS event reporing on MacOS WRT case and Unicode
1285 + - fsmonitor: handle shortname for .git
1286 - t7527: test status with untracked-cache and fsmonitor--daemon
1032 - - p7519: add fsmonitor--daemon
1033 - - t7527: create test for fsmonitor--daemon
1287 - fsmonitor: force update index after large responses
1288 - fsmonitor: enhance existing comments
1289 - fsmonitor--daemon: use a cookie file to sync with file system
1290 - fsmonitor--daemon: periodically truncate list of modified files
1291 + - t7527: create test for fsmonitor--daemon
1292 + - t/perf/p7519: add fsmonitor--daemon test cases
1293 + - t/perf: avoid copying builtin fsmonitor files into test repo
1294 + - t/perf/p7519: speed up test using "test-tool touch"
1295 + - t/helper/test-touch: add helper to touch a series of files
1296 - fsmonitor--daemon: implement handle_client callback
1297 - fsmonitor-fs-listen-macos: implement FSEvent listener on MacOS
1298 - fsmonitor-fs-listen-macos: add macos header files for FSEvent
@@ -1042,26 +1300,26 @@ Release tarballs are available at:
1300 - fsmonitor--daemon: create token-based changed path cache
1301 - fsmonitor--daemon: define token-ids
1302 - fsmonitor--daemon: add pathname classification
1045 - - fsmonitor--daemon: implement daemon command options
1303 + - fsmonitor: do not try to operate on bare repos
1304 + - fsmonitor--daemon: implement 'start' command
1305 + - fsmonitor--daemon: implement 'run' command
1306 - fsmonitor-fs-listen-macos: stub in backend for MacOS
1307 - fsmonitor-fs-listen-win32: stub in backend for Windows
1308 - t/helper/fsmonitor-client: create IPC client to talk to FSMonitor Daemon
1049 - - fsmonitor--daemon: implement client command options
1309 + - fsmonitor--daemon: implement 'stop' and 'status' commands
1310 - fsmonitor--daemon: add a built-in fsmonitor daemon
1051 - - fsmonitor: introduce `core.useBuiltinFSMonitor` to call the daemon via IPC
1052 - - config: FSMonitor is repository-specific
1311 + - fsmonitor: use IPC to query the builtin FSMonitor daemon
1312 + - fsmonitor: config settings are repository-specific
1313 - help: include fsmonitor--daemon feature flag in version info
1314 - fsmonitor-ipc: create client routines for git-fsmonitor--daemon
1315 - fsmonitor--daemon: update fsmonitor documentation
1316 - fsmonitor--daemon: man page
1317 - simple-ipc: preparations for supporting binary messages.
1058 - - Merge branch 'jk/perf-in-worktrees' into HEAD
1059 - - Merge branch 'jh/simple-ipc' into jh/rfc-builtin-fsmonitor
1318
1319 An attempt to write and ship with a watchman equivalent tailored
1320 for our use.
1321
1064 - What's the status of this one?
1322 + Will merge to 'next'.
1323
1324
1325 * es/trace2-log-parent-process-name (2021-06-09) 1 commit
@@ -1199,6 +1457,7 @@ Release tarballs are available at:
1457 This seems to give more readable result than Stolee's "use singular
1458 they" topic.
1459
1460 + Will discard.
1461 Now is a part of the ds/gender-neutral-doc topic.
1462
1463
@@ -1243,8 +1502,9 @@ Release tarballs are available at:
1502
1503 Propose hook scripts defined in the configuration.
1504
1246 - Tentatively kicked out to give ab/config-based-hooks-base a chance
1247 - to interact with other topics in flight.
1505 + Will discard.
1506 + ab/config-based-hooks-base refactors the preparatory part so that
1507 + the new feature in this topic can be rebased on top.
1508
1509
1510 * bc/doc-asciidoctor-to-man-wo-xmlto (2021-05-14) 2 commits
@@ -1253,3 +1513,5 @@ Release tarballs are available at:
1513
1514 An option to render the manual pages via AsciiDoctor bypassing
1515 xmlto has been introduced.
1516 +
1517 + Will discard.