What's cooking (2017/08 #02)
Junio C Hamano committed
Aug 11, 2017 at 17:51 UTC
02d1a5548265dff7107d7d0458f29b1797377246
1 file changed
+650
-458
whats-cooking.txt
+650
-458
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Aug 2017, #01; Fri, 4)
4
-X-master-at: 4384e3cde2ce8ecd194202e171ae16333d241326
5
-X-next-at: 98096fd7a85b93626db8757f944f2d8ffdf7e96a
3
+Subject: What's cooking in git.git (Aug 2017, #02; Fri, 11)
4
+X-master-at: b3622a4ee94e4916cd05e6d96e41eeb36b941182
5
+X-next-at: b18f417b8938ccf4d9dfc9a6ecca90dcaa2868f7
6
7
-What's cooking in git.git (Aug 2017, #01; Fri, 4)
7
+What's cooking in git.git (Aug 2017, #02; Fri, 11)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -12,14 +12,18 @@ 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
-The 2.14-rc2 was a bit delayed for various reasons and then there
16
-wasn't any last-minite regressions discovered and fixed during that
17
-timeframe, so I just decided to skip the second release candidate
18
-and go straight to tag the final, which was done a few minutes ago.
15
+The first batch of 32 topics (not counting the v2.14.1 update which
16
+was a security fix), which are the ones that have been cooking in
17
+'next' during the pre-release freeze period, have now been merged to
18
+'master'. I have not really started pickng up new topics posted to
19
+the list yet and yet to rewind and rebuild the 'next' branch to
20
+start a new cycle. Hopefully it can happen early next week.
21
20
-I expect that the tree to stay a bit quiet for a week until the first
21
-maintenance release for 2.14 series is tagged, perhaps by the end of
22
-the next week.
22
+The top part of the draft release notes for the next cycle, which I
23
+tentatively called Git 2.15, declares that "git add ''" will still
24
+be supported up to this release but will become illegal after that.
25
+Given that a typical release cycle is 8-12 weeks, that will happen
26
+sometime early next year.
27
28
You can find the changes described here in the integration branches
29
of the repositories listed at
@@ -29,28 +33,153 @@ of the repositories listed at
33
--------------------------------------------------
34
[Graduated to "master"]
35
32
-* ah/patch-id-doc (2017-07-28) 1 commit
33
- (merged to 'next' on 2017-08-04 at 7808b7abd3)
34
- + doc: remove unsupported parameter from patch-id
36
+* ah/doc-wserrorhighlight (2017-07-25) 1 commit
37
+ (merged to 'next' on 2017-07-27 at cd1bb28d95)
38
+ + doc: add missing values "none" and "default" for diff.wsErrorHighlight
39
+
40
+ Doc update.
41
+
42
+
43
+* bc/object-id (2017-07-17) 12 commits
44
+ (merged to 'next' on 2017-07-18 at fd161056e4)
45
+ + sha1_name: convert uses of 40 to GIT_SHA1_HEXSZ
46
+ + sha1_name: convert GET_SHA1* flags to GET_OID*
47
+ + sha1_name: convert get_sha1* to get_oid*
48
+ + Convert remaining callers of get_sha1 to get_oid.
49
+ + builtin/unpack-file: convert to struct object_id
50
+ + bisect: convert bisect_checkout to struct object_id
51
+ + builtin/update_ref: convert to struct object_id
52
+ + sequencer: convert to struct object_id
53
+ + remote: convert struct push_cas to struct object_id
54
+ + submodule: convert submodule config lookup to use object_id
55
+ + builtin/merge-tree: convert remaining caller of get_sha1 to object_id
56
+ + builtin/fsck: convert remaining caller of get_sha1 to object_id
57
+ (this branch is used by bw/submodule-config-cleanup; uses sb/object-id.)
58
+
59
+ Conversion from uchar[20] to struct object_id continues.
60
36
- Docfix.
61
62
+* bw/object-id (2017-07-17) 3 commits
63
+ (merged to 'next' on 2017-07-18 at 90d27c0e7c)
64
+ + receive-pack: don't access hash of NULL object_id pointer
65
+ + notes: don't access hash of NULL object_id pointer
66
+ + tree-diff: don't access hash of NULL object_id pointer
67
39
-* as/diff-options-grammofix (2017-07-31) 1 commit
40
- (merged to 'next' on 2017-08-01 at bfc60e3ec5)
41
- + diff-options doc: grammar fix
68
+ Conversion from uchar[20] to struct object_id continues.
69
43
- A grammofix.
70
71
+* cc/ref-is-hidden-microcleanup (2017-07-24) 1 commit
72
+ (merged to 'next' on 2017-07-27 at 37af544e1c)
73
+ + refs: use skip_prefix() in ref_is_hidden()
74
46
-* js/blame-lib (2017-07-24) 1 commit
47
- (merged to 'next' on 2017-07-26 at db0d081012)
48
- + blame: fix memory corruption scrambling revision name in error message
75
+ Code cleanup.
76
50
- A hotfix to a topic already in 'master'.
77
52
---------------------------------------------------
53
-[New Topics]
78
+* dc/fmt-merge-msg-microcleanup (2017-07-25) 1 commit
79
+ (merged to 'next' on 2017-07-27 at 6df06eb788)
80
+ + fmt-merge-msg: fix coding style
81
+
82
+ Code cleanup.
83
+
84
+
85
+* dl/credential-cache-socket-in-xdg-cache (2017-07-27) 1 commit
86
+ (merged to 'next' on 2017-08-01 at 87687ae1d4)
87
+ + credential-cache: interpret an ECONNRESET as an EOF
88
+
89
+ A recently added test for the "credential-cache" helper revealed
90
+ that EOF detection done around the time the connection to the cache
91
+ daemon is torn down were flaky. This was fixed by reacting to
92
+ ECONNRESET and behaving as if we got an EOF.
93
+
94
+
95
+* eb/contacts-reported-by (2017-07-27) 1 commit
96
+ (merged to 'next' on 2017-08-01 at cca9972d6b)
97
+ + git-contacts: also recognise "Reported-by:"
98
+
99
+ "git contacts" (in contrib/) now lists the address on the
100
+ "Reported-by:" trailer to its output, in addition to those on
101
+ S-o-b: and other trailers, to make it easier to notify (and thank)
102
+ the original bug reporter.
103
+
104
+
105
+* hb/gitweb-project-list (2017-07-18) 1 commit
106
+ (merged to 'next' on 2017-07-27 at c25d65ca25)
107
+ + gitweb: skip unreadable subdirectories
108
+
109
+ When a directory is not readable, "gitweb" fails to build the
110
+ project list. Work this around by skipping such a directory.
111
+
112
+ It might end up hiding a problem under the rug and a better
113
+ solution might be to loudly complain to the administrator pointing
114
+ out the problematic directory, but this will at least make it
115
+ "work".
116
+
117
+
118
+* jb/t8008-cleanup (2017-07-26) 1 commit
119
+ (merged to 'next' on 2017-08-01 at f979c9340d)
120
+ + t8008: rely on rev-parse'd HEAD instead of sha1 value
121
+
122
+ Code clean-up.
123
+
124
+
125
+* jc/http-sslkey-and-ssl-cert-are-paths (2017-07-20) 1 commit
126
+ (merged to 'next' on 2017-07-20 at 5489304b99)
127
+ + http.c: http.sslcert and http.sslkey are both pathnames
128
+
129
+ The http.{sslkey,sslCert} configuration variables are to be
130
+ interpreted as a pathname that honors "~[username]/" prefix, but
131
+ weren't, which has been fixed.
132
+
133
+
134
+* jk/c99 (2017-07-18) 2 commits
135
+ (merged to 'next' on 2017-07-18 at 1cfc30f7c1)
136
+ + clean.c: use designated initializer
137
+ + strbuf: use designated initializers in STRBUF_INIT
138
+
139
+ Start using selected c99 constructs in small, stable and
140
+ essentialpart of the system to catch people who care about
141
+ older compilers that do not grok them.
142
+
143
+
144
+* jk/ref-filter-colors (2017-07-13) 15 commits
145
+ (merged to 'next' on 2017-07-18 at 75d4eb7ecf)
146
+ + ref-filter: consult want_color() before emitting colors
147
+ + pretty: respect color settings for %C placeholders
148
+ + rev-list: pass diffopt->use_colors through to pretty-print
149
+ + for-each-ref: load config earlier
150
+ + color: check color.ui in git_default_config()
151
+ + ref-filter: pass ref_format struct to atom parsers
152
+ + ref-filter: factor out the parsing of sorting atoms
153
+ + ref-filter: make parse_ref_filter_atom a private function
154
+ + ref-filter: provide a function for parsing sort options
155
+ + ref-filter: move need_color_reset_at_eol into ref_format
156
+ + ref-filter: abstract ref format into its own struct
157
+ + ref-filter: simplify automatic color reset
158
+ + t: use test_decode_color rather than literal ANSI codes
159
+ + docs/for-each-ref: update pointer to color syntax
160
+ + check return value of verify_ref_format()
161
+
162
+ "%C(color name)" in the pretty print format always produced ANSI
163
+ color escape codes, which was an early design mistake. They now
164
+ honor the configuration (e.g. "color.ui = never") and also tty-ness
165
+ of the output medium.
166
+
167
+
168
+* jk/reflog-walk (2017-07-09) 9 commits
169
+ (merged to 'next' on 2017-07-09 at 7449e964c6)
170
+ + reflog-walk: apply --since/--until to reflog dates
171
+ + reflog-walk: stop using fake parents
172
+ + rev-list: check reflog_info before showing usage
173
+ + get_revision_1(): replace do-while with an early return
174
+ + log: do not free parents when walking reflog
175
+ + log: clarify comment about reflog cycles
176
+ + revision: disallow reflog walking with revs->limited
177
+ + t1414: document some reflog-walk oddities
178
+ + Merge branch 'jk/reflog-walk-maint' into jk/reflog-walk
179
+
180
+ Numerous bugs in walking of reflogs via "log -g" and friends have
181
+ been fixed.
182
+
183
184
* jk/rev-list-empty-input (2017-08-02) 4 commits
185
(merged to 'next' on 2017-08-04 at cb4f9b84e0)
@@ -62,7 +191,47 @@ of the repositories listed at
191
"git log --tag=no-such-tag" showed log starting from HEAD, which
192
has been fixed---it now shows nothing.
193
65
- Will cook in 'next'.
194
+
195
+* js/git-gui-msgfmt-on-windows (2017-07-25) 7 commits
196
+ (merged to 'next' on 2017-08-01 at 219577a73e)
197
+ + Merge branch 'js/msgfmt-on-windows' of ../git-gui into js/git-gui-msgfmt-on-windows
198
+ + git-gui (MinGW): make use of MSys2's msgfmt
199
+ + Merge remote-tracking branch 'philoakley/dup-gui'
200
+ + git gui: allow for a long recentrepo list
201
+ + git gui: de-dup selected repo from recentrepo history
202
+ + git gui: cope with duplicates in _get_recentrepo
203
+ + git-gui: remove duplicate entries from .gitconfig's gui.recentrepo
204
+
205
+ Because recent Git for Windows do come with a real msgfmt, the
206
+ build procedure for git-gui has been updated to use it instead of a
207
+ hand-rolled substitute.
208
+
209
+
210
+* js/run-process-parallel-api-fix (2017-07-21) 1 commit
211
+ (merged to 'next' on 2017-07-27 at 4b54b69172)
212
+ + run_processes_parallel: change confusing task_cb convention
213
+
214
+ API fix.
215
+
216
+
217
+* jt/fsck-code-cleanup (2017-07-26) 3 commits
218
+ (merged to 'next' on 2017-07-26 at 7a17e279da)
219
+ + fsck: cleanup unused variable
220
+ (merged to 'next' on 2017-07-20 at f7045a8c47)
221
+ + object: remove "used" field from struct object
222
+ + fsck: remove redundant parse_tree() invocation
223
+
224
+ Code clean-up.
225
+
226
+
227
+* jt/subprocess-handshake (2017-07-26) 3 commits
228
+ (merged to 'next' on 2017-08-01 at a0f78deffd)
229
+ + sub-process: refactor handshake to common function
230
+ + Documentation: migrate sub-process docs to header
231
+ + Merge branch 'ls/filter-process-delayed' into jt/subprocess-handshake
232
+ (this branch uses ls/filter-process-delayed.)
233
+
234
+ Code cleanup.
235
236
237
* jt/t1450-fsck-corrupt-packfile (2017-07-28) 1 commit
@@ -71,7 +240,41 @@ of the repositories listed at
240
241
A test update.
242
74
- Will cook in 'next'.
243
+
244
+* ks/commit-abort-on-empty-message-fix (2017-07-17) 1 commit
245
+ (merged to 'next' on 2017-07-27 at e81ad4c1dc)
246
+ + commit: check for empty message before the check for untouched template
247
+
248
+ "git commit" when seeing an totally empty message said "you did not
249
+ edit the message", which is clearly wrong. The message has been
250
+ corrected.
251
+
252
+
253
+* ks/prepare-commit-msg-sample (2017-07-12) 4 commits
254
+ (merged to 'next' on 2017-07-18 at 48d9650a30)
255
+ + hook: add a simple first example
256
+ + hook: add sign-off using "interpret-trailers"
257
+ + hook: name the positional variables
258
+ + hook: cleanup script
259
+
260
+ Remove an example that is now obsolete from a sample hook,
261
+ and improve an old example in it that added a sign-off manually
262
+ to use the interpret-trailers command.
263
+
264
+
265
+* ls/filter-process-delayed (2017-06-30) 7 commits
266
+ (merged to 'next' on 2017-07-05 at a35e644082)
267
+ + convert: add "status=delayed" to filter process protocol
268
+ + convert: refactor capabilities negotiation
269
+ + convert: move multiple file filter error handling to separate function
270
+ + convert: put the flags field before the flag itself for consistent style
271
+ + t0021: write "OUT <size>" only on success
272
+ + t0021: make debug log file name configurable
273
+ + t0021: keep filter log files on comparison
274
+ (this branch is used by jt/subprocess-handshake.)
275
+
276
+ The filter-process interface learned to allow a process with long
277
+ latency give a "delayed" response.
278
279
280
* ma/pager-per-subcommand-action (2017-08-03) 7 commits
@@ -90,499 +293,581 @@ of the repositories listed at
293
pager depending on what operation is being carried out to fix this,
294
and then "git tag -l" is made to run pager by default.
295
93
- Will cook in 'next'.
94
-
296
If this works out OK, I think there are low-hanging fruits in
297
other commands like "git branch" that outputs long list in one mode
298
while taking input in another.
299
300
100
-* pw/sequence-rerere-autoupdate (2017-08-02) 6 commits
101
- - cherry-pick/revert: reject --rerere-autoupdate when continuing
102
- - cherry-pick/revert: remember --rerere-autoupdate
103
- - t3504: use test_commit
104
- - rebase -i: honor --rerere-autoupdate
105
- - rebase: honor --rerere-autoupdate
106
- - am: remember --rerere-autoupdate setting
301
+* rg/rerere-train-overwrite (2017-07-26) 1 commit
302
+ (merged to 'next' on 2017-08-01 at 7fcd42974c)
303
+ + contrib/rerere-train: optionally overwrite existing resolutions
304
108
- Commands like "git rebase" accepted the --rerere-autoupdate option
109
- from the command line, but did not always use it. This has been
110
- fixed.
305
+ The "rerere-train" script (in contrib/) learned the "--overwrite"
306
+ option to allow overwriting existing recorded resolutions.
307
112
- Will merge to and cook in 'next'.
308
309
+* rs/bswap-ubsan-fix (2017-07-17) 2 commits
310
+ (merged to 'next' on 2017-07-20 at ce6bad07b0)
311
+ + bswap: convert get_be16, get_be32 and put_be32 to inline functions
312
+ + bswap: convert to unsigned before shifting in get_be32
313
115
-* bw/clone-recursive-quiet (2017-08-04) 1 commit
116
- - clone: teach recursive clones to respect -q
314
+ Code clean-up.
315
118
- "git clone --recurse-submodules --quiet" did not pass the quiet
119
- option down to submodules.
316
121
- Will merge to and cook in 'next'.
317
+* rs/move-array (2017-07-17) 4 commits
318
+ (merged to 'next' on 2017-07-20 at f3086cd20e)
319
+ + ls-files: don't try to prune an empty index
320
+ + apply: use COPY_ARRAY and MOVE_ARRAY in update_image()
321
+ + use MOVE_ARRAY
322
+ + add MOVE_ARRAY
323
+
324
+ Code clean-up.
325
+
326
+
327
+* rs/pack-objects-pbase-cleanup (2017-07-20) 1 commit
328
+ (merged to 'next' on 2017-07-20 at a6b618559b)
329
+ + pack-objects: remove unnecessary NULL check
330
+
331
+ Code clean-up.
332
+
333
+
334
+* rs/stat-data-unaligned-reads-fix (2017-07-17) 1 commit
335
+ (merged to 'next' on 2017-07-20 at e7d3782823)
336
+ + dir: support platforms that require aligned reads
337
+
338
+ Code clean-up.
339
+
340
+
341
+* sb/hashmap-cleanup (2017-07-05) 10 commits
342
+ (merged to 'next' on 2017-07-12 at ce31d06165)
343
+ + t/helper/test-hashmap: use custom data instead of duplicate cmp functions
344
+ + name-hash.c: drop hashmap_cmp_fn cast
345
+ + submodule-config.c: drop hashmap_cmp_fn cast
346
+ + remote.c: drop hashmap_cmp_fn cast
347
+ + patch-ids.c: drop hashmap_cmp_fn cast
348
+ + convert/sub-process: drop cast to hashmap_cmp_fn
349
+ + config.c: drop hashmap_cmp_fn cast
350
+ + builtin/describe: drop hashmap_cmp_fn cast
351
+ + builtin/difftool.c: drop hashmap_cmp_fn cast
352
+ + attr.c: drop hashmap_cmp_fn cast
353
+
354
+ Many uses of comparision callback function the hashmap API uses
355
+ cast the callback function type when registering it to
356
+ hashmap_init(), which defeats the compile time type checking when
357
+ the callback interface changes (e.g. gaining more parameters).
358
+ The callback implementations have been updated to take "void *"
359
+ pointers and cast them to the type they expect instead.
360
+
361
+
362
+* sb/object-id (2017-07-13) 2 commits
363
+ (merged to 'next' on 2017-07-18 at e4df0ba3b1)
364
+ + tag: convert gpg_verify_tag to use struct object_id
365
+ + commit: convert lookup_commit_graft to struct object_id
366
+ (this branch is used by bc/object-id and bw/submodule-config-cleanup.)
367
+
368
+ Conversion from uchar[20] to struct object_id continues.
369
+
370
+
371
+* st/lib-gpg-kill-stray-agent (2017-07-20) 1 commit
372
+ (merged to 'next' on 2017-07-20 at 8ea68c483f)
373
+ + t: lib-gpg: flush gpg agent on startup
374
+
375
+ Some versions of GnuPG fails to kill gpg-agent it auto-spawned
376
+ and such a left-over agent can interfere with a test. Work it
377
+ around by attempting to kill one before starting a new test.
378
+
379
+
380
+* wd/rebase-conflict-guide (2017-07-17) 1 commit
381
+ (merged to 'next' on 2017-07-20 at c78e758b23)
382
+ + rebase: make resolve message clearer for inexperienced users
383
+
384
+ The advice message given when "git rebase" stops for conflicting
385
+ changes has been improved.
386
387
--------------------------------------------------
124
-[Stalled]
388
+[New Topics]
389
126
-* mg/status-in-progress-info (2017-05-10) 2 commits
127
- - status --short --inprogress: spell it as --in-progress
128
- - status: show in-progress info for short status
390
+* ab/ref-filter-no-contains (2017-08-07) 1 commit
391
+ - tests: don't give unportable ">" to "test" built-in, use -gt
392
130
- "git status" learns an option to report various operations
131
- (e.g. "merging") that the user is in the middle of.
393
+ A test fix.
394
133
- cf. <xmqqmvakcdqw.fsf@gitster.mtv.corp.google.com>
395
+ Will merge to 'next'.
396
397
136
-* nd/worktree-move (2017-04-20) 6 commits
137
- - worktree remove: new command
138
- - worktree move: refuse to move worktrees with submodules
139
- - worktree move: accept destination as directory
140
- - worktree move: new command
141
- - worktree.c: add update_worktree_location()
142
- - worktree.c: add validate_worktree()
398
+* ma/parse-maybe-bool (2017-08-07) 6 commits
399
+ - parse_decoration_style: drop unused argument `var`
400
+ - treewide: deprecate git_config_maybe_bool, use git_parse_maybe_bool
401
+ - config: make git_{config,parse}_maybe_bool equivalent
402
+ - config: introduce git_parse_maybe_bool_text
403
+ - t5334: document that git push --signed=1 does not work
404
+ - Doc/git-{push,send-pack}: correct --sign= to --signed=
405
144
- "git worktree" learned move and remove subcommands.
406
+ Code clean-up.
407
146
- Expecting a reroll.
147
- cf. <20170420101024.7593-1-pclouds@gmail.com>
148
- cf. <20170421145916.mknekgqzhxffu7di@sigill.intra.peff.net>
149
- cf. <d0e81b1e-5869-299e-f462-4d43dc997bd1@ramsayjones.plus.com>
408
+ Will merge to 'next'.
409
410
152
-* sg/clone-refspec-from-command-line-config (2017-06-16) 2 commits
153
- - Documentation/clone: document ignored configuration variables
154
- - clone: respect additional configured fetch refspecs during initial fetch
155
- (this branch is used by sg/remote-no-string-refspecs.)
411
+* mf/no-dashed-subcommands (2017-08-07) 1 commit
412
+ - scripts: use "git foo" not "git-foo"
413
157
- "git clone -c var=val" is a way to set configuration variables in
158
- the resulting repository, but it is more useful to also make these
159
- variables take effect while the initial clone is happening,
160
- e.g. these configuration variables could be fetch refspecs.
414
+ Code clean-up.
415
162
- Waiting for a response.
163
- cf. <20170617112228.vugswym4o4owf6wj@sigill.intra.peff.net>
164
- cf. <xmqqmv8zhdap.fsf@gitster.mtv.corp.google.com>
416
+ Will merge to 'next'.
417
418
167
-* js/rebase-i-final (2017-07-27) 10 commits
168
- - rebase -i: rearrange fixup/squash lines using the rebase--helper
169
- - t3415: test fixup with wrapped oneline
170
- - rebase -i: skip unnecessary picks using the rebase--helper
171
- - rebase -i: check for missing commits in the rebase--helper
172
- - t3404: relax rebase.missingCommitsCheck tests
173
- - rebase -i: also expand/collapse the SHA-1s via the rebase--helper
174
- - rebase -i: do not invent onelines when expanding/collapsing SHA-1s
175
- - rebase -i: remove useless indentation
176
- - rebase -i: generate the script via rebase--helper
177
- - t3415: verify that an empty instructionFormat is handled as before
419
+* mk/diff-delta-uint-may-be-shorter-than-ulong (2017-08-10) 1 commit
420
+ - diff-delta: fix encoding size that would not fit in "unsigned int"
421
179
- The final batch to "git rebase -i" updates to move more code from
180
- the shell script to C.
422
+ The machinery to create xdelta used in pack files received the
423
+ sizes of the data in size_t, but lost the higher bits of them by
424
+ storing them in "unsigned int" during the computation, which is
425
+ fixed.
426
+
427
+ Will merge to 'next'.
428
+
429
+
430
+* rs/freebsd-getcwd-workaround (2017-08-07) 1 commit
431
+ - t0001: skip test with restrictive permissions if getpwd(3) respects them
432
+
433
+ Test portability fix for BSDs.
434
+
435
+ Will merge to 'next'.
436
+
437
+
438
+* rs/in-obsd-basename-dirname-take-const (2017-08-07) 1 commit
439
+ - test-path-utils: handle const parameter of basename and dirname
440
+
441
+ Portability fix.
442
+
443
+ Will merge to 'next'.
444
+
445
+
446
+* rs/t3700-clean-leftover (2017-08-08) 1 commit
447
+ - t3700: fix broken test under !POSIXPERM
448
+
449
+ A test fix.
450
+
451
+ Will merge to 'next'.
452
+
453
+
454
+* jc/perl-git-comment-typofix (2017-08-07) 1 commit
455
+ - perl/Git.pm: typofix in a comment
456
+
457
+ A comment fix.
458
+
459
+ Will merge to 'next'.
460
+
461
+
462
+* jk/drop-ancient-curl (2017-08-09) 5 commits
463
+ . http: #error on too-old curl
464
+ . curl: remove ifdef'd code never used with curl >=7.19.4
465
+ . http: drop support for curl < 7.19.4
466
+ . http: drop support for curl < 7.16.0
467
+ . http: drop support for curl < 7.11.1
468
+
469
+
470
+* jk/drop-sha1-entry-pos (2017-08-09) 1 commit
471
+ - sha1_file: drop experimental GIT_USE_LOOKUP search
472
+
473
+ Code clean-up.
474
+
475
+ Will merge to 'next'.
476
+
477
+
478
+* jk/hashcmp-memcmp (2017-08-09) 1 commit
479
+ - hashcmp: use memcmp instead of open-coded loop
480
182
- Expecting a reroll.
481
+ Code clean-up.
482
483
+ Will merge to 'next'.
484
185
-* bp/fsmonitor (2017-06-12) 6 commits
186
- - fsmonitor: add a sample query-fsmonitor hook script for Watchman
187
- - fsmonitor: add documentation for the fsmonitor extension.
188
- - fsmonitor: add test cases for fsmonitor extension
189
- - fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files.
190
- - dir: make lookup_untracked() available outside of dir.c
191
- - bswap: add 64 bit endianness helper get_be64
485
193
- We learned to talk to watchman to speed up "git status".
486
+* jk/trailers-parse (2017-08-10) 5 commits
487
+ - interpret-trailers: add --parse convenience option
488
+ - interpret-trailers: add an option to normalize output
489
+ - interpret-trailers: add an option to show only existing trailers
490
+ - interpret-trailers: add an option to show only the trailers
491
+ - trailer: put process_trailers() options into a struct
492
195
- Expecting a reroll.
196
- cf. <bade1166-e646-b05a-f65b-adb8da8ba0a7@gmail.com>
493
198
---------------------------------------------------
199
-[Cooking]
494
+* mk/use-size-t-in-zlib (2017-08-10) 1 commit
495
+ - zlib.c: use size_t for size
496
201
-* ah/doc-wserrorhighlight (2017-07-25) 1 commit
202
- (merged to 'next' on 2017-07-27 at cd1bb28d95)
203
- + doc: add missing values "none" and "default" for diff.wsErrorHighlight
497
+ The wrapper to call into zlib followed our long tradition to use
498
+ "unsigned long" for sizes of regions in memory, which have been
499
+ updated to use "size_t".
500
205
- Doc update.
501
+ Will merge to 'next'.
502
207
- Will cook in 'next'.
503
504
+* pw/am-signoff (2017-08-08) 1 commit
505
+ - am: fix signoff when other trailers are present
506
210
-* dc/fmt-merge-msg-microcleanup (2017-07-25) 1 commit
211
- (merged to 'next' on 2017-07-27 at 6df06eb788)
212
- + fmt-merge-msg: fix coding style
507
+ "git am -s" has been taught that some input may end with a trailer
508
+ block that is not Signed-off-by: and it should refrain from adding
509
+ an extra blank line before adding a new sign-off in such a case.
510
214
- Code cleanup.
511
+ Will merge to 'next'.
512
216
- Will cook in 'next'.
513
514
+* rj/add-chmod-error-message (2017-08-09) 1 commit
515
+ - builtin/add: add detail to a 'cannot chmod' error message
516
219
-* js/git-gui-msgfmt-on-windows (2017-07-25) 7 commits
220
- (merged to 'next' on 2017-08-01 at 219577a73e)
221
- + Merge branch 'js/msgfmt-on-windows' of ../git-gui into js/git-gui-msgfmt-on-windows
222
- + git-gui (MinGW): make use of MSys2's msgfmt
223
- + Merge remote-tracking branch 'philoakley/dup-gui'
224
- + git gui: allow for a long recentrepo list
225
- + git gui: de-dup selected repo from recentrepo history
226
- + git gui: cope with duplicates in _get_recentrepo
227
- + git-gui: remove duplicate entries from .gitconfig's gui.recentrepo
517
+ Message fix.
518
229
- Because recent Git for Windows do come with a real msgfmt, the
230
- build procedure for git-gui has been updated to use it instead of a
231
- hand-rolled substitute.
519
+ Will merge to 'next'.
520
233
- Will cook in 'next'.
234
- As we haven't heard from Pat, let's advance the update to 'next'
235
- ourselves.
521
522
+* rs/apply-lose-prefix-length (2017-08-09) 1 commit
523
+ - apply: remove prefix_length member from apply_state
524
238
-* jt/subprocess-handshake (2017-07-26) 3 commits
239
- (merged to 'next' on 2017-08-01 at a0f78deffd)
240
- + sub-process: refactor handshake to common function
241
- + Documentation: migrate sub-process docs to header
242
- + Merge branch 'ls/filter-process-delayed' into jt/subprocess-handshake
243
- (this branch uses ls/filter-process-delayed.)
525
+ Code clean-up.
526
245
- Code cleanup.
527
+ Will merge to 'next'.
528
247
- Will cook in 'next'.
529
530
+* rs/find-pack-entry-bisection (2017-08-09) 1 commit
531
+ - sha1_file: avoid comparison if no packed hash matches the first byte
532
250
-* lg/merge-signoff (2017-07-25) 1 commit
251
- - merge: add a --signoff flag
533
+ Code clean-up.
534
253
- "git merge" learned a "--signoff" option to add the Signed-off-by:
254
- trailer with the committer's name.
535
+ Will merge to 'next'.
536
537
257
-* pb/trailers-from-command-line (2017-07-25) 4 commits
258
- - SQUASH???
259
- - interpret-trailers: add options for actions
260
- - trailers: introduce struct new_trailer_item
261
- - trailers: export action enums and corresponding lookup functions
538
+* rs/fsck-obj-leakfix (2017-08-10) 1 commit
539
+ - fsck: free buffers on error in fsck_obj()
540
263
- "git interpret-trailers" learned to take the trailer specifications
264
- from the command line that overrides the configured values.
541
+ Memory leak in an error codepath has been plugged.
542
266
- Expecting a reroll for compilation fix.
543
+ Will merge to 'next'.
544
545
269
-* sb/submodule-recursive-checkout-detach-head (2017-07-28) 2 commits
270
- - Documentation/checkout: clarify submodule HEADs to be detached
271
- - recursive submodules: detach HEAD from new state
546
+* rs/merge-microcleanup (2017-08-10) 1 commit
547
+ - merge: use skip_prefix()
548
273
- "git checkout --recursive" may overwrite and rewind the history of
274
- the branch that happens to be checked out in submodule
275
- repositories, which might not be desirable. Detach the HEAD but
276
- still allow the recursive checkout to succeed in such a case.
549
+ Code clean-up.
550
278
- Undecided.
279
- This needs justification in a larger picture; it is unclear why
280
- this is better than rejecting recursive checkout, for example.
551
+ Will merge to 'next'.
552
553
283
-* ti/external-sha1dc (2017-07-25) 1 commit
284
- (merged to 'next' on 2017-07-27 at d1ce394fe2)
285
- + hash: allow building with the external sha1dc library
554
+* rs/strbuf-getwholeline-fix (2017-08-10) 1 commit
555
+ - strbuf: clear errno before calling getdelim(3)
556
287
- Platforms that ship with a separate sha1 with collision detection
288
- library can link to it instead of using the copy we ship as part of
289
- our source tree.
557
+ A helper function to read a single whole line into strbuf
558
+ mistakenly triggered OOM error at EOF under certain conditions,
559
+ which has been fixed.
560
291
- Waiting for review to conclude
292
- cf. <CACBZZX7M=H8tNkZXpHBvv0rbY58EJk4dkoUzGKMftWoKUqF8sA@mail.gmail.com>
561
+ Will merge to 'next'.
562
563
295
-* bw/submodule-config-cleanup (2017-08-03) 17 commits
296
- - submodule: remove gitmodules_config
297
- - unpack-trees: improve loading of .gitmodules
298
- - submodule-config: lazy-load a repository's .gitmodules file
299
- - submodule-config: move submodule-config functions to submodule-config.c
300
- - submodule-config: remove support for overlaying repository config
301
- - diff: stop allowing diff to have submodules configured in .git/config
302
- - submodule: remove submodule_config callback routine
303
- - unpack-trees: don't respect submodule.update
304
- - submodule: don't rely on overlayed config when setting diffopts
305
- - fetch: don't overlay config with submodule-config
306
- - submodule--helper: don't overlay config in update-clone
307
- - submodule--helper: don't overlay config in remote_submodule_branch
308
- - add, reset: ensure submodules can be added or reset
309
- - submodule: don't use submodule_from_name
310
- - t7411: check configuration parsing errors
311
- - Merge branch 'bc/object-id' into bw/submodule-config-cleanup
312
- - Merge branch 'bw/grep-recurse-submodules' into bw/submodule-config-cleanup
313
- (this branch uses bc/object-id, bw/grep-recurse-submodules and sb/object-id.)
564
+* rs/t4062-obsd (2017-08-09) 1 commit
565
+ - t4062: use less than 256 repetitions in regex
566
315
- Code clean-up to avoid mixing values read from the .gitmodules file
316
- and values read from the .git/config file.
567
+ Test portability fix.
568
569
+ Will merge to 'next'.
570
319
-* jb/t8008-cleanup (2017-07-26) 1 commit
320
- (merged to 'next' on 2017-08-01 at f979c9340d)
321
- + t8008: rely on rev-parse'd HEAD instead of sha1 value
571
323
- Code clean-up.
572
+* rs/unpack-entry-leakfix (2017-08-10) 1 commit
573
+ - sha1_file: release delta_stack on error in unpack_entry()
574
325
- Will cook in 'next'.
575
+ Memory leak in an error codepath has been plugged.
576
577
+ Will merge to 'next'.
578
328
-* rg/rerere-train-overwrite (2017-07-26) 1 commit
329
- (merged to 'next' on 2017-08-01 at 7fcd42974c)
330
- + contrib/rerere-train: optionally overwrite existing resolutions
579
332
- The "rerere-train" script (in contrib/) learned the "--overwrite"
333
- option to allow overwriting existing recorded resolutions.
580
+* rs/win32-syslog-leakfix (2017-08-10) 1 commit
581
+ - win32: plug memory leak on realloc() failure in syslog()
582
335
- Will cook in 'next'.
583
+ Memory leak in an error codepath has been plugged.
584
585
+ Will merge to 'next'.
586
338
-* dl/credential-cache-socket-in-xdg-cache (2017-07-27) 1 commit
339
- (merged to 'next' on 2017-08-01 at 87687ae1d4)
340
- + credential-cache: interpret an ECONNRESET as an EOF
587
342
- A recently added test for the "credential-cache" helper revealed
343
- that EOF detection done around the time the connection to the cache
344
- daemon is torn down were flaky. This was fixed by reacting to
345
- ECONNRESET and behaving as if we got an EOF.
588
+* sb/retire-t1200 (2017-08-10) 1 commit
589
+ - t1200: remove t1200-tutorial.sh
590
347
- Will cook in 'next'.
591
+ A test script that outlived its usefulness has been removed.
592
593
+ Will merge to 'next'.
594
350
-* eb/contacts-reported-by (2017-07-27) 1 commit
351
- (merged to 'next' on 2017-08-01 at cca9972d6b)
352
- + git-contacts: also recognise "Reported-by:"
595
354
- "git contacts" (in contrib/) now lists the address on the
355
- "Reported-by:" trailer to its output, in addition to those on
356
- S-o-b: and other trailers, to make it easier to notify (and thank)
357
- the original bug reporter.
596
+* ur/svn-local-zone (2017-08-08) 1 commit
597
+ - git svn fetch: Create correct commit timestamp when using --localtime
598
359
- Will cook in 'next'.
599
+ "git svn" used with "--localtime" option did not compute the tz
600
+ offset for the timestamp in question and instead always used the
601
+ current time, which has been corrected.
602
603
+ Will merge to 'next'.
604
362
-* js/run-process-parallel-api-fix (2017-07-21) 1 commit
363
- (merged to 'next' on 2017-07-27 at 4b54b69172)
364
- + run_processes_parallel: change confusing task_cb convention
605
366
- API fix.
606
+* jt/sha1-file-cleanup (2017-08-11) 2 commits
607
+ - sha1_file: remove read_packed_sha1()
608
+ - sha1_file: set whence in storage-specific info fn
609
368
- Will cook in 'next'.
610
+ Preparatory code clean-up.
611
612
+ Will merge to 'next'.
613
371
-* cc/ref-is-hidden-microcleanup (2017-07-24) 1 commit
372
- (merged to 'next' on 2017-07-27 at 37af544e1c)
373
- + refs: use skip_prefix() in ref_is_hidden()
614
375
- Code cleanup.
615
+* kw/rebase-progress (2017-08-11) 2 commits
616
+ - rebase: turn on progress option by default for format-patch
617
+ - format-patch: have progress option while generating patches
618
377
- Will cook in 'next'.
619
+ "git rebase", especially when it is run by mistake and ends up
620
+ trying to replay many changes, spent long time in silence. The
621
+ command has been taught to show progress report when it spends
622
+ long time preparing these many changes to replay (which would give
623
+ the user a chance to abort with ^C).
624
625
+ Waiting for a response.
626
+ cf. <20170810232033.46ujnozvnodkguog@sigill.intra.peff.net>
627
+ cf. <xmqqshgxycal.fsf@gitster.mtv.corp.google.com>
628
380
-* bw/push-options-recursively-to-submodules (2017-07-20) 1 commit
381
- (merged to 'next' on 2017-07-27 at 26b3af2544)
382
- + submodule--helper: teach push-check to handle HEAD
629
384
- "git push --recurse-submodules $there HEAD:$target" was not
385
- propagated down to the submodules, but now it is.
630
+* mk/diff-delta-avoid-large-offset (2017-08-11) 1 commit
631
+ - diff-delta: do not allow delta offset truncation
632
387
- Will cook in 'next'.
633
+ The delta format used in the packfile cannot reference data at
634
+ offset larger than what can be expressed in 4-byte, but the
635
+ generator for the data failed to make sure the offset does not
636
+ overflow. This has been corrected.
637
638
+ Will merge to 'next'.
639
390
-* jc/http-sslkey-and-ssl-cert-are-paths (2017-07-20) 1 commit
391
- (merged to 'next' on 2017-07-20 at 5489304b99)
392
- + http.c: http.sslcert and http.sslkey are both pathnames
640
394
- The http.{sslkey,sslCert} configuration variables are to be
395
- interpreted as a pathname that honors "~[username]/" prefix, but
396
- weren't, which has been fixed.
641
+* nm/stash-untracked (2017-08-11) 1 commit
642
+ - stash: clean untracked files before reset
643
398
- Will cook in 'next'.
644
+ "git stash -u" used the contents of the committed version of the
645
+ ".gitignore" file to decide which paths are ignored, even when the
646
+ file has local changes. The command has been taught to instead use
647
+ the locally modified contents.
648
649
+ Will merge to 'next'.
650
401
-* jt/fsck-code-cleanup (2017-07-26) 3 commits
402
- (merged to 'next' on 2017-07-26 at 7a17e279da)
403
- + fsck: cleanup unused variable
404
- (merged to 'next' on 2017-07-20 at f7045a8c47)
405
- + object: remove "used" field from struct object
406
- + fsck: remove redundant parse_tree() invocation
651
408
- Code clean-up.
652
+* tc/curl-with-backports (2017-08-11) 2 commits
653
+ - http: use a feature check to enable GSSAPI delegation control
654
+ - http: fix handling of missing CURLPROTO_*
655
410
- Will cook in 'next'.
656
+ Updates to the HTTP layer we made recently unconditionally used
657
+ features of libCurl without checking the existence of them, causing
658
+ compilation errors, which has been fixed. Also migrate the code to
659
+ check feature macros, not version numbers, to cope better with
660
+ libCurl that vendor ships with backported features.
661
662
+--------------------------------------------------
663
+[Stalled]
664
413
-* rs/pack-objects-pbase-cleanup (2017-07-20) 1 commit
414
- (merged to 'next' on 2017-07-20 at a6b618559b)
415
- + pack-objects: remove unnecessary NULL check
665
+* mg/status-in-progress-info (2017-05-10) 2 commits
666
+ - status --short --inprogress: spell it as --in-progress
667
+ - status: show in-progress info for short status
668
417
- Code clean-up.
669
+ "git status" learns an option to report various operations
670
+ (e.g. "merging") that the user is in the middle of.
671
419
- Will cook in 'next'.
672
+ cf. <xmqqmvakcdqw.fsf@gitster.mtv.corp.google.com>
673
674
422
-* st/lib-gpg-kill-stray-agent (2017-07-20) 1 commit
423
- (merged to 'next' on 2017-07-20 at 8ea68c483f)
424
- + t: lib-gpg: flush gpg agent on startup
675
+* nd/worktree-move (2017-04-20) 6 commits
676
+ - worktree remove: new command
677
+ - worktree move: refuse to move worktrees with submodules
678
+ - worktree move: accept destination as directory
679
+ - worktree move: new command
680
+ - worktree.c: add update_worktree_location()
681
+ - worktree.c: add validate_worktree()
682
426
- Some versions of GnuPG fails to kill gpg-agent it auto-spawned
427
- and such a left-over agent can interfere with a test. Work it
428
- around by attempting to kill one before starting a new test.
683
+ "git worktree" learned move and remove subcommands.
684
430
- Will cook in 'next'.
685
+ Expecting a reroll.
686
+ cf. <20170420101024.7593-1-pclouds@gmail.com>
687
+ cf. <20170421145916.mknekgqzhxffu7di@sigill.intra.peff.net>
688
+ cf. <d0e81b1e-5869-299e-f462-4d43dc997bd1@ramsayjones.plus.com>
689
690
433
-* jk/c99 (2017-07-18) 2 commits
434
- (merged to 'next' on 2017-07-18 at 1cfc30f7c1)
435
- + clean.c: use designated initializer
436
- + strbuf: use designated initializers in STRBUF_INIT
691
+* sg/clone-refspec-from-command-line-config (2017-06-16) 2 commits
692
+ - Documentation/clone: document ignored configuration variables
693
+ - clone: respect additional configured fetch refspecs during initial fetch
694
+ (this branch is used by sg/remote-no-string-refspecs.)
695
438
- Start using selected c99 constructs in small, stable and
439
- essentialpart of the system to catch people who care about
440
- older compilers that do not grok them.
696
+ "git clone -c var=val" is a way to set configuration variables in
697
+ the resulting repository, but it is more useful to also make these
698
+ variables take effect while the initial clone is happening,
699
+ e.g. these configuration variables could be fetch refspecs.
700
442
- Will cook in 'next'.
701
+ Waiting for a response.
702
+ cf. <20170617112228.vugswym4o4owf6wj@sigill.intra.peff.net>
703
+ cf. <xmqqmv8zhdap.fsf@gitster.mtv.corp.google.com>
704
705
445
-* jk/check-ref-format-oor-fix (2017-07-14) 1 commit
446
- - check-ref-format: require a repository for --branch
706
+* js/rebase-i-final (2017-07-27) 10 commits
707
+ - rebase -i: rearrange fixup/squash lines using the rebase--helper
708
+ - t3415: test fixup with wrapped oneline
709
+ - rebase -i: skip unnecessary picks using the rebase--helper
710
+ - rebase -i: check for missing commits in the rebase--helper
711
+ - t3404: relax rebase.missingCommitsCheck tests
712
+ - rebase -i: also expand/collapse the SHA-1s via the rebase--helper
713
+ - rebase -i: do not invent onelines when expanding/collapsing SHA-1s
714
+ - rebase -i: remove useless indentation
715
+ - rebase -i: generate the script via rebase--helper
716
+ - t3415: verify that an empty instructionFormat is handled as before
717
448
- Objected...
449
- cf. <20170717172709.GL93855@aiede.mtv.corp.google.com>
718
+ The final batch to "git rebase -i" updates to move more code from
719
+ the shell script to C.
720
721
+ Expecting a reroll.
722
452
-* bw/grep-recurse-submodules (2017-08-02) 10 commits
453
- (merged to 'next' on 2017-08-04 at 4e60c34bad)
454
- + grep: recurse in-process using 'struct repository'
455
- + submodule: merge repo_read_gitmodules and gitmodules_config
456
- + submodule: check for unmerged .gitmodules outside of config parsing
457
- + submodule: check for unstaged .gitmodules outside of config parsing
458
- + submodule: remove fetch.recursesubmodules from submodule-config parsing
459
- + submodule: remove submodule.fetchjobs from submodule-config parsing
460
- + config: add config_from_gitmodules
461
- + cache.h: add GITMODULES_FILE macro
462
- + repository: have the_repository use the_index
463
- + repo_read_index: don't discard the index
464
- (this branch is used by bw/submodule-config-cleanup.)
723
466
- "git grep --recurse-submodules" has been reworked to give a more
467
- consistent output across submodule boundary (and do its thing
468
- without having to fork a separate process).
724
+* bp/fsmonitor (2017-06-12) 6 commits
725
+ - fsmonitor: add a sample query-fsmonitor hook script for Watchman
726
+ - fsmonitor: add documentation for the fsmonitor extension.
727
+ - fsmonitor: add test cases for fsmonitor extension
728
+ - fsmonitor: teach git to optionally utilize a file system monitor to speed up detecting new or changed files.
729
+ - dir: make lookup_untracked() available outside of dir.c
730
+ - bswap: add 64 bit endianness helper get_be64
731
470
- Will cook in 'next'.
732
+ We learned to talk to watchman to speed up "git status".
733
+
734
+ Expecting a reroll.
735
+ cf. <bade1166-e646-b05a-f65b-adb8da8ba0a7@gmail.com>
736
737
+--------------------------------------------------
738
+[Cooking]
739
473
-* bw/object-id (2017-07-17) 3 commits
474
- (merged to 'next' on 2017-07-18 at 90d27c0e7c)
475
- + receive-pack: don't access hash of NULL object_id pointer
476
- + notes: don't access hash of NULL object_id pointer
477
- + tree-diff: don't access hash of NULL object_id pointer
740
+* pw/sequence-rerere-autoupdate (2017-08-02) 6 commits
741
+ (merged to 'next' on 2017-08-11 at cd2d165be2)
742
+ + cherry-pick/revert: reject --rerere-autoupdate when continuing
743
+ + cherry-pick/revert: remember --rerere-autoupdate
744
+ + t3504: use test_commit
745
+ + rebase -i: honor --rerere-autoupdate
746
+ + rebase: honor --rerere-autoupdate
747
+ + am: remember --rerere-autoupdate setting
748
479
- Conversion from uchar[20] to struct object_id continues.
749
+ Commands like "git rebase" accepted the --rerere-autoupdate option
750
+ from the command line, but did not always use it. This has been
751
+ fixed.
752
481
- Will cook in 'next'.
753
+ Will merge to 'master'.
754
755
484
-* ks/commit-abort-on-empty-message-fix (2017-07-17) 1 commit
485
- (merged to 'next' on 2017-07-27 at e81ad4c1dc)
486
- + commit: check for empty message before the check for untouched template
756
+* bw/clone-recursive-quiet (2017-08-04) 1 commit
757
+ (merged to 'next' on 2017-08-11 at f49ac463f7)
758
+ + clone: teach recursive clones to respect -q
759
488
- "git commit" when seeing an totally empty message said "you did not
489
- edit the message", which is clearly wrong. The message has been
490
- corrected.
760
+ "git clone --recurse-submodules --quiet" did not pass the quiet
761
+ option down to submodules.
762
492
- Will cook in 'next'.
763
+ Will merge to 'master'.
764
765
495
-* rs/bswap-ubsan-fix (2017-07-17) 2 commits
496
- (merged to 'next' on 2017-07-20 at ce6bad07b0)
497
- + bswap: convert get_be16, get_be32 and put_be32 to inline functions
498
- + bswap: convert to unsigned before shifting in get_be32
766
+* lg/merge-signoff (2017-07-25) 1 commit
767
+ - merge: add a --signoff flag
768
500
- Code clean-up.
769
+ "git merge" learned a "--signoff" option to add the Signed-off-by:
770
+ trailer with the committer's name.
771
502
- Will cook in 'next'.
772
773
+* pb/trailers-from-command-line (2017-07-25) 4 commits
774
+ - SQUASH???
775
+ - interpret-trailers: add options for actions
776
+ - trailers: introduce struct new_trailer_item
777
+ - trailers: export action enums and corresponding lookup functions
778
505
-* rs/move-array (2017-07-17) 4 commits
506
- (merged to 'next' on 2017-07-20 at f3086cd20e)
507
- + ls-files: don't try to prune an empty index
508
- + apply: use COPY_ARRAY and MOVE_ARRAY in update_image()
509
- + use MOVE_ARRAY
510
- + add MOVE_ARRAY
779
+ "git interpret-trailers" learned to take the trailer specifications
780
+ from the command line that overrides the configured values.
781
512
- Code clean-up.
782
+ Expecting a reroll for compilation fix.
783
514
- Will cook in 'next'.
784
785
+* sb/submodule-recursive-checkout-detach-head (2017-07-28) 2 commits
786
+ - Documentation/checkout: clarify submodule HEADs to be detached
787
+ - recursive submodules: detach HEAD from new state
788
517
-* rs/stat-data-unaligned-reads-fix (2017-07-17) 1 commit
518
- (merged to 'next' on 2017-07-20 at e7d3782823)
519
- + dir: support platforms that require aligned reads
789
+ "git checkout --recursive" may overwrite and rewind the history of
790
+ the branch that happens to be checked out in submodule
791
+ repositories, which might not be desirable. Detach the HEAD but
792
+ still allow the recursive checkout to succeed in such a case.
793
521
- Code clean-up.
794
+ Undecided.
795
+ This needs justification in a larger picture; it is unclear why
796
+ this is better than rejecting recursive checkout, for example.
797
523
- Will cook in 'next'.
798
799
+* ti/external-sha1dc (2017-07-25) 1 commit
800
+ (merged to 'next' on 2017-07-27 at d1ce394fe2)
801
+ + hash: allow building with the external sha1dc library
802
526
-* wd/rebase-conflict-guide (2017-07-17) 1 commit
527
- (merged to 'next' on 2017-07-20 at c78e758b23)
528
- + rebase: make resolve message clearer for inexperienced users
803
+ Platforms that ship with a separate sha1 with collision detection
804
+ library can link to it instead of using the copy we ship as part of
805
+ our source tree.
806
530
- The advice message given when "git rebase" stops for conflicting
531
- changes has been improved.
807
+ Waiting for review to conclude
808
+ cf. <CACBZZX7M=H8tNkZXpHBvv0rbY58EJk4dkoUzGKMftWoKUqF8sA@mail.gmail.com>
809
533
- Will cook in 'next'.
810
811
+* bw/submodule-config-cleanup (2017-08-03) 17 commits
812
+ - submodule: remove gitmodules_config
813
+ - unpack-trees: improve loading of .gitmodules
814
+ - submodule-config: lazy-load a repository's .gitmodules file
815
+ - submodule-config: move submodule-config functions to submodule-config.c
816
+ - submodule-config: remove support for overlaying repository config
817
+ - diff: stop allowing diff to have submodules configured in .git/config
818
+ - submodule: remove submodule_config callback routine
819
+ - unpack-trees: don't respect submodule.update
820
+ - submodule: don't rely on overlayed config when setting diffopts
821
+ - fetch: don't overlay config with submodule-config
822
+ - submodule--helper: don't overlay config in update-clone
823
+ - submodule--helper: don't overlay config in remote_submodule_branch
824
+ - add, reset: ensure submodules can be added or reset
825
+ - submodule: don't use submodule_from_name
826
+ - t7411: check configuration parsing errors
827
+ - Merge branch 'bc/object-id' into bw/submodule-config-cleanup
828
+ - Merge branch 'bw/grep-recurse-submodules' into bw/submodule-config-cleanup
829
+ (this branch uses bw/grep-recurse-submodules.)
830
536
-* hb/gitweb-project-list (2017-07-18) 1 commit
537
- (merged to 'next' on 2017-07-27 at c25d65ca25)
538
- + gitweb: skip unreadable subdirectories
831
+ Code clean-up to avoid mixing values read from the .gitmodules file
832
+ and values read from the .git/config file.
833
540
- When a directory is not readable, "gitweb" fails to build the
541
- project list. Work this around by skipping such a directory.
834
543
- Will cook in 'next'.
835
+* bw/push-options-recursively-to-submodules (2017-07-20) 1 commit
836
+ (merged to 'next' on 2017-07-27 at 26b3af2544)
837
+ + submodule--helper: teach push-check to handle HEAD
838
545
- It might end up hiding a problem under the rug and a better
546
- solution might be to loudly complain to the administrator pointing
547
- out the problematic directory, but this will at least make it
548
- "work".
839
+ "git push --recurse-submodules $there HEAD:$target" was not
840
+ propagated down to the submodules, but now it is.
841
842
+ Will merge to 'master'.
843
551
-* jk/ref-filter-colors (2017-07-13) 15 commits
552
- (merged to 'next' on 2017-07-18 at 75d4eb7ecf)
553
- + ref-filter: consult want_color() before emitting colors
554
- + pretty: respect color settings for %C placeholders
555
- + rev-list: pass diffopt->use_colors through to pretty-print
556
- + for-each-ref: load config earlier
557
- + color: check color.ui in git_default_config()
558
- + ref-filter: pass ref_format struct to atom parsers
559
- + ref-filter: factor out the parsing of sorting atoms
560
- + ref-filter: make parse_ref_filter_atom a private function
561
- + ref-filter: provide a function for parsing sort options
562
- + ref-filter: move need_color_reset_at_eol into ref_format
563
- + ref-filter: abstract ref format into its own struct
564
- + ref-filter: simplify automatic color reset
565
- + t: use test_decode_color rather than literal ANSI codes
566
- + docs/for-each-ref: update pointer to color syntax
567
- + check return value of verify_ref_format()
844
569
- "%C(color name)" in the pretty print format always produced ANSI
570
- color escape codes, which was an early design mistake. They now
571
- honor the configuration (e.g. "color.ui = never") and also tty-ness
572
- of the output medium.
845
+* jk/check-ref-format-oor-fix (2017-07-14) 1 commit
846
+ - check-ref-format: require a repository for --branch
847
574
- Will cook in 'next'.
848
+ Objected...
849
+ cf. <20170717172709.GL93855@aiede.mtv.corp.google.com>
850
851
577
-* sb/object-id (2017-07-13) 2 commits
578
- (merged to 'next' on 2017-07-18 at e4df0ba3b1)
579
- + tag: convert gpg_verify_tag to use struct object_id
580
- + commit: convert lookup_commit_graft to struct object_id
581
- (this branch is used by bc/object-id and bw/submodule-config-cleanup.)
852
+* bw/grep-recurse-submodules (2017-08-02) 10 commits
853
+ (merged to 'next' on 2017-08-04 at 4e60c34bad)
854
+ + grep: recurse in-process using 'struct repository'
855
+ + submodule: merge repo_read_gitmodules and gitmodules_config
856
+ + submodule: check for unmerged .gitmodules outside of config parsing
857
+ + submodule: check for unstaged .gitmodules outside of config parsing
858
+ + submodule: remove fetch.recursesubmodules from submodule-config parsing
859
+ + submodule: remove submodule.fetchjobs from submodule-config parsing
860
+ + config: add config_from_gitmodules
861
+ + cache.h: add GITMODULES_FILE macro
862
+ + repository: have the_repository use the_index
863
+ + repo_read_index: don't discard the index
864
+ (this branch is used by bw/submodule-config-cleanup.)
865
583
- Conversion from uchar[20] to struct object_id continues.
866
+ "git grep --recurse-submodules" has been reworked to give a more
867
+ consistent output across submodule boundary (and do its thing
868
+ without having to fork a separate process).
869
585
- Will cook in 'next'.
870
+ Will merge to 'master'.
871
872
873
* rs/sha1-file-micro-optim (2017-07-09) 2 commits
@@ -595,20 +880,6 @@ of the repositories listed at
880
cf. <f59c8256-716b-9305-2a4f-d4fe49f666ff@web.de>
881
882
598
-* ks/prepare-commit-msg-sample (2017-07-12) 4 commits
599
- (merged to 'next' on 2017-07-18 at 48d9650a30)
600
- + hook: add a simple first example
601
- + hook: add sign-off using "interpret-trailers"
602
- + hook: name the positional variables
603
- + hook: cleanup script
604
-
605
- Remove an example that is now obsolete from a sample hook,
606
- and improve an old example in it that added a sign-off manually
607
- to use the interpret-trailers command.
608
-
609
- Will cook in 'next'.
610
-
611
-
883
* jc/allow-lazy-cas (2017-07-06) 1 commit
884
- push: disable lazy --force-with-lease by default
885
@@ -626,68 +897,6 @@ of the repositories listed at
897
cf. <alpine.DEB.2.21.1.1707131435220.4193@virtualbox>
898
899
629
-* bc/object-id (2017-07-17) 12 commits
630
- (merged to 'next' on 2017-07-18 at fd161056e4)
631
- + sha1_name: convert uses of 40 to GIT_SHA1_HEXSZ
632
- + sha1_name: convert GET_SHA1* flags to GET_OID*
633
- + sha1_name: convert get_sha1* to get_oid*
634
- + Convert remaining callers of get_sha1 to get_oid.
635
- + builtin/unpack-file: convert to struct object_id
636
- + bisect: convert bisect_checkout to struct object_id
637
- + builtin/update_ref: convert to struct object_id
638
- + sequencer: convert to struct object_id
639
- + remote: convert struct push_cas to struct object_id
640
- + submodule: convert submodule config lookup to use object_id
641
- + builtin/merge-tree: convert remaining caller of get_sha1 to object_id
642
- + builtin/fsck: convert remaining caller of get_sha1 to object_id
643
- (this branch is used by bw/submodule-config-cleanup; uses sb/object-id.)
644
-
645
- Conversion from uchar[20] to struct object_id continues.
646
-
647
- Will cook in 'next'.
648
-
649
-
650
-* jk/reflog-walk (2017-07-09) 9 commits
651
- (merged to 'next' on 2017-07-09 at 7449e964c6)
652
- + reflog-walk: apply --since/--until to reflog dates
653
- + reflog-walk: stop using fake parents
654
- + rev-list: check reflog_info before showing usage
655
- + get_revision_1(): replace do-while with an early return
656
- + log: do not free parents when walking reflog
657
- + log: clarify comment about reflog cycles
658
- + revision: disallow reflog walking with revs->limited
659
- + t1414: document some reflog-walk oddities
660
- + Merge branch 'jk/reflog-walk-maint' into jk/reflog-walk
661
-
662
- Numerous bugs in walking of reflogs via "log -g" and friends have
663
- been fixed.
664
-
665
- Will cook in 'next'.
666
-
667
-
668
-* sb/hashmap-cleanup (2017-07-05) 10 commits
669
- (merged to 'next' on 2017-07-12 at ce31d06165)
670
- + t/helper/test-hashmap: use custom data instead of duplicate cmp functions
671
- + name-hash.c: drop hashmap_cmp_fn cast
672
- + submodule-config.c: drop hashmap_cmp_fn cast
673
- + remote.c: drop hashmap_cmp_fn cast
674
- + patch-ids.c: drop hashmap_cmp_fn cast
675
- + convert/sub-process: drop cast to hashmap_cmp_fn
676
- + config.c: drop hashmap_cmp_fn cast
677
- + builtin/describe: drop hashmap_cmp_fn cast
678
- + builtin/difftool.c: drop hashmap_cmp_fn cast
679
- + attr.c: drop hashmap_cmp_fn cast
680
-
681
- Many uses of comparision callback function the hashmap API uses
682
- cast the callback function type when registering it to
683
- hashmap_init(), which defeats the compile time type checking when
684
- the callback interface changes (e.g. gaining more parameters).
685
- The callback implementations have been updated to take "void *"
686
- pointers and cast them to the type they expect instead.
687
-
688
- Will cook in 'next'.
689
-
690
-
900
* ex/deprecate-empty-pathspec-as-match-all (2017-06-23) 2 commits
901
(merged to 'next' on 2017-06-26 at d026281517)
902
+ pathspec: die on empty strings as pathspec
@@ -741,7 +950,7 @@ of the repositories listed at
950
951
The "ref-store" code reorganization continues.
952
744
- Will cook in 'next'.
953
+ Will merge to 'master'.
954
955
956
* sd/branch-copy (2017-06-18) 3 commits
@@ -753,7 +962,7 @@ of the repositories listed at
962
"git branch" learned "-c/-C" to create and switch to a new branch
963
by copying an existing one.
964
756
- Will cook in 'next'.
965
+ Will merge to 'master'.
966
967
I personally do not think "branch --copy master backup" while on
968
"master" that switches to "backup" is a good UI, and I *will* say
@@ -761,23 +970,6 @@ of the repositories listed at
970
'master'.
971
972
764
-* ls/filter-process-delayed (2017-06-30) 7 commits
765
- (merged to 'next' on 2017-07-05 at a35e644082)
766
- + convert: add "status=delayed" to filter process protocol
767
- + convert: refactor capabilities negotiation
768
- + convert: move multiple file filter error handling to separate function
769
- + convert: put the flags field before the flag itself for consistent style
770
- + t0021: write "OUT <size>" only on success
771
- + t0021: make debug log file name configurable
772
- + t0021: keep filter log files on comparison
773
- (this branch is used by jt/subprocess-handshake.)
774
-
775
- The filter-process interface learned to allow a process with long
776
- latency give a "delayed" response.
777
-
778
- Will cook in 'next'.
779
-
780
-
973
* sb/diff-color-move (2017-06-30) 26 commits
974
(merged to 'next' on 2017-07-06 at 758ed40e4f)
975
+ diff: document the new --color-moved setting
@@ -811,7 +1003,7 @@ of the repositories listed at
1003
the same as deleted lines elsewhere differently from genuinely new
1004
lines.
1005
814
- Will cook in 'next'.
1006
+ Will merge to 'master'.
1007
1008
--------------------------------------------------
1009
[Discarded]