What's cooking (2020/01 #04)

Junio C Hamano committed Jan 22, 2020 at 14:13 UTC d5bf2f5c779ec39408745adee9b03a2ad2b5cf51
1 file changed +518 -257
whats-cooking.txt
+518 -257
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Jan 2020, #03; Mon, 6)
4 -X-master-at: 042ed3e048af08014487d19196984347e3be7d1c
5 -X-next-at: 4be2e8caa8c47dbdd529c8bfc969f20ba90d340b
3 +Subject: What's cooking in git.git (Jan 2020, #04; Wed, 22)
4 +X-master-at: 232378479ee6c66206d47a9be175e3a39682aea6
5 +X-next-at: 3f081b084b0e55662871946d66dab3696a46a22a
6
7 -What's cooking in git.git (Jan 2020, #03; Mon, 6)
7 +What's cooking in git.git (Jan 2020, #04; Wed, 22)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -12,8 +12,9 @@ Here are the topics that have been cooking. Commits prefixed with
12 '+' are in 'next'. The ones marked with '.' do not appear in any of
13 the integration branches, but I am still holding onto them.
14
15 -After the topics marked to be merged to 'master' go in, the tip of
16 -the master will hopefully be very close to the final release.
15 +Git 2.25 is out. The tip of 'next' has been rewound and a handful
16 +of topics have been rebased to avoid the premature merge of
17 +ra/rebase-i-more-options which has been reverted.
18
19 You can find the changes described here in the integration branches
20 of the repositories listed at
@@ -23,88 +24,361 @@ of the repositories listed at
24 --------------------------------------------------
25 [Graduated to "master"]
26
26 -* ds/commit-graph-set-size-mult (2020-01-02) 1 commit
27 - (merged to 'next' on 2020-01-04 at 71ea739a6c)
28 - + commit-graph: prefer default size_mult when given zero
27 +* do/gitweb-typofix-in-comments (2020-01-04) 1 commit
28 + (merged to 'next' on 2020-01-06 at 66ce6539c4)
29 + + gitweb: fix a couple spelling errors in comments
30
30 - The code to write split commit-graph file(s) upon fetching computed
31 - bogus value for the parameter used in splitting the resulting
32 - files, which has been corrected.
31 + Typofix.
32
33
35 -* ds/sparse-cone (2020-01-04) 2 commits
36 - (merged to 'next' on 2020-01-04 at cc4b6fbb41)
37 - + Documentation/git-sparse-checkout.txt: fix a typo
38 - + sparse-checkout: use extern for global variables
34 +* ds/graph-assert-fix (2020-01-08) 2 commits
35 + (merged to 'next' on 2020-01-08 at 4b896fb9b5)
36 + + graph: fix lack of color in horizontal lines
37 + + graph: drop assert() for merge with two collapsing parents
38 + (this branch is used by ds/graph-horizontal-edges.)
39
40 - Code cleanup.
40 + Since recent updates to the log graph rendering code, drawing
41 + certain merges started triggering an assert on a condition that
42 + would no longer hold true, which has been corrected.
43
44
43 -* ds/sparse-list-in-cone-mode (2019-12-30) 2 commits
44 - (merged to 'next' on 2020-01-04 at e1a174647e)
45 - + sparse-checkout: document interactions with submodules
46 - + sparse-checkout: list directories in cone mode
45 +* jb/doc-multi-pack-idx-fix (2020-01-04) 1 commit
46 + (merged to 'next' on 2020-01-06 at f19f7d1016)
47 + + multi-pack-index: correct configuration in documentation
48
48 - "git sparse-checkout list" subcommand learned to give its output in
49 - a more concise form when the "cone" mode is in effect.
49 + Typofix.
50
51
52 -* en/merge-recursive-oid-eq-simplify (2020-01-02) 1 commit
53 - (merged to 'next' on 2020-01-04 at 623ecf4f16)
54 - + merge-recursive: remove unnecessary oid_eq function
52 +* js/mingw-loosen-overstrict-tree-entry-checks (2020-01-10) 1 commit
53 + (merged to 'next' on 2020-01-10 at f43f0fe74b)
54 + + mingw: safeguard better against backslashes in file names
55
56 - Code cleanup.
56 + Further tweak to a "no backslash in indexed paths" for Windows port
57 + we applied earlier.
58
59
59 -* ew/packfile-syscall-optim (2019-12-26) 2 commits
60 - (merged to 'next' on 2019-12-30 at ada15abf22)
61 - + packfile: replace lseek+read with pread
62 - + packfile: remove redundant fcntl F_GETFD/F_SETFD
60 +* ma/config-advice-markup-fix (2020-01-08) 1 commit
61 + (merged to 'next' on 2020-01-09 at 1c4b540795)
62 + + config/advice.txt: fix description list separator
63
64 - Code cleanup.
64 + Documentation markup fix.
65
66
67 -* js/mingw-loosen-overstrict-tree-entry-checks (2020-01-02) 1 commit
68 - (merged to 'next' on 2020-01-02 at 3088a0ccf1)
69 - + mingw: only test index entries for backslashes, not tree entries
67 +* pm/am-in-body-header-doc-update (2020-01-04) 1 commit
68 + (merged to 'next' on 2020-01-06 at 73b0a3a49c)
69 + + am: document that Date: can appear as an in-body header
70
71 - An earlier update to Git for Windows declared that a tree object is
72 - invalid if it has a path component with backslash in it, which was
73 - overly strict, which has been corrected. The only protection the
74 - Windows users need is to prevent such path (or any path that their
75 - filesystem cannot check out) from entering the index.
71 + Doc update.
72
73
78 -* pb/clarify-line-log-doc (2019-12-26) 2 commits
79 - (merged to 'next' on 2019-12-30 at 7a4e15a436)
80 - + doc: log, gitk: line-log arguments must exist in starting revision
81 - + doc: log, gitk: document accepted line-log diff formats
74 +* tm/doc-submodule-absorb-fix (2020-01-06) 1 commit
75 + (merged to 'next' on 2020-01-07 at cee89422db)
76 + + doc: submodule: fix typo for command absorbgitdirs
77
83 - Doc update.
78 + Typofix.
79
80 --------------------------------------------------
81 [New Topics]
82
88 -* hi/indent-text-with-tabs-in-editorconfig (2020-01-06) 1 commit
89 - - editorconfig: indent text files with tabs
83 +* en/simplify-check-updates-in-unpack-trees (2020-01-07) 1 commit
84 + (merged to 'next' on 2020-01-15 at 586c055b69)
85 + + unpack-trees: exit check_updates() early if updates are not wanted
86
91 - Tell .editorconfig that in this project, *.txt files are indented
92 - with tabs.
87 + Originally merged to 'next' on 2020-01-09
88
89 + Code simplification.
90
95 -* jn/pretend-object-doc (2020-01-06) 1 commit
96 - - sha1-file: document how to use pretend_object_file
91 + Will merge to 'master'.
92
98 - Warn programmers about pretend_object_file() that allows the code
99 - to tentatively use in-core objects.
93
94 +* en/string-list-can-be-custom-sorted (2020-01-07) 1 commit
95 + (merged to 'next' on 2020-01-15 at 2afe9536e6)
96 + + string-list: note in docs that callers can specify sorting function
97
102 -* tm/doc-submodule-absorb-fix (2020-01-06) 1 commit
103 - - doc: submodule: fix typo for command absorbgitdirs
98 + Originally merged to 'next' on 2020-01-09
99
105 - Typofix.
100 + API-doc update.
101 +
102 + Will merge to 'master'.
103 +
104 +
105 +* am/checkout-file-and-ref-ref-ambiguity (2020-01-07) 2 commits
106 + - checkout: don't revert file on ambiguous tracking branches
107 + - parse_branchname_arg(): extract part as new function
108 +
109 + "git checkout X" did not correctly fail when X is not a local
110 + branch but could name more than one remote-tracking branches
111 + (i.e. to be dwimmed as the starting point to create a corresponding
112 + local branch), which has been corrected.
113 +
114 + Will merge to 'next'.
115 +
116 +
117 +* am/update-pathspec-f-f-tests (2020-01-15) 2 commits
118 + - t: directly test parse_pathspec_file()
119 + - t: fix quotes tests for --pathspec-from-file
120 +
121 + Test updates.
122 +
123 + Will merge to 'next'.
124 +
125 +
126 +* bc/run-command-nullness-after-free-fix (2020-01-07) 1 commit
127 + (merged to 'next' on 2020-01-15 at 56b3148fee)
128 + + run-command: avoid undefined behavior in exists_in_PATH
129 +
130 + Originally merged to 'next' on 2020-01-09
131 +
132 + C pedantry ;-) fix.
133 +
134 + Will merge to 'master'.
135 +
136 +
137 +* kw/fsmonitor-watchman-racefix (2020-01-13) 4 commits
138 + - fsmonitor: update documentation for hook version and watchman hooks
139 + - fsmonitor: add fsmonitor hook scripts for version 2
140 + - fsmonitor: handle version 2 of the hooks that will use opaque token
141 + - fsmonitor: change last update timestamp on the index_state to opaque token
142 +
143 + A new version of fsmonitor-watchman hook has been introduced, to
144 + avoid races.
145 +
146 + Will merge to 'next'.
147 +
148 +
149 +* es/unpack-trees-oob-fix (2020-01-08) 1 commit
150 + (merged to 'next' on 2020-01-15 at 832ecf4366)
151 + + unpack-trees: watch for out-of-range index position
152 +
153 + Originally merged to 'next' on 2020-01-09
154 +
155 + The code that tries to skip over the entries for the paths in a
156 + single directory using the cache-tree was not careful enough
157 + against corrupt index file.
158 +
159 + Will merge to 'master'.
160 +
161 +
162 +* hw/advice-add-nothing (2020-01-15) 1 commit
163 + - add: use advise function to display hints
164 +
165 + Two help messages given when "git add" notices the user gave it
166 + nothing to add have been updated to use advise() API.
167 +
168 + Will merge to 'next'.
169 +
170 +
171 +* hw/tutorial-favor-switch-over-checkout (2020-01-08) 1 commit
172 + (merged to 'next' on 2020-01-15 at 25e4fca9ec)
173 + + doc/gitcore-tutorial: fix prose to match example command
174 +
175 + Originally merged to 'next' on 2020-01-09
176 +
177 + Complete an update to tutorial that encourages "git switch" over
178 + "git checkout" that was done only half-way.
179 +
180 + Will merge to 'master'.
181 +
182 +
183 +* jk/no-flush-upon-disconnecting-slrpc-transport (2020-01-08) 1 commit
184 + (merged to 'next' on 2020-01-15 at 5014feacb0)
185 + + transport: don't flush when disconnecting stateless-rpc helper
186 +
187 + Originally merged to 'next' on 2020-01-09
188 +
189 + Reduce unnecessary round-trip when running "ls-remote" over the
190 + stateless RPC mechanism.
191 +
192 + Will merge to 'master'.
193 +
194 +
195 +* nd/switch-and-restore (2020-01-08) 1 commit
196 + (merged to 'next' on 2020-01-15 at ffd0b1e54e)
197 + + restore: invalidate cache-tree when removing entries with --staged
198 +
199 + Originally merged to 'next' on 2020-01-09
200 +
201 + "git restore --staged" did not correctly update the cache-tree
202 + structure, resulting in bogus trees to be written afterwards, which
203 + has been corrected.
204 +
205 + Will merge to 'master'.
206 +
207 +
208 +* ds/graph-horizontal-edges (2020-01-15) 2 commits
209 + - graph: fix collapse of multiple edges
210 + - graph: add test to demonstrate horizontal line bug
211 +
212 + Rendering by "git log --graph" of ancestry lines leading to a merge
213 + commit were made suboptimal to waste vertical space a bit with a
214 + recent update, which has been corrected.
215 +
216 + Will merge to 'next'.
217 +
218 +
219 +* ds/sparse-cone (2020-01-10) 1 commit
220 + - unpack-trees: correctly compute result count
221 +
222 + The code recently added in this release to move to the entry beyond
223 + the ones in the same directory in the index in the sparse-cone mode
224 + did not count the number of entries to skip over incorrectly, which
225 + has been corrected.
226 +
227 + Will merge to 'next'.
228 +
229 +
230 +* km/submodule-add-errmsg (2020-01-15) 1 commit
231 + - submodule add: show 'add --dry-run' stderr when aborting
232 +
233 + Improve error message generation for "git submodule add".
234 +
235 + Will merge to 'next'.
236 +
237 +
238 +* en/fill-directory-fixes-more (2020-01-16) 4 commits
239 + - dir: point treat_leading_path() warning to the right place
240 + - dir: restructure in a way to avoid passing around a struct dirent
241 + - dir: treat_leading_path() and read_directory_recursive(), round 2
242 + - clean: demonstrate a bug with pathspecs
243 +
244 + Corner case bugs in "git clean" that stems from a (necessarily for
245 + performance reasons) awkward calling convention in the directory
246 + enumeration API has been corrected.
247 +
248 + Will merge to 'next'.
249 +
250 +
251 +* es/fetch-show-failed-submodules-atend (2020-01-17) 1 commit
252 + - fetch: emphasize failure during submodule fetch
253 +
254 + A fetch that is told to recursively fetch updates in submodules
255 + inevitably produces reams of output, and it becomes hard to spot
256 + error messages. The command has been taught to enumerate
257 + submodules that had errors at the end of the operation.
258 +
259 + Will merge to 'next'.
260 +
261 +
262 +* jk/asan-build-fix (2020-01-16) 1 commit
263 + - Makefile: use compat regex with SANITIZE=address
264 +
265 + Work around test breakages caused by custom regex engine used in
266 + libasan, when address sanitizer is used with more recent versions
267 + of gcc and clang.
268 +
269 + Will merge to 'next'.
270 +
271 +
272 +* jk/test-fixes (2020-01-16) 2 commits
273 + - t7800: don't rely on reuse_worktree_file()
274 + - t4018: drop "debugging" cat from hunk-header tests
275 +
276 + Test fixes.
277 +
278 + Will merge to 'next'.
279 +
280 +
281 +* js/builtin-add-i-cmds (2020-01-16) 2 commits
282 + - built-in add -i: accept open-ended ranges again
283 + - built-in add -i: do not try to `patch`/`diff` an empty list of files
284 +
285 + Minor bugfixes to "git add -i" that has recently been rewritten in C.
286 +
287 + Will merge to 'next'.
288 +
289 +
290 +* rt/submodule-i18n (2020-01-16) 1 commit
291 + - submodule.c: mark more strings for translation
292
107 - Will merge to 'next' and then to 'master'.
293 + Comments update.
294 +
295 + Will merge to 'next'.
296 +
297 +
298 +* am/pathspec-f-f-more (2020-01-21) 8 commits
299 + - stash push: support the --pathspec-from-file option
300 + - stash: eliminate crude option parsing
301 + - doc: stash: synchronize <pathspec> description
302 + - doc: stash: document more options
303 + - doc: stash: split options from description (2)
304 + - doc: stash: split options from description (1)
305 + - rm: support the --pathspec-from-file option
306 + - doc: rm: synchronize <pathspec> description
307 +
308 + "git rm" and "git stash" learns the new "--pathspec-from-file"
309 + option.
310 +
311 +
312 +* bc/actualmente (2020-01-21) 1 commit
313 + - docs: use "currently" for the present time
314 +
315 + Doc grammo fix.
316 +
317 + Will merge to 'next'.
318 +
319 +
320 +* bc/author-committer-doc (2020-01-22) 3 commits
321 + - doc: provide guidance on user.name format
322 + - docs: expand on possible and recommended user config options
323 + - doc: move author and committer information to git-commit(1)
324 +
325 + Clarify documentation on committer/author identities.
326 +
327 + Will merge to 'next'.
328 +
329 +
330 +* bc/misconception-doc (2020-01-22) 2 commits
331 + - docs: mention when increasing http.postBuffer is valuable
332 + - doc: dissuade users from trying to ignore tracked files
333 +
334 + Doc updates.
335 +
336 + Will merge to 'next'.
337 +
338 +
339 +* ds/refmap-doc (2020-01-21) 1 commit
340 + - fetch: document and test --refmap=""
341 +
342 + "git fetch --refmap=" option has got a better documentation.
343 +
344 + Will merge to 'next'.
345 +
346 +
347 +* js/rebase-i-with-colliding-hash (2020-01-21) 3 commits
348 + - rebase -i: also avoid SHA-1 collisions with missingCommitsCheck
349 + - rebase -i: re-fix short SHA-1 collision
350 + - parse_insn_line(): improve error message when parsing failed
351 +
352 +
353 +* lh/bool-to-type-bool (2020-01-21) 1 commit
354 + - templates: fix deprecated type option `--bool`
355 +
356 + Replace "git config --bool" calls with "git config --type=bool" in
357 + sample templates.
358 +
359 + Will merge to 'next'.
360 +
361 +
362 +* pb/recurse-submodule-in-worktree-fix (2020-01-22) 4 commits
363 + - submodule.c: use get_git_dir() instead of get_git_common_dir()
364 + - t2405: clarify test descriptions and simplify test
365 + - t2405: use git -C and test_commit -C instead of subshells
366 + - t7410: rename to t2405-worktree-submodule.sh
367 +
368 + The "--recurse-submodules" option of various subcommands did not
369 + work well when run in an alternate worktree, which has been
370 + corrected.
371 +
372 + Will merge to 'next'.
373 +
374 +
375 +* ss/t6025-modernize (2020-01-21) 2 commits
376 + - t6025: use helpers to replace test -f <path>
377 + - t6025: modernize style
378 +
379 + Test style updates.
380 +
381 + Will merge to 'next'.
382
383 --------------------------------------------------
384 [Stalled]
@@ -120,13 +394,13 @@ of the repositories listed at
394 cf. <64aa4049-ee35-df4c-1e6c-80707f4f9070@gmail.com>
395
396
123 -* es/pathspec-f-f-grep (2019-12-13) 1 commit
397 +* es/pathspec-f-f-grep (2020-01-13) 1 commit
398 - grep: support the --pathspec-from-file option
399
400 "git grep" learned the "--pathspec-from-file" command line
401 option.
402
129 - Waiting for review responses.
403 + Getting tired of waiting for review responses. Will discard.
404 cf. <20191204203911.237056-1-emilyshaffer@google.com>
405
406
@@ -176,27 +450,6 @@ of the repositories listed at
450 cf. <pull.466.v2.git.1575907804.gitgitgadget@gmail.com>
451
452
179 -* mt/threaded-grep-in-object-store (2019-10-02) 11 commits
180 - - grep: move driver pre-load out of critical section
181 - - grep: re-enable threads in non-worktree case
182 - - grep: protect packed_git [re-]initialization
183 - - grep: allow submodule functions to run in parallel
184 - - submodule-config: add skip_if_read option to repo_read_gitmodules()
185 - - grep: replace grep_read_mutex by internal obj read lock
186 - - object-store: allow threaded access to object reading
187 - - replace-object: make replace operations thread-safe
188 - - grep: fix racy calls in grep_objects()
189 - - grep: fix race conditions at grep_submodule()
190 - - grep: fix race conditions on userdiff calls
191 -
192 - Traditionally, we avoided threaded grep while searching in objects
193 - (as opposed to files in the working tree) as accesses to the object
194 - layer is not thread-safe. This limitation is getting lifted.
195 -
196 - Expecting a reroll.
197 - cf. <CAHd-oW7UPSSExyLtfLMCObWogKrBOctYabrFrOdf9-4Q2PZmMg@mail.gmail.com>
198 -
199 -
453 * vn/reset-deleted-ita (2019-07-26) 1 commit
454 - reset: unstage empty deleted ita files
455
@@ -250,40 +503,50 @@ of the repositories listed at
503 --------------------------------------------------
504 [Cooking]
505
253 -* do/gitweb-typofix-in-comments (2020-01-04) 1 commit
254 - (merged to 'next' on 2020-01-06 at 66ce6539c4)
255 - + gitweb: fix a couple spelling errors in comments
256 -
257 - Typofix.
506 +* mt/threaded-grep-in-object-store (2020-01-17) 12 commits
507 + - grep: use no. of cores as the default no. of threads
508 + - grep: move driver pre-load out of critical section
509 + - grep: re-enable threads in non-worktree case
510 + - grep: protect packed_git [re-]initialization
511 + - grep: allow submodule functions to run in parallel
512 + - submodule-config: add skip_if_read option to repo_read_gitmodules()
513 + - grep: replace grep_read_mutex by internal obj read lock
514 + - object-store: allow threaded access to object reading
515 + - replace-object: make replace operations thread-safe
516 + - grep: fix racy calls in grep_objects()
517 + - grep: fix race conditions at grep_submodule()
518 + - grep: fix race conditions on userdiff calls
519
259 - Will merge to 'master'.
520 + Traditionally, we avoided threaded grep while searching in objects
521 + (as opposed to files in the working tree) as accesses to the object
522 + layer is not thread-safe. This limitation is getting lifted.
523
524
262 -* en/unpack-trees-check-updates-simplify (2020-01-04) 1 commit
263 - - unpack-trees: exit check_updates() early if updates are not wanted
525 +* hi/indent-text-with-tabs-in-editorconfig (2020-01-06) 1 commit
526 + - editorconfig: indent text files with tabs
527
265 - Code simplification.
528 + Tell .editorconfig that in this project, *.txt files are indented
529 + with tabs.
530
531 + Will merge to 'next'.
532
268 -* jb/doc-multi-pack-idx-fix (2020-01-04) 1 commit
269 - (merged to 'next' on 2020-01-06 at f19f7d1016)
270 - + multi-pack-index: correct configuration in documentation
533
272 - Typofix.
534 +* jn/pretend-object-doc (2020-01-06) 1 commit
535 + - sha1-file: document how to use pretend_object_file
536
274 - Will merge to 'master'.
537 + Warn programmers about pretend_object_file() that allows the code
538 + to tentatively use in-core objects.
539
540
277 -* pm/am-in-body-header-doc-update (2020-01-04) 1 commit
278 - (merged to 'next' on 2020-01-06 at 73b0a3a49c)
279 - + am: document that Date: can appear as an in-body header
541 +* en/unpack-trees-check-updates-simplify (2020-01-04) 1 commit
542 + - unpack-trees: exit check_updates() early if updates are not wanted
543
281 - Doc update.
544 + Code simplification.
545
283 - Will merge to 'master'.
546 + Will merge to 'next'.
547
548
286 -* dl/merge-autostash (2019-12-26) 17 commits
549 +* dl/merge-autostash (2020-01-13) 17 commits
550 - pull: pass --autostash to merge
551 - t5520: make test_pull_autostash() accept expect_parent_num
552 - merge: teach --autostash option
@@ -304,9 +567,11 @@ of the repositories listed at
567
568 "git merge" learns the "--autostash" option.
569
570 + What's the status of this one? Are people happy with the shape of
571 + the code?
572 +
573
308 -* dl/test-must-fail-fixes-2 (2019-12-27) 16 commits
309 - - t4124: let sed open its own files
574 +* dl/test-must-fail-fixes-2 (2020-01-07) 16 commits
575 - t4124: only mark git command with test_must_fail
576 - t3507: use test_path_is_missing()
577 - t3507: fix indentation
@@ -314,234 +579,232 @@ of the repositories listed at
579 - t3419: stop losing return code of git command
580 - t3415: increase granularity of test_auto_{fixup,squash}()
581 - t3415: stop losing return codes of git commands
317 - - t3310: extract common no_notes_merge_left()
582 + - t3310: extract common notes_merge_files_gone()
583 - t3030: use test_path_is_missing()
584 - t2018: replace "sha" with "oid"
585 - t2018: don't lose return code of git commands
586 - t2018: teach do_checkout() to accept `!` arg
322 - - t2018: use test_must_fail for failing git commands
587 + - t2018: use test_expect_code for failing git commands
588 + - t2018: improve style of if-statement
589 - t2018: add space between function name and ()
590 - t2018: remove trailing space from test description
591
592 Test updates.
593
328 - Not quite.
329 - cf. <CAPig+cQo1nbRo=n8-XOtycGijj3k1y_Zozu7VW-WTSBB9LncqQ@mail.gmail.com>
330 - cf. <86lfqt36ah.fsf@gmail.com>
594 + Will merge to 'next'.
595
596
333 -* jn/promote-proto2-to-default (2019-12-27) 5 commits
334 - (merged to 'next' on 2020-01-06 at f4bbb34797)
335 - + fetch: default to protocol version 2
336 - + protocol test: let protocol.version override GIT_TEST_PROTOCOL_VERSION
337 - + test: request GIT_TEST_PROTOCOL_VERSION=0 when appropriate
338 - + config doc: protocol.version is not experimental
339 - + fetch test: use more robust test for filtered objects
597 +* jn/promote-proto2-to-default (2020-01-15) 5 commits
598 + - fetch: default to protocol version 2
599 + - protocol test: let protocol.version override GIT_TEST_PROTOCOL_VERSION
600 + - test: request GIT_TEST_PROTOCOL_VERSION=0 when appropriate
601 + - config doc: protocol.version is not experimental
602 + - fetch test: use more robust test for filtered objects
603 (this branch uses jn/test-lint-one-shot-export-to-shell-function.)
604
605 The transport protocol version 2 becomes the default one.
606
344 - Will cook in 'next'.
607 + Will merge to 'next'.
608
609
347 -* am/test-pathspec-f-f-error-cases (2020-01-02) 1 commit
348 - (merged to 'next' on 2020-01-04 at 73ac7e77fb)
349 - + t: add tests for error conditions with --pathspec-from-file
610 +* am/test-pathspec-f-f-error-cases (2020-01-15) 1 commit
611 + - t: add tests for error conditions with --pathspec-from-file
612
613 More tests.
614
353 - Will cook in 'next'.
615 + Will merge to 'next'.
616
617
618 * jt/sha1-file-remove-oi-skip-cached (2020-01-02) 1 commit
357 - (merged to 'next' on 2020-01-04 at fab9964f10)
619 + (merged to 'next' on 2020-01-15 at 4feaff54f3)
620 + sha1-file: remove OBJECT_INFO_SKIP_CACHED
621
622 + Originally merged to 'next' on 2020-01-04
623 +
624 has_object_file() said "no" given an object registered to the
625 system via pretend_object_file(), making it inconsistent with
626 read_object_file(), causing lazy fetch to attempt fetching an
627 empty tree from promisor remotes.
628
365 - Will cook in 'next'.
629 + Will merge to 'master'.
630
631
632 * hw/commit-advise-while-rejecting (2019-12-19) 1 commit
369 - (merged to 'next' on 2019-12-30 at e26700d582)
633 + (merged to 'next' on 2020-01-15 at 4f16e5a3b6)
634 + commit: honor advice.statusHints when rejecting an empty commit
635
636 + Originally merged to 'next' on 2019-12-30
637 +
638 "git commit" gives output similar to "git status" when there is
639 nothing to commit, but without honoring the advise.statusHints
640 configuration variable, which has been corrected.
641
376 - Will cook in 'next'.
377 -
378 -
379 -* yz/p4-py3 (2019-12-17) 14 commits
380 - (merged to 'next' on 2019-12-30 at cd67de932d)
381 - + ci: also run linux-gcc pipeline with python3.5 environment
382 - + git-p4: use python3's input() everywhere
383 - + git-p4: simplify regex pattern generation for parsing diff-tree
384 - + git-p4: use dict.items() iteration for python3 compatibility
385 - + git-p4: use functools.reduce instead of reduce
386 - + git-p4: fix freezing while waiting for fast-import progress
387 - + git-p4: use marshal format version 2 when sending to p4
388 - + git-p4: open .gitp4-usercache.txt in text mode
389 - + git-p4: convert path to unicode before processing them
390 - + git-p4: encode/decode communication with git for python3
391 - + git-p4: encode/decode communication with p4 for python3
392 - + git-p4: remove string type aliasing
393 - + git-p4: change the expansion test from basestring to list
394 - + git-p4: make python2.7 the oldest supported version
642 + Will merge to 'master'.
643 +
644 +
645 +* yz/p4-py3 (2020-01-15) 14 commits
646 + - ci: also run linux-gcc pipeline with python3.5 environment
647 + - git-p4: use python3's input() everywhere
648 + - git-p4: simplify regex pattern generation for parsing diff-tree
649 + - git-p4: use dict.items() iteration for python3 compatibility
650 + - git-p4: use functools.reduce instead of reduce
651 + - git-p4: fix freezing while waiting for fast-import progress
652 + - git-p4: use marshal format version 2 when sending to p4
653 + - git-p4: open .gitp4-usercache.txt in text mode
654 + - git-p4: convert path to unicode before processing them
655 + - git-p4: encode/decode communication with git for python3
656 + - git-p4: encode/decode communication with p4 for python3
657 + - git-p4: remove string type aliasing
658 + - git-p4: change the expansion test from basestring to list
659 + - git-p4: make python2.7 the oldest supported version
660
661 Update "git p4" to work with Python 3.
662
398 - Will cook in 'next'.
663 + Will merge to 'next'.
664
665
401 -* hi/gpg-mintrustlevel (2019-12-27) 1 commit
402 - (merged to 'next' on 2019-12-30 at 6c790280d2)
403 - + gpg-interface: add minTrustLevel as a configuration option
666 +* hi/gpg-mintrustlevel (2020-01-15) 1 commit
667 + - gpg-interface: add minTrustLevel as a configuration option
668
669 gpg.minTrustLevel configuration variable has been introduced to
670 tell various signature verification codepaths the required minimum
671 trust level.
672
409 - Will cook in 'next'.
673 + Will merge to 'next'.
674
675
412 -* sg/completion-worktree (2019-12-19) 6 commits
413 - (merged to 'next' on 2019-12-25 at 42c895ab3b)
414 - + completion: list paths and refs for 'git worktree add'
415 - + completion: list existing working trees for 'git worktree' subcommands
416 - + completion: simplify completing 'git worktree' subcommands and options
417 - + completion: return the index of found word from __git_find_on_cmdline()
418 - + completion: clean up the __git_find_on_cmdline() helper function
419 - + t9902-completion: add tests for the __git_find_on_cmdline() helper
676 +* sg/completion-worktree (2020-01-15) 6 commits
677 + - completion: list paths and refs for 'git worktree add'
678 + - completion: list existing working trees for 'git worktree' subcommands
679 + - completion: simplify completing 'git worktree' subcommands and options
680 + - completion: return the index of found word from __git_find_on_cmdline()
681 + - completion: clean up the __git_find_on_cmdline() helper function
682 + - t9902-completion: add tests for the __git_find_on_cmdline() helper
683
684 The command line completion (in contrib/) learned to complete
685 subcommands and arguments to "git worktree".
686
424 - Will cook in 'next'.
687 + Will merge to 'next'.
688
689
690 * dl/credential-netrc (2019-12-20) 2 commits
428 - (merged to 'next' on 2019-12-25 at 1fd27f81ac)
691 + (merged to 'next' on 2020-01-15 at 768fa1c364)
692 + contrib/credential/netrc: work outside a repo
693 + contrib/credential/netrc: make PERL_PATH configurable
694
695 + Originally merged to 'next' on 2019-12-25
696 +
697 Sample credential helper for using .netrc has been updated to work
698 out of the box.
699
435 - Will cook in 'next'.
700 + Will merge to 'master'.
701
702
703 * dl/test-must-fail-fixes (2019-12-20) 15 commits
439 - (merged to 'next' on 2019-12-25 at 3ef7c70bc5)
440 - + t1507: inline full_name()
441 - + t1507: run commands within test_expect_success
442 - + t1507: stop losing return codes of git commands
443 - + t1501: remove use of `test_might_fail cp`
444 - + t1409: use test_path_is_missing()
445 - + t1409: let sed open its own input file
446 - + t1307: reorder `nongit test_must_fail`
447 - + t1306: convert `test_might_fail rm` to `rm -f`
448 - + t0020: use ! check_packed_refs_marked
449 - + t0020: don't use `test_must_fail has_cr`
450 - + t0003: don't use `test_must_fail attr_check`
451 - + t0003: use test_must_be_empty()
452 - + t0003: use named parameters in attr_check()
453 - + t0000: replace test_must_fail with run_sub_test_lib_test_err()
454 - + t/lib-git-p4: use test_path_is_missing()
704 + - t1507: inline full_name()
705 + - t1507: run commands within test_expect_success
706 + - t1507: stop losing return codes of git commands
707 + - t1501: remove use of `test_might_fail cp`
708 + - t1409: use test_path_is_missing()
709 + - t1409: let sed open its own input file
710 + - t1307: reorder `nongit test_must_fail`
711 + - t1306: convert `test_might_fail rm` to `rm -f`
712 + - t0020: use ! check_packed_refs_marked
713 + - t0020: don't use `test_must_fail has_cr`
714 + - t0003: don't use `test_must_fail attr_check`
715 + - t0003: use test_must_be_empty()
716 + - t0003: use named parameters in attr_check()
717 + - t0000: replace test_must_fail with run_sub_test_lib_test_err()
718 + - t/lib-git-p4: use test_path_is_missing()
719
720 Test clean-up.
721
458 - Will cook in 'next'.
459 -
460 -
461 -* en/rebase-backend (2019-12-26) 15 commits
462 - (merged to 'next' on 2019-12-30 at 5b58e268d6)
463 - + rebase: change the default backend from "am" to "merge"
464 - + rebase: make the backend configurable via config setting
465 - + rebase tests: repeat some tests using the merge backend instead of am
466 - + rebase tests: mark tests specific to the am-backend with --am
467 - + git-prompt: change the prompt for interactive-based rebases
468 - + rebase: add an --am option
469 - + rebase: move incompatibility checks between backend options a bit earlier
470 - + git-rebase.txt: add more details about behavioral differences of backends
471 - + rebase: allow more types of rebases to fast-forward
472 - + t3432: make these tests work with either am or merge backends
473 - + rebase: fix handling of restrict_revision
474 - + rebase: make sure to pass along the quiet flag to the sequencer
475 - + rebase, sequencer: remove the broken GIT_QUIET handling
476 - + t3406: simplify an already simple test
477 - + rebase: extend the options for handling of empty commits
722 + Will merge to 'next'.
723 +
724 +
725 +* en/rebase-backend (2020-01-17) 19 commits
726 + - rebase: change the default backend from "am" to "merge"
727 + - rebase: make the backend configurable via config setting
728 + - rebase tests: repeat some tests using the merge backend instead of am
729 + - rebase tests: mark tests specific to the am-backend with --am
730 + - rebase: drop '-i' from the reflog for interactive-based rebases
731 + - git-prompt: change the prompt for interactive-based rebases
732 + - rebase: add an --am option
733 + - rebase: move incompatibility checks between backend options a bit earlier
734 + - git-rebase.txt: add more details about behavioral differences of backends
735 + - rebase: allow more types of rebases to fast-forward
736 + - t3432: make these tests work with either am or merge backends
737 + - rebase: fix handling of restrict_revision
738 + - rebase: make sure to pass along the quiet flag to the sequencer
739 + - rebase, sequencer: remove the broken GIT_QUIET handling
740 + - t3406: simplify an already simple test
741 + - rebase (interactive-backend): fix handling of commits that become empty
742 + - rebase (interactive-backend): make --keep-empty the default
743 + - t3404: directly test the behavior of interest
744 + - git-rebase.txt: update description of --allow-empty-message
745
746 "git rebase" has learned to use the sequencer backend by default,
747 while allowing "--am" option to go back to the traditional "am"
748 backend.
749
483 - Will cook in 'next'.
484 -
485 -
486 -* bc/hash-independent-tests-part-7 (2019-12-24) 20 commits
487 - (merged to 'next' on 2019-12-30 at 0eedb894ba)
488 - + t5604: make hash independent
489 - + t5601: switch into repository to hash object
490 - + t5562: use $ZERO_OID
491 - + t5540: make hash size independent
492 - + t5537: make hash size independent
493 - + t5530: compute results based on object length
494 - + t5512: abstract away SHA-1-specific constants
495 - + t5510: make hash size independent
496 - + t5504: make hash algorithm independent
497 - + t5324: make hash size independent
498 - + t5319: make test work with SHA-256
499 - + t5319: change invalid offset for SHA-256 compatibility
500 - + t5318: update for SHA-256
501 - + t4300: abstract away SHA-1-specific constants
502 - + t4204: make hash size independent
503 - + t4202: abstract away SHA-1-specific constants
504 - + t4200: make hash size independent
505 - + t4134: compute appropriate length constant
506 - + t4066: compute index line in diffs
507 - + t4054: make hash-size independent
750 +
751 +* bc/hash-independent-tests-part-7 (2020-01-15) 20 commits
752 + - t5604: make hash independent
753 + - t5601: switch into repository to hash object
754 + - t5562: use $ZERO_OID
755 + - t5540: make hash size independent
756 + - t5537: make hash size independent
757 + - t5530: compute results based on object length
758 + - t5512: abstract away SHA-1-specific constants
759 + - t5510: make hash size independent
760 + - t5504: make hash algorithm independent
761 + - t5324: make hash size independent
762 + - t5319: make test work with SHA-256
763 + - t5319: change invalid offset for SHA-256 compatibility
764 + - t5318: update for SHA-256
765 + - t4300: abstract away SHA-1-specific constants
766 + - t4204: make hash size independent
767 + - t4202: abstract away SHA-1-specific constants
768 + - t4200: make hash size independent
769 + - t4134: compute appropriate length constant
770 + - t4066: compute index line in diffs
771 + - t4054: make hash-size independent
772
773 Preparation of test scripts for the day when the object names will
774 use SHA-256 continues.
775
512 - Will cook in 'next'.
776 + Will merge to 'next'.
777
778
515 -* jn/test-lint-one-shot-export-to-shell-function (2019-12-27) 3 commits
516 - (merged to 'next' on 2019-12-30 at d08f039473)
517 - + fetch test: mark test of "skipping" haves as v0-only
518 - + t/check-non-portable-shell: detect "FOO= shell_func", too
519 - + fetch test: avoid use of "VAR= cmd" with a shell function
779 +* jn/test-lint-one-shot-export-to-shell-function (2020-01-15) 3 commits
780 + - fetch test: mark test of "skipping" haves as v0-only
781 + - t/check-non-portable-shell: detect "FOO= shell_func", too
782 + - fetch test: avoid use of "VAR= cmd" with a shell function
783 (this branch is used by jn/promote-proto2-to-default.)
784
785 The test-lint machinery knew to check "VAR=VAL shell_function"
786 construct, but did not check "VAR= shell_funciton", which has been
787 corrected.
788
526 - Will cook in 'next'.
789 + Will merge to 'next'.
790
791
529 -* js/add-p-leftover-bits (2019-12-24) 9 commits
530 - (merged to 'next' on 2020-01-06 at c6d3f1d4dd)
531 - + ci: include the built-in `git add -i` in the `linux-gcc` job
532 - + built-in add -p: handle Escape sequences more efficiently
533 - + built-in add -p: handle Escape sequences in interactive.singlekey mode
534 - + built-in add -p: respect the `interactive.singlekey` config setting
535 - + terminal: add a new function to read a single keystroke
536 - + terminal: accommodate Git for Windows' default terminal
537 - + terminal: make the code of disable_echo() reusable
538 - + built-in add -p: handle diff.algorithm
539 - + built-in add -p: support interactive.diffFilter
792 +* js/add-p-leftover-bits (2020-01-15) 10 commits
793 + - ci: include the built-in `git add -i` in the `linux-gcc` job
794 + - built-in add -p: handle Escape sequences more efficiently
795 + - built-in add -p: handle Escape sequences in interactive.singlekey mode
796 + - built-in add -p: respect the `interactive.singlekey` config setting
797 + - terminal: add a new function to read a single keystroke
798 + - terminal: accommodate Git for Windows' default terminal
799 + - terminal: make the code of disable_echo() reusable
800 + - built-in add -p: handle diff.algorithm
801 + - built-in add -p: support interactive.diffFilter
802 + - t3701: adjust difffilter test
803 (this branch uses js/patch-mode-in-others-in-c.)
804
805 The final leg of rewriting "add -i/-p" in C.
806
544 - Will cook in 'next'.
807 + Will merge to 'next'.
808
809
810 * pw/advise-rebase-skip (2019-12-06) 9 commits
@@ -564,37 +827,35 @@ of the repositories listed at
827
828
829 * js/patch-mode-in-others-in-c (2019-12-21) 7 commits
567 - (merged to 'next' on 2019-12-30 at a767b89288)
568 - + commit --interactive: make it work with the built-in `add -i`
569 - + built-in add -p: implement the "worktree" patch modes
570 - + built-in add -p: implement the "checkout" patch modes
571 - + built-in stash: use the built-in `git add -p` if so configured
572 - + legacy stash -p: respect the add.interactive.usebuiltin setting
573 - + built-in add -p: implement the "stash" and "reset" patch modes
574 - + built-in add -p: prepare for patch modes other than "stage"
830 + - commit --interactive: make it work with the built-in `add -i`
831 + - built-in add -p: implement the "worktree" patch modes
832 + - built-in add -p: implement the "checkout" patch modes
833 + - built-in stash: use the built-in `git add -p` if so configured
834 + - legacy stash -p: respect the add.interactive.usebuiltin setting
835 + - built-in add -p: implement the "stash" and "reset" patch modes
836 + - built-in add -p: prepare for patch modes other than "stage"
837 (this branch is used by js/add-p-leftover-bits.)
838
839 The effort to move "git-add--interactive" to C continues.
840
579 - Will cook in 'next'.
841 + Will merge to 'next'.
842
843
844 * jk/packfile-reuse-cleanup (2019-10-23) 9 commits
583 - (merged to 'next' on 2019-11-19 at 9683853939)
584 - + pack-objects: improve partial packfile reuse
585 - + builtin/pack-objects: introduce obj_is_packed()
586 - + pack-objects: introduce pack.allowPackReuse
587 - + csum-file: introduce hashfile_total()
588 - + pack-bitmap: introduce bitmap_walk_contains()
589 - + pack-bitmap: don't rely on bitmap_git->reuse_objects
590 - + ewah/bitmap: introduce bitmap_word_alloc()
591 - + packfile: expose get_delta_base()
592 - + builtin/pack-objects: report reused packfile objects
845 + - pack-objects: improve partial packfile reuse
846 + - builtin/pack-objects: introduce obj_is_packed()
847 + - pack-objects: introduce pack.allowPackReuse
848 + - csum-file: introduce hashfile_total()
849 + - pack-bitmap: introduce bitmap_walk_contains()
850 + - pack-bitmap: don't rely on bitmap_git->reuse_objects
851 + - ewah/bitmap: introduce bitmap_word_alloc()
852 + - packfile: expose get_delta_base()
853 + - builtin/pack-objects: report reused packfile objects
854
855 The way "git pack-objects" reuses objects stored in existing pack
856 to generate its result has been improved.
857
597 - Hold. There is an update to these patches that currently are on 'next'.
858 + Needs further clarification?
859 cf. <20191115180319.113991-1-jonathantanmy@google.com>
860
861 --------------------------------------------------