What's cooking (2020/11 #02)

Junio C Hamano committed Nov 9, 2020 at 15:29 UTC a238093465ff2eccd8262eaf4cdaec4ee7b738aa
1 file changed +502 -536
whats-cooking.txt
+502 -536
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Nov 2020, #01; Mon, 2)
4 -X-master-at: 7f7ebe054af6d831b999d6c2241b9227c4e4e08d
5 -X-next-at: 8a58376a318e85947bf4bf3a28f36953a18963f5
3 +Subject: What's cooking in git.git (Nov 2020, #02; Mon, 9)
4 +X-master-at: e4d83eee9239207622e2b1cc43967da5051c189c
5 +X-next-at: ecc2c50aac43ae8229607396347f6663b03b4deb
6
7 -What's cooking in git.git (Nov 2020, #01; Mon, 2)
7 +What's cooking in git.git (Nov 2020, #02; Mon, 9)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with '-' are
@@ -12,7 +12,7 @@ only in 'seen' (formerly 'pu'---proposed updates) while commits prefixed
12 with '+' 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 -The third batch of topics in this cycle are in 'master' now,
15 +The third and fourth batches of topics in this cycle are in 'master' now,
16 including some microprojects by candidates for the Outreachy
17 program.
18
@@ -46,384 +46,532 @@ Release tarballs are available at:
46 --------------------------------------------------
47 [Graduated to 'master']
48
49 -* as/sample-push-to-checkout-hook (2020-10-16) 1 commit
50 - (merged to 'next' on 2020-10-26 at 644026c2f6)
51 - + hook: add sample template for push-to-checkout
49 +* ab/git-remote-exit-code (2020-10-27) 1 commit
50 + (merged to 'next' on 2020-10-30 at 1fc119404b)
51 + + remote: add meaningful exit code on missing/existing
52
53 - Add a sample 'push-to-checkout' hook, that performs the same as
54 - what the built-in default action does.
53 + Exit codes from "git remote add" etc. were not usable by scripted
54 + callers.
55
56
57 -* bc/svn-hash-oid-fix (2020-10-21) 1 commit
58 - (merged to 'next' on 2020-10-26 at 743b549d5d)
59 - + svn: use correct variable name for short OID
57 +* as/tests-cleanup (2020-10-18) 1 commit
58 + (merged to 'next' on 2020-10-28 at fd199beb31)
59 + + t2200,t9832: avoid using 'git' upstream in a pipe
60
61 - A recent oid->hash conversion missed one spot, breaking "git svn".
61 + Micro clean-up of a couple of test scripts.
62
63
64 -* bk/sob-dco (2020-10-20) 4 commits
65 - (merged to 'next' on 2020-10-26 at d0e5066a7e)
66 - + Documentation: stylistically normalize references to Signed-off-by:
67 - + SubmittingPatches: clarify DCO is our --signoff rule
68 - + Documentation: clarify and expand description of --signoff
69 - + doc: preparatory clean-up of description on the sign-off option
64 +* en/dir-rename-tests (2020-10-16) 4 commits
65 + (merged to 'next' on 2020-10-28 at 7bbe123e70)
66 + + t6423: more involved rules for renaming directories into each other
67 + + t6423: update directory rename detection tests with new rule
68 + + t6423: more involved directory rename test
69 + + directory-rename-detection.txt: update references to regression tests
70 + (this branch is used by en/merge-tests.)
71
71 - Document that the meaning of a Signed-off-by trailer can vary from
72 - project to project in the end-user documentation, and clarify what
73 - it means to this project.
72 + More preliminary tests have been added to document desired outcome
73 + of various "directory rename" situations.
74
75
76 -* cm/t7xxx-cleanup (2020-10-22) 6 commits
77 - (merged to 'next' on 2020-10-26 at 8b58e54942)
78 - + t7102: prepare expected output inside test_expect_* block
79 - + t7201: put each command on a separate line
80 - + t7201: use 'git -C' to avoid subshell
81 - + t7102,t7201: remove whitespace after redirect operator
82 - + t7102,t7201: remove unnecessary blank spaces in test body
83 - + t7101,t7102,t7201: modernize test formatting
76 +* fc/zsh-completion (2020-10-28) 29 commits
77 + (merged to 'next' on 2020-11-02 at 2c5e3a73ad)
78 + + zsh: update copyright notices
79 + + completion: bash: remove old compat wrappers
80 + + completion: bash: cleanup cygwin check
81 + + completion: bash: trivial cleanup
82 + + completion: zsh: add simple version check
83 + + completion: zsh: trivial simplification
84 + + completion: zsh: add alias descriptions
85 + + completion: zsh: improve command tags
86 + + completion: zsh: refactor command completion
87 + + completion: zsh: shuffle functions around
88 + + completion: zsh: simplify file_direct
89 + + completion: zsh: simplify nl_append
90 + + completion: zsh: trivial cleanup
91 + + completion: zsh: simplify direct compadd
92 + + completion: zsh: simplify compadd functions
93 + + completion: zsh: fix splitting of words
94 + + completion: zsh: add missing direct_append
95 + + completion: fix conflict with bashcomp
96 + + completion: zsh: fix completion for --no-.. options
97 + + completion: bash: remove zsh wrapper
98 + + completion: bash: synchronize zsh wrapper
99 + + completion: zsh: fix for command aliasing
100 + + completion: prompt: fix color for Zsh
101 + + completion: zsh: update slave script locations
102 + + completion: zsh: fix for directories with spaces
103 + + completion: zsh: reorganize install instructions
104 + + completion: zsh: fix bash script extension
105 + + completion: zsh: fix name due to broken autoloading
106 + + completion: zsh: fix __gitcomp_direct()
107
85 - Originally merged to 'next' on 2020-10-23
108 + Zsh autocompletion (in contrib/) update.
109
87 - Micro clean-up.
110
111 +* jk/checkout-index-errors (2020-10-27) 2 commits
112 + (merged to 'next' on 2020-10-30 at 77dddffe1b)
113 + + checkout-index: propagate errors to exit code
114 + + checkout-index: drop error message from empty --stage=all
115 + (this branch is used by mt/parallel-checkout-part-1.)
116
90 -* ct/t0000-use-test-path-is-file (2020-10-18) 1 commit
91 - (merged to 'next' on 2020-10-26 at 9b70aa748f)
92 - + t0000: use test_path_is_file instead of "test -f"
117 + "git checkout-index" did not consistently signal an error with its
118 + exit status.
119
94 - Originally merged to 'next' on 2020-10-23
120
96 - Micro clean-up of a test script.
121 +* jk/committer-date-is-author-date-fix-simplify (2020-10-26) 1 commit
122 + (merged to 'next' on 2020-10-30 at 9ba3fad57d)
123 + + am, sequencer: stop parsing our own committer ident
124
125 + Code simplification.
126
99 -* dl/diff-merge-base (2020-09-21) 10 commits
100 - (merged to 'next' on 2020-10-26 at 114d94030b)
101 - + contrib/completion: complete `git diff --merge-base`
102 - + builtin/diff-tree: learn --merge-base
103 - + builtin/diff-index: learn --merge-base
104 - + t4068: add --merge-base tests
105 - + diff-lib: define diff_get_merge_base()
106 - + diff-lib: accept option flags in run_diff_index()
107 - + contrib/completion: extract common diff/difftool options
108 - + git-diff.txt: backtick quote command text
109 - + git-diff-index.txt: make --cached description a proper sentence
110 - + t4068: remove unnecessary >tmp
127
112 - "git diff A...B" learned "git diff --merge-base A B", which is a
113 - longer short-hand to say the same thing.
128 +* jk/perl-warning (2020-10-21) 1 commit
129 + (merged to 'next' on 2020-10-28 at 5fcb98f2ff)
130 + + perl: check for perl warnings while running tests
131
132 + Dev support.
133 + cf. <20201022032400.GC1480820@coredump.intra.peff.net>
134
116 -* dl/resurrect-update-for-sha256 (2020-10-08) 2 commits
117 - (merged to 'next' on 2020-10-26 at 7e94297aa4)
118 - + contrib/git-resurrect.sh: use hash-agnostic OID pattern
119 - + contrib/git-resurrect.sh: indent with tabs
135
121 - Originally merged to 'next' on 2020-10-23
136 +* jk/sideband-more-error-checking (2020-10-29) 1 commit
137 + (merged to 'next' on 2020-10-30 at 8131784691)
138 + + sideband: diagnose more sideband anomalies
139
123 - "git resurrect" script (in contrib/) learned that the object names
124 - may be longer than 40-hex depending on the hash function in use.
140 + The code to detect premature EOF in the sideband demultiplexer has
141 + been cleaned up.
142
143
127 -* ds/commit-graph-merging-fix (2020-10-09) 2 commits
128 - (merged to 'next' on 2020-10-26 at a0cf763826)
129 - + commit-graph: don't write commit-graph when disabled
130 - + commit-graph: ignore duplicates when merging layers
144 +* js/default-branch-name-adjust-t5411 (2020-10-31) 4 commits
145 + (merged to 'next' on 2020-11-02 at d625eda73c)
146 + + t5411: finish preparing for `main` being the default branch name
147 + + t5411: adjust the remaining support files for init.defaultBranch=main
148 + + t5411: start adjusting the support files for init.defaultBranch=main
149 + + t5411: start using the default branch name "main"
150
132 - When "git commit-graph" detects the same commit recorded more than
133 - once while it is merging the layers, it used to die. The code now
134 - ignores all but one of them and continues.
151 + Prepare a test script to transition of the default branch name to
152 + 'main'.
153
154
137 -* ds/maintenance-commit-graph-auto-fix (2020-10-12) 2 commits
138 - (merged to 'next' on 2020-10-26 at 429d1371d8)
139 - + maintenance: core.commitGraph=false prevents writes
140 - + maintenance: test commit-graph auto condition
155 +* mr/bisect-in-c-3 (2020-10-16) 7 commits
156 + (merged to 'next' on 2020-10-28 at 435792b62f)
157 + + bisect--helper: retire `--bisect-autostart` subcommand
158 + + bisect--helper: retire `--write-terms` subcommand
159 + + bisect--helper: retire `--check-expected-revs` subcommand
160 + + bisect--helper: reimplement `bisect_state` & `bisect_head` shell functions in C
161 + + bisect--helper: retire `--next-all` subcommand
162 + + bisect--helper: retire `--bisect-clean-state` subcommand
163 + + bisect--helper: finish porting `bisect_start()` to C
164
142 - Test-coverage enhancement of running commit-graph task "git
143 - maintenance" as needed led to discovery and fix of a bug.
165 + Rewriting "git bisect" in C continues.
166
167
146 -* en/sequencer-rollback-lock-cleanup (2020-10-21) 1 commit
147 - (merged to 'next' on 2020-10-26 at 1234e8297f)
148 - + sequencer: remove duplicate rollback_lock_file() call
168 +* nk/diff-files-vs-fsmonitor (2020-10-20) 7 commits
169 + (merged to 'next' on 2020-10-28 at d3af804056)
170 + + p7519-fsmonitor: add a git add benchmark
171 + + p7519-fsmonitor: refactor to avoid code duplication
172 + + perf lint: add make test-lint to perf tests
173 + + t/perf: add fsmonitor perf test for git diff
174 + + t/perf/p7519-fsmonitor.sh: warm cache on first git status
175 + + t/perf/README: elaborate on output format
176 + + fsmonitor: use fsmonitor data in `git diff`
177 + (this branch is used by nk/perf-fsmonitor.)
178
150 - Code clean-up.
179 + "git diff" and other commands that share the same machinery to
180 + compare with working tree files have been taught to take advantage
181 + of the fsmonitor data when available.
182
183
153 -* en/t7518-unflake (2020-10-18) 1 commit
154 - (merged to 'next' on 2020-10-26 at 443459f7ca)
155 - + t7518: fix flaky grep invocation
184 +* pb/ref-filter-with-crlf (2020-10-29) 2 commits
185 + (merged to 'next' on 2020-10-30 at 8be77584c5)
186 + + log, show: add tests for messages containing CRLF
187 + + ref-filter: handle CRLF at end-of-line more gracefully
188
157 - Originally merged to 'next' on 2020-10-23
189 + A commit and tag object may have CR at the end of each and
190 + every line (you can create such an object with hash-object or
191 + using --cleanup=verbatim to decline the default clean-up
192 + action), but it would make it impossible to have a blank line
193 + to separate the title from the body of the message. Be lenient
194 + and accept a line with lone CR on it as a blank line, too.
195
159 - Work around flakiness in a test.
196 +--------------------------------------------------
197 +[New Topics]
198
199 +* dd/upload-pack-stateless-eof (2020-10-30) 1 commit
200 + (merged to 'next' on 2020-11-09 at 01a1f1d4fd)
201 + + upload-pack: allow stateless client EOF just prior to haves
202
162 -* en/test-selector (2020-10-18) 3 commits
163 - (merged to 'next' on 2020-10-26 at 3d6e77c3ff)
164 - + test-lib: reduce verbosity of skipped tests
165 - + t6006, t6012: adjust tests to use 'setup' instead of synonyms
166 - + test-lib: allow selecting tests by substring/glob with --run
203 + "git fetch --depth=<n>" over the stateless RPC / smart HTTP
204 + transport handled EOF from the client poorly at the server end.
205
168 - Our test scripts can be told to run only individual pieces while
169 - skipping others with the "--run=..." option; they were taught to
170 - take a substring of test title, in addition to numbers, to name the
171 - test pieces to run.
206 + Will merge to 'master'.
207
208
174 -* es/test-cmp-typocatcher (2020-10-20) 1 commit
175 - (merged to 'next' on 2020-10-26 at 62d89db753)
176 - + Revert "test_cmp: diagnose incorrect arguments"
209 +* js/trace2-session-id (2020-11-02) 11 commits
210 + - receive-pack: log received client trace2 SID
211 + - send-pack: advertise trace2 SID in capabilities
212 + - upload-pack, serve: log received client trace2 SID
213 + - fetch-pack: advertise trace2 SID in capabilities
214 + - transport: log received server trace2 SID
215 + - serve: advertise trace2 SID in v2 capabilities
216 + - receive-pack: advertise trace2 SID in v0 capabilities
217 + - upload-pack: advertise trace2 SID in v0 capabilities
218 + - trace2: add a public function for getting the SID
219 + - docs: new trace2.advertiseSID option
220 + - docs: new capability to advertise trace2 SIDs
221
178 - A test helper "test_cmp A B" was taught to diagnose missing files A
179 - or B as a bug in test, but some tests legitimately wanted to notice
180 - a failure to even create file B as an error, in addition to leaving
181 - the expected result in it, and were misdiagnosed as a bug. This
182 - has been corrected.
222 + The transport layer was taught to optionally exchange the session
223 + ID assigned by the trace2 subsystem during fetch/push transactions.
224
225
185 -* es/tutorial-mention-asciidoc-early (2020-10-16) 1 commit
186 - (merged to 'next' on 2020-10-28 at 96e0d84d94)
187 - + MyFirstContribution: clarify asciidoc dependency
226 +* so/format-patch-doc-on-default-diff-format (2020-10-31) 1 commit
227 + (merged to 'next' on 2020-11-04 at 692e0b2f7a)
228 + + doc/diff-options: fix out of place mentions of '--patch/-p'
229
189 - Doc update.
230 + Docfix.
231 +
232 + Will merge to 'master'.
233
234
192 -* jc/doc-final-resend (2020-10-26) 1 commit
193 - (merged to 'next' on 2020-10-30 at 2dd2c8a0d9)
194 - + SubmittingPatches: clarify the purpose of the final resend
235 +* jc/sparse-error-for-developer-build (2020-10-31) 1 commit
236 + - Makefile: enable -Wsparse-error for DEVELOPER build
237
196 - Update developer doc.
238 + "make DEVELOPER=1 sparse" used to run sparse and let it emit
239 + warnings; now such warnings will cause an error.
240
241 + Will merge to 'next'.
242
199 -* jk/fast-import-marks-alloc-fix (2020-10-15) 1 commit
200 - (merged to 'next' on 2020-10-26 at 2f0a73fd48)
201 - + fast-import: fix over-allocation of marks storage
243
203 - "git fast-import" wasted a lot of memory when many marks were in use.
244 +* pb/blame-funcname-range-userdiff (2020-11-01) 8 commits
245 + - blame: simplify 'setup_blame_bloom_data' interface
246 + - blame: simplify 'setup_scoreboard' interface
247 + - blame: enable funcname blaming with userdiff driver
248 + - line-log: mention both modes in 'blame' and 'log' short help
249 + - doc: add more pointers to gitattributes(5) for userdiff
250 + - blame-options.txt: also mention 'funcname' in '-L' description
251 + - doc: line-range: improve formatting
252 + - doc: log, gitk: move '-L' description to 'line-range-options.txt'
253 +
254 + "git blame -L :funcname -- path" did not work well for a path for
255 + which a userdiff driver is defined.
256
257 + Will merge to 'next'.
258
206 -* jk/fast-import-marks-cleanup (2020-10-16) 1 commit
207 - (merged to 'next' on 2020-10-26 at 1ba987dd54)
208 - + fast-import: remove duplicated option-parsing line
259 +
260 +* rs/clear-commit-marks-in-repo (2020-10-31) 2 commits
261 + (merged to 'next' on 2020-11-04 at cb1e1d73cf)
262 + + bisect: clear flags in passed repository
263 + + object: allow clear_commit_marks_all to handle any repo
264
265 Code clean-up.
266
267 + Will merge to 'master'.
268 +
269 +
270 +* rs/pack-write-hashwrite-simplify (2020-11-01) 1 commit
271 + (merged to 'next' on 2020-11-04 at 7194d3e811)
272 + + pack-write: use hashwrite_be32() instead of double-buffering array
273
213 -* jk/no-common (2020-10-16) 1 commit
214 - (merged to 'next' on 2020-10-26 at c888cb8b28)
215 - + config.mak.dev: build with -fno-common
274 + Code clean-up.
275
217 - Dev support to catch a tentative definition of a variable in our C
218 - code as an error.
276 + Will merge to 'master'.
277
278
221 -* jk/report-fn-typedef (2020-10-16) 1 commit
222 - (merged to 'next' on 2020-10-26 at fa4e128b65)
223 - + usage: define a type for a reporting function
279 +* sd/prompt-local-variable (2020-11-01) 1 commit
280 + (merged to 'next' on 2020-11-04 at ddc4192867)
281 + + git-prompt.sh: localize `option` in __git_ps1_show_upstream
282
283 Code clean-up.
284
285 + Will merge to 'master'.
286
228 -* js/avoid-split-sideband-message (2020-10-27) 3 commits
229 - (merged to 'next' on 2020-10-27 at 06b2f75522)
230 - + test-pkt-line: drop colon from sideband identity
231 - (merged to 'next' on 2020-10-26 at 1b550f3245)
232 - + sideband: report unhandled incomplete sideband messages as bugs
233 - + sideband: avoid reporting incomplete sideband messages
234 - (this branch is used by jk/sideband-more-error-checking.)
287
236 - The side-band status report can be sent at the same time as the
237 - primary payload multiplexed, but the demultiplexer on the receiving
238 - end incorrectly split a single status report into two, which has
239 - been corrected.
288 +* so/log-diff-merge (2020-11-09) 27 commits
289 + - doc/git-show: include --diff-merges description
290 + - doc/rev-list-options: document --first-parent implies --diff-merges=first-parent
291 + - doc/diff-generate-patch: mention new --diff-merges option
292 + - doc/git-log: describe new --diff-merges options
293 + - t4013: add test for --diff-merges=first-parent
294 + - diff-merges: implement new values for --diff-merges
295 + - diff-merges: make -m/-c/--cc explicitly mutually exclusive
296 + - diff-merges: refactor opt settings into separate functions
297 + - diff-merges: get rid of now empty diff_merges_init_revs()
298 + - diff-merges: group diff-merge flags next to each other inside 'rev_info'
299 + - diff-merges: split 'ignore_merges' field
300 + - diff-merges: fix -m to properly override -c/--cc
301 + - t4013: add tests for -m failing to override -c/--cc
302 + - t4013: support test_expect_failure through ':failure' magic
303 + - diff-merges: revise revs->diff flag handling
304 + - diff-merges: introduce revs->first_parent_merges flag
305 + - diff-merges: new function diff_merges_set_dense_combined_if_unset()
306 + - diff-merges: new function diff_merges_suppress()
307 + - diff-merges: re-arrange functions to match the order they are called in
308 + - diff-merges: rename diff_merges_default_to_enable() to match semantics
309 + - diff-merges: move checks for first_parent_only out of the module
310 + - diff-merges: rename all functions to have common prefix
311 + - revision: move diff merges functions to its own diff-merges.c
312 + - revision: provide implementation for diff merges tweaks
313 + - revision: factor out initialization of diff-merge related settings
314 + - revision: factor out setup of diff-merge related settings
315 + - revision: factor out parsing of diff-merge related options
316
317 + "git log" learned a new "--diff-merges=<how>" option.
318
242 -* js/ci-ghwf-dedup-tests (2020-10-12) 2 commits
243 - (merged to 'next' on 2020-10-26 at 4832a8f40b)
244 - + ci: make the "skip-if-redundant" check more defensive
245 - + ci: work around old records of GitHub runs
319
247 - Originally merged to 'next' on 2020-10-23
320 +* cw/ci-ghwf-check-ws-errors (2020-11-03) 1 commit
321 + (merged to 'next' on 2020-11-04 at dc1121823c)
322 + + ci: make the whitespace checker more robust
323
249 - GitHub Actions automated test improvement to skip tests on a tree
250 - identical to what has already been tested.
324 + Dev support update.
325
326 + Will merge to 'master'.
327
253 -* js/default-branch-name-part-4-minus-1 (2020-10-23) 9 commits
254 - (merged to 'next' on 2020-10-26 at 0a66b76c66)
255 - + t1400: prepare for `main` being default branch name
256 - + tests: prepare aligned mentions of the default branch name
257 - + t9902: prepare a test for the upcoming default branch name
258 - + t3200: prepare for `main` being shorter than `master`
259 - + t5703: adjust a test case for the upcoming default branch name
260 - + t6200: adjust suppression pattern to also match "main"
261 - + tests: start moving to a different default main branch name
262 - + t9801: use `--` in preparation for default branch rename
263 - + fmt-merge-msg: also suppress "into main" by default
264 - (this branch is used by js/default-branch-name-adjust-t5411.)
328
266 - Adjust tests so that they won't scream when the default initial
267 - branch name is changed to 'main'.
329 +* ds/maintenance-part-4 (2020-11-04) 4 commits
330 + - maintenance: use Windows scheduled tasks
331 + - maintenance: use launchctl on macOS
332 + - maintenance: include 'cron' details in docs
333 + - maintenance: extract platform-specific scheduling
334 + (this branch uses ds/maintenance-part-3.)
335 +
336 + Follow-up on the "maintenance part-3" which introduced scheduled
337 + maintenance tasks to support platforms whose native scheduling
338 + methods are not 'cron'.
339 +
340 +
341 +* en/merge-ort-impl (2020-11-06) 21 commits
342 + - merge-ort: free data structures in merge_finalize()
343 + - merge-ort: add implementation of record_unmerged_index_entries()
344 + - tree: enable cmp_cache_name_compare() to be used elsewhere
345 + - merge-ort: add implementation of checkout()
346 + - merge-ort: basic outline for merge_switch_to_result()
347 + - merge-ort: step 3 of tree writing -- handling subdirectories as we go
348 + - merge-ort: step 2 of tree writing -- function to create tree object
349 + - merge-ort: step 1 of tree writing -- record basenames, modes, and oids
350 + - merge-ort: have process_entries operate in a defined order
351 + - merge-ort: add a preliminary simple process_entries() implementation
352 + - merge-ort: avoid recursing into identical trees
353 + - merge-ort: record stage and auxiliary info for every path
354 + - merge-ort: compute a few more useful fields for collect_merge_info
355 + - merge-ort: avoid repeating fill_tree_descriptor() on the same tree
356 + - merge-ort: implement a very basic collect_merge_info()
357 + - merge-ort: add an err() function similar to one from merge-recursive
358 + - merge-ort: use histogram diff
359 + - merge-ort: port merge_start() from merge-recursive
360 + - merge-ort: add some high-level algorithm structure
361 + - merge-ort: setup basic internal data structures
362 + - Merge branch 'en/strmap' into en/merge-ort-impl
363 + (this branch uses en/merge-ort-api-null-impl and en/strmap.)
364 +
365 +
366 +* js/default-branch-name-adjust-t5515 (2020-11-02) 4 commits
367 + (merged to 'next' on 2020-11-09 at 568ba5aba5)
368 + + t5515: use `main` as the name of the main branch for testing (conclusion)
369 + + t5515: use `main` as the name of the main branch for testing (part 3)
370 + + t5515: use `main` as the name of the main branch for testing (part 2)
371 + + t5515: use `main` as the name of the main branch for testing (part 1)
372
373 + Prepare a test script to transition of the default branch name to
374 + 'main'.
375
270 -* js/t7006-cleanup (2020-10-21) 1 commit
271 - (merged to 'next' on 2020-10-26 at b8582f842d)
272 - + t7006: Use test_path_is_* functions in test script
376 + Will merge to 'master'.
377
274 - Code clean-up.
378
379 +* jt/push-with-base (2020-11-02) 5 commits
380 + . SQUASH???
381 + . Doc: push with --base
382 + . remote-curl: teach --base for http(s)://
383 + . push: teach --base for ssh:// and file://
384 + . connect: refactor building of Extra Parameters
385
277 -* jt/apply-reverse-twice (2020-10-20) 1 commit
278 - (merged to 'next' on 2020-10-26 at f060893eb7)
279 - + apply: when -R, also reverse list of sections
386 + "git push" learns a way to tell an object that it expects the other
387 + side to have and is usable as a common ancestor, which can be used
388 + by the other side to shrink its initial ref advertisement.
389
281 - "git apply -R" did not handle patches that touch the same path
282 - twice correctly, which has been corrected. This is most relevant
283 - in a patch that changes a path from a regular file to a symbolic
284 - link (and vice versa).
390
391 +* rs/worktree-list-show-locked (2020-11-03) 1 commit
392 + (merged to 'next' on 2020-11-04 at 5f4fa51a91)
393 + + t2402: fix typo
394
287 -* lo/zsh-completion (2020-10-16) 1 commit
288 - (merged to 'next' on 2020-10-26 at 100dc6adde)
289 - + completion: fix zsh installation instructions
395 + Typofix.
396
291 - Update instructions for command line completion (in contrib/) for zsh.
397 + Will merge to 'master'.
398
399
294 -* mk/diff-ignore-regex (2020-10-20) 2 commits
295 - (merged to 'next' on 2020-10-26 at c68727da93)
296 - + diff: add -I<regex> that ignores matching changes
297 - + merge-base, xdiff: zero out xpparam_t structures
400 +* jc/abbrev-doc (2020-11-04) 1 commit
401 + (merged to 'next' on 2020-11-09 at 09efe81b8b)
402 + + doc: clarify that --abbrev=<n> is about the minimum length
403
299 - "git diff" family of commands learned the "-I<regex>" option to
300 - ignore hunks whose changed lines all match the given pattern.
404 + The documentation on the "--abbrev=<n>" option did not say the
405 + output may be longer than "<n>" hexdigits, which has been
406 + clarified.
407
408 + Will merge to 'master'.
409
303 -* nk/dir-c-comment-update (2020-10-16) 1 commit
304 - (merged to 'next' on 2020-10-26 at 3a4cb82ad6)
305 - + dir.c: fix comments to agree with argument name
410
307 - Update stale in-code comment.
411 +* jc/line-log-takes-no-pathspec (2020-11-04) 1 commit
412 + (merged to 'next' on 2020-11-09 at 47c2c88b9d)
413 + + log: diagnose -L used with pathspec as an error
414
415 + "git log -L<range>:<path>" is documented to take no pathspec, but
416 + this was not enforced by the command line option parser, which has
417 + been corrected.
418
310 -* sc/sequencer-gpg-octopus (2020-10-18) 3 commits
311 - (merged to 'next' on 2020-10-26 at e1c956e52a)
312 - + t3435: add tests for rebase -r GPG signing
313 - + sequencer: pass explicit --no-gpg-sign to merge
314 - + sequencer: fix gpg option passed to merge subcommand
419 + Will merge to 'master'.
420
316 - "git rebase --rebase-merges" did not correctly pass --gpg-sign
317 - command line option to underlying "git merge" when replaying a merge
318 - using non-default merge strategy or when replaying an octopus merge
319 - (because replaying a two-head merge with the default strategy was
320 - done in a separate codepath, the problem did not trigger for most
321 - users), which has been corrected.
421
422 +* jk/format-patch-output (2020-11-04) 3 commits
423 + (merged to 'next' on 2020-11-09 at 1f1bb6ebff)
424 + + format-patch: support --output option
425 + + format-patch: tie file-opening logic to output_directory
426 + + format-patch: refactor output selection
427
324 -* tk/credential-config (2020-10-16) 1 commit
325 - (merged to 'next' on 2020-10-26 at 6ab486f389)
326 - + credential: load default config
428 + "git format-patch --output=there" did not work as expected and
429 + instead crashed. The option is now supported.
430
328 - "git credential' didn't honor the core.askPass configuration
329 - variable (among other things), which has been corrected.
431 + Will merge to 'master'.
432
433
332 -* ve/userdiff-bash (2020-10-22) 1 commit
333 - (merged to 'next' on 2020-10-26 at 2b34be98fe)
334 - + userdiff: support Bash
434 +* rs/empty-reflog-check-fix (2020-11-01) 1 commit
435 + (merged to 'next' on 2020-11-09 at 3da6b6fef0)
436 + + stash: simplify reflog emptiness check
437
336 - The userdiff pattern learned to identify the function definition in
337 - POSIX shells and bash.
438 + The code to see if "git stash drop" can safely remove refs/stash
439 + has been made more carerful.
440
339 ---------------------------------------------------
340 -[New Topics]
441 + Will merge to 'master'.
442
342 -* dd/upload-pack-stateless-eof (2020-10-30) 1 commit
343 - - upload-pack: allow stateless client EOF just prior to haves
443
444 +* mc/typofix (2020-11-05) 1 commit
445 + (merged to 'next' on 2020-11-09 at ed6106b6e3)
446 + + doc: fixing two trivial typos in Documentation/
447
346 -* js/trace2-session-id (2020-10-31) 11 commits
347 - - upload-pack.c: fix a sparse warning
348 - - receive-pack: log received client trace2 SID
349 - - send-pack: advertise trace2 SID in capabilities
350 - - upload-pack, serve: log received client trace2 SID
351 - - fetch-pack: advertise trace2 SID in capabilities
352 - - transport: log received server trace2 SID
353 - - serve: advertise trace2 SID in v2 capabilities
354 - - receive-pack: advertise trace2 SID in v0 capabilities
355 - - upload-pack: advertise trace2 SID in v0 capabilities
356 - - docs: new trace2.advertiseSID option
357 - - docs: new capability to advertise trace2 SIDs
448 + Docfix.
449
450 + Will merge to 'master'.
451
360 -* so/format-patch-doc-on-default-diff-format (2020-10-31) 1 commit
361 - - doc/diff-options: fix out of place mentions of '--patch/-p'
452
453 +* jc/format-patch-name-max (2020-11-06) 1 commit
454 + - format-patch: make output filename configurable
455
364 -* jc/sparse-error-for-developer-build (2020-10-31) 1 commit
365 - - Makefile: enable -Wsparse-error for DEVELOPER build
456 + The maximum length of output filenames "git format-patch" creates
457 + has become configurable (used to be capped at 64).
458
459 + Will merge to 'next'?
460
368 -* pb/blame-funcname-range-userdiff (2020-11-01) 8 commits
369 - - blame: simplify 'setup_blame_bloom_data' interface
370 - - blame: simplify 'setup_scoreboard' interface
371 - - blame: enable funcname blaming with userdiff driver
372 - - line-log: mention both modes in 'blame' and 'log' short help
373 - - doc: add more pointers to gitattributes(5) for userdiff
374 - - blame-options.txt: also mention 'funcname' in '-L' description
375 - - doc: line-range: improve formatting
376 - - doc: log, gitk: move '-L' description to 'line-range-options.txt'
461
462 +* jk/diff-release-filespec-fix (2020-11-06) 1 commit
463 + (merged to 'next' on 2020-11-09 at 6d89b9602d)
464 + + diff: allow passing NULL to diff_free_filespec_data()
465
379 -* rs/clear-commit-marks-in-repo (2020-10-31) 2 commits
380 - - bisect: clear flags in passed repository
381 - - object: allow clear_commit_marks_all to handle any repo
466 + Running "git diff" while allowing external diff in a state with
467 + unmerged paths used to segfault, which has been corrected.
468
469 + Will merge to 'master'.
470
384 -* rs/empty-stash-check-fix (2020-11-01) 1 commit
385 - - stash: simplify reflog emptiness check
471
472 +* js/ci-github-set-env (2020-11-06) 1 commit
473 + (merged to 'next' on 2020-11-09 at c4ce007b4c)
474 + + ci: avoid using the deprecated `set-env` construct
475
388 -* rs/pack-write-hashwrite-simplify (2020-11-01) 1 commit
389 - - pack-write: use hashwrite_be32() instead of double-buffering array
476 + CI update.
477
478 + Will merge to 'master'.
479
392 -* sd/prompt-local-variable (2020-11-01) 1 commit
393 - - git-prompt.sh: localize `option` in __git_ps1_show_upstream
480
481 +* js/test-file-size (2020-11-06) 1 commit
482 + (merged to 'next' on 2020-11-09 at b3594d0150)
483 + + tests: consolidate the `file_size` function into `test-lib-functions.sh`
484
396 -* so/log-diff-merge (2020-11-01) 26 commits
397 - - doc/rev-list-options: document --first-parent implies --diff-merges=first-parent
398 - - doc/diff-generate-patch: mention new --diff-merges option
399 - - doc/git-log: describe new --diff-merges options
400 - - t4013: add test for --diff-merges=first-parent
401 - - diff-merges: implement new values for --diff-merges
402 - - diff-merges: make -m/-c/--cc explicitly mutually exclusive
403 - - diff-merges: refactor opt settings into separate functions
404 - - diff-merges: get rid of now empty diff_merges_init_revs()
405 - - diff-merges: group diff-merge flags next to each other inside 'rev_info'
406 - - diff-merges: split 'ignore_merges' field
407 - - diff-merges: fix -m to properly override -c/--cc
408 - - t4013: add tests for -m failing to override -c/--cc
409 - - t4013: support test_expect_failure through ':failure' magic
410 - - diff-merges: revise revs->diff flag handling
411 - - diff-merges: introduce revs->first_parent_merges flag
412 - - diff-merges: new function diff_merges_set_dense_combined_if_unset()
413 - - diff-merges: new function diff_merges_suppress()
414 - - diff-merges: re-arrange functions to match the order they are called in
415 - - diff-merges: rename diff_merges_default_to_enable() to match semantics
416 - - diff-merges: move checks for first_parent_only out of the module
417 - - diff-merges: rename all functions to have common prefix
418 - - revision: move diff merges functions to its own diff-merges.c
419 - - revision: provide implementation for diff merges tweaks
420 - - revision: factor out initialization of diff-merge related settings
421 - - revision: factor out setup of diff-merge related settings
422 - - revision: factor out parsing of diff-merge related options
485 + Test clean-up.
486 +
487 + Will merge to 'master'.
488 +
489 +
490 +* jx/t5411-flake-fix (2020-11-09) 1 commit
491 + . t5411: consistent result for proc-receive broken test
492 +
493 + A flakey test has been cleaned up.
494 +
495 + This merely is sweeping an underlying breakage under the rug.
496 + cf. <20201109231246.GA677345@coredump.intra.peff.net>
497 +
498 +
499 +* dg/bswap-msvc (2020-11-09) 1 commit
500 + (merged to 'next' on 2020-11-09 at 91a67b86f7)
501 + + compat/bswap.h: simplify MSVC endianness detection
502 +
503 + Code simplification.
504 +
505 + Will merge to 'master'.
506 +
507 +
508 +* js/p4-default-branch (2020-11-09) 1 commit
509 + (merged to 'next' on 2020-11-09 at a4b08b45da)
510 + + p4: respect init.defaultBranch
511 +
512 + "git p4" now honors init.defaultBranch configuration.
513 +
514 + Will merge to 'master'.
515 +
516 +
517 +* js/test-whitespace-fixes (2020-11-09) 6 commits
518 + (merged to 'next' on 2020-11-09 at 383388929a)
519 + + t9603: use tabs for indentation
520 + + t5570: remove trailing padding
521 + + t5400,t5402: consistently indent with tabs, not with spaces
522 + + t3427: adjust stale comment
523 + + t3406: indent with tabs, not spaces
524 + + t1004: insert missing "branch" in a message
525 +
526 + Test code clean-up.
527 +
528 + Will merge to 'master'.
529 +
530 +
531 +* rs/archive-high-compression (2020-11-09) 1 commit
532 + - archive: support compression levels beyond 9
533 +
534 + "git archive" now allows compression level higher than "-9"
535 + when generating tar.gz output.
536 +
537 + Will merge to 'next'?
538
539 --------------------------------------------------
540 [Stalled]
541
542 +* es/config-hooks (2020-10-16) 8 commits
543 + - hook: replace find_hook() with hook_exists()
544 + - hook: add 'run' subcommand
545 + - parse-options: parse into strvec
546 + - hook: implement hookcmd.<name>.skip
547 + - hook: include hookdir hook in list
548 + - hook: add list command
549 + - hook: scaffolding for git-hook subcommand
550 + - doc: propose hooks managed by the config
551 +
552 + The "hooks defined in config" topic.
553 +
554 +
555 +* ag/merge-strategies-in-c (2020-10-06) 11 commits
556 + . sequencer: use the "octopus" merge strategy without forking
557 + . sequencer: use the "resolve" strategy without forking
558 + . merge: use the "octopus" strategy without forking
559 + . merge: use the "resolve" strategy without forking
560 + . merge-octopus: rewrite in C
561 + . merge-recursive: move better_branch_name() to merge.c
562 + . merge-resolve: rewrite in C
563 + . merge-index: don't fork if the requested program is `git-merge-one-file'
564 + . merge-index: libify merge_one_path() and merge_all()
565 + . merge-one-file: rewrite in C
566 + . t6027: modernise tests
567 +
568 + The resolve and octopus merge strategy backends have been rewritten
569 + in C.
570 +
571 + Expecting an update.
572 + cf.<693f417c-5612-7878-a055-2810f62af3b4@gmail.com>
573 +
574 +
575 * hn/reftable (2020-10-01) 13 commits
576 . reftable: "test-tool dump-reftable" command.
577 . reftable: rest of library
@@ -455,7 +603,9 @@ Release tarballs are available at:
603 The http transport has been taught to retry a failed request that
604 may reasonably be retried.
605
606 + Expecting a reroll.
607 cf. <20201015000410.GB328643@google.com>
608 + cf. <CAM4o00eefXK2CJ_FxwwVPpBKL01JsJANf+SdjCtw_0NVV82L+Q@mail.gmail.com>
609
610
611 * sv/t7001-modernize (2020-09-25) 11 commits
@@ -535,32 +685,15 @@ Release tarballs are available at:
685 cf. <20200911214358.acl3hy2e763begoo@feanor>
686
687
538 -* mk/use-size-t-in-zlib (2018-10-15) 1 commit
539 - - zlib.c: use size_t for size
540 -
541 - The wrapper to call into zlib followed our long tradition to use
542 - "unsigned long" for sizes of regions in memory, which have been
543 - updated to use "size_t".
544 -
545 ---------------------------------------------------
546 -[Needs Review]
547 -
548 -* ag/merge-strategies-in-c (2020-10-06) 11 commits
549 - . sequencer: use the "octopus" merge strategy without forking
550 - . sequencer: use the "resolve" strategy without forking
551 - . merge: use the "octopus" strategy without forking
552 - . merge: use the "resolve" strategy without forking
553 - . merge-octopus: rewrite in C
554 - . merge-recursive: move better_branch_name() to merge.c
555 - . merge-resolve: rewrite in C
556 - . merge-index: don't fork if the requested program is `git-merge-one-file'
557 - . merge-index: libify merge_one_path() and merge_all()
558 - . merge-one-file: rewrite in C
559 - . t6027: modernise tests
560 -
561 - The resolve and octopus merge strategy backends have been rewritten
562 - in C.
688 +* mk/use-size-t-in-zlib (2018-10-15) 1 commit
689 + - zlib.c: use size_t for size
690 +
691 + The wrapper to call into zlib followed our long tradition to use
692 + "unsigned long" for sizes of regions in memory, which have been
693 + updated to use "size_t".
694
695 +--------------------------------------------------
696 +[Needs Review]
697
698 * ss/submodule-add-in-c (2020-10-07) 3 commits
699 . t7400: add test to check 'submodule add' for tracked paths
@@ -569,31 +702,47 @@ Release tarballs are available at:
702
703 "git submodule add" being rewritten in C.
704
572 ---------------------------------------------------
573 -[Cooking]
574 -
575 -* jk/sideband-more-error-checking (2020-10-29) 1 commit
576 - (merged to 'next' on 2020-10-30 at 8131784691)
577 - + sideband: diagnose more sideband anomalies
578 -
579 - The code to detect premature EOF in the sideband demultiplexer has
580 - been cleaned up.
705
582 - Will merge to 'master'.
706 +* mt/parallel-checkout-part-1 (2020-11-04) 19 commits
707 + - ci: run test round with parallel-checkout enabled
708 + - parallel-checkout: add tests related to .gitattributes
709 + - parallel-checkout: add tests related to clone collisions
710 + - parallel-checkout: add tests for basic operations
711 + - checkout-index: add parallel checkout support
712 + - builtin/checkout.c: complete parallel checkout support
713 + - make_transient_cache_entry(): optionally alloc from mem_pool
714 + - parallel-checkout: support progress displaying
715 + - parallel-checkout: make it truly parallel
716 + - unpack-trees: add basic support for parallel checkout
717 + - entry: add checkout_entry_ca() which takes preloaded conv_attrs
718 + - entry: move conv_attrs lookup up to checkout_entry()
719 + - entry: extract cache_entry update from write_entry()
720 + - entry: make fstat_output() and read_blob_entry() public
721 + - entry: extract a header file for entry.c functions
722 + - convert: add conv_attrs classification
723 + - convert: add get_stream_filter_ca() variant
724 + - convert: add [async_]convert_to_working_tree_ca() variants
725 + - convert: make convert_attrs() and convert structs public
726
727 + Parallel checkout.
728
585 -* js/default-branch-name-adjust-t5411 (2020-10-31) 4 commits
586 - (merged to 'next' on 2020-11-02 at d625eda73c)
587 - + t5411: finish preparing for `main` being the default branch name
588 - + t5411: adjust the remaining support files for init.defaultBranch=main
589 - + t5411: start adjusting the support files for init.defaultBranch=main
590 - + t5411: start using the default branch name "main"
729
592 - Prepare a test script to transition of the default branch name to
593 - 'main'.
730 +* mt/grep-sparse-checkout (2020-09-10) 9 commits
731 + - config: add setting to ignore sparsity patterns in some cmds
732 + - grep: honor sparse checkout patterns
733 + - config: correctly read worktree configs in submodules
734 + - config: make do_git_config_sequence receive a 'struct repository'
735 + - t/helper/test-config: unify exit labels
736 + - t/helper/test-config: diagnose missing arguments
737 + - t/helper/test-config: be consistent with exit codes
738 + - t1308-config-set: avoid false positives when using test-config
739 + - doc: grep: unify info on configuration variables
740
595 - Will merge to 'master'.
741 + "git grep" has been tweaked to be limited to the sparse checkout
742 + paths.
743
744 +--------------------------------------------------
745 +[Cooking]
746
747 * av/fsmonitor-cleanup (2020-10-21) 2 commits
748 - fsmonitor: make output of test-dump-fsmonitor more concise
@@ -601,7 +750,8 @@ Release tarballs are available at:
750
751 Code clean-up.
752
604 - Unneeded? Perhaps will drop.
753 + Will discard.
754 + Unneeded?
755 cf. <20201022183822.GA781760@nand.local>
756
757
@@ -618,73 +768,32 @@ Release tarballs are available at:
768 Will merge to 'master'
769
770
621 -* jk/perl-warning (2020-10-21) 1 commit
622 - (merged to 'next' on 2020-10-28 at 5fcb98f2ff)
623 - + perl: check for perl warnings while running tests
624 -
625 - Dev support.
626 -
627 - Will merge to 'master'.
628 - cf. <20201022032400.GC1480820@coredump.intra.peff.net>
629 -
630 -
631 -* pb/ref-filter-with-crlf (2020-10-29) 2 commits
632 - (merged to 'next' on 2020-10-30 at 8be77584c5)
633 - + log, show: add tests for messages containing CRLF
634 - + ref-filter: handle CRLF at end-of-line more gracefully
635 -
636 - A commit and tag object may have CR at the end of each and
637 - every line (you can create such an object with hash-object or
638 - using --cleanup=verbatim to decline the default clean-up
639 - action), but it would make it impossible to have a blank line
640 - to separate the title from the body of the message. Be lenient
641 - and accept a line with lone CR on it as a blank line, too.
642 -
643 - Will merge to 'master'.
644 -
645 -
646 -* ab/git-remote-exit-code (2020-10-27) 1 commit
647 - (merged to 'next' on 2020-10-30 at 1fc119404b)
648 - + remote: add meaningful exit code on missing/existing
649 -
650 - Exit codes from "git remote add" etc. were not usable by scripted
651 - callers.
652 -
653 - Will merge to 'master'.
654 -
655 -
656 -* en/merge-ort-api-null-impl (2020-10-29) 4 commits
771 +* en/merge-ort-api-null-impl (2020-11-02) 4 commits
772 - merge,rebase,revert: select ort or recursive by config or environment
773 - fast-rebase: demonstrate merge-ort's API via new test-tool command
774 - merge-ort-wrappers: new convience wrappers to mimic the old merge API
775 - merge-ort: barebones API of new merge strategy with empty implementation
776 + (this branch is used by en/merge-ort-impl.)
777
778 Preparation for a new merge strategy.
779
664 - Looking good.
780 + Will merge to 'next'.
781
782
783 * en/merge-tests (2020-10-26) 9 commits
668 - - t6423: add more details about direct resolution of directories
669 - - t6423: note improved ort handling with untracked files
670 - - t6423, t6436: note improved ort handling with dirty files
671 - - merge tests: expect slight differences in output for recursive vs. ort
672 - - t6423: expect improved conflict markers labels in the ort backend
673 - - t6404, t6423: expect improved rename/delete handling in ort backend
674 - - t6416: correct expectation for rename/rename(1to2) + directory/file
675 - - merge tests: expect improved directory/file conflict handling in ort
676 - - t/: new helper for tests that pass with ort but fail with recursive
677 - (this branch uses en/dir-rename-tests.)
784 + (merged to 'next' on 2020-11-09 at 8ac9fe94a7)
785 + + t6423: add more details about direct resolution of directories
786 + + t6423: note improved ort handling with untracked files
787 + + t6423, t6436: note improved ort handling with dirty files
788 + + merge tests: expect slight differences in output for recursive vs. ort
789 + + t6423: expect improved conflict markers labels in the ort backend
790 + + t6404, t6423: expect improved rename/delete handling in ort backend
791 + + t6416: correct expectation for rename/rename(1to2) + directory/file
792 + + merge tests: expect improved directory/file conflict handling in ort
793 + + t/: new helper for tests that pass with ort but fail with recursive
794
795 Preparation for a new merge strategy.
796
681 -
682 -* jk/committer-date-is-author-date-fix-simplify (2020-10-26) 1 commit
683 - (merged to 'next' on 2020-10-30 at 9ba3fad57d)
684 - + am, sequencer: stop parsing our own committer ident
685 -
686 - Code simplification.
687 -
797 Will merge to 'master'.
798
799
@@ -697,92 +806,46 @@ Release tarballs are available at:
806 which does not consider having untracked files in the working tree
807 as source of dirtiness. The inconsistency has been fixed.
808
700 - Needs doc update.
701 -
702 -
703 -* fc/zsh-completion (2020-10-28) 29 commits
704 - (merged to 'next' on 2020-11-02 at 2c5e3a73ad)
705 - + zsh: update copyright notices
706 - + completion: bash: remove old compat wrappers
707 - + completion: bash: cleanup cygwin check
708 - + completion: bash: trivial cleanup
709 - + completion: zsh: add simple version check
710 - + completion: zsh: trivial simplification
711 - + completion: zsh: add alias descriptions
712 - + completion: zsh: improve command tags
713 - + completion: zsh: refactor command completion
714 - + completion: zsh: shuffle functions around
715 - + completion: zsh: simplify file_direct
716 - + completion: zsh: simplify nl_append
717 - + completion: zsh: trivial cleanup
718 - + completion: zsh: simplify direct compadd
719 - + completion: zsh: simplify compadd functions
720 - + completion: zsh: fix splitting of words
721 - + completion: zsh: add missing direct_append
722 - + completion: fix conflict with bashcomp
723 - + completion: zsh: fix completion for --no-.. options
724 - + completion: bash: remove zsh wrapper
725 - + completion: bash: synchronize zsh wrapper
726 - + completion: zsh: fix for command aliasing
727 - + completion: prompt: fix color for Zsh
728 - + completion: zsh: update slave script locations
729 - + completion: zsh: fix for directories with spaces
730 - + completion: zsh: reorganize install instructions
731 - + completion: zsh: fix bash script extension
732 - + completion: zsh: fix name due to broken autoloading
733 - + completion: zsh: fix __gitcomp_direct()
734 -
735 - Zsh autocompletion (in contrib/) update.
736 -
737 - Will merge to 'master'.
809 + Needs doc update and also adjusting "git status".
810
811
812 * nk/perf-fsmonitor (2020-10-26) 10 commits
741 - - t/perf/fsmonitor: add benchmark for dirty status
742 - - t/perf/fsmonitor: perf comparison of multiple fsmonitor integrations
743 - - t/perf/fsmonitor: initialize test with git reset
744 - - t/perf/fsmonitor: factor setup for fsmonitor into function
745 - - t/perf/fsmonitor: silence initial git commit
746 - - t/perf/fsmonitor: shorten DESC to basename
747 - - t/perf/fsmonitor: factor description out for readability
748 - - t/perf/fsmonitor: improve error message if typoing hook name
749 - - t/perf/fsmonitor: move watchman setup to one-time-repo-setup
750 - - t/perf/fsmonitor: separate one time repo initialization
751 - (this branch uses nk/diff-files-vs-fsmonitor.)
813 + (merged to 'next' on 2020-11-09 at 9fed160a17)
814 + + t/perf/fsmonitor: add benchmark for dirty status
815 + + t/perf/fsmonitor: perf comparison of multiple fsmonitor integrations
816 + + t/perf/fsmonitor: initialize test with git reset
817 + + t/perf/fsmonitor: factor setup for fsmonitor into function
818 + + t/perf/fsmonitor: silence initial git commit
819 + + t/perf/fsmonitor: shorten DESC to basename
820 + + t/perf/fsmonitor: factor description out for readability
821 + + t/perf/fsmonitor: improve error message if typoing hook name
822 + + t/perf/fsmonitor: move watchman setup to one-time-repo-setup
823 + + t/perf/fsmonitor: separate one time repo initialization
824
825 Add t/perf support for fsmonitor.
826
755 -
756 -* jk/checkout-index-errors (2020-10-27) 2 commits
757 - (merged to 'next' on 2020-10-30 at 77dddffe1b)
758 - + checkout-index: propagate errors to exit code
759 - + checkout-index: drop error message from empty --stage=all
760 - (this branch is used by mt/parallel-checkout-part-1.)
761 -
762 - "git checkout-index" did not consistently signal an error with its
763 - exit status.
764 -
827 Will merge to 'master'.
828
829
768 -* pw/rebase-i-orig-head (2020-10-27) 4 commits
830 +* pw/rebase-i-orig-head (2020-11-04) 4 commits
831 - rebase -i: simplify get_revision_ranges()
832 - rebase -i: use struct object_id when writing state
833 - rebase -i: use struct object_id rather than looking up commit
834 - rebase -i: stop overwriting ORIG_HEAD buffer
835
774 - "git rebase -i" did not
836 + "git rebase -i" did not store ORIG_HEAD correctly.
837
776 - Expecting an update to the log message, but otherwise the change
777 - looked sensible.
838 + Will merge to 'next'.
839 cf. <xmqq7drbbcj5.fsf@gitster.c.googlers.com>
840
841
781 -* en/strmap (2020-11-02) 13 commits
842 +* en/strmap (2020-11-06) 15 commits
843 + - shortlog: use strset from strmap.h
844 - Use new HASHMAP_INIT macro to simplify hashmap initialization
845 - strmap: take advantage of FLEXPTR_ALLOC_STR when relevant
846 - strmap: enable allocations to come from a mem_pool
847 - strmap: add a strset sub-type
848 + - strmap: split create_entry() out of strmap_put()
849 - strmap: add functions facilitating use as a string->int map
850 - strmap: enable faster clearing and reusing of strmaps
851 - strmap: add more utility functions
@@ -792,69 +855,12 @@ Release tarballs are available at:
855 - hashmap: allow re-use after hashmap_free()
856 - hashmap: adjust spacing to fix argument alignment
857 - hashmap: add usage documentation explaining hashmap_free[_entries]()
858 + (this branch is used by en/merge-ort-impl.)
859
860 A speciailization of hashmap that uses a string as key has been
861 introduced. Hopefully it will see wider use over time.
862
799 - Rerolled.
800 - cf. <20201023080202.GA4012156@coredump.intra.peff.net>
801 - cf. <CABPp-BFV8ZAu5vLarG2mX8gT5bfV31oqbd-vjAQF_YDcyNSRiw@mail.gmail.com>
802 -
803 -
804 -* mr/bisect-in-c-3 (2020-10-16) 7 commits
805 - (merged to 'next' on 2020-10-28 at 435792b62f)
806 - + bisect--helper: retire `--bisect-autostart` subcommand
807 - + bisect--helper: retire `--write-terms` subcommand
808 - + bisect--helper: retire `--check-expected-revs` subcommand
809 - + bisect--helper: reimplement `bisect_state` & `bisect_head` shell functions in C
810 - + bisect--helper: retire `--next-all` subcommand
811 - + bisect--helper: retire `--bisect-clean-state` subcommand
812 - + bisect--helper: finish porting `bisect_start()` to C
813 -
814 - Rewriting "git bisect" in C continues.
815 -
816 - Will merge to 'master'.
817 -
818 -
819 -* as/tests-cleanup (2020-10-18) 1 commit
820 - (merged to 'next' on 2020-10-28 at fd199beb31)
821 - + t2200,t9832: avoid using 'git' upstream in a pipe
822 -
823 - Micro clean-up of a couple of test scripts.
824 -
825 - Will merge to 'master'.
826 -
827 -
828 -* en/dir-rename-tests (2020-10-16) 4 commits
829 - (merged to 'next' on 2020-10-28 at 7bbe123e70)
830 - + t6423: more involved rules for renaming directories into each other
831 - + t6423: update directory rename detection tests with new rule
832 - + t6423: more involved directory rename test
833 - + directory-rename-detection.txt: update references to regression tests
834 - (this branch is used by en/merge-tests.)
835 -
836 - More preliminary tests have been added to document desired outcome
837 - of various "directory rename" situations.
838 -
839 - Will merge to 'master'.
840 -
841 -
842 -* nk/diff-files-vs-fsmonitor (2020-10-20) 7 commits
843 - (merged to 'next' on 2020-10-28 at d3af804056)
844 - + p7519-fsmonitor: add a git add benchmark
845 - + p7519-fsmonitor: refactor to avoid code duplication
846 - + perf lint: add make test-lint to perf tests
847 - + t/perf: add fsmonitor perf test for git diff
848 - + t/perf/p7519-fsmonitor.sh: warm cache on first git status
849 - + t/perf/README: elaborate on output format
850 - + fsmonitor: use fsmonitor data in `git diff`
851 - (this branch is used by nk/perf-fsmonitor.)
852 -
853 - "git diff" and other commands that share the same machinery to
854 - compare with working tree files have been taught to take advantage
855 - of the fsmonitor data when available.
856 -
857 - Will merge to 'master'.
863 + Will merge to 'next'?
864
865
866 * jk/symlinked-dotgitx-files (2020-10-23) 9 commits
@@ -896,33 +902,10 @@ Release tarballs are available at:
902 The commit-graph learned to use corrected commit dates instead of
903 the generation number to help topological revision traversal.
904
899 - Almost there.
905 + Getting there.
906 + cf. <85y2jiqq3c.fsf@gmail.com>
907 cf. <685afed6-f01f-5d22-80d4-00fdc11caf0a@gmail.com>
901 -
902 -
903 -* mt/parallel-checkout-part-1 (2020-10-29) 19 commits
904 - - ci: run test round with parallel-checkout enabled
905 - - parallel-checkout: add tests related to .gitattributes
906 - - parallel-checkout: add tests related to clone collisions
907 - - parallel-checkout: add tests for basic operations
908 - - checkout-index: add parallel checkout support
909 - - builtin/checkout.c: complete parallel checkout support
910 - - make_transient_cache_entry(): optionally alloc from mem_pool
911 - - parallel-checkout: support progress displaying
912 - - parallel-checkout: make it truly parallel
913 - - unpack-trees: add basic support for parallel checkout
914 - - entry: add checkout_entry_ca() which takes preloaded conv_attrs
915 - - entry: move conv_attrs lookup up to checkout_entry()
916 - - entry: extract cache_entry update from write_entry()
917 - - entry: make fstat_output() and read_blob_entry() public
918 - - entry: extract a header file for entry.c functions
919 - - convert: add conv_attrs classification
920 - - convert: add get_stream_filter_ca() variant
921 - - convert: add [async_]convert_to_working_tree_ca() variants
922 - - convert: make convert_attrs() and convert structs public
923 - (this branch uses jk/checkout-index-errors.)
924 -
925 - Parallel checkout.
908 + cf. <20201103053629.GA13228@Abhishek-Arch>
909
910
911 * ds/maintenance-part-3 (2020-10-16) 8 commits
@@ -934,34 +917,17 @@ Release tarballs are available at:
917 - for-each-repo: run subcommands on configured repos
918 - maintenance: add --schedule option and config
919 - maintenance: optionally skip --auto process
920 + (this branch is used by ds/maintenance-part-4.)
921
922 Parts of "git maintenance" to ease writing crontab entries (and
923 other scheduling system configuration) for it.
924
925 + Will merge to 'next'?
926
942 -* es/config-hooks (2020-10-16) 8 commits
943 - - hook: replace find_hook() with hook_exists()
944 - - hook: add 'run' subcommand
945 - - parse-options: parse into strvec
946 - - hook: implement hookcmd.<name>.skip
947 - - hook: include hookdir hook in list
948 - - hook: add list command
949 - - hook: scaffolding for git-hook subcommand
950 - - doc: propose hooks managed by the config
951 -
952 - The "hooks defined in config" topic.
953 -
927 +--------------------------------------------------
928 +[Discarded]
929
955 -* mt/grep-sparse-checkout (2020-09-10) 9 commits
956 - - config: add setting to ignore sparsity patterns in some cmds
957 - - grep: honor sparse checkout patterns
958 - - config: correctly read worktree configs in submodules
959 - - config: make do_git_config_sequence receive a 'struct repository'
960 - - t/helper/test-config: unify exit labels
961 - - t/helper/test-config: diagnose missing arguments
962 - - t/helper/test-config: be consistent with exit codes
963 - - t1308-config-set: avoid false positives when using test-config
964 - - doc: grep: unify info on configuration variables
930 +* jk/use-strset-in-shortlog (2020-11-05) 1 commit
931 + . shortlog: drop custom strset implementation
932
966 - "git grep" has been tweaked to be limited to the sparse checkout
967 - paths.
933 + Now a part of the en/strmap topic.