What's cooking (2021/04 #04)

Junio C Hamano committed Apr 15, 2021 at 14:55 UTC 4487e080a248726cfbf5c05d0097b4d4b993a11d
1 file changed +425 -353
whats-cooking.txt
+425 -353
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Apr 2021, #03; Mon, 12)
4 -X-master-at: 89b43f80a514aee58b662ad606e6352e03eaeee4
5 -X-next-at: 7d1e84936f59976b1fce260a447d8781a07cd620
3 +Subject: What's cooking in git.git (Apr 2021, #04; Thu, 15)
4 +X-master-at: d1b10fc6d84d49796026e567833b88c7f8886c35
5 +X-next-at: 2be84b2adec173cb8ec032d604b94d60c1637cb9
6
7 -What's cooking in git.git (Apr 2021, #03; Mon, 12)
7 +What's cooking in git.git (Apr 2021, #04; Thu, 15)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with '-' are
@@ -40,14 +40,362 @@ Release tarballs are available at:
40
41 https://www.kernel.org/pub/software/scm/git/
42
43 +--------------------------------------------------
44 +[Graduated to 'master']
45 +
46 +* ab/complete-cherry-pick-head (2021-04-07) 1 commit
47 + (merged to 'next' on 2021-04-09 at 5810d0e2c2)
48 + + bash completion: complete CHERRY_PICK_HEAD
49 +
50 + The command line completion (in contrib/) has learned that
51 + CHERRY_PICK_HEAD is a possible pseudo-ref.
52 +
53 +
54 +* ab/detox-config-gettext (2021-04-08) 1 commit
55 + (merged to 'next' on 2021-04-08 at 01d6ff5069)
56 + + config.c: remove last remnant of GIT_TEST_GETTEXT_POISON
57 +
58 + The last remnant of gettext-poison has been removed.
59 +
60 +
61 +* ab/perl-do-not-abuse-map (2021-04-02) 1 commit
62 + (merged to 'next' on 2021-04-03 at 4eaf558557)
63 + + git-send-email: replace "map" in void context with "for"
64 + (this branch is used by ab/send-email-validate-errors.)
65 +
66 + Perl critique.
67 +
68 +
69 +* ab/send-email-validate-errors (2021-04-06) 3 commits
70 + (merged to 'next' on 2021-04-06 at d7fb1dbde0)
71 + + git-send-email: improve --validate error output
72 + + git-send-email: refactor duplicate $? checks into a function
73 + + git-send-email: test full --validate output
74 + (this branch uses ab/perl-do-not-abuse-map.)
75 +
76 + Clean-up codepaths that implements "git send-email --validate"
77 + option and improves the message from it.
78 +
79 +
80 +* cc/test-helper-bloom-usage-fix (2021-04-05) 1 commit
81 + (merged to 'next' on 2021-04-06 at 4895f33fee)
82 + + test-bloom: fix missing 'bloom' from usage string
83 +
84 + Usage message fix for a test helper.
85 +
86 +
87 +* fm/user-manual-use-preface (2021-04-03) 1 commit
88 + (merged to 'next' on 2021-04-05 at 0ae8f63207)
89 + + user-manual.txt: assign preface an id and a title
90 +
91 + Doc update to improve git.info
92 +
93 +
94 +* gk/gitweb-redacted-email (2021-04-08) 1 commit
95 + (merged to 'next' on 2021-04-08 at 8a19c3cd6e)
96 + + gitweb: add "e-mail privacy" feature to redact e-mail addresses
97 +
98 + "gitweb" learned "e-mail privacy" feature to redact strings that
99 + look like e-mail addresses on various pages.
100 +
101 +
102 +* jk/ref-filter-segfault-fix (2021-04-01) 1 commit
103 + (merged to 'next' on 2021-04-02 at 03596563b7)
104 + + ref-filter: fix NULL check for parse object failure
105 +
106 + A NULL-dereference bug has been corrected in an error codepath in
107 + "git for-each-ref", "git branch --list" etc.
108 +
109 +
110 +* jz/apply-3way-cached (2021-04-07) 1 commit
111 + (merged to 'next' on 2021-04-09 at 7d1e84936f)
112 + + git-apply: allow simultaneous --cached and --3way options
113 + (this branch uses jz/apply-run-3way-first.)
114 +
115 + "git apply" now takes "--3way" and "--cached" at the same time, and
116 + work and record results only in the index.
117 +
118 +
119 +* jz/apply-run-3way-first (2021-04-06) 1 commit
120 + (merged to 'next' on 2021-04-08 at f826bcc6b8)
121 + + git-apply: try threeway first when "--3way" is used
122 + (this branch is used by jz/apply-3way-cached.)
123 +
124 + "git apply --3way" has always been "to fall back to 3-way merge
125 + only when straight application fails". Swap the order of falling
126 + back so that 3-way is always attempted first (only when the option
127 + is given, of course) and then straight patch application is used as
128 + a fallback when it fails.
129 +
130 +
131 +* tb/pack-preferred-tips-to-give-bitmap (2021-03-31) 3 commits
132 + (merged to 'next' on 2021-04-03 at cd7024ecd8)
133 + + builtin/pack-objects.c: respect 'pack.preferBitmapTips'
134 + + t/helper/test-bitmap.c: initial commit
135 + + pack-bitmap: add 'test_bitmap_commits()' helper
136 + (this branch is used by tb/multi-pack-bitmaps.)
137 +
138 + A configuration variable has been added to force tips of certain
139 + refs to be given a reachability bitmap.
140 +
141 +
142 +* tb/precompose-prefix-simplify (2021-04-05) 2 commits
143 + (merged to 'next' on 2021-04-05 at 78e8ed11b7)
144 + + macOS: precompose startup_info->prefix
145 + + precompose_utf8: make precompose_string_if_needed() public
146 +
147 + Streamline the codepath to fix the UTF-8 encoding issues in the
148 + argv[] and the prefix on macOS.
149 +
150 +
151 +* vs/completion-with-set-u (2021-04-08) 1 commit
152 + (merged to 'next' on 2021-04-08 at b9b8bde89d)
153 + + completion: audit and guard $GIT_* against unset use
154 +
155 + The command-line completion script (in contrib/) had a couple of
156 + references that would have given a warning under the "-u" (nounset)
157 + option.
158 +
159 --------------------------------------------------
160 [New Topics]
161
162 +* ab/detox-gettext-tests (2021-04-13) 1 commit
163 + (merged to 'next' on 2021-04-15 at db0da2903a)
164 + + tests: remove all uses of test_i18cmp
165 +
166 + Test clean-up.
167 +
168 + Will merge to 'master'.
169 +
170 +
171 +* ab/fsck-unexpected-type (2021-04-13) 6 commits
172 + - fsck: report invalid object type-path combinations
173 + - fsck: report invalid types recorded in objects
174 + - object-store.h: move read_loose_object() below 'struct object_info'
175 + - fsck: don't hard die on invalid object types
176 + - fsck tests: refactor one test to use a sub-repo
177 + - cache.h: move object functions to object-store.h
178 +
179 + "git fsck" has been taught to report mismatch between expected and
180 + actual types of an object better.
181 +
182 +
183 +* ab/usage-error-docs (2021-04-13) 3 commits
184 + (merged to 'next' on 2021-04-15 at dbbbaa5eea)
185 + + api docs: document that BUG() emits a trace2 error event
186 + + api docs: document BUG() in api-error-handling.txt
187 + + usage.c: don't copy/paste the same comment three times
188 +
189 + Documentation updates, with unrelated comment updates, too.
190 +
191 + Will merge to 'master'.
192 +
193 +
194 +* jk/promisor-optim (2021-04-13) 3 commits
195 + (merged to 'next' on 2021-04-15 at 41f303ef9b)
196 + + revision: avoid parsing with --exclude-promisor-objects
197 + + lookup_unknown_object(): take a repository argument
198 + + is_promisor_object(): free tree buffer after parsing
199 + (this branch is used by rs/repack-without-loosening-promised-objects.)
200 +
201 + Handling of "promisor packs" that allows certain objects to be
202 + missing and lazily retrievable has been optimized (a bit).
203 +
204 + Will merge to 'master'.
205 +
206 +
207 +* so/log-diff-merge (2021-04-13) 5 commits
208 + - doc/diff-options: document new --diff-merges features
209 + - diff-merges: introduce log.diffMerges config variable
210 + - diff-merges: adapt -m to enable default diff format
211 + - diff-merges: refactor set_diff_merges()
212 + - diff-merges: introduce --diff-merges=on
213 +
214 + "git log" learned "--diff-merges=<style>" option, with an
215 + associated configuration variable log.diffMerges.
216 +
217 + Seems to break t9902.
218 +
219 +
220 +* rs/repack-without-loosening-promised-objects (2021-04-14) 2 commits
221 + - repack: avoid loosening promisor pack objects in partial clones
222 + - repack: teach --no-prune-packed to skip `git prune-packed`
223 + (this branch uses jk/promisor-optim.)
224 +
225 + "git repack -A -d" in a partial clone unnecessarily loosened
226 + objects in promisor pack.
227 +
228 +
229 +* jc/doc-do-not-capitalize-clarification (2021-04-14) 1 commit
230 + (merged to 'next' on 2021-04-15 at 873f7a1f84)
231 + + doc: clarify "do not capitalize the first word" rule
232 +
233 + Doc update for developers.
234 +
235 + Will merge to 'master'.
236 +
237 +
238 +* mt/pkt-write-errors (2021-04-15) 1 commit
239 + - pkt-line: do not report packet write errors twice
240 +
241 + When packet_write() fails, we gave an extra error message
242 + unnecessarily, which has been corrected.
243 +
244 + Will merge to 'next'.
245 +
246 +
247 +* ow/push-quiet-set-upstream (2021-04-15) 1 commit
248 + - transport: respect verbosity when setting upstream
249 +
250 + "git push --quiet --set-upstream" was not quiet when setting the
251 + upstream branch configuration, which has been corrected.
252 +
253 + Will merge to 'next'.
254 +
255 +--------------------------------------------------
256 +[Stalled]
257 +
258 +* dl/complete-stash (2021-03-24) 3 commits
259 + (merged to 'next' on 2021-03-24 at ce573a99cc)
260 + + git-completion.bash: use __gitcomp_builtin() in _git_stash()
261 + + git-completion.bash: extract from else in _git_stash()
262 + + git-completion.bash: pass $__git_subcommand_idx from __git_main()
263 +
264 + Update "git stash branch<TAB>" command line completion (in contrib/).
265 +
266 + On hold. Probably needs either a reroll or incremental refinements.
267 + cf. <20210327183554.GD2271@szeder.dev>
268 +
269 +
270 +* ag/merge-strategies-in-c (2021-03-17) 15 commits
271 + - sequencer: use the "octopus" merge strategy without forking
272 + - sequencer: use the "resolve" strategy without forking
273 + - merge: use the "octopus" strategy without forking
274 + - merge: use the "resolve" strategy without forking
275 + - merge-octopus: rewrite in C
276 + - merge-recursive: move better_branch_name() to merge.c
277 + - merge-resolve: rewrite in C
278 + - merge-one-file: rewrite in C
279 + - update-index: move add_cacheinfo() to read-cache.c
280 + - merge-index: add a new way to invoke `git-merge-one-file'
281 + - merge-index: drop the index
282 + - merge-index: libify merge_one_path() and merge_all()
283 + - t6060: add tests for removed files
284 + - t6060: modify multiple files to expose a possible issue with merge-index
285 + - t6407: modernise tests
286 +
287 + The resolve and octopus merge strategy backends have been rewritten
288 + in C.
289 +
290 + Expecting a (hopefully final) reroll.
291 + cf. <nycvar.QRO.7.76.6.2103241142220.50@tvgsbejvaqbjf.bet>
292 +
293 +
294 +* ab/unexpected-object-type (2021-04-14) 11 commits
295 + - fixup! object.c: stop supporting len == -1 in type_from_string_gently()
296 + - tag: don't misreport type of tagged objects in errors
297 + - object tests: add test for unexpected objects in tags
298 + - object.c: add and use oid_is_type_or_die_msg() function
299 + - object.c: add a utility function for "expected type X, got Y"
300 + - tree.c: fix misindentation in parse_tree_gently()
301 + - object-name.c: make dependency on object_type order more obvious
302 + - object-file.c: make oid_object_info() return "enum object_type"
303 + - object.c: make type_from_string() return "enum object_type"
304 + - object.c: refactor type_from_string_gently()
305 + - object.c: stop supporting len == -1 in type_from_string_gently()
306 +
307 + Error reporting upon object type mismatch has been improved
308 +
309 +
310 +* ab/describe-tests-fix (2021-04-12) 5 commits
311 + - describe tests: support -C in "check_describe"
312 + - describe tests: fix nested "test_expect_success" call
313 + - describe tests: don't rely on err.actual from "check_describe"
314 + - describe tests: refactor away from glob matching
315 + - describe tests: improve test for --work-tree & --dirty
316 + (this branch uses ab/test-lib-updates.)
317 +
318 + Various updates to tests around "git describe"
319 +
320 +
321 +* ab/pickaxe-pcre2 (2021-04-12) 22 commits
322 + - xdiff-interface: replace discard_hunk_line() with a flag
323 + - xdiff users: use designated initializers for out_line
324 + - pickaxe -G: don't special-case create/delete
325 + - pickaxe -G: terminate early on matching lines
326 + - xdiff-interface: allow early return from xdiff_emit_line_fn
327 + - xdiff-interface: prepare for allowing early return
328 + - pickaxe -S: slightly optimize contains()
329 + - pickaxe: rename variables in has_changes() for brevity
330 + - pickaxe -S: support content with NULs under --pickaxe-regex
331 + - pickaxe: assert that we must have a needle under -G or -S
332 + - pickaxe: refactor function selection in diffcore-pickaxe()
333 + - perf: add performance test for pickaxe
334 + - pickaxe/style: consolidate declarations and assignments
335 + - diff.h: move pickaxe fields together again
336 + - pickaxe: die when --find-object and --pickaxe-all are combined
337 + - pickaxe: die when -G and --pickaxe-regex are combined
338 + - pickaxe tests: add missing test for --no-pickaxe-regex being an error
339 + - pickaxe tests: test for -G, -S and --find-object incompatibility
340 + - pickaxe tests: add test for "log -S" not being a regex
341 + - pickaxe tests: add test for diffgrep_consume() internals
342 + - pickaxe tests: refactor to use test_commit --append --printf
343 + - grep/pcre2 tests: reword comments referring to kwset
344 + (this branch uses ab/test-lib-updates.)
345 +
346 + Rewrite the backend for "diff -G/-S" to use pcre2 engine when
347 + available.
348 +
349 +
350 +* es/config-hooks (2021-03-10) 36 commits
351 + . run-command: stop thinking about hooks
352 + . git-send-email: use 'git hook run' for 'sendemail-validate'
353 + . bugreport: use hook_exists instead of find_hook
354 + . receive-pack: convert receive hooks to hook.h
355 + . post-update: use hook.h library
356 + . proc-receive: acquire hook list from hook.h
357 + . receive-pack: convert 'update' hook to hook.h
358 + . reference-transaction: look for hooks in config
359 + . transport: convert pre-push hook to use config
360 + . hook: convert 'post-rewrite' hook to config
361 + . hooks: convert 'post-checkout' hook to hook library
362 + . git-p4: use 'git hook' to run hooks
363 + . receive-pack: convert push-to-checkout hook to hook.h
364 + . read-cache: convert post-index-change hook to use config
365 + . rebase: teach pre-rebase to use hook.h
366 + . gc: use hook library for pre-auto-gc hook
367 + . merge: use config-based hooks for post-merge hook
368 + . am: convert applypatch hooks to use config
369 + . commit: use config-based hooks
370 + . hooks: allow callers to capture output
371 + . run-command: allow capturing of collated output
372 + . hook: provide stdin by string_list or callback
373 + . run-command: add stdin callback for parallelization
374 + . hook: allow specifying working directory for hooks
375 + . hook: allow parallel hook execution
376 + . run-command: allow stdin for run_processes_parallel
377 + . hook: support passing stdin to hooks
378 + . hook: introduce hook_exists()
379 + . hook: add 'run' subcommand
380 + . parse-options: parse into strvec
381 + . hook: implement hookcmd.<name>.skip
382 + . hook: teach hook.runHookDir
383 + . hook: include hookdir hook in list
384 + . hook: add list command
385 + . hook: scaffolding for git-hook subcommand
386 + . doc: propose hooks managed by the config
387 +
388 + The "hooks defined in config" topic.
389 +
390 +--------------------------------------------------
391 +[Cooking]
392 +
393 * jt/fetch-pack-request-fix (2021-04-08) 1 commit
47 - - fetch-pack: buffer object-format with other args
394 + (merged to 'next' on 2021-04-15 at 25c02ce3c3)
395 + + fetch-pack: buffer object-format with other args
396 (this branch is used by jt/push-negotiation.)
397
50 - Will merge to 'next'.
398 + Will merge to 'master'.
399
400
401 * jt/push-negotiation (2021-04-08) 6 commits
@@ -64,6 +412,7 @@ Release tarballs are available at:
412
413 Waiting for reviews.
414
415 +
416 * ab/doc-lint (2021-04-10) 7 commits
417 - docs: fix linting issues due to incorrect relative section order
418 - doc lint: lint relative section order
@@ -143,8 +492,7 @@ Release tarballs are available at:
492 which can be used to exclude objects of the given kind from the
493 packfile generated by pack-objects.
494
146 - Waiting for reviews to conclude.
147 - cf. <cover.1618234575.git.ps@pks.im>
495 + Seems to break the tests when merged to 'seen'.
496
497
498 * tb/multi-pack-bitmaps (2021-04-10) 23 commits
@@ -171,7 +519,6 @@ Release tarballs are available at:
519 - pack-bitmap-write.c: gracefully fail to write non-closed bitmaps
520 - pack-bitmap.c: harden 'test_bitmap_walk()' to check type bitmaps
521 - Merge branch 'tb/pack-preferred-tips-to-give-bitmap' into tb/multi-pack-bitmaps
174 - (this branch uses tb/pack-preferred-tips-to-give-bitmap.)
522
523 The reachability bitmap file used to be generated only for a single
524 pack, but now we've learned to generate bitmaps for history that
@@ -215,238 +562,77 @@ Release tarballs are available at:
562
563
564 * ah/merge-ort-ubsan-fix (2021-04-12) 1 commit
218 - - merge-ort: only do pointer arithmetic for non-empty lists
565 + (merged to 'next' on 2021-04-13 at 41713a32bd)
566 + + merge-ort: only do pointer arithmetic for non-empty lists
567
568 Code clean-up for merge-ort backend.
569
222 - Will merge to 'next'?
223 -
224 -
225 -* ao/p4-avoid-decoding (2021-04-12) 2 commits
226 - - git-p4: do not decode data from perforce by default
227 - - git-p4: avoid decoding more data from perforce
228 -
229 - "git p4" in Python-2 days used to accept a lot more kinds of data
230 - from Perforce server as uninterrupted byte sequence, but after
231 - switching to Python-3, too many things are expected to be in UTF-8,
232 - which broke traditional use cases.
233 -
234 - Waiting for reviews.
235 -
236 -
237 -* hn/refs-trace-errno (2021-04-12) 1 commit
238 - - refs: print errno for read_raw_ref if GIT_TRACE_REFS is set
239 -
240 - Show errno in the trace output in the error codepath that calls
241 - read_raw_ref method.
242 -
243 - Waiting for reviews to conclude.
244 - cf. <xmqq4kgbb2ic.fsf@gitster.g>
245 -
246 -
247 -* hn/reftable-tables-doc-update (2021-04-12) 1 commit
248 - - reftable: document an alternate cleanup method on Windows
249 -
250 - Doc updte.
251 -
252 - Will merge to 'next'.
253 -
254 -
255 -* jk/pack-objects-bitmap-progress-fix (2021-04-12) 1 commit
256 - - pack-objects: update "nr_seen" progress based on pack-reused count
257 -
258 - When "git pack-objects" makes a literal copy of a part of existing
259 - packfile using the reachability bitmaps, its update to the progress
260 - meter was broken.
261 -
262 - Will merge to 'next'.
263 -
264 -
265 -* ma/t0091-bugreport-fix (2021-04-12) 1 commit
266 - - t0091-bugreport.sh: actually verify some content of report
267 -
268 - Test fix.
269 -
270 - Waiting for an Ack.
271 -
272 -
273 -* ps/config-global-override (2021-04-12) 3 commits
274 - - config: allow overriding of global and system configuration
275 - - config: unify code paths to get global config paths
276 - - config: rename `git_etc_config()`
277 -
278 - Replace GIT_CONFIG_NOSYSTEM mechanism to decline from reading the
279 - system-wide configuration file with GIT_CONFIG_SYSTEM that lets
280 - users specify from which file to read the system-wide configuration
281 - (setting it to an empty file would essentially be the same as
282 - setting NOSYSTEM), and introduce GIT_CONFIG_GLOBAL to override the
283 - per-user configuration in $HOME/.gitconfig.
284 -
285 - Expecting a (hopefully final) reroll.
286 - cf. <xmqq4kgbfn8o.fsf@gitster.g>
287 -
288 ---------------------------------------------------
289 -[Stalled]
290 -
291 -* dl/complete-stash (2021-03-24) 3 commits
292 - (merged to 'next' on 2021-03-24 at ce573a99cc)
293 - + git-completion.bash: use __gitcomp_builtin() in _git_stash()
294 - + git-completion.bash: extract from else in _git_stash()
295 - + git-completion.bash: pass $__git_subcommand_idx from __git_main()
296 -
297 - Update "git stash branch<TAB>" command line completion (in contrib/).
298 -
299 - On hold. Probably needs either a reroll or incremental refinements.
300 - cf. <20210327183554.GD2271@szeder.dev>
301 -
570 + Will merge to 'master'.
571
303 -* ag/merge-strategies-in-c (2021-03-17) 15 commits
304 - - sequencer: use the "octopus" merge strategy without forking
305 - - sequencer: use the "resolve" strategy without forking
306 - - merge: use the "octopus" strategy without forking
307 - - merge: use the "resolve" strategy without forking
308 - - merge-octopus: rewrite in C
309 - - merge-recursive: move better_branch_name() to merge.c
310 - - merge-resolve: rewrite in C
311 - - merge-one-file: rewrite in C
312 - - update-index: move add_cacheinfo() to read-cache.c
313 - - merge-index: add a new way to invoke `git-merge-one-file'
314 - - merge-index: drop the index
315 - - merge-index: libify merge_one_path() and merge_all()
316 - - t6060: add tests for removed files
317 - - t6060: modify multiple files to expose a possible issue with merge-index
318 - - t6407: modernise tests
572
320 - The resolve and octopus merge strategy backends have been rewritten
321 - in C.
573 +* ao/p4-avoid-decoding (2021-04-12) 2 commits
574 + - git-p4: do not decode data from perforce by default
575 + - git-p4: avoid decoding more data from perforce
576
323 - Expecting a (hopefully final) reroll.
324 - cf. <nycvar.QRO.7.76.6.2103241142220.50@tvgsbejvaqbjf.bet>
577 + "git p4" in Python-2 days used to accept a lot more kinds of data
578 + from Perforce server as uninterrupted byte sequence, but after
579 + switching to Python-3, too many things are expected to be in UTF-8,
580 + which broke traditional use cases.
581
582 + Waiting for reviews.
583
327 -* ab/unexpected-object-type (2021-03-27) 10 commits
328 - - tag: don't misreport type of tagged objects in errors
329 - - object tests: add test for unexpected objects in tags
330 - - object.c: add and use oid_is_type_or_die_msg() function
331 - - object.c: add a utility function for "expected type X, got Y"
332 - - tree.c: fix misindentation in parse_tree_gently()
333 - - object-name.c: make dependency on object_type order more obvious
334 - - object-file.c: make oid_object_info() return "enum object_type"
335 - - object.c: make type_from_string() return "enum object_type"
336 - - object.c: refactor type_from_string_gently()
337 - - object.c: stop supporting len == -1 in type_from_string_gently()
584
339 - Error reporting upon object type mismatch has been improved
585 +* hn/refs-trace-errno (2021-04-12) 1 commit
586 + - refs: print errno for read_raw_ref if GIT_TRACE_REFS is set
587
341 - Expecting a reroll.
342 - cf. <YGBL88lYheyFmwCg@coredump.intra.peff.net>
343 - ... we would be much better off to say something like "somebody
344 - expected X to be a commit, but now somebody else expects it to be a
345 - blob", which is all that we can reliably say.
588 + Show errno in the trace output in the error codepath that calls
589 + read_raw_ref method.
590
591 + Waiting for reviews to conclude.
592 + cf. <xmqq4kgbb2ic.fsf@gitster.g>
593
348 -* ab/describe-tests-fix (2021-04-12) 5 commits
349 - - describe tests: support -C in "check_describe"
350 - - describe tests: fix nested "test_expect_success" call
351 - - describe tests: don't rely on err.actual from "check_describe"
352 - - describe tests: refactor away from glob matching
353 - - describe tests: improve test for --work-tree & --dirty
354 - (this branch uses ab/test-lib-updates.)
594
356 - Various updates to tests around "git describe"
595 +* hn/reftable-tables-doc-update (2021-04-12) 1 commit
596 + (merged to 'next' on 2021-04-13 at cdadb2c621)
597 + + reftable: document an alternate cleanup method on Windows
598
599 + Doc updte.
600
359 -* ab/pickaxe-pcre2 (2021-04-12) 22 commits
360 - - xdiff-interface: replace discard_hunk_line() with a flag
361 - - xdiff users: use designated initializers for out_line
362 - - pickaxe -G: don't special-case create/delete
363 - - pickaxe -G: terminate early on matching lines
364 - - xdiff-interface: allow early return from xdiff_emit_line_fn
365 - - xdiff-interface: prepare for allowing early return
366 - - pickaxe -S: slightly optimize contains()
367 - - pickaxe: rename variables in has_changes() for brevity
368 - - pickaxe -S: support content with NULs under --pickaxe-regex
369 - - pickaxe: assert that we must have a needle under -G or -S
370 - - pickaxe: refactor function selection in diffcore-pickaxe()
371 - - perf: add performance test for pickaxe
372 - - pickaxe/style: consolidate declarations and assignments
373 - - diff.h: move pickaxe fields together again
374 - - pickaxe: die when --find-object and --pickaxe-all are combined
375 - - pickaxe: die when -G and --pickaxe-regex are combined
376 - - pickaxe tests: add missing test for --no-pickaxe-regex being an error
377 - - pickaxe tests: test for -G, -S and --find-object incompatibility
378 - - pickaxe tests: add test for "log -S" not being a regex
379 - - pickaxe tests: add test for diffgrep_consume() internals
380 - - pickaxe tests: refactor to use test_commit --append --printf
381 - - grep/pcre2 tests: reword comments referring to kwset
382 - (this branch uses ab/test-lib-updates.)
601 + Will merge to 'master'.
602
384 - Rewrite the backend for "diff -G/-S" to use pcre2 engine when
385 - available.
603
604 +* jk/pack-objects-bitmap-progress-fix (2021-04-12) 1 commit
605 + (merged to 'next' on 2021-04-13 at bbe18a7b3a)
606 + + pack-objects: update "nr_seen" progress based on pack-reused count
607
388 -* es/config-hooks (2021-03-10) 36 commits
389 - . run-command: stop thinking about hooks
390 - . git-send-email: use 'git hook run' for 'sendemail-validate'
391 - . bugreport: use hook_exists instead of find_hook
392 - . receive-pack: convert receive hooks to hook.h
393 - . post-update: use hook.h library
394 - . proc-receive: acquire hook list from hook.h
395 - . receive-pack: convert 'update' hook to hook.h
396 - . reference-transaction: look for hooks in config
397 - . transport: convert pre-push hook to use config
398 - . hook: convert 'post-rewrite' hook to config
399 - . hooks: convert 'post-checkout' hook to hook library
400 - . git-p4: use 'git hook' to run hooks
401 - . receive-pack: convert push-to-checkout hook to hook.h
402 - . read-cache: convert post-index-change hook to use config
403 - . rebase: teach pre-rebase to use hook.h
404 - . gc: use hook library for pre-auto-gc hook
405 - . merge: use config-based hooks for post-merge hook
406 - . am: convert applypatch hooks to use config
407 - . commit: use config-based hooks
408 - . hooks: allow callers to capture output
409 - . run-command: allow capturing of collated output
410 - . hook: provide stdin by string_list or callback
411 - . run-command: add stdin callback for parallelization
412 - . hook: allow specifying working directory for hooks
413 - . hook: allow parallel hook execution
414 - . run-command: allow stdin for run_processes_parallel
415 - . hook: support passing stdin to hooks
416 - . hook: introduce hook_exists()
417 - . hook: add 'run' subcommand
418 - . parse-options: parse into strvec
419 - . hook: implement hookcmd.<name>.skip
420 - . hook: teach hook.runHookDir
421 - . hook: include hookdir hook in list
422 - . hook: add list command
423 - . hook: scaffolding for git-hook subcommand
424 - . doc: propose hooks managed by the config
608 + When "git pack-objects" makes a literal copy of a part of existing
609 + packfile using the reachability bitmaps, its update to the progress
610 + meter was broken.
611
426 - The "hooks defined in config" topic.
612 + Will merge to 'master'.
613
428 ---------------------------------------------------
429 -[Cooking]
614
431 -* cc/test-helper-bloom-usage-fix (2021-04-05) 1 commit
432 - (merged to 'next' on 2021-04-06 at 4895f33fee)
433 - + test-bloom: fix missing 'bloom' from usage string
615 +* ma/t0091-bugreport-fix (2021-04-12) 1 commit
616 + - t0091-bugreport.sh: actually verify some content of report
617
435 - Usage message fix for a test helper.
618 + Test fix.
619
437 - Will merge to 'master'.
620 + Expecting a reroll.
621 + cf. <YHYZTLl90rkWWVOr@google.com>, <87a6q22dei.fsf@evledraar.gmail.com>
622
623
440 -* jz/apply-run-3way-first (2021-04-06) 1 commit
441 - (merged to 'next' on 2021-04-08 at f826bcc6b8)
442 - + git-apply: try threeway first when "--3way" is used
443 - (this branch is used by jz/apply-3way-cached.)
624 +* ps/config-global-override (2021-04-13) 3 commits
625 + (merged to 'next' on 2021-04-15 at 60a58d74ab)
626 + + config: allow overriding of global and system configuration
627 + + config: unify code paths to get global config paths
628 + + config: rename `git_etc_config()`
629
445 - "git apply --3way" has always been "to fall back to 3-way merge
446 - only when straight application fails". Swap the order of falling
447 - back so that 3-way is always attempted first (only when the option
448 - is given, of course) and then straight patch application is used as
449 - a fallback when it fails.
630 + Replace GIT_CONFIG_NOSYSTEM mechanism to decline from reading the
631 + system-wide configuration file with GIT_CONFIG_SYSTEM that lets
632 + users specify from which file to read the system-wide configuration
633 + (setting it to an empty file would essentially be the same as
634 + setting NOSYSTEM), and introduce GIT_CONFIG_GLOBAL to override the
635 + per-user configuration in $HOME/.gitconfig.
636
637 Will merge to 'master'.
638
@@ -465,16 +651,6 @@ Release tarballs are available at:
651 cf. <e7f09182-3b75-f2a3-c9c7-0055cc377a32@gmail.com>
652
653
468 -* ab/complete-cherry-pick-head (2021-04-07) 1 commit
469 - (merged to 'next' on 2021-04-09 at 5810d0e2c2)
470 - + bash completion: complete CHERRY_PICK_HEAD
471 -
472 - The command line completion (in contrib/) has learned that
473 - CHERRY_PICK_HEAD is a possible pseudo-ref.
474 -
475 - Will merge to 'master'.
476 -
477 -
654 * mr/bisect-in-c-4 (2021-04-11) 4 commits
655 - bisect--helper: retire `--bisect-next-check` subcommand
656 - bisect--helper: reimplement `bisect_run` shell function in C
@@ -484,39 +660,9 @@ Release tarballs are available at:
660 The codepaths involved in running "git bisect visualize" and "git
661 bisect run" has been rewritten in C.
662
487 -
663 + Expecting a reroll.
664 cf. <xmqq35vwh8qk.fsf@gitster.g>, <xmqqy2doftrj.fsf@gitster.g>
489 -
490 -
491 -* ab/detox-config-gettext (2021-04-08) 1 commit
492 - (merged to 'next' on 2021-04-08 at 01d6ff5069)
493 - + config.c: remove last remnant of GIT_TEST_GETTEXT_POISON
494 -
495 - The last remnant of gettext-poison has been removed.
496 -
497 - Will merge to 'master'.
498 -
499 -
500 -* jz/apply-3way-cached (2021-04-07) 1 commit
501 - (merged to 'next' on 2021-04-09 at 7d1e84936f)
502 - + git-apply: allow simultaneous --cached and --3way options
503 - (this branch uses jz/apply-run-3way-first.)
504 -
505 - "git apply" now takes "--3way" and "--cached" at the same time, and
506 - work and record results only in the index.
507 -
508 - Will merge to 'master'.
509 -
510 -
511 -* vs/completion-with-set-u (2021-04-08) 1 commit
512 - (merged to 'next' on 2021-04-08 at b9b8bde89d)
513 - + completion: audit and guard $GIT_* against unset use
514 -
515 - The command-line completion script (in contrib/) had a couple of
516 - references that would have given a warning under the "-u" (nounset)
517 - option.
518 -
519 - Will merge to 'master'.
665 + May want to boost the test coverage.
666
667
668 * sg/bugreport-fixes (2021-04-08) 1 commit
@@ -569,39 +715,6 @@ Release tarballs are available at:
715 - Merge branch 'jh/simple-ipc' into jh/rfc-builtin-fsmonitor
716
717
572 -* jk/ref-filter-segfault-fix (2021-04-01) 1 commit
573 - (merged to 'next' on 2021-04-02 at 03596563b7)
574 - + ref-filter: fix NULL check for parse object failure
575 -
576 - A NULL-dereference bug has been corrected in an error codepath in
577 - "git for-each-ref", "git branch --list" etc.
578 -
579 - Will merge to 'master'.
580 -
581 -
582 -* tb/pack-preferred-tips-to-give-bitmap (2021-03-31) 3 commits
583 - (merged to 'next' on 2021-04-03 at cd7024ecd8)
584 - + builtin/pack-objects.c: respect 'pack.preferBitmapTips'
585 - + t/helper/test-bitmap.c: initial commit
586 - + pack-bitmap: add 'test_bitmap_commits()' helper
587 - (this branch is used by tb/multi-pack-bitmaps.)
588 -
589 - A configuration variable has been added to force tips of certain
590 - refs to be given a reachability bitmap.
591 -
592 - Will merge to 'master'.
593 -
594 -
595 -* ab/perl-do-not-abuse-map (2021-04-02) 1 commit
596 - (merged to 'next' on 2021-04-03 at 4eaf558557)
597 - + git-send-email: replace "map" in void context with "for"
598 - (this branch is used by ab/send-email-validate-errors.)
599 -
600 - Perl critique.
601 -
602 - Will merge to 'master'.
603 -
604 -
718 * zh/trailer-cmd (2021-04-12) 2 commits
719 - trailer: add new .cmd config option
720 - docs: correct descript of trailer.<token>.command
@@ -618,73 +731,31 @@ Release tarballs are available at:
731 cf. <xmqqwnt7b5fg.fsf@gitster.g>
732
733
621 -* fm/user-manual-use-preface (2021-04-03) 1 commit
622 - (merged to 'next' on 2021-04-05 at 0ae8f63207)
623 - + user-manual.txt: assign preface an id and a title
624 -
625 - Doc update to improve git.info
626 -
627 - Will merge to 'master'.
628 -
629 -
630 -* ab/send-email-validate-errors (2021-04-06) 3 commits
631 - (merged to 'next' on 2021-04-06 at d7fb1dbde0)
632 - + git-send-email: improve --validate error output
633 - + git-send-email: refactor duplicate $? checks into a function
634 - + git-send-email: test full --validate output
635 - (this branch uses ab/perl-do-not-abuse-map.)
636 -
637 - Clean-up codepaths that implements "git send-email --validate"
638 - option and improves the message from it.
639 -
640 - Will merge to 'master'.
641 -
642 -
643 -* tb/precompose-prefix-simplify (2021-04-05) 2 commits
644 - (merged to 'next' on 2021-04-05 at 78e8ed11b7)
645 - + macOS: precompose startup_info->prefix
646 - + precompose_utf8: make precompose_string_if_needed() public
647 -
648 - Streamline the codepath to fix the UTF-8 encoding issues in the
649 - argv[] and the prefix on macOS.
650 -
651 - Will merge to 'master'.
652 -
653 -
734 * ab/userdiff-tests (2021-04-08) 9 commits
655 - - blame tests: simplify userdiff driver test
656 - - blame tests: don't rely on t/t4018/ directory
657 - - userdiff: remove support for "broken" tests
658 - - userdiff tests: list builtin drivers via test-tool
659 - - userdiff tests: explicitly test "default" pattern
660 - - userdiff: add and use for_each_userdiff_driver()
661 - - userdiff style: normalize pascal regex declaration
662 - - userdiff style: declare patterns with consistent style
663 - - userdiff style: re-order drivers in alphabetical order
735 + (merged to 'next' on 2021-04-13 at 35fb0e853d)
736 + + blame tests: simplify userdiff driver test
737 + + blame tests: don't rely on t/t4018/ directory
738 + + userdiff: remove support for "broken" tests
739 + + userdiff tests: list builtin drivers via test-tool
740 + + userdiff tests: explicitly test "default" pattern
741 + + userdiff: add and use for_each_userdiff_driver()
742 + + userdiff style: normalize pascal regex declaration
743 + + userdiff style: declare patterns with consistent style
744 + + userdiff style: re-order drivers in alphabetical order
745
746 A bit of code clean-up and a lot of test clean-up around userdiff
747 area.
748
668 - Will merge to 'next'?
749 + Will merge to 'master'.
750
751
752 * ar/userdiff-scheme (2021-04-08) 1 commit
672 - - userdiff: add support for Scheme
753 + (merged to 'next' on 2021-04-13 at eb80d55a8c)
754 + + userdiff: add support for Scheme
755
756 Userdiff patterns for "Scheme" has been added.
757
676 - Will merge to 'next'?
677 -
678 -
679 -* gk/gitweb-redacted-email (2021-04-08) 1 commit
680 - (merged to 'next' on 2021-04-08 at 8a19c3cd6e)
681 - + gitweb: add "e-mail privacy" feature to redact e-mail addresses
682 -
683 - "gitweb" learned "e-mail privacy" feature to redact strings that
684 - look like e-mail addresses on various pages.
685 -
686 - Waiting for reviews.
687 - cf. <xmqq5z19k9wu.fsf@gitster.g>
758 + Will merge to 'master'.
759
760
761 * ds/sparse-index (2021-03-30) 21 commits
@@ -746,7 +817,7 @@ Release tarballs are available at:
817 - unpack-trees: add basic support for parallel checkout
818
819
749 -* ds/sparse-index-protections (2021-04-12) 26 commits
820 +* ds/sparse-index-protections (2021-04-14) 26 commits
821 - name-hash: use expand_to_path()
822 - sparse-index: expand_to_path()
823 - name-hash: don't add directories to name_hash
@@ -800,10 +871,11 @@ Release tarballs are available at:
871 Plug the ort merge backend throughout the rest of the system, and
872 start testing it as a replacement for the recursive backend.
873
803 - Will merge to 'next'.
874 + Will merge to 'master'.
875
876
806 -* hn/reftable (2021-04-12) 20 commits
877 +* hn/reftable (2021-04-14) 21 commits
878 + - SQUASH??? reftable: prepare for hash-algo recorded in each oid
879 - Add "test-tool dump-reftable" command.
880 - git-prompt: prepare for reftable refs backend
881 - Reftable support for git-core
@@ -846,10 +918,10 @@ Release tarballs are available at:
918
919
920 * ab/tests-cleanup-around-sha1 (2021-03-10) 4 commits
849 - - tests: get rid of $_x05 from the test suite
850 - - shortlog tests: rewrite to get rid of --abbrev=35 hardcoding
851 - - test-lib: remove unused $_x40 and $_z40 variables
852 - - git-bisect: remove unused SHA-1 $x40 shell variable
921 + . tests: get rid of $_x05 from the test suite
922 + . shortlog tests: rewrite to get rid of --abbrev=35 hardcoding
923 + . test-lib: remove unused $_x40 and $_z40 variables
924 + . git-bisect: remove unused SHA-1 $x40 shell variable
925
926 Remove variables that hold regexp and glob that match fixed number
927 of hexadecimal digits from the test suite.