What's cooking (2018/10 #06)

Junio C Hamano committed Oct 30, 2018 at 16:34 UTC 260071fdb90ea96db621883e03111e84b7644f82
1 file changed +582 -601
whats-cooking.txt
+582 -601
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Oct 2018, #05; Fri, 26)
4 -X-master-at: c670b1f876521c9f7cd40184bf7ed05aad843433
5 -X-next-at: b2b9d981bf34f0657045fe90a098deb6e3a9dbe8
3 +Subject: What's cooking in git.git (Oct 2018, #06; Tue, 30)
4 +X-master-at: 4ede3d42dfb57f9a41ac96a1f216c62eb7566cc2
5 +X-next-at: 53cd27f688b0bae2a5f2d8f5cea6ba63c6e4a781
6
7 -What's cooking in git.git (Oct 2018, #05; Fri, 26)
7 +What's cooking in git.git (Oct 2018, #06; Tue, 30)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -12,9 +12,11 @@ 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 -Quite a few topics have graduated to 'master'. At sixth batch,
16 -'master' now has 450+ patches since v2.19 and 'next' has additional
17 -170+ patches pending.
15 +Quite a few topics have graduated to 'master'. At seventh batch,
16 +'master' now has 530+ patches since v2.19 and 'next' has additional
17 +100+ patches pending. I am hoping that the topics involved in
18 +rewriting "rebase" and "rebase -i" in C can hit 'master' in the next
19 +batch, which would happen later this week.
20
21 You can find the changes described here in the integration branches
22 of the repositories listed at
@@ -24,162 +26,450 @@ of the repositories listed at
26 --------------------------------------------------
27 [Graduated to "master"]
28
27 -* ab/gc-doc-update (2018-10-11) 1 commit
28 - (merged to 'next' on 2018-10-19 at 84347d36a7)
29 - + gc doc: mention the commit-graph in the intro
29 +* ah/doc-updates (2018-10-23) 6 commits
30 + (merged to 'next' on 2018-10-26 at b0bb46a602)
31 + + doc: fix formatting in git-update-ref
32 + + doc: fix indentation of listing blocks in gitweb.conf.txt
33 + + doc: fix descripion for 'git tag --format'
34 + + doc: fix inappropriate monospace formatting
35 + + doc: fix ASCII art tab spacing
36 + + doc: clarify boundaries of 'git worktree list --porcelain'
37 +
38 + Doc updates.
39 +
40 +
41 +* bc/hash-transition-part-15 (2018-10-15) 15 commits
42 + (merged to 'next' on 2018-10-26 at 4ff8111b4b)
43 + + rerere: convert to use the_hash_algo
44 + + submodule: make zero-oid comparison hash function agnostic
45 + + apply: rename new_sha1_prefix and old_sha1_prefix
46 + + apply: replace hard-coded constants
47 + + tag: express constant in terms of the_hash_algo
48 + + transport: use parse_oid_hex instead of a constant
49 + + upload-pack: express constants in terms of the_hash_algo
50 + + refs/packed-backend: express constants using the_hash_algo
51 + + packfile: express constants in terms of the_hash_algo
52 + + pack-revindex: express constants in terms of the_hash_algo
53 + + builtin/fetch-pack: remove constants with parse_oid_hex
54 + + builtin/mktree: remove hard-coded constant
55 + + builtin/repack: replace hard-coded constants
56 + + pack-bitmap-write: use GIT_MAX_RAWSZ for allocation
57 + + object_id.cocci: match only expressions of type 'struct object_id'
58 +
59 + More codepaths are moving away from hardcoded hash sizes.
60 +
61 +
62 +* cb/compat-mmap-is-private-read-only (2018-10-25) 1 commit
63 + (merged to 'next' on 2018-10-26 at d3bfab3034)
64 + + compat: make sure git_mmap is not expected to write
65 +
66 + Code tightening.
67 +
68 +
69 +* cb/khash-maybe-unused-function (2018-10-24) 2 commits
70 + (merged to 'next' on 2018-10-26 at 17fc4e55a0)
71 + + khash: silence -Wunused-function for delta-islands
72 + + commit-slabs: move MAYBE_UNUSED out
73 +
74 + Build fix.
75 +
76 +
77 +* cb/remove-dead-init (2018-10-19) 2 commits
78 + (merged to 'next' on 2018-10-26 at ba725a64ad)
79 + + multi-pack-index: avoid dead store for struct progress
80 + + unpack-trees: avoid dead store for struct progress
81 +
82 + Code clean-up.
83 +
84 +
85 +* ch/subtree-build (2018-10-18) 3 commits
86 + (merged to 'next' on 2018-10-18 at f89fd5e6aa)
87 + + Revert "subtree: make install targets depend on build targets"
88 + (merged to 'next' on 2018-10-16 at 919599cc37)
89 + + subtree: make install targets depend on build targets
90 + (merged to 'next' on 2018-10-12 at 4ed9ff6300)
91 + + subtree: add build targets 'man' and 'html'
92 +
93 + Build update for "git subtree" (in contrib/) documentation pages.
94 +
95 +
96 +* dl/mergetool-gui-option (2018-10-25) 3 commits
97 + (merged to 'next' on 2018-10-26 at 2c46355e81)
98 + + doc: document diff/merge.guitool config keys
99 + + completion: support `git mergetool --[no-]gui`
100 + + mergetool: accept -g/--[no-]gui as arguments
101 +
102 + "git mergetool" learned to take the "--[no-]gui" option, just like
103 + "git difftool" does.
104 +
105 +
106 +* ds/ci-commit-graph-and-midx (2018-10-19) 1 commit
107 + (merged to 'next' on 2018-10-26 at a13664e49a)
108 + + ci: add optional test variables
109 +
110 + One of our CI tests to run with "unusual/experimental/random"
111 + settings now also uses commit-graph and midx.
112 +
113 +
114 +* ds/reachable (2018-10-23) 1 commit
115 + (merged to 'next' on 2018-10-26 at 76b5fc9a46)
116 + + commit-reach: fix cast in compare_commits_by_gen()
117 +
118 + Trivial bugfix.
119 +
120 +
121 +* ds/reachable-first-parent-fix (2018-10-19) 1 commit
122 + (merged to 'next' on 2018-10-26 at 076442d512)
123 + + commit-reach: fix first-parent heuristic
124 +
125 + Correct performance regression in commit ancestry computation when
126 + generation numbers are involved.
127 +
128 +
129 +* jc/cocci-preincr (2018-10-24) 2 commits
130 + (merged to 'next' on 2018-10-26 at cbd98b44e2)
131 + + fsck: s/++i > 1/i++/
132 + + cocci: simplify "if (++u > 1)" to "if (u++)"
133 +
134 + Code cleanup.
135 +
136 +
137 +* jc/receive-deny-current-branch-fix (2018-10-19) 1 commit
138 + (merged to 'next' on 2018-10-26 at 2975c42215)
139 + + receive: denyCurrentBranch=updateinstead should not blindly update
140
31 - The documentation of "git gc" has been updated to mention that it
32 - is no longer limited to "pruning away crufts" but also updates
33 - ancillary files like commit-graph as a part of repository
34 - optimization.
141 + The receive.denyCurrentBranch=updateInstead codepath kicked in even
142 + when the push should have been rejected due to other reasons, such
143 + as it does not fast-forward or the update-hook rejects it, which
144 + has been corrected.
145
146
37 -* bc/editorconfig (2018-10-09) 2 commits
38 - (merged to 'next' on 2018-10-16 at 81461ae0fd)
39 - + editorconfig: indicate settings should be kept in sync
40 - + editorconfig: provide editor settings for Git developers
147 +* jk/run-command-notdot (2018-10-25) 2 commits
148 + (merged to 'next' on 2018-10-26 at 9d9335b23f)
149 + + t0061: adjust to test-tool transition
150 + + run-command: mark path lookup errors with ENOENT
151
42 - To help developers, an EditorConfig file that attempts to follow
43 - the project convention has been added.
152 + The implementation of run_command() API on the UNIX platforms had a
153 + bug that caused a command not on $PATH to be found in the current
154 + directory.
155
156
46 -* ds/coverage-diff (2018-10-10) 1 commit
47 - (merged to 'next' on 2018-10-16 at c12b7279d9)
48 - + contrib: add coverage-diff script
157 +* jk/test-tool-help (2018-10-18) 1 commit
158 + (merged to 'next' on 2018-10-26 at ed32bae21b)
159 + + test-tool: show tool list on error
160
50 - The result of coverage test can be combined with "git blame" to
51 - check the test coverage of code introduced recently with a new
52 - 'coverage-diff' tool (in contrib/).
161 + Developer support.
162 +
163 +
164 +* jk/unused-function (2018-10-19) 1 commit
165 + (merged to 'next' on 2018-10-26 at c8c3fbb432)
166 + + config.mak.dev: enable -Wunused-function
167 +
168 + Developer support.
169 +
170 +
171 +* jk/uploadpack-packobjectshook-fix (2018-10-26) 1 commit
172 + (merged to 'next' on 2018-10-26 at 95c93b1199)
173 + + upload-pack: fix broken if/else chain in config callback
174 +
175 + Code clean-up that results in a small bugfix.
176 +
177 +
178 +* js/diff-notice-has-drive-prefix (2018-10-22) 1 commit
179 + (merged to 'next' on 2018-10-26 at 6b2d004194)
180 + + diff: don't attempt to strip prefix from absolute Windows paths
181 +
182 + Under certain circumstances, "git diff D:/a/b/c D:/a/b/d" on
183 + Windows would strip initial parts from the paths because they
184 + were not recognized as absolute, which has been corrected.
185 +
186 +
187 +* js/mingw-getcwd (2018-10-24) 2 commits
188 + (merged to 'next' on 2018-10-26 at f31abc8d8f)
189 + + mingw: fix getcwd when the parent directory cannot be queried
190 + + mingw: ensure `getcwd()` reports the correct case
191 +
192 + The way the Windows port figures out the current directory has been
193 + improved.
194 +
195 +
196 +* js/mingw-load-sys-dll (2018-10-24) 1 commit
197 + (merged to 'next' on 2018-10-26 at 1f458a7e04)
198 + + mingw: load system libraries the recommended way
199 +
200 + The way DLLs are loaded on the Windows port has been improved.
201 +
202 +
203 +* js/pack-objects-mutex-init-fix (2018-10-19) 3 commits
204 + (merged to 'next' on 2018-10-26 at 7516dcc6e4)
205 + + pack-objects (mingw): initialize `packing_data` mutex in the correct spot
206 + + pack-objects (mingw): demonstrate a segmentation fault with large deltas
207 + + pack-objects: fix typo 'detla' -> 'delta'
208 +
209 + A mutex used in "git pack-objects" were not correctly initialized
210 + and this caused "git repack" to dump core on Windows.
211 +
212 +
213 +* lm/range-diff-submodule-fix (2018-10-25) 1 commit
214 + (merged to 'next' on 2018-10-25 at af387d8978)
215 + + range-diff: allow to diff files regardless of submodule config
216 +
217 + "git range-diff" did not work well when the compared ranges had
218 + changes in submodules and the "--submodule=log" was used.
219 +
220 +
221 +* md/filter-trees (2018-10-18) 10 commits
222 + (merged to 'next' on 2018-10-18 at 55be2fded9)
223 + + list-objects: support for skipping tree traversal
224 + (merged to 'next' on 2018-10-16 at 64d351d342)
225 + + filter-trees: code clean-up of tests
226 + (merged to 'next' on 2018-10-12 at c66e49d4ca)
227 + + list-objects-filter: implement filter tree:0
228 + + list-objects-filter-options: do not over-strbuf_init
229 + + list-objects-filter: use BUG rather than die
230 + + revision: mark non-user-given objects instead
231 + + rev-list: handle missing tree objects properly
232 + + list-objects: always parse trees gently
233 + + list-objects: refactor to process_tree_contents
234 + + list-objects: store common func args in struct
235 +
236 + The "rev-list --filter" feature learned to exclude all trees via
237 + "tree:0" filter.
238 +
239 +
240 +* ot/ref-filter-plug-leaks (2018-10-19) 3 commits
241 + (merged to 'next' on 2018-10-26 at a475cb6568)
242 + + ref-filter: free item->value and item->value->s
243 + + ls-remote: release memory instead of UNLEAK
244 + + ref-filter: free memory from used_atom
245 +
246 + Plugging a handful of memory leaks in the ref-filter codepath.
247 +
248 +
249 +* rj/header-guards (2018-10-18) 1 commit
250 + (merged to 'next' on 2018-10-26 at c767be34df)
251 + + headers: normalize the spelling of some header guards
252 +
253 + Code clean-up.
254 +
255 +
256 +* rv/send-email-cc-misc-by (2018-10-16) 3 commits
257 + (merged to 'next' on 2018-10-19 at 2c1e5f75af)
258 + + send-email: also pick up cc addresses from -by trailers
259 + + send-email: only consider lines containing @ or <> for automatic Cc'ing
260 + + Documentation/git-send-email.txt: style fixes
261 +
262 + "git send-email" learned to grab address-looking string on any
263 + trailer whose name ends with "-by"; --suppress-cc=misc-by on the
264 + command line, or setting sendemail.suppresscc configuration
265 + variable to "misc-by", can be used to disable this behaviour.
266 +
267 +
268 +* sb/strbuf-h-update (2018-09-29) 1 commit
269 + (merged to 'next' on 2018-10-26 at e4ad935cb0)
270 + + strbuf.h: format according to coding guidelines
271 +
272 + Code clean-up to serve as a BCP example.
273 + Further clean-up patches may want to follow soon.
274 +
275 +
276 +* sb/submodule-helper-remove-cruft (2018-10-18) 1 commit
277 + (merged to 'next' on 2018-10-26 at 5719bc5d7e)
278 + + builtin/submodule--helper: remove debugging leftover tracing
279 +
280 + Code clean-up.
281 +
282 +
283 +* sg/doc-show-branch-typofix (2018-10-18) 1 commit
284 + (merged to 'next' on 2018-10-26 at 9444be6a99)
285 + + doc: fix small typo in git show-branch
286 +
287 + Docfix.
288 +
289 +
290 +* ss/rename-tests (2018-10-23) 5 commits
291 + (merged to 'next' on 2018-10-26 at e4929c2ece)
292 + + t7501: rename commit test to comply with naming convention
293 + + t7500: rename commit tests script to comply with naming convention
294 + + t7502: rename commit test script to comply with naming convention
295 + + t7509: cleanup description and filename
296 + + t2000: rename and combine checkout clash tests
297 +
298 + Reorganize some tests and rename them; "ls t/" now gives a better
299 + overview of what is tested for these scripts than before.
300 +
301 +
302 +* tb/filter-alternate-refs (2018-10-25) 2 commits
303 + (merged to 'next' on 2018-10-26 at 887a7779a3)
304 + + t5410: use longer path for sample script
305 + + Documentation/config.txt: fix typo in core.alternateRefsCommand
306 +
307 + Test fix.
308 +
309 +
310 +* tq/branch-create-wo-branch-get (2018-10-18) 1 commit
311 + (merged to 'next' on 2018-10-26 at fe522704b7)
312 + + builtin/branch.c: remove useless branch_get
313 +
314 + Code clean-up.
315 +
316 +
317 +* tq/branch-style-fix (2018-10-18) 1 commit
318 + (merged to 'next' on 2018-10-26 at 6e79291d55)
319 + + branch: trivial style fix
320 +
321 + Code clean-up.
322 +
323 +
324 +* uk/merge-subtree-doc-update (2018-10-25) 1 commit
325 + (merged to 'next' on 2018-10-26 at 7ab4fc8ab1)
326 + + howto/using-merge-subtree: mention --allow-unrelated-histories
327 +
328 + Belated documentation update to adjust to a new world order that
329 + happened a yew years ago.
330 +
331 +--------------------------------------------------
332 +[New Topics]
333
334 +* ab/push-dwim-dst (2018-10-29) 9 commits
335 + - SQUASH???
336 + - push doc: document the DWYM behavior pushing to unqualified <dst>
337 + - push: add DWYM support for "git push refs/remotes/...:<dst>"
338 + - push: test that <src> doesn't DWYM if <dst> is unqualified
339 + - push: add an advice on unqualified <dst> push
340 + - push: move unqualified refname error into a function
341 + - push: improve the error shown on unqualified <dst> push
342 + - i18n: remote.c: mark error(...) messages for translation
343 + - remote.c: add braces in anticipation of a follow-up change
344
55 -* du/cherry-is-plumbing (2018-10-12) 1 commit
56 - (merged to 'next' on 2018-10-19 at ffe6c5449e)
57 - + doc: move git-cherry to plumbing
345 + "git push $there $src:$dst" rejects when $dst is not a fully
346 + qualified refname and not clear what the end user meant. The
347 + codepath has been taught to give a clearer error message, and also
348 + guess where the push should go by taking the type of the pushed
349 + object into account (e.g. a tag object would want to go under
350 + refs/tags/).
351
59 - Doc update to mark "git cherry" as a plumbing command.
352
353 +* cb/printf-empty-format (2018-10-27) 1 commit
354 + - sequencer: cleanup for gcc warning in non developer mode
355 + (this branch uses ag/rebase-i-in-c; is tangled with ag/sequencer-reduce-rewriting-todo, js/rebase-autostash-fix, js/rebase-i-break, js/rebase-i-shortopt, js/rebase-in-c-5.5-work-with-rebase-i-in-c and pk/rebase-in-c-6-final.)
356
62 -* du/get-tar-commit-id-is-plumbing (2018-10-12) 1 commit
63 - (merged to 'next' on 2018-10-16 at 23e7f018cd)
64 - + doc: move git-get-tar-commit-id to plumbing
357 + Build fix for a topic in flight.
358
66 - Doc update to mark "git get-tar-commit-id" as a plumbing command.
359 + Will follow ag/rebase-i-in-c.
360
361
69 -* du/rev-parse-is-plumbing (2018-10-11) 1 commit
70 - (merged to 'next' on 2018-10-16 at 50aca759e2)
71 - + doc: move git-rev-parse from porcelain to plumbing
362 +* md/list-lazy-objects-fix (2018-10-29) 1 commit
363 + - list-objects.c: don't segfault for missing cmdline objects
364
73 - Doc update.
365 + "git rev-list --exclude-promissor-objects" had to take an object
366 + that does not exist locally (and is lazily available) from the
367 + command line without barfing, but the code dereferenced NULL.
368
369 + That sympotom may be worth addressing, but I think the "fix" is
370 + overly broad and is wrong. Giving a missing object should be
371 + diagnosed as an error, not swept under the rug silently.
372
76 -* js/fuzzer (2018-10-15) 2 commits
77 - (merged to 'next' on 2018-10-19 at 649a2bf1fb)
78 - + fuzz: add fuzz testing for packfile indices.
79 - + fuzz: add basic fuzz testing target.
373
81 - An experiment to fuzz test a few areas, hopefully we can gain more
82 - coverage to various areas.
374 +* nd/i18n (2018-10-29) 12 commits
375 + - fsck: mark strings for translation
376 + - parse-options.c: mark more strings for translation
377 + - parse-options: replace opterror() with optname()
378 + - repack: mark more strings for translation
379 + - remote.c: mark messages for translation
380 + - reflog: mark strings for translation
381 + - read-cache.c: add missing colon separators
382 + - read-cache.c: mark more strings for translation
383 + - attr.c: mark more string for translation
384 + - archive.c: mark more strings for translation
385 + - alias.c: mark split_cmdline_strerror() strings for translation
386 + - git.c: mark more strings for translation
387
388 + More _("i18n") markings.
389
85 -* js/mingw-default-ident (2018-10-16) 3 commits
86 - (merged to 'next' on 2018-10-19 at 2f710c811b)
87 - + mingw: use domain information for default email
88 - + getpwuid(mingw): provide a better default for the user name
89 - + getpwuid(mingw): initialize the structure only once
390 + Some changes seem not to be mere mechanical convesions and needs
391 + a careful review.
392
91 - The logic to select the default user name and e-mail on Windows has
92 - been improved.
393
394 +* nd/pthreads (2018-10-29) 10 commits
395 + - read-cache.c: initialize copy_len to shut up gcc 8
396 + - Clean up pthread_create() error handling
397 + - read-cache.c: remove #ifdef NO_PTHREADS
398 + - pack-objects: remove #ifdef NO_PTHREADS
399 + - preload-index.c: remove #ifdef NO_PTHREADS
400 + - grep: remove #ifdef NO_PTHREADS
401 + - attr.c: remove #ifdef NO_PTHREADS
402 + - name-hash.c: remove #ifdef NO_PTHREADS
403 + - index-pack: remove #ifdef NO_PTHREADS
404 + - thread-utils: macros to unconditionally compile pthreads API
405
95 -* ld/p4-unshelve (2018-10-16) 3 commits
96 - (merged to 'next' on 2018-10-19 at 35339798f9)
97 - + git-p4: fully support unshelving changelists
98 - + git-p4: unshelve into refs/remotes/p4-unshelved, not refs/remotes/p4/unshelved
99 - + git-p4: do not fail in verbose mode for missing 'fileSize' key
406 + The codebase has been cleaned up to reduce "#ifndef NO_PTHREADS".
407
101 - "git p4 unshelve" improvements.
408
409 +* nd/wildmatch-double-asterisk (2018-10-29) 1 commit
410 + - wildmatch: change behavior of "foo**bar" in WM_PATHNAME mode
411
104 -* ma/t7005-bash-workaround (2018-09-28) 1 commit
105 - (merged to 'next' on 2018-10-16 at 543e1e6574)
106 - + t7005-editor: quote filename to fix whitespace-issue
412 + A pattern with '**' that does not have a slash on either side used
413 + to be an invalid one, but the code now treats such double-asterisks
414 + the same way as two normal asterisks that happen to be adjacent to
415 + each other.
416
108 - Test fix.
417 + Will merge to 'next'.
418
419
111 -* mm/doc-no-dashed-git (2018-10-11) 1 commit
112 - (merged to 'next' on 2018-10-16 at c26bcd740b)
113 - + doc: fix a typo and clarify a sentence
420 +* rj/header-cleanup (2018-10-29) 3 commits
421 + - commit-reach.h: add missing declarations (hdr-check)
422 + - ewok_rlw.h: add missing 'inline' to function definition
423 + - fetch-object.h: add missing declaration (hdr-check)
424
115 - Doc update.
425 + Code cleanup.
426
427 + Will merge to 'next'.
428
118 -* np/log-graph-octopus-fix (2018-10-12) 1 commit
119 - (merged to 'next' on 2018-10-16 at aa00813683)
120 - + log: fix coloring of certain octopus merge shapes
429
122 - "git log --graph" showing an octopus merge sometimes miscounted the
123 - number of display columns it is consuming to show the merge and its
124 - parent commits, which has been corrected.
430 +* js/mingw-ns-filetime (2018-10-24) 3 commits
431 + (merged to 'next' on 2018-10-29 at 4563a0d9d0)
432 + + mingw: implement nanosecond-precision file times
433 + + mingw: replace MSVCRT's fstat() with a Win32-based implementation
434 + + mingw: factor out code to set stat() data
435
436 + Windows port learned to use nano-second resolution file timestamps.
437
127 -* rs/subtree-fixes (2018-10-12) 5 commits
128 - (merged to 'next' on 2018-10-16 at be23c9343c)
129 - + subtree: performance improvement for finding unexpected parent commits
130 - (merged to 'next' on 2018-10-12 at 2b47258e04)
131 - + subtree: improve decision on merges kept in split
132 - + subtree: use commits before rejoins for splits
133 - + subtree: make --ignore-joins pay attention to adds
134 - + subtree: refactor split of a commit into standalone method
438 + Will merge to 'master'.
439
136 - Various subtree fixes.
137 - Unless somebody objects, that is.
440
441 +* bp/refresh-index-using-preload (2018-10-30) 1 commit
442 + - speed up refresh_index() by utilizing preload_index()
443
140 -* rv/alias-help (2018-10-11) 3 commits
141 - (merged to 'next' on 2018-10-19 at f16bbfb3ef)
142 - + git-help.txt: document "git help cmd" vs "git cmd --help" for aliases
143 - + git.c: handle_alias: prepend alias info when first argument is -h
144 - + help: redirect to aliased commands for "git cmd --help"
444 + The helper function to refresh the cached stat information in the
445 + in-core index has learned to perform the lstat() part of the
446 + operation in parallel on multi-core platforms.
447
146 - "git cmd --help" when "cmd" is aliased used to only say "cmd is
147 - aliased to ...". Now it shows that to the standard error stream
148 - and runs "git $cmd --help" where $cmd is the first word of the
149 - alias expansion.
448 + Will merge to 'next'.
449
151 - This could be misleading for those who alias a command with options
152 - (e.g. with "[alias] cpn = cherry-pick -n", "git cpn --help" would
153 - show the manual of "cherry-pick", and the reader would not be told
154 - to pay close attention to the part that describes the "--no-commit"
155 - option until closing the pager that showed the contents of the
156 - manual, if the pager is configured to restore the original screen,
157 - or would not be told at all, if the pager simply makes the message
158 - on the standard error scroll away.
450
451 +* sg/test-verbose-log (2018-10-30) 1 commit
452 + - test-lib: introduce the '-V' short option for '--verbose-log'
453
161 -* sb/diff-emit-line-ws-markup-cleanup (2018-10-12) 1 commit
162 - (merged to 'next' on 2018-10-16 at a68a6f0003)
163 - + diff.c: pass sign_index to emit_line_ws_markup
454 + Our test scripts can now take the '-V' option as a synonym for the
455 + '--verbose-log' option.
456
165 - Code clean-up.
457 + Will merge to 'next'.
458
459 +--------------------------------------------------
460 +[Stalled]
461
168 -* sg/split-index-racefix (2018-10-12) 7 commits
169 - (merged to 'next' on 2018-10-16 at c1d6563c51)
170 - + split-index: BUG() when cache entry refers to non-existing shared entry
171 - + split-index: smudge and add racily clean cache entries to split index
172 - + split-index: don't compare cached data of entries already marked for split index
173 - + split-index: count the number of deleted entries
174 - + t1700-split-index: date back files to avoid racy situations
175 - + split-index: add tests to demonstrate the racy split index problem
176 - + t1700-split-index: document why FSMONITOR is disabled in this test script
462 +* lt/date-human (2018-07-09) 1 commit
463 + - Add 'human' date format
464
178 - The codepath to support the experimental split-index mode had
179 - remaining "racily clean" issues fixed.
465 + A new date format "--date=human" that morphs its output depending
466 + on how far the time is from the current time has been introduced.
467 + "--date=auto" can be used to use this new format when the output is
468 + goint to the pager or to the terminal and otherwise the default
469 + format.
470
471 --------------------------------------------------
182 -[New Topics]
472 +[Cooking]
473
474 * sb/more-repo-in-api (2018-10-19) 19 commits
475 - submodule: don't add submodule as odb for push
@@ -237,16 +527,18 @@ of the repositories listed at
527
528
529 * nd/completion-negation (2018-10-22) 1 commit
240 - - completion: fix __gitcomp_builtin no longer consider extra options
530 + (merged to 'next' on 2018-10-29 at 87e73b0c72)
531 + + completion: fix __gitcomp_builtin no longer consider extra options
532
533 The command line completion machinery (in contrib/) has been
534 updated to allow the completion script to tweak the list of options
535 that are reported by the parse-options machinery correctly.
536
246 - Will merge to 'next'.
537 + Will merge to 'master'.
538
539
249 -* nd/config-split (2018-10-22) 59 commits
540 +* nd/config-split (2018-10-29) 79 commits
541 + - config.txt: remove config/dummy.txt
542 - config.txt: move worktree.* to a separate file
543 - config.txt: move web.* to a separate file
544 - config.txt: move versionsort.* to a separate file
@@ -256,20 +548,29 @@ of the repositories listed at
548 - config.txt: move uploadarchive.* to a separate file
549 - config.txt: move transfer.* to a separate file
550 - config.txt: move tag.* to a separate file
551 + - config.txt: move submodule.* to a separate file
552 + - config.txt: move stash.* to a separate file
553 - config.txt: move status.* to a separate file
554 - config.txt: move splitIndex.* to a separate file
555 - config.txt: move showBranch.* to a separate file
556 - config.txt: move sequencer.* to a separate file
557 + - config.txt: move sendemail-config.txt to config/
558 + - config.txt: move reset.* to a separate file
559 - config.txt: move rerere.* to a separate file
560 - config.txt: move repack.* to a separate file
561 - config.txt: move remotes.* to a separate file
562 - config.txt: move remote.* to a separate file
563 + - config.txt: move receive-config.txt to config/
564 + - config.txt: move rebase-config.txt to config/
565 + - config.txt: move push-config.txt to config/
566 + - config.txt: move pull-config.txt to config/
567 - config.txt: move protocol.* to a separate file
568 - config.txt: move pretty.* to a separate file
569 - config.txt: move pager.* to a separate file
570 - config.txt: move pack.* to a separate file
571 - config.txt: move notes.* to a separate file
572 - config.txt: move mergetool.* to a separate file
573 + - config.txt: move merge-config.txt to config/
574 - config.txt: move man.* to a separate file
575 - config.txt: move mailmap.* to a separate file
576 - config.txt: move mailinfo.* to a separate file
@@ -278,18 +579,26 @@ of the repositories listed at
579 - config.txt: move instaweb.* to a separate file
580 - config.txt: move init.* to a separate file
581 - config.txt: move index.* to a separate file
582 + - git-imap-send.txt: move imap.* to a separate file
583 - config.txt: move i18n.* to a separate file
584 + - config.txt: move http.* to a separate file
585 - config.txt: move ssh.* to a separate file
586 - config.txt: move help.* to a separate file
587 - config.txt: move guitool.* to a separate file
588 + - config.txt: move gui-config.txt to config/
589 - config.txt: move gpg.* to a separate file
590 - config.txt: move grep.* to a separate file
591 - config.txt: move gitweb.* to a separate file
592 + - config.txt: move gitcvs-config.txt to config/
593 - config.txt: move gc.* to a separate file
594 - config.txt: move fsck.* to a separate file
595 + - config.txt: move fmt-merge-msg-config.txt to config/
596 + - config.txt: move format-config.txt to config/
597 - config.txt: move filter.* to a separate file
598 + - config.txt: move fetch-config.txt to config/
599 - config.txt: move fastimport.* to a separate file
600 - config.txt: move difftool.* to a separate file
601 + - config.txt: move diff-config.txt to config/
602 - config.txt: move completion.* to a separate file
603 - config.txt: move credential.* to a separate file
604 - config.txt: move commit.* to a separate file
@@ -306,8 +615,19 @@ of the repositories listed at
615 - config.txt: move add.* to a separate file
616 - config.txt: move core.* to a separate file
617 - config.txt: move advice.* to a separate file
618 + - Update makefile in preparation for Documentation/config/*.txt
619 + - Merge branches 'bp/reset-quiet' and 'js/mingw-http-ssl' into nd/config-split
620 + (this branch uses bp/reset-quiet and js/mingw-http-ssl; is tangled with jc/http-curlver-warnings.)
621
310 - Expecting a reroll.
622 + Split the overly large Documentation/config.txt file into million
623 + little pieces. This potentially allows each individual piece
624 + included into the manual page of the command it affects more easily.
625 +
626 + Will merge to 'next'.
627 +
628 + This is a painful conversions while many other topics in flight
629 + wants to add to or edit the documentation of configuration
630 + variables.
631
632
633 * nd/per-worktree-config (2018-10-22) 2 commits
@@ -324,156 +644,62 @@ of the repositories listed at
644
645
646 * nd/submodule-unused-vars (2018-10-22) 1 commit
327 - - submodule.c: remove some of the_repository references
647 + (merged to 'next' on 2018-10-29 at 33641dcc89)
648 + + submodule.c: remove some of the_repository references
649
650 Code clean-up.
651
331 - Will merge to 'next'.
652 + Will merge to 'master'.
653
654
655 * nd/unpack-trees-with-cache-tree (2018-10-22) 1 commit
335 - - read-cache: use of memory after it is freed
656 + (merged to 'next' on 2018-10-29 at de51b606da)
657 + + read-cache: use of memory after it is freed
658
659 Trivial bugfix.
660
339 - Will merge to 'next'.
661 + Will merge to 'master'.
662
663
342 -* ag/rev-parse-all-exclude-fix (2018-10-24) 1 commit
664 +* ag/rev-parse-all-exclude-fix (2018-10-29) 2 commits
665 + - SQUASH???
666 - rev-parse: clear --exclude list after 'git rev-parse --all'
667
668 + "git rev-parse --exclude=* --branches --branches" (i.e. first
669 + saying "add only things that do not match '*' out of all branches"
670 + and then adding all branches, without any exclusion this time")
671 + worked as expected, but "--exclude=* --all --all" did not work the
672 + same way, which has been fixed.
673
346 -* ah/doc-updates (2018-10-23) 6 commits
347 - (merged to 'next' on 2018-10-26 at b0bb46a602)
348 - + doc: fix formatting in git-update-ref
349 - + doc: fix indentation of listing blocks in gitweb.conf.txt
350 - + doc: fix descripion for 'git tag --format'
351 - + doc: fix inappropriate monospace formatting
352 - + doc: fix ASCII art tab spacing
353 - + doc: clarify boundaries of 'git worktree list --porcelain'
354 -
355 - Doc updates.
356 -
357 - Will merge to 'master'.
674 + Will merge to 'next' after squashing the tests in.
675
676
677 * bp/reset-quiet (2018-10-24) 3 commits
361 - - reset: warn when refresh_index() takes more than 2 seconds
362 - - reset: add new reset.quiet config setting
363 - - reset: don't compute unstaged changes after reset when --quiet
678 + (merged to 'next' on 2018-10-29 at 71f4fbc802)
679 + + reset: warn when refresh_index() takes more than 2 seconds
680 + + reset: add new reset.quiet config setting
681 + + reset: don't compute unstaged changes after reset when --quiet
682 + (this branch is used by nd/config-split.)
683
684 "git reset --quiet" no longer runs "update-index --refresh"
685 internally, which shifts the refresh cost away from the command.
686
368 - Will merge to 'next'.
369 - cf. <3c31d5c3-df46-69e3-c138-30a93d9b3ce4@ramsayjones.plus.com>
370 - We may want its doc further updated.
371 -
372 -
373 -* cb/compat-mmap-is-private-read-only (2018-10-25) 1 commit
374 - (merged to 'next' on 2018-10-26 at d3bfab3034)
375 - + compat: make sure git_mmap is not expected to write
376 -
377 - Code tightening.
378 -
379 - Will merge to 'master'.
380 -
381 -
382 -* cb/khash-maybe-unused-function (2018-10-24) 2 commits
383 - (merged to 'next' on 2018-10-26 at 17fc4e55a0)
384 - + khash: silence -Wunused-function for delta-islands
385 - + commit-slabs: move MAYBE_UNUSED out
386 -
387 - Build fix.
388 -
389 - Will merge to 'master'.
390 -
391 -
392 -* dl/mergetool-gui-option (2018-10-25) 3 commits
393 - (merged to 'next' on 2018-10-26 at 2c46355e81)
394 - + doc: document diff/merge.guitool config keys
395 - + completion: support `git mergetool --[no-]gui`
396 - + mergetool: accept -g/--[no-]gui as arguments
397 -
398 - "git mergetool" learned to take the "--[no-]gui" option, just like
399 - "git difftool" does.
400 -
401 - Will merge to 'master'.
402 -
403 -
404 -* ds/reachable (2018-10-23) 1 commit
405 - (merged to 'next' on 2018-10-26 at 76b5fc9a46)
406 - + commit-reach: fix cast in compare_commits_by_gen()
407 -
408 - Trivial bugfix.
409 -
410 - Will merge to 'master'.
411 -
412 -
413 -* jc/cocci-preincr (2018-10-24) 2 commits
414 - (merged to 'next' on 2018-10-26 at cbd98b44e2)
415 - + fsck: s/++i > 1/i++/
416 - + cocci: simplify "if (++u > 1)" to "if (u++)"
417 -
418 - Code cleanup.
419 -
420 - Will merge to 'master'.
421 -
422 -
423 -* jk/run-command-notdot (2018-10-25) 2 commits
424 - (merged to 'next' on 2018-10-26 at 9d9335b23f)
425 - + t0061: adjust to test-tool transition
426 - + run-command: mark path lookup errors with ENOENT
427 -
428 - The implementation of run_command() API on the UNIX platforms had a
429 - bug that caused a command not on $PATH to be found in the current
430 - directory.
431 -
432 - Will merge to 'master'.
433 -
434 -
435 -* js/ming-ns-filetime (2018-10-24) 3 commits
436 - - mingw: implement nanosecond-precision file times
437 - - mingw: replace MSVCRT's fstat() with a Win32-based implementation
438 - - mingw: factor out code to set stat() data
439 -
440 - Windows port learned to use nano-second resolution file timestamps.
441 -
442 - Will merge to 'next'.
443 -
444 -
445 -* js/mingw-getcwd (2018-10-24) 2 commits
446 - (merged to 'next' on 2018-10-26 at f31abc8d8f)
447 - + mingw: fix getcwd when the parent directory cannot be queried
448 - + mingw: ensure `getcwd()` reports the correct case
449 -
450 - The way the Windows port figures out the current directory has been
451 - improved.
452 -
453 - Will merge to 'master'.
454 -
455 -
456 -* js/mingw-load-sys-dll (2018-10-24) 1 commit
457 - (merged to 'next' on 2018-10-26 at 1f458a7e04)
458 - + mingw: load system libraries the recommended way
459 -
460 - The way DLLs are loaded on the Windows port has been improved.
461 -
687 Will merge to 'master'.
688
689
690 * js/rebase-autostash-fix (2018-10-24) 5 commits
466 - - rebase --autostash: fix issue with dirty submodules
467 - - rebase --autostash: demonstrate a problem with dirty submodules
468 - - rebase (autostash): use an explicit OID to apply the stash
469 - - rebase (autostash): store the full OID in <state-dir>/autostash
470 - - rebase (autostash): avoid duplicate call to state_dir_path()
471 - (this branch uses ag/rebase-i-in-c, js/rebase-in-c-5.5-work-with-rebase-i-in-c, pk/rebase-in-c, pk/rebase-in-c-2-basic, pk/rebase-in-c-3-acts, pk/rebase-in-c-4-opts, pk/rebase-in-c-5-test and pk/rebase-in-c-6-final; is tangled with ag/sequencer-reduce-rewriting-todo, jc/rebase-in-c-5-test-typofix, js/rebase-i-break and js/rebase-i-shortopt.)
691 + (merged to 'next' on 2018-10-29 at 680e648001)
692 + + rebase --autostash: fix issue with dirty submodules
693 + + rebase --autostash: demonstrate a problem with dirty submodules
694 + + rebase (autostash): use an explicit OID to apply the stash
695 + + rebase (autostash): store the full OID in <state-dir>/autostash
696 + + rebase (autostash): avoid duplicate call to state_dir_path()
697 + (this branch uses ag/rebase-i-in-c, js/rebase-in-c-5.5-work-with-rebase-i-in-c, pk/rebase-in-c, pk/rebase-in-c-2-basic, pk/rebase-in-c-3-acts, pk/rebase-in-c-4-opts, pk/rebase-in-c-5-test and pk/rebase-in-c-6-final; is tangled with ag/sequencer-reduce-rewriting-todo, cb/printf-empty-format, jc/rebase-in-c-5-test-typofix, js/rebase-i-break and js/rebase-i-shortopt.)
698
699 "git rebase" that has recently been rewritten in C had a few issues
700 in its "--autstash" feature, which have been corrected.
701
476 - Will merge to 'next'.
702 + Will merge to 'master'.
703
704
705 * js/remote-archive-dwimfix (2018-10-26) 1 commit
@@ -501,223 +727,104 @@ of the repositories listed at
727
728
729 * jw/send-email-no-auth (2018-10-23) 1 commit
504 - - send-email: explicitly disable authentication
730 + (merged to 'next' on 2018-10-29 at a3fbbdb889)
731 + + send-email: explicitly disable authentication
732
733 "git send-email" learned to disable SMTP authentication via the
734 "--smtp-auth=none" option, even when the smtp username is given
735 (which turns the authentication on by default).
736
510 - Will merge to 'next'.
511 -
512 -
513 -* md/exclude-promisor-objects-fix (2018-10-23) 2 commits
514 - - exclude-promisor-objects: declare when option is allowed
515 - - Documentation/git-log.txt: do not show --exclude-promisor-objects
516 -
517 - Operations on promisor objects make sense in the context of only a
518 - small subset of the commands that internally use the revisions
519 - machinery, but the "--exclude-promisor-objects" option were taken
520 - and led to nonsense results by commands like "log", to which it
521 - didn't make much sense. This has been corrected.
522 -
523 - Will merge to 'next'.
524 -
525 -
526 -* mg/gpg-fingerprint (2018-10-23) 3 commits
527 - (merged to 'next' on 2018-10-26 at 1e219cb754)
528 - + gpg-interface.c: obtain primary key fingerprint as well
529 - + gpg-interface.c: support getting key fingerprint via %GF format
530 - + gpg-interface.c: use flags to determine key/signer info presence
531 - (this branch uses mg/gpg-parse-tighten; is tangled with jc/gpg-cocci-preincr.)
532 -
533 - New "--pretty=format:" placeholders %GF and %GP that show the GPG
534 - key fingerprints have been invented.
535 -
536 - Will merge to 'master'.
537 -
538 -
539 -* ss/rename-tests (2018-10-23) 5 commits
540 - (merged to 'next' on 2018-10-26 at e4929c2ece)
541 - + t7501: rename commit test to comply with naming convention
542 - + t7500: rename commit tests script to comply with naming convention
543 - + t7502: rename commit test script to comply with naming convention
544 - + t7509: cleanup description and filename
545 - + t2000: rename and combine checkout clash tests
546 -
547 - Reorganize some tests and rename them; "ls t/" now gives a better
548 - overview of what is tested for these scripts than before.
549 -
550 - Will merge to 'master'.
551 -
552 -
553 -* tb/filter-alternate-refs (2018-10-25) 2 commits
554 - (merged to 'next' on 2018-10-26 at 887a7779a3)
555 - + t5410: use longer path for sample script
556 - + Documentation/config.txt: fix typo in core.alternateRefsCommand
557 -
558 - Test fix.
559 -
560 - Will merge to 'master'.
561 -
562 -
563 -* jc/http-curlver-warnings (2018-10-26) 1 commit
564 - (merged to 'next' on 2018-10-26 at 870e125cec)
565 - + http: give curl version warnings consistently
566 - (this branch uses js/mingw-http-ssl.)
567 -
568 - Warning message fix.
569 -
570 - Will merge to 'master'.
571 -
572 -
573 -* jk/uploadpack-packobjectshook-fix (2018-10-26) 1 commit
574 - (merged to 'next' on 2018-10-26 at 95c93b1199)
575 - + upload-pack: fix broken if/else chain in config callback
576 -
577 - Code clean-up that results in a small bugfix.
578 -
579 - Will merge to 'master'.
580 -
581 -
582 -* sd/stash-wo-user-name (2018-10-26) 1 commit
583 - - t3903-stash: test without configured user name
584 -
585 - An early part of a wip.
586 -
587 -
588 -* uk/merge-subtree-doc-update (2018-10-25) 1 commit
589 - (merged to 'next' on 2018-10-26 at 7ab4fc8ab1)
590 - + howto/using-merge-subtree: mention --allow-unrelated-histories
591 -
592 - Belated documentation update to adjust to a new world order that
593 - happened a yew years ago.
594 -
595 - Will merge to 'master'.
596 -
597 -
598 -* js/rebase-i-shortopt (2018-10-26) 1 commit
599 - - rebase -i: recognize short commands without arguments
600 - (this branch uses ag/rebase-i-in-c and js/rebase-i-break; is tangled with ag/sequencer-reduce-rewriting-todo, js/rebase-autostash-fix, js/rebase-in-c-5.5-work-with-rebase-i-in-c and pk/rebase-in-c-6-final.)
601 -
602 -
603 -* sg/test-rebase-editor-fix (2018-10-26) 1 commit
604 - - t3404-rebase-interactive: test abbreviated commands
605 -
606 -
607 -* ss/travis-ci-force-vm-mode (2018-10-26) 1 commit
608 - - travis-ci: no longer use containers
609 -
610 -
611 -* tb/char-may-be-unsigned (2018-10-26) 1 commit
612 - - path.c: char is not (always) signed
613 -
614 ---------------------------------------------------
615 -[Stalled]
616 -
617 -* lt/date-human (2018-07-09) 1 commit
618 - - Add 'human' date format
619 -
620 - A new date format "--date=human" that morphs its output depending
621 - on how far the time is from the current time has been introduced.
622 - "--date=auto" can be used to use this new format when the output is
623 - goint to the pager or to the terminal and otherwise the default
624 - format.
625 -
626 ---------------------------------------------------
627 -[Cooking]
628 -
629 -* ab/reject-alias-loop (2018-10-19) 1 commit
630 - (merged to 'next' on 2018-10-26 at bc213f1bef)
631 - + alias: detect loops in mixed execution mode
632 -
633 - Two (or more) aliases that mutually refer to each other can form an
634 - infinite loop; we now attempt to notice and stop.
635 -
737 Will merge to 'master'.
738
739
639 -* cb/remove-dead-init (2018-10-19) 2 commits
640 - (merged to 'next' on 2018-10-26 at ba725a64ad)
641 - + multi-pack-index: avoid dead store for struct progress
642 - + unpack-trees: avoid dead store for struct progress
740 +* md/exclude-promisor-objects-fix (2018-10-23) 2 commits
741 + (merged to 'next' on 2018-10-29 at fb36a5dcbe)
742 + + exclude-promisor-objects: declare when option is allowed
743 + + Documentation/git-log.txt: do not show --exclude-promisor-objects
744
644 - Code clean-up.
745 + Operations on promisor objects make sense in the context of only a
746 + small subset of the commands that internally use the revisions
747 + machinery, but the "--exclude-promisor-objects" option were taken
748 + and led to nonsense results by commands like "log", to which it
749 + didn't make much sense. This has been corrected.
750
751 Will merge to 'master'.
752
753
649 -* ds/ci-commit-graph-and-midx (2018-10-19) 1 commit
650 - (merged to 'next' on 2018-10-26 at a13664e49a)
651 - + ci: add optional test variables
754 +* mg/gpg-fingerprint (2018-10-23) 3 commits
755 + (merged to 'next' on 2018-10-26 at 1e219cb754)
756 + + gpg-interface.c: obtain primary key fingerprint as well
757 + + gpg-interface.c: support getting key fingerprint via %GF format
758 + + gpg-interface.c: use flags to determine key/signer info presence
759 + (this branch uses mg/gpg-parse-tighten; is tangled with jc/gpg-cocci-preincr.)
760
653 - One of our CI tests to run with "unusual/experimental/random"
654 - settings now also uses commit-graph and midx.
761 + New "--pretty=format:" placeholders %GF and %GP that show the GPG
762 + key fingerprints have been invented.
763
764 Will merge to 'master'.
765
766
659 -* ds/reachable-first-parent-fix (2018-10-19) 1 commit
660 - (merged to 'next' on 2018-10-26 at 076442d512)
661 - + commit-reach: fix first-parent heuristic
767 +* jc/http-curlver-warnings (2018-10-26) 1 commit
768 + (merged to 'next' on 2018-10-26 at 870e125cec)
769 + + http: give curl version warnings consistently
770 + (this branch uses js/mingw-http-ssl; is tangled with nd/config-split.)
771
663 - Correct performance regression in commit ancestry computation when
664 - generation numbers are involved.
772 + Warning message fix.
773
774 Will merge to 'master'.
775
776
669 -* jk/test-tool-help (2018-10-18) 1 commit
670 - (merged to 'next' on 2018-10-26 at ed32bae21b)
671 - + test-tool: show tool list on error
777 +* sd/stash-wo-user-name (2018-10-26) 1 commit
778 + - t3903-stash: test without configured user name
779
673 - Developer support.
780 + An early part of a wip.
781
675 - Will merge to 'master'.
782
783 +* js/rebase-i-shortopt (2018-10-26) 1 commit
784 + - rebase -i: recognize short commands without arguments
785 + (this branch uses ag/rebase-i-in-c and js/rebase-i-break; is tangled with ag/sequencer-reduce-rewriting-todo, cb/printf-empty-format, js/rebase-autostash-fix, js/rebase-in-c-5.5-work-with-rebase-i-in-c and pk/rebase-in-c-6-final.)
786
678 -* jk/unused-function (2018-10-19) 1 commit
679 - (merged to 'next' on 2018-10-26 at c8c3fbb432)
680 - + config.mak.dev: enable -Wunused-function
787 + "git rebase -i" learned to take 'b' as the short form of 'break'
788 + option in the todo list.
789
682 - Developer support.
790 + Will merge to 'next'.
791
684 - Will merge to 'master'.
792
793 +* sg/test-rebase-editor-fix (2018-10-29) 1 commit
794 + - t3404-rebase-interactive: test abbreviated commands
795
687 -* js/diff-notice-has-drive-prefix (2018-10-22) 1 commit
688 - (merged to 'next' on 2018-10-26 at 6b2d004194)
689 - + diff: don't attempt to strip prefix from absolute Windows paths
796 + Will merge to 'next'.
797
691 - Under certain circumstances, "git diff D:/a/b/c D:/a/b/d" on
692 - Windows would strip initial parts from the paths because they
693 - were not recognized as absolute, which has been corrected.
798
695 - Will merge to 'master'.
799 +* ss/travis-ci-force-vm-mode (2018-10-26) 1 commit
800 + - travis-ci: no longer use containers
801
802 + The "container" mode of TravisCI is going away. Our .travis.yml
803 + file is getting prepared for the transition.
804
698 -* js/pack-objects-mutex-init-fix (2018-10-19) 3 commits
699 - (merged to 'next' on 2018-10-26 at 7516dcc6e4)
700 - + pack-objects (mingw): initialize `packing_data` mutex in the correct spot
701 - + pack-objects (mingw): demonstrate a segmentation fault with large deltas
702 - + pack-objects: fix typo 'detla' -> 'delta'
805 + Will merge to 'next'.
806
704 - A mutex used in "git pack-objects" were not correctly initialized
705 - and this caused "git repack" to dump core on Windows.
807
707 - Will merge to 'master'.
808 +* tb/char-may-be-unsigned (2018-10-26) 1 commit
809 + - path.c: char is not (always) signed
810 +
811 + Build portability fix.
812 +
813 + Will merge to 'next'.
814
815
816 * jt/upload-pack-v2-fix-shallow (2018-10-19) 3 commits
711 - - upload-pack: clear flags before each v2 request
712 - - upload-pack: make want_obj not global
713 - - upload-pack: make have_obj not global
817 + (merged to 'next' on 2018-10-29 at d9010b3c7b)
818 + + upload-pack: clear flags before each v2 request
819 + + upload-pack: make want_obj not global
820 + + upload-pack: make have_obj not global
821
822 "git fetch" over protocol v2 into a shallow repository failed to
823 fetch full history behind a new tip of history that was diverged
824 before the cut-off point of the history that was previously fetched
825 shallowly.
826
720 - Will merge to 'next'.
827 + Will merge to 'master'.
828
829
830 * pw/am-rebase-read-author-script (2018-10-19) 5 commits
@@ -727,71 +834,18 @@ of the repositories listed at
834 - am: improve author-script error reporting
835 - am: don't die in read_author_script()
836
730 -
731 -* rj/header-guards (2018-10-18) 1 commit
732 - (merged to 'next' on 2018-10-26 at c767be34df)
733 - + headers: normalize the spelling of some header guards
734 -
735 - Code clean-up.
736 -
737 - Will merge to 'master'.
738 -
739 -
740 -* sb/submodule-helper-remove-cruft (2018-10-18) 1 commit
741 - (merged to 'next' on 2018-10-26 at 5719bc5d7e)
742 - + builtin/submodule--helper: remove debugging leftover tracing
743 -
744 - Code clean-up.
745 -
746 - Will merge to 'master'.
837 + Expecting a reroll.
838 + cf. <55a2a458-c71e-0018-5fd7-b66e349ddb3d@talktalk.net>
839
840
841 * sb/submodule-url-to-absolute (2018-10-18) 1 commit
750 - - submodule helper: convert relative URL to absolute URL if needed
842 + (merged to 'next' on 2018-10-29 at 4264c150cb)
843 + + submodule helper: convert relative URL to absolute URL if needed
844
845 Some codepaths failed to form a proper URL when .gitmodules record
846 the URL to a submodule repository as relative to the repository of
847 superproject, which has been corrected.
848
756 - Will merge to 'next'.
757 -
758 -
759 -* sg/doc-show-branch-typofix (2018-10-18) 1 commit
760 - (merged to 'next' on 2018-10-26 at 9444be6a99)
761 - + doc: fix small typo in git show-branch
762 -
763 - Docfix.
764 -
765 - Will merge to 'master'.
766 -
767 -
768 -* tq/branch-create-wo-branch-get (2018-10-18) 1 commit
769 - (merged to 'next' on 2018-10-26 at fe522704b7)
770 - + builtin/branch.c: remove useless branch_get
771 -
772 - Code clean-up.
773 -
774 - Will merge to 'master'.
775 -
776 -
777 -* tq/branch-style-fix (2018-10-18) 1 commit
778 - (merged to 'next' on 2018-10-26 at 6e79291d55)
779 - + branch: trivial style fix
780 -
781 - Code clean-up.
782 -
783 - Will merge to 'master'.
784 -
785 -
786 -* jc/receive-deny-current-branch-fix (2018-10-19) 1 commit
787 - (merged to 'next' on 2018-10-26 at 2975c42215)
788 - + receive: denyCurrentBranch=updateinstead should not blindly update
789 -
790 - The receive.denyCurrentBranch=updateInstead codepath kicked in even
791 - when the push should have been rejected due to other reasons, such
792 - as it does not fast-forward or the update-hook rejects it, which
793 - has been corrected.
794 -
849 Will merge to 'master'.
850
851
@@ -840,12 +894,12 @@ of the repositories listed at
894 + http: when using Secure Channel, ignore sslCAInfo by default
895 + http: add support for disabling SSL revocation checks in cURL
896 + http: add support for selecting SSL backends at runtime
843 - (this branch is used by jc/http-curlver-warnings.)
897 + (this branch is used by jc/http-curlver-warnings and nd/config-split.)
898
845 - On Windows with recent enough cURL library, the configuration
846 - variable http.sslBackend can be used to choose between OpenSSL and
847 - Secure Channel at runtime as the SSL backend while talking over
848 - the HTTPS protocol.
899 + On platforms with recent cURL library, http.sslBackend configuration
900 + variable can be used to choose a different SSL backend at runtime.
901 + The Windows port uses this mechanism to switch between OpenSSL and
902 + Secure Channel while talking over the HTTPS protocol.
903
904 Will merge to 'master'.
905
@@ -869,6 +923,7 @@ of the repositories listed at
923
924 On hold, monitoring the discussion.
925 cf. <nycvar.QRO.7.76.6.1810151657080.4546@tvgsbejvaqbjf.bet>
926 + cf. <nycvar.QRO.7.76.6.1810261033440.4546@tvgsbejvaqbjf.bet>
927
928
929 * du/branch-show-current (2018-10-26) 1 commit
@@ -880,44 +935,6 @@ of the repositories listed at
935 cf. <CAPig+cRVdogY8VLXcftbY=n9tQ9wDo4YrnrdU6+pZ3ch6uhZGA@mail.gmail.com>
936
937
883 -* ot/ref-filter-plug-leaks (2018-10-19) 3 commits
884 - (merged to 'next' on 2018-10-26 at a475cb6568)
885 - + ref-filter: free item->value and item->value->s
886 - + ls-remote: release memory instead of UNLEAK
887 - + ref-filter: free memory from used_atom
888 -
889 - Plugging a handful of memory leaks in the ref-filter codepath.
890 -
891 - Will merge to 'master'.
892 -
893 -
894 -* rv/send-email-cc-misc-by (2018-10-16) 3 commits
895 - (merged to 'next' on 2018-10-19 at 2c1e5f75af)
896 - + send-email: also pick up cc addresses from -by trailers
897 - + send-email: only consider lines containing @ or <> for automatic Cc'ing
898 - + Documentation/git-send-email.txt: style fixes
899 -
900 - "git send-email" learned to grab address-looking string on any
901 - trailer whose name ends with "-by"; --suppress-cc=misc-by on the
902 - command line, or setting sendemail.suppresscc configuration
903 - variable to "misc-by", can be used to disable this behaviour.
904 -
905 - This is a backward-incompatible change that may surprise existing
906 - users.
907 -
908 - Will merge to 'master'.
909 -
910 -
911 -* lm/range-diff-submodule-fix (2018-10-25) 1 commit
912 - (merged to 'next' on 2018-10-25 at af387d8978)
913 - + range-diff: allow to diff files regardless of submodule config
914 -
915 - "git range-diff" did not work well when the compared ranges had
916 - changes in submodules and the "--submodule=log" was used.
917 -
918 - Will merge to 'master'.
919 -
920 -
938 * mk/use-size-t-in-zlib (2018-10-15) 1 commit
939 - zlib.c: use size_t for size
940
@@ -936,18 +953,21 @@ of the repositories listed at
953 Will merge to 'master' together with pk/rebase-i-in-c-6-final.
954
955
939 -* jc/war-on-string-list (2018-10-19) 1 commit
956 +* jc/war-on-string-list (2018-10-27) 2 commits
957 + - SQUASH???
958 - fetch: replace string-list used as a look-up table with a hashmap
959
960 Replace three string-list instances used as look-up tables in "git
961 fetch" with hashmaps.
962
963 + Will merge to 'next' after squashing the update in.
964 +
965
966 * js/rebase-i-break (2018-10-12) 2 commits
967 (merged to 'next' on 2018-10-19 at 6db9b14495)
968 + rebase -i: introduce the 'break' command
969 + rebase -i: clarify what happens on a failed `exec`
950 - (this branch is used by js/rebase-i-shortopt; uses ag/rebase-i-in-c; is tangled with ag/sequencer-reduce-rewriting-todo, js/rebase-autostash-fix, js/rebase-in-c-5.5-work-with-rebase-i-in-c and pk/rebase-in-c-6-final.)
970 + (this branch is used by js/rebase-i-shortopt; uses ag/rebase-i-in-c; is tangled with ag/sequencer-reduce-rewriting-todo, cb/printf-empty-format, js/rebase-autostash-fix, js/rebase-in-c-5.5-work-with-rebase-i-in-c and pk/rebase-in-c-6-final.)
971
972 "git rebase -i" learned a new insn, 'break', that the user can
973 insert in the to-do list. Upon hitting it, the command returns
@@ -973,35 +993,24 @@ of the repositories listed at
993 Breaks interoperability.
994
995
976 -* sb/strbuf-h-update (2018-09-29) 1 commit
977 - (merged to 'next' on 2018-10-26 at e4ad935cb0)
978 - + strbuf.h: format according to coding guidelines
979 -
980 - Code clean-up to serve as a BCP example.
981 -
982 - Will merge to 'master'.
983 - Further clean-up patches may need to follow soon before this
984 - change escapes to 'master'.
985 -
986 -
996 * ag/sequencer-reduce-rewriting-todo (2018-10-09) 16 commits
988 - - rebase--interactive: move transform_todo_file() to rebase--interactive.c
989 - - sequencer: fix a call to error() in transform_todo_file()
990 - - sequencer: use edit_todo_list() in complete_action()
991 - - rebase-interactive: rewrite edit_todo_list() to handle the initial edit
992 - - rebase-interactive: append_todo_help() changes
993 - - rebase-interactive: use todo_list_transform() in edit_todo_list()
994 - - sequencer: refactor skip_unnecessary_picks() to work on a todo_list
995 - - sequencer: change complete_action() to use the refactored functions
996 - - sequencer: make sequencer_make_script() write its script to a strbuf
997 - - sequencer: refactor transform_todos() to work on a todo_list
998 - - sequencer: refactor rearrange_squash() to work on a todo_list
999 - - sequencer: refactor sequencer_add_exec_commands() to work on a todo_list
1000 - - sequencer: refactor check_todo_list() to work on a todo_list
1001 - - sequencer: make the todo_list structure public
1002 - - sequencer: clear the number of items of a todo_list before parsing
1003 - - Merge branch 'ag/rebase-i-in-c' into ag/sequencer-reduce-rewriting-todo
1004 - (this branch uses ag/rebase-i-in-c; is tangled with js/rebase-autostash-fix, js/rebase-i-break, js/rebase-i-shortopt, js/rebase-in-c-5.5-work-with-rebase-i-in-c and pk/rebase-in-c-6-final.)
997 + . rebase--interactive: move transform_todo_file() to rebase--interactive.c
998 + . sequencer: fix a call to error() in transform_todo_file()
999 + . sequencer: use edit_todo_list() in complete_action()
1000 + . rebase-interactive: rewrite edit_todo_list() to handle the initial edit
1001 + . rebase-interactive: append_todo_help() changes
1002 + . rebase-interactive: use todo_list_transform() in edit_todo_list()
1003 + . sequencer: refactor skip_unnecessary_picks() to work on a todo_list
1004 + . sequencer: change complete_action() to use the refactored functions
1005 + . sequencer: make sequencer_make_script() write its script to a strbuf
1006 + . sequencer: refactor transform_todos() to work on a todo_list
1007 + . sequencer: refactor rearrange_squash() to work on a todo_list
1008 + . sequencer: refactor sequencer_add_exec_commands() to work on a todo_list
1009 + . sequencer: refactor check_todo_list() to work on a todo_list
1010 + . sequencer: make the todo_list structure public
1011 + . sequencer: clear the number of items of a todo_list before parsing
1012 + . Merge branch 'ag/rebase-i-in-c' into ag/sequencer-reduce-rewriting-todo
1013 + (this branch uses ag/rebase-i-in-c; is tangled with cb/printf-empty-format, js/rebase-autostash-fix, js/rebase-i-break, js/rebase-i-shortopt, js/rebase-in-c-5.5-work-with-rebase-i-in-c and pk/rebase-in-c-6-final.)
1014
1015 The scripted version of "git rebase -i" wrote and rewrote the todo
1016 list many times during a single step of its operation, and the
@@ -1010,43 +1019,8 @@ of the repositories listed at
1019 around in-core to avoid rewriting the same file over and over
1020 unnecessarily.
1021
1013 - Will hold, waiting for the "rebase-in-c" and "rebase-i-in-c" topics.
1014 -
1015 -
1016 -* bc/hash-transition-part-15 (2018-10-15) 15 commits
1017 - (merged to 'next' on 2018-10-26 at 4ff8111b4b)
1018 - + rerere: convert to use the_hash_algo
1019 - + submodule: make zero-oid comparison hash function agnostic
1020 - + apply: rename new_sha1_prefix and old_sha1_prefix
1021 - + apply: replace hard-coded constants
1022 - + tag: express constant in terms of the_hash_algo
1023 - + transport: use parse_oid_hex instead of a constant
1024 - + upload-pack: express constants in terms of the_hash_algo
1025 - + refs/packed-backend: express constants using the_hash_algo
1026 - + packfile: express constants in terms of the_hash_algo
1027 - + pack-revindex: express constants in terms of the_hash_algo
1028 - + builtin/fetch-pack: remove constants with parse_oid_hex
1029 - + builtin/mktree: remove hard-coded constant
1030 - + builtin/repack: replace hard-coded constants
1031 - + pack-bitmap-write: use GIT_MAX_RAWSZ for allocation
1032 - + object_id.cocci: match only expressions of type 'struct object_id'
1033 -
1034 - More codepaths are moving away from hardcoded hash sizes.
1035 -
1036 - Will merge to 'master'.
1037 -
1038 -
1039 -* ch/subtree-build (2018-10-18) 3 commits
1040 - (merged to 'next' on 2018-10-18 at f89fd5e6aa)
1041 - + Revert "subtree: make install targets depend on build targets"
1042 - (merged to 'next' on 2018-10-16 at 919599cc37)
1043 - + subtree: make install targets depend on build targets
1044 - (merged to 'next' on 2018-10-12 at 4ed9ff6300)
1045 - + subtree: add build targets 'man' and 'html'
1046 -
1047 - Build update for "git subtree" (in contrib/) documentation pages.
1048 -
1049 - Will merge to 'master'.
1022 + A reroll exists but is based on a stale codebase and is painful to
1023 + merge.
1024
1025
1026 * ds/test-multi-pack-index (2018-10-26) 4 commits
@@ -1057,6 +1031,8 @@ of the repositories listed at
1031
1032 Tests for the recently introduced multi-pack index machinery.
1033
1034 + Will merge to 'next'.
1035 +
1036
1037 * nd/per-worktree-ref-iteration (2018-10-22) 8 commits
1038 - reflog expire: cover reflog from all worktrees
@@ -1068,6 +1044,12 @@ of the repositories listed at
1044 - Add a place for (not) sharing stuff between worktrees
1045 - refs.c: indent with tabs, not spaces
1046
1047 + The code to traverse objects for reachability, used to decide what
1048 + objects are unreferenced and expendable, have been taught to also
1049 + consider per-worktree refs of other worktrees as starting points to
1050 + prevent data loss.
1051 +
1052 +
1053
1054 * ds/reachable-topo-order (2018-10-18) 7 commits
1055 - t6012: make rev-list tests more interesting
@@ -1101,12 +1083,15 @@ of the repositories listed at
1083 "git fetch --recurse-submodules" may not fetch the necessary commit
1084 that is bound to the superproject, which is getting corrected.
1085
1086 + On hold, monitoring the discussion.
1087 + cf. <20181025233231.102245-1-sbeller@google.com>
1088 +
1089
1090 * js/rebase-in-c-5.5-work-with-rebase-i-in-c (2018-10-11) 2 commits
1091 (merged to 'next' on 2018-10-19 at b734d81006)
1092 + builtin rebase: prepare for builtin rebase -i
1093 + Merge branch 'ag/rebase-i-in-c' into js/rebase-in-c-5.5-work-with-rebase-i-in-c
1109 - (this branch is used by js/rebase-autostash-fix and pk/rebase-in-c-6-final; uses ag/rebase-i-in-c, pk/rebase-in-c, pk/rebase-in-c-2-basic, pk/rebase-in-c-3-acts, pk/rebase-in-c-4-opts and pk/rebase-in-c-5-test; is tangled with ag/sequencer-reduce-rewriting-todo, jc/rebase-in-c-5-test-typofix, js/rebase-i-break and js/rebase-i-shortopt.)
1094 + (this branch is used by js/rebase-autostash-fix and pk/rebase-in-c-6-final; uses ag/rebase-i-in-c, pk/rebase-in-c, pk/rebase-in-c-2-basic, pk/rebase-in-c-3-acts, pk/rebase-in-c-4-opts and pk/rebase-in-c-5-test; is tangled with ag/sequencer-reduce-rewriting-todo, cb/printf-empty-format, jc/rebase-in-c-5-test-typofix, js/rebase-i-break and js/rebase-i-shortopt.)
1095
1096 "rebase" that has been rewritten learns the new calling convention
1097 used by "rebase -i" that was rewritten in C, tying the loose end
@@ -1146,27 +1131,6 @@ of the repositories listed at
1131 cf. <20181010205645.e1529eff9099805029b1d6ef@ao2.it>
1132
1133
1149 -* md/filter-trees (2018-10-18) 10 commits
1150 - (merged to 'next' on 2018-10-18 at 55be2fded9)
1151 - + list-objects: support for skipping tree traversal
1152 - (merged to 'next' on 2018-10-16 at 64d351d342)
1153 - + filter-trees: code clean-up of tests
1154 - (merged to 'next' on 2018-10-12 at c66e49d4ca)
1155 - + list-objects-filter: implement filter tree:0
1156 - + list-objects-filter-options: do not over-strbuf_init
1157 - + list-objects-filter: use BUG rather than die
1158 - + revision: mark non-user-given objects instead
1159 - + rev-list: handle missing tree objects properly
1160 - + list-objects: always parse trees gently
1161 - + list-objects: refactor to process_tree_contents
1162 - + list-objects: store common func args in struct
1163 -
1164 - The "rev-list --filter" feature learned to exclude all trees via
1165 - "tree:0" filter.
1166 -
1167 - Will merge to 'master'.
1168 -
1169 -
1134 * pk/rebase-in-c-2-basic (2018-09-06) 11 commits
1135 (merged to 'next' on 2018-10-19 at c2a0046e52)
1136 + builtin rebase: support `git rebase <upstream> <switch-to>`
@@ -1248,7 +1212,7 @@ of the repositories listed at
1212 * pk/rebase-in-c-6-final (2018-10-11) 1 commit
1213 (merged to 'next' on 2018-10-19 at 52f1dadf69)
1214 + rebase: default to using the builtin rebase
1251 - (this branch is used by js/rebase-autostash-fix; uses ag/rebase-i-in-c, js/rebase-in-c-5.5-work-with-rebase-i-in-c, pk/rebase-in-c, pk/rebase-in-c-2-basic, pk/rebase-in-c-3-acts, pk/rebase-in-c-4-opts and pk/rebase-in-c-5-test; is tangled with ag/sequencer-reduce-rewriting-todo, jc/rebase-in-c-5-test-typofix, js/rebase-i-break and js/rebase-i-shortopt.)
1215 + (this branch is used by js/rebase-autostash-fix; uses ag/rebase-i-in-c, js/rebase-in-c-5.5-work-with-rebase-i-in-c, pk/rebase-in-c, pk/rebase-in-c-2-basic, pk/rebase-in-c-3-acts, pk/rebase-in-c-4-opts and pk/rebase-in-c-5-test; is tangled with ag/sequencer-reduce-rewriting-todo, cb/printf-empty-format, jc/rebase-in-c-5-test-typofix, js/rebase-i-break and js/rebase-i-shortopt.)
1216
1217 The final step of rewriting "rebase -i" in C.
1218
@@ -1324,7 +1288,7 @@ of the repositories listed at
1288 + editor: add a function to launch the sequence editor
1289 + rebase -i: rewrite append_todo_help() in C
1290 + sequencer: make three functions and an enum from sequencer.c public
1327 - (this branch is used by ag/sequencer-reduce-rewriting-todo, js/rebase-autostash-fix, js/rebase-i-break, js/rebase-i-shortopt, js/rebase-in-c-5.5-work-with-rebase-i-in-c and pk/rebase-in-c-6-final.)
1291 + (this branch is used by ag/sequencer-reduce-rewriting-todo, cb/printf-empty-format, js/rebase-autostash-fix, js/rebase-i-break, js/rebase-i-shortopt, js/rebase-in-c-5.5-work-with-rebase-i-in-c and pk/rebase-in-c-6-final.)
1292
1293 Rewrite of the remaining "rebase -i" machinery in C.
1294
@@ -1341,3 +1305,20 @@ of the repositories listed at
1305 Rewrite of the "rebase" machinery in C.
1306
1307 Will merge to 'master' together with pk/rebase-i-in-c-6-final.
1308 +
1309 +
1310 +--------------------------------------------------
1311 +[Discarded]
1312 +
1313 +* ab/reject-alias-loop (2018-10-19) 1 commit
1314 + (merged to 'next' on 2018-10-26 at bc213f1bef)
1315 + + alias: detect loops in mixed execution mode
1316 +
1317 + Two (or more) aliases that mutually refer to each other can form an
1318 + infinite loop; we now attempt to notice and stop.
1319 +
1320 + Discarded.
1321 + Reverted out of 'next'.
1322 + cf. <87sh0slvxm.fsf@evledraar.gmail.com>
1323 +
1324 +