What's cooking (2015/06 #06)

Junio C Hamano committed Jun 24, 2015 at 14:08 UTC d13315f41ead65c64e00e0ac5388a81ba3b68a7c
1 file changed +479 -436
whats-cooking.txt
+479 -436
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Jun 2015, #05; Mon, 22)
4 -X-master-at: 5b1d901c0173b41010856e30776c92d02987ea25
5 -X-next-at: 6397abdce8831f34ac73793bdc73f48511c6d798
3 +Subject: What's cooking in git.git (Jun 2015, #06; Wed, 24)
4 +X-master-at: df97e5dfeaea093e50afc15e44a23dfd3fa02502
5 +X-next-at: 3f8b1d03318d3e5eff389ac0d3568f45053ae1fd
6
7 -What's cooking in git.git (Jun 2015, #05; Mon, 22)
7 +What's cooking in git.git (Jun 2015, #06; Wed, 24)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -16,10 +16,10 @@ been excluded from 'pu'; most notably, I think the remainder of
16 bc/object-id needs to wait until the for-each-ref topic from Karthik
17 settles and then rebased on it, or something.
18
19 -Hopefully the pre-release freeze can start late this week, and the
20 -next cycle would reopen mid next month. In the meantime, let's
21 -shift the focus on making sure that what has already been merged to
22 -'master' are good (i.e. regression hunting and fixes).
19 +We will be in the pre-release freeze soonish, and the next cycle
20 +would reopen mid next month. In the meantime, let's shift the focus
21 +on making sure that what has already been merged to 'master' are
22 +good (i.e. regression hunting and fixes).
23
24 You can find the changes described here in the integration branches
25 of the repositories listed at
@@ -27,140 +27,305 @@ of the repositories listed at
27 http://git-blame.blogspot.com/p/git-public-repositories.html
28
29 --------------------------------------------------
30 -[New Topics]
30 +[Graduated to "master"]
31
32 -* js/rebase-i-clean-up-upon-continue-to-skip (2015-06-18) 3 commits
33 - - rebase -i: do not leave a CHERRY_PICK_HEAD file behind
34 - - SQUASH: test_must_fail is a shell function
35 - - t3404: demonstrate CHERRY_PICK_HEAD bug
32 +* af/tcsh-completion-noclobber (2015-06-09) 1 commit
33 + (merged to 'next' on 2015-06-16 at 621f205)
34 + + git-completion.tcsh: fix redirect with noclobber
35
37 - Abandoning an already applied change in "git rebase -i" with
38 - "--continue" left CHERRY_PICK_HEAD and confused later steps.
36 + The tcsh completion writes a bash scriptlet but that would have
37 + failed for users with noclobber set.
38
40 - Expecting a reroll.
41 - ($gmane/271856)
39
40 +* es/configure-getdelim (2015-06-03) 2 commits
41 + (merged to 'next' on 2015-06-11 at cdead14)
42 + + configure: add getdelim() check
43 + + config.mak.uname: Darwin: define HAVE_GETDELIM for modern OS X releases
44
44 -* me/fetch-into-shallow-safety (2015-06-17) 1 commit
45 - - fetch-pack: check for shallow if depth given
45 + Auto-detect availability of getdelim() that helps optimized version
46 + of strbuf_getwholeline().
47
47 - "git fetch --depth=<depth>" and "git clone --depth=<depth>" issued
48 - a shallow transfer request even to an upload-pack that does not
49 - support the capability.
48
51 - Will merge to 'next'.
49 +* es/osx-header-pollutes-mask-macro (2015-06-03) 2 commits
50 + (merged to 'next' on 2015-06-11 at cd8c39e)
51 + + ewah: use less generic macro name
52 + + ewah/bitmap: silence warning about MASK macro redefinition
53
54
54 -* mm/describe-doc (2015-06-16) 1 commit
55 - - Documentation/describe: improve one-line summary
55 +* es/send-email-sendmail-alias (2015-06-01) 10 commits
56 + (merged to 'next' on 2015-06-11 at b5e310e)
57 + + send-email: further warn about unsupported sendmail aliases features
58 + + t9001: add sendmail aliases line continuation tests
59 + + t9001: refactor sendmail aliases test infrastructure
60 + + send-email: implement sendmail aliases line continuation support
61 + + send-email: simplify sendmail aliases comment and blank line recognizer
62 + + send-email: refactor sendmail aliases parser
63 + + send-email: fix style: cuddle 'elsif' and 'else' with closing brace
64 + + send-email: drop noise comments which merely repeat what code says
65 + + send-email: visually distinguish sendmail aliases parser warnings
66 + + send-email: further document missing sendmail aliases functionality
67
57 - Will merge to 'next'.
68 + "git send-email" learned to handle more forms of sendmail style
69 + aliases file.
70
71
60 -* rh/test-color-avoid-terminfo-in-original-home (2015-06-17) 2 commits
61 - - test-lib.sh: fix color support when tput needs ~/.terminfo
62 - - Revert "test-lib.sh: do tests for color support after changing HOME"
72 +* es/utf8-stupid-compiler-workaround (2015-06-05) 1 commit
73 + (merged to 'next' on 2015-06-11 at dc0f2d2)
74 + + utf8: NO_ICONV: silence uninitialized variable warning
75
64 - An ancient test framework enhancement to allow color was not
65 - entirely correct; this makes it work even when tput needs to read
66 - from the ~/.terminfo under the user's real HOME directory.
76 + A compilation workaround.
77
68 - Will merge to 'next'.
78
79 +* fk/doc-format-patch-vn (2015-06-10) 1 commit
80 + (merged to 'next' on 2015-06-16 at 9be3516)
81 + + doc: format-patch: fix typo
82
71 -* tb/checkout-doc (2015-06-17) 1 commit
72 - - git-checkout.txt: document "git checkout <pathspec>" better
83 + Docfix.
84
74 - $gmane/271812
85
86 +* jc/apply-reject-noop-hunk (2015-06-01) 1 commit
87 + (merged to 'next' on 2015-06-11 at 8063665)
88 + + apply: reject a hunk that does not do anything
89
77 -* jk/pretty-encoding-doc (2015-06-17) 1 commit
78 - - docs: clarify that --encoding can produce invalid sequences
90 + "git apply" cannot diagnose a patch corruption when the breakage is
91 + to mark the length of the hunk shorter than it really is on the
92 + hunk header line "@@ -l,k +m,n @@"; one special case it could is
93 + when the hunk becomes no-op (e.g. k == n == 2 for two-line context
94 + patch output), and it learned to do so for this special case.
95
80 - $gmane/271879
96
97 +* jc/do-not-feed-tags-to-clear-commit-marks (2015-06-01) 1 commit
98 + (merged to 'next' on 2015-06-11 at 65b4308)
99 + + format-patch: do not feed tags to clear_commit_marks()
100
83 -* ak/format-patch-odir-config (2015-06-19) 1 commit
84 - - format-patch: introduce format.outputDirectory configuration
101 + "git format-patch --ignore-if-upstream A..B" did not like to be fed
102 + tags as boundary commits.
103
86 - Reroll exists but didn't pick it up as it seems to be still
87 - collecting review comments.
104
105 +* jc/ll-merge-expose-path (2015-06-04) 1 commit
106 + (merged to 'next' on 2015-06-11 at 5c5fe41)
107 + + ll-merge: pass the original path to external drivers
108
90 -* bc/gpg-verify-raw (2015-06-22) 7 commits
91 - - verify-tag: add option to print raw gpg status information
92 - - verify-commit: add option to print raw gpg status information
93 - - gpg: centralize printing signature buffers
94 - - gpg: centralize signature check
95 - - verify-commit: add test for exit status on untrusted signature
96 - - verify-tag: share code with verify-commit
97 - - verify-tag: add tests
109 + Traditionally, external low-level 3-way merge drivers are expected
110 + to produce their results based solely on the contents of the three
111 + variants given in temporary files named by %O, %A and %B on their
112 + command line. Additionally allow them to look at the final path
113 + (given by %P).
114
99 - "git verify-tag" and "git verify-commit" have been taught to share
100 - more code, and then learned to optionally show the verification
101 - message from the underlying GPG implementation.
115
103 - Will merge to 'next'.
116 +* jk/index-pack-reduce-recheck (2015-06-09) 1 commit
117 + (merged to 'next' on 2015-06-16 at ff83705)
118 + + index-pack: avoid excessive re-reading of pack directory
119
120 + Disable "have we lost a race with competing repack?" check while
121 + receiving a huge object transfer that runs index-pack.
122
106 -* cb/parse-magnitude (2015-06-22) 2 commits
107 - - parse-options: move unsigned long option parsing out of pack-objects.c
108 - - test-parse-options: update to handle negative ints
123
110 - Move machinery to parse human-readable scaled numbers like 1k, 4M,
111 - and 2G as an option parameter's value from pack-objects to
112 - parse-options API, to make it available to other codepaths.
124 +* jk/stash-require-clean-index (2015-06-15) 1 commit
125 + (merged to 'next' on 2015-06-16 at beb4883)
126 + + Revert "stash: require a clean index to apply"
127
114 - Will merge to 'next'.
128 + A hotfix for the topic already in 'master'.
129
130
117 -* cb/subtree-tests-update (2015-06-22) 3 commits
118 - - contrib/subtree: small tidy-up to test
119 - - contrib/subtree: fix broken &&-chains and revealed test error
120 - - contrib/subtree: use tabs consitently for indentation in tests
131 +* js/sleep-without-select (2015-06-05) 4 commits
132 + (merged to 'next' on 2015-06-11 at 278edb1)
133 + + lockfile: wait using sleep_millisec() instead of select()
134 + + lockfile: convert retry timeout computations to millisecond
135 + + help.c: wrap wait-only poll() invocation in sleep_millisec()
136 + + lockfile: replace random() by rand()
137
122 - Will merge to 'next'.
138 + Portability fix.
139
140
125 -* da/mergetool-winmerge (2015-06-19) 1 commit
126 - - mergetool-lib: fix default tool selection
141 +* ld/p4-changes-block-size (2015-06-10) 4 commits
142 + (merged to 'next' on 2015-06-16 at 09b7daa)
143 + + git-p4: fixing --changes-block-size handling
144 + + git-p4: add tests for non-numeric revision range
145 + + git-p4: test with limited p4 server results
146 + + git-p4: additional testing of --changes-block-size
147
128 - An earlier change already in 'master' broke the default tool
129 - selection for mergetool.
148 + More workaround for Perforce's row number limit in "git p4".
149
131 - Will merge to 'next'.
150
151 +* mh/fsck-reflog-entries (2015-06-08) 2 commits
152 + (merged to 'next' on 2015-06-16 at 44e3202)
153 + + fsck: report errors if reflog entries point at invalid objects
154 + + fsck_handle_reflog_sha1(): new function
155
134 -* jk/cat-file-batch-all (2015-06-22) 8 commits
135 - - cat-file: sort and de-dup output of --batch-all-objects
136 - - cat-file: add --batch-all-objects option
137 - - cat-file: split batch_one_object into two stages
138 - - cat-file: stop returning value from batch_one_object
139 - - cat-file: add --buffer option
140 - - cat-file: move batch_options definition to top of file
141 - - cat-file: minor style fix in options list
142 - - Merge branch 'jk/maint-for-each-packed-object' into jk/cat-file-batch-all
143 - (this branch uses jk/maint-for-each-packed-object.)
156 + "git fsck" used to ignore missing or invalid objects recorded in reflog.
157
145 - "cat-file" learned "--batch-all-objects" option to enumerate all
146 - available objects in the repository more quickly than "rev-list
147 - --all --objects" (the output includes unreachable objects, though).
158 +
159 +* mh/reporting-broken-refs-from-for-each-ref (2015-06-08) 4 commits
160 + (merged to 'next' on 2015-06-16 at 31af2b8)
161 + + read_loose_refs(): treat NULL_SHA1 loose references as broken
162 + + read_loose_refs(): simplify function logic
163 + + for-each-ref: report broken references correctly
164 + + t6301: new tests of for-each-ref error handling
165 +
166 + "git for-each-ref" reported "missing object" for 0{40} when it
167 + encounters a broken ref. The lack of object whose name is 0{40} is
168 + not the problem; the ref being broken is.
169
170
171 +* nd/untracked-cache (2015-06-08) 1 commit
172 + (merged to 'next' on 2015-06-16 at 5e7df1d)
173 + + read-cache: fix untracked cache invalidation when split-index is used
174
151 -* jk/maint-for-each-packed-object (2015-06-22) 1 commit
152 - - for_each_packed_object: automatically open pack index
153 - (this branch is used by jk/cat-file-batch-all.)
175 + Hotfix for the 'untracked-cache' topic that is already in 'master'.
176
155 - The for_each_packed_object() API function did not iterate over
156 - objects in a packfile that hasn't been used yet.
177
158 - Will merge to 'next'.
178 +* pa/auto-gc-mac-osx (2015-06-12) 1 commit
179 + (merged to 'next' on 2015-06-16 at 151ec95)
180 + + hooks/pre-auto-gc: adjust power checking for newer OS X
181
182 + Recent Mac OS X updates breaks the logic to detect that the machine
183 + is on the AC power in the sample pre-auto-gc script.
184 +
185 +
186 +* pt/am-abort-fix (2015-06-08) 6 commits
187 + (merged to 'next' on 2015-06-16 at 9cac1de)
188 + + am --abort: keep unrelated commits on unborn branch
189 + + am --abort: support aborting to unborn branch
190 + + am --abort: revert changes introduced by failed 3way merge
191 + + am --skip: support skipping while on unborn branch
192 + + am -3: support 3way merge on unborn branch
193 + + am --skip: revert changes introduced by failed 3way merge
194 +
195 + Various fixes around "git am" that applies a patch to a history
196 + that is not there yet.
197 +
198 +
199 +* pt/pull-optparse (2015-06-02) 3 commits
200 + (merged to 'next' on 2015-06-11 at e252b4c)
201 + + pull: use git-rev-parse --parseopt for option parsing
202 + + pull: handle git-fetch's options as well
203 + + Merge branch 'pt/pull-tests' into pt/pull-optparse
204 +
205 + "git pull" has become more aware of the options meant for
206 + underlying "git fetch" and then learned to use parse-options
207 + parser.
208 +
209 +
210 +* pt/t0302-needs-sanity (2015-06-12) 1 commit
211 + (merged to 'next' on 2015-06-16 at f0d8e17)
212 + + t0302: "unreadable" test needs SANITY prereq
213 +
214 +
215 +* qn/blame-show-email (2015-06-01) 1 commit
216 + (merged to 'next' on 2015-06-11 at b4998e2)
217 + + blame: add blame.showEmail configuration
218 +
219 + "git blame" learned blame.showEmail configuration variable.
220 +
221 +
222 +* rl/am-3way-config (2015-06-04) 3 commits
223 + (merged to 'next' on 2015-06-11 at 9b9910d)
224 + + git-am: add am.threeWay config variable
225 + + t4150-am: refactor am -3 tests
226 + + git-am.sh: fix initialization of the threeway variable
227 +
228 + "git am" learned am.threeWay configuration variable.
229 +
230 +
231 +* sg/commit-cleanup-scissors (2015-06-09) 1 commit
232 + (merged to 'next' on 2015-06-16 at 988e23d)
233 + + commit: cope with scissors lines in commit message
234 +
235 + "git commit --cleanup=scissors" was not careful enough to protect
236 + against getting fooled by a line that looked like scissors.
237 +
238 +
239 +* sg/completion-commit-cleanup (2015-06-08) 1 commit
240 + (merged to 'next' on 2015-06-16 at a9d1c77)
241 + + completion: teach 'scissors' mode to 'git commit --cleanup='
242 +
243 +--------------------------------------------------
244 +[New Topics]
245 +
246 +* ad/bisect-terms (2015-06-24) 5 commits
247 + - bisect: allow any terms set by user
248 + - bisect: add the terms old/new
249 + - bisect: simplify the addition of new bisect terms
250 + - bisect: replace hardcoded "bad|good" by variables
251 + - bisect: correction of typo
252 +
253 + The use of 'good/bad' in "git bisect" made it confusing to use when
254 + hunting for a state change that is not a regression (e.g. bugfix).
255 + The command learned 'old/new' and then also allows the end user to
256 + choose the words via a new subcommand "git bisect terms $new $old".
257 +
258 + The last one is still iffy ($gmane/272554); perhaps split this
259 + at patch 4 and leave the last one as a separate topic.
260 +
261 +
262 +* mh/tempfile (2015-06-10) 14 commits
263 + - credential-cache--daemon: use tempfile module
264 + - credential-cache--daemon: delete socket from main()
265 + - gc: use tempfile module to handle gc.pid file
266 + - lock_repo_for_gc(): compute the path to "gc.pid" only once
267 + - diff: use tempfile module
268 + - setup_temporary_shallow(): use tempfile module
269 + - write_shared_index(): use tempfile module
270 + - register_tempfile(): new function to handle an existing temporary file
271 + - tempfile: add several functions for creating temporary files
272 + - register_tempfile_object(): new function, extracted from create_tempfile()
273 + - commit_lock_file(): use get_locked_file_path()
274 + - lockfile: remove some redundant functions
275 + - tempfile: a new module for handling temporary files
276 + - Move lockfile API documentation to lockfile.h
277 +
278 + Rebuild "lockfile" API on top of a new "tempfile" API.
279 + This needs rerolling, to include "tempfile.h" in "lockfile.h", at
280 + least.
281 +
282 + Expecting a reroll.
283 + ($gmane/271353)
284 +
285 +
286 +* nd/diff-i-t-a (2015-06-23) 1 commit
287 + - Revert "diff-lib.c: adjust position of i-t-a entries in diff"
288 +
289 + The "let's show paths added with -N as 'new' in status output"
290 + change was done without enough consideration on potential fallouts
291 + on the codepaths that do not have anything to do with "status" and
292 + caused regression to at least one widely used "wsadd" alias.
293 +
294 + We do not know how widespread the fallouts would be; while we
295 + determine if it is feasible to squash all the fallouts and move
296 + things forward until the upcoming release or it would take more
297 + time and better be postponed til the next cycle, I prepared this
298 + just in case we need to revert it.
299
300 --------------------------------------------------
301 [Stalled]
302
303 +* sg/config-name-only (2015-05-28) 3 commits
304 + - completion: use new 'git config' options to reliably list variable names
305 + - SQUASH
306 + - config: add options to list only variable names
307 +
308 + "git config --list" output was hard to parse when values consist of
309 + multiple lines. Introduce a way to show only the keys.
310 +
311 + Adding a single --name-only option may be a better way to go than
312 + adding two new options.
313 +
314 + Expecting a reroll.
315 +
316 +
317 +* kb/i18n-doc (2015-06-15) 1 commit
318 + - Documentation/i18n.txt: clarify character encoding support
319 +
320 + Comments (other than $gmane/271657)?
321 +
322 +
323 +* kb/use-nsec-doc (2015-06-15) 1 commit
324 + - Makefile / racy-git.txt: clarify USE_NSEC prerequisites
325 +
326 + Comments (other than $gmane/271656)?
327 +
328 +
329 * kk/log-merges-config (2015-04-21) 5 commits
330 - bash-completion: add support for git-log --merges= and log.merges
331 - t4202-log: add tests for --merges=
@@ -207,7 +372,7 @@ of the repositories listed at
372 worse, atoi()). Introduce a set of wrappers that try to be more
373 careful.
374
210 - Will be rerolled.
375 + Expecting a reroll.
376 ($gmane/268058).
377
378
@@ -269,30 +434,6 @@ of the repositories listed at
434 Waiting for a further polished reroll ($gmane/265534).
435
436
272 -* js/fsck-opt (2015-06-22) 19 commits
273 - - fsck: support ignoring objects in `git fsck` via fsck.skiplist
274 - - fsck: git receive-pack: support excluding objects from fsck'ing
275 - - fsck: introduce `git fsck --connectivity-only`
276 - - fsck: support demoting errors to warnings
277 - - fsck: document the new receive.fsck.<msg-id> options
278 - - fsck: allow upgrading fsck warnings to errors
279 - - fsck: optionally ignore specific fsck issues completely
280 - - fsck: disallow demoting grave fsck errors to warnings
281 - - fsck: add a simple test for receive.fsck.<msg-id>
282 - - fsck: make fsck_tag() warn-friendly
283 - - fsck: handle multiple authors in commits specially
284 - - fsck: make fsck_commit() warn-friendly
285 - - fsck: make fsck_ident() warn-friendly
286 - - fsck: report the ID of the error/warning
287 - - fsck (receive-pack): allow demoting errors to warnings
288 - - fsck: offer a function to demote fsck errors to warnings
289 - - fsck: provide a function to parse fsck message IDs
290 - - fsck: introduce identifiers for fsck messages
291 - - fsck: introduce fsck options
292 -
293 - Rerolled (at v7) and seems more or less ready for 'next'.
294 -
295 -
437 * nd/pathspec-strip-fix (2015-04-18) 1 commit
438 - pathspec: adjust prefixlen after striping trailing slash
439
@@ -363,140 +504,252 @@ of the repositories listed at
504 --------------------------------------------------
505 [Cooking]
506
366 -* jk/pkt-log-pack (2015-06-16) 3 commits
367 - - pkt-line: support tracing verbatim pack contents
368 - - pkt-line: tighten sideband PACK check when tracing
369 - - pkt-line: simplify starts_with checks in packet tracing
507 +* js/fsck-opt (2015-06-23) 19 commits
508 + - fsck: support ignoring objects in `git fsck` via fsck.skiplist
509 + - fsck: git receive-pack: support excluding objects from fsck'ing
510 + - fsck: introduce `git fsck --connectivity-only`
511 + - fsck: support demoting errors to warnings
512 + - fsck: document the new receive.fsck.<msg-id> options
513 + - fsck: allow upgrading fsck warnings to errors
514 + - fsck: optionally ignore specific fsck issues completely
515 + - fsck: disallow demoting grave fsck errors to warnings
516 + - fsck: add a simple test for receive.fsck.<msg-id>
517 + - fsck: make fsck_tag() warn-friendly
518 + - fsck: handle multiple authors in commits specially
519 + - fsck: make fsck_commit() warn-friendly
520 + - fsck: make fsck_ident() warn-friendly
521 + - fsck: report the ID of the error/warning
522 + - fsck (receive-pack): allow demoting errors to warnings
523 + - fsck: offer a function to demote fsck errors to warnings
524 + - fsck: provide a function to parse fsck message IDs
525 + - fsck: introduce identifiers for fsck messages
526 + - fsck: introduce fsck options
527
371 - Enhance packet tracing machinery to allow capturing an incoming
372 - pack data to a file for debugging.
528 + Allow ignoring fsck errors on specific set of known-to-be-bad
529 + objects, and also tweaking warning level of various kinds of non
530 + critical breakages reported.
531
532 + Will merge to 'next'.
533
375 -* jk/stash-require-clean-index (2015-06-15) 1 commit
376 - (merged to 'next' on 2015-06-16 at beb4883)
377 - + Revert "stash: require a clean index to apply"
534
379 - A hotfix for the topic already in 'master'.
535 +* js/rebase-i-clean-up-upon-continue-to-skip (2015-06-23) 2 commits
536 + - rebase -i: do not leave a CHERRY_PICK_HEAD file behind
537 + - t3404: demonstrate CHERRY_PICK_HEAD bug
538 +
539 + Abandoning an already applied change in "git rebase -i" with
540 + "--continue" left CHERRY_PICK_HEAD and confused later steps.
541 +
542 + Will merge to 'next'.
543 +
544 +
545 +* me/fetch-into-shallow-safety (2015-06-17) 1 commit
546 + (merged to 'next' on 2015-06-24 at 8ecc19a)
547 + + fetch-pack: check for shallow if depth given
548 +
549 + "git fetch --depth=<depth>" and "git clone --depth=<depth>" issued
550 + a shallow transfer request even to an upload-pack that does not
551 + support the capability.
552
553 Will merge to 'master'.
554
555
384 -* kb/i18n-doc (2015-06-15) 1 commit
385 - - Documentation/i18n.txt: clarify character encoding support
556 +* mm/describe-doc (2015-06-16) 1 commit
557 + (merged to 'next' on 2015-06-24 at 75e34cc)
558 + + Documentation/describe: improve one-line summary
559
387 - Comments (other than $gmane/271657)?
560 + Docfix.
561
562 + Will merge to 'master'.
563
390 -* kb/use-nsec-doc (2015-06-15) 1 commit
391 - - Makefile / racy-git.txt: clarify USE_NSEC prerequisites
564
393 - Comments (other than $gmane/271656)?
565 +* rh/test-color-avoid-terminfo-in-original-home (2015-06-17) 2 commits
566 + (merged to 'next' on 2015-06-24 at 6af5fa7)
567 + + test-lib.sh: fix color support when tput needs ~/.terminfo
568 + + Revert "test-lib.sh: do tests for color support after changing HOME"
569
570 + An ancient test framework enhancement to allow color was not
571 + entirely correct; this makes it work even when tput needs to read
572 + from the ~/.terminfo under the user's real HOME directory.
573
396 -* kn/for-each-ref (2015-06-15) 11 commits
397 - - ref-filter: make 'ref_array_item' use a FLEX_ARRAY for refname
398 - - for-each-ref: introduce filter_refs()
399 - - ref-filter: move code from 'for-each-ref'
400 - - ref-filter: add 'ref-filter.h'
401 - - for-each-ref: rename variables called sort to sorting
402 - - for-each-ref: rename some functions and make them public
403 - - for-each-ref: introduce 'ref_array_clear()'
404 - - for-each-ref: introduce new structures for better organisation
405 - - for-each-ref: rename 'refinfo' to 'ref_array_item'
406 - - for-each-ref: clean up code
407 - - for-each-ref: extract helper functions out of grab_single_ref()
574 + Will merge to 'master'.
575
409 - GSoC project to rebuild ref listing by branch and tag based on the
410 - for-each-ref machinery.
576 +
577 +* tb/checkout-doc (2015-06-17) 1 commit
578 + - git-checkout.txt: document "git checkout <pathspec>" better
579 +
580 + Doc update.
581
582 Will merge to 'next'.
583
584
415 -* mh/init-delete-refs-api (2015-06-22) 19 commits
416 - - delete_ref(): use the usual convention for old_sha1
417 - - cmd_update_ref(): make logic more straightforward
418 - - update_ref(): don't read old reference value before delete
419 - - check_branch_commit(): make first parameter const
420 - - refs.h: add some parameter names to function declarations
421 - - refs: move the remaining ref module declarations to refs.h
422 - - initial_ref_transaction_commit(): check for ref D/F conflicts
423 - - initial_ref_transaction_commit(): check for duplicate refs
424 - - refs: remove some functions from the module's public interface
425 - - initial_ref_transaction_commit(): function for initial ref creation
426 - - repack_without_refs(): make function private
427 - - prune_refs(): use delete_refs()
428 - - prune_remote(): use delete_refs()
429 - - delete_refs(): bail early if the packed-refs file cannot be rewritten
430 - - delete_refs(): make error message more generic
431 - - delete_refs(): new function for the refs API
432 - - delete_ref(): handle special case more explicitly
433 - - remove_branches(): remove temporary
434 - - delete_ref(): move declaration to refs.h
585 +* jk/pretty-encoding-doc (2015-06-17) 1 commit
586 + - docs: clarify that --encoding can produce invalid sequences
587
436 - Clean up refs API and make "git clone" less intimate with the
437 - implementation detail.
588 + Doc update.
589
590 Will merge to 'next'.
591
592
442 -* mh/replace-refs (2015-06-12) 1 commit
443 - - Allow to control where the replace refs are looked for
593 +* ak/format-patch-odir-config (2015-06-19) 1 commit
594 + - format-patch: introduce format.outputDirectory configuration
595
445 - Add an environment variable to tell Git to look into refs hierarchy
446 - other than refs/replace/ for the object replacement data.
596 + Reroll exists but didn't pick it up as it seems to be still
597 + collecting review comments.
598 +
599 + Expecting a reroll.
600 + ($gmane/272180).
601
602
449 -* nd/multiple-work-trees (2015-06-12) 1 commit
450 - - checkout: don't check worktrees when not necessary
603 +* bc/gpg-verify-raw (2015-06-22) 7 commits
604 + (merged to 'next' on 2015-06-24 at 08a1164)
605 + + verify-tag: add option to print raw gpg status information
606 + + verify-commit: add option to print raw gpg status information
607 + + gpg: centralize printing signature buffers
608 + + gpg: centralize signature check
609 + + verify-commit: add test for exit status on untrusted signature
610 + + verify-tag: share code with verify-commit
611 + + verify-tag: add tests
612
452 - "git checkout [<tree-ish>] <paths>" spent unnecessary cycles
453 - checking if the current branch was checked out elsewhere, when we
454 - know we are not switching the branches ourselves.
613 + "git verify-tag" and "git verify-commit" have been taught to share
614 + more code, and then learned to optionally show the verification
615 + message from the underlying GPG implementation.
616
456 - Will merge to 'next'.
617 + Will merge to 'master'.
618
619
459 -* pa/auto-gc-mac-osx (2015-06-12) 1 commit
460 - (merged to 'next' on 2015-06-16 at 151ec95)
461 - + hooks/pre-auto-gc: adjust power checking for newer OS X
620 +* cb/parse-magnitude (2015-06-22) 2 commits
621 + (merged to 'next' on 2015-06-24 at 2fd7205)
622 + + parse-options: move unsigned long option parsing out of pack-objects.c
623 + + test-parse-options: update to handle negative ints
624
463 - Recent Mac OS X updates breaks the logic to detect that the machine
464 - is on the AC power in the sample pre-auto-gc script.
625 + Move machinery to parse human-readable scaled numbers like 1k, 4M,
626 + and 2G as an option parameter's value from pack-objects to
627 + parse-options API, to make it available to other codepaths.
628
629 Will merge to 'master'.
630
631
469 -* pt/t0302-needs-sanity (2015-06-12) 1 commit
470 - (merged to 'next' on 2015-06-16 at f0d8e17)
471 - + t0302: "unreadable" test needs SANITY prereq
632 +* cb/subtree-tests-update (2015-06-22) 3 commits
633 + (merged to 'next' on 2015-06-24 at 31a2938)
634 + + contrib/subtree: small tidy-up to test
635 + + contrib/subtree: fix broken &&-chains and revealed test error
636 + + contrib/subtree: use tabs consitently for indentation in tests
637 +
638 + Tests update in contrib/subtree.
639
640 Will merge to 'master'.
641
642
476 -* af/tcsh-completion-noclobber (2015-06-09) 1 commit
477 - (merged to 'next' on 2015-06-16 at 621f205)
478 - + git-completion.tcsh: fix redirect with noclobber
643 +* da/mergetool-winmerge (2015-06-19) 1 commit
644 + (merged to 'next' on 2015-06-24 at 2fb10c4)
645 + + mergetool-lib: fix default tool selection
646
480 - The tcsh completion writes a bash scriptlet but that would have
481 - failed for users with noclobber set.
647 + Hotfix for an earlier change already in 'master' that broke the
648 + default tool selection for mergetool.
649 +
650 + Will merge to 'master'.
651 +
652 +
653 +* jk/cat-file-batch-all (2015-06-22) 8 commits
654 + - cat-file: sort and de-dup output of --batch-all-objects
655 + - cat-file: add --batch-all-objects option
656 + - cat-file: split batch_one_object into two stages
657 + - cat-file: stop returning value from batch_one_object
658 + - cat-file: add --buffer option
659 + - cat-file: move batch_options definition to top of file
660 + - cat-file: minor style fix in options list
661 + - Merge branch 'jk/maint-for-each-packed-object' into jk/cat-file-batch-all
662 + (this branch uses jk/maint-for-each-packed-object.)
663 +
664 + "cat-file" learned "--batch-all-objects" option to enumerate all
665 + available objects in the repository more quickly than "rev-list
666 + --all --objects" (the output includes unreachable objects, though).
667 +
668 + Will merge to 'next'.
669 +
670 +
671 +* jk/maint-for-each-packed-object (2015-06-22) 1 commit
672 + (merged to 'next' on 2015-06-24 at 162e134)
673 + + for_each_packed_object: automatically open pack index
674 + (this branch is used by jk/cat-file-batch-all.)
675 +
676 + The for_each_packed_object() API function did not iterate over
677 + objects in a packfile that hasn't been used yet.
678 +
679 + Will merge to 'master'.
680 +
681 +
682 +* jk/pkt-log-pack (2015-06-16) 3 commits
683 + - pkt-line: support tracing verbatim pack contents
684 + - pkt-line: tighten sideband PACK check when tracing
685 + - pkt-line: simplify starts_with checks in packet tracing
686 +
687 + Enhance packet tracing machinery to allow capturing an incoming
688 + pack data to a file for debugging.
689 +
690 + Will merge to 'next'.
691 +
692 +
693 +* kn/for-each-ref (2015-06-15) 11 commits
694 + (merged to 'next' on 2015-06-24 at 1a3a734)
695 + + ref-filter: make 'ref_array_item' use a FLEX_ARRAY for refname
696 + + for-each-ref: introduce filter_refs()
697 + + ref-filter: move code from 'for-each-ref'
698 + + ref-filter: add 'ref-filter.h'
699 + + for-each-ref: rename variables called sort to sorting
700 + + for-each-ref: rename some functions and make them public
701 + + for-each-ref: introduce 'ref_array_clear()'
702 + + for-each-ref: introduce new structures for better organisation
703 + + for-each-ref: rename 'refinfo' to 'ref_array_item'
704 + + for-each-ref: clean up code
705 + + for-each-ref: extract helper functions out of grab_single_ref()
706 +
707 + GSoC project to rebuild ref listing by branch and tag based on the
708 + for-each-ref machinery. This is its first part.
709 +
710 +
711 +* mh/init-delete-refs-api (2015-06-22) 19 commits
712 + - delete_ref(): use the usual convention for old_sha1
713 + - cmd_update_ref(): make logic more straightforward
714 + - update_ref(): don't read old reference value before delete
715 + - check_branch_commit(): make first parameter const
716 + - refs.h: add some parameter names to function declarations
717 + - refs: move the remaining ref module declarations to refs.h
718 + - initial_ref_transaction_commit(): check for ref D/F conflicts
719 + - initial_ref_transaction_commit(): check for duplicate refs
720 + - refs: remove some functions from the module's public interface
721 + - initial_ref_transaction_commit(): function for initial ref creation
722 + - repack_without_refs(): make function private
723 + - prune_refs(): use delete_refs()
724 + - prune_remote(): use delete_refs()
725 + - delete_refs(): bail early if the packed-refs file cannot be rewritten
726 + - delete_refs(): make error message more generic
727 + - delete_refs(): new function for the refs API
728 + - delete_ref(): handle special case more explicitly
729 + - remove_branches(): remove temporary
730 + - delete_ref(): move declaration to refs.h
731
483 - Will merge to 'master'.
732 + Clean up refs API and make "git clone" less intimate with the
733 + implementation detail.
734
735 + Will merge to 'next'.
736
486 -* es/utf8-stupid-compiler-workaround (2015-06-05) 1 commit
487 - (merged to 'next' on 2015-06-11 at dc0f2d2)
488 - + utf8: NO_ICONV: silence uninitialized variable warning
737
490 - A compilation workaround.
738 +* mh/replace-refs (2015-06-12) 1 commit
739 + (merged to 'next' on 2015-06-24 at cb13adf)
740 + + Allow to control where the replace refs are looked for
741
492 - Will merge to 'master'.
742 + Add an environment variable to tell Git to look into refs hierarchy
743 + other than refs/replace/ for the object replacement data.
744
745
495 -* fk/doc-format-patch-vn (2015-06-10) 1 commit
496 - (merged to 'next' on 2015-06-16 at 9be3516)
497 - + doc: format-patch: fix typo
746 +* nd/multiple-work-trees (2015-06-12) 1 commit
747 + (merged to 'next' on 2015-06-24 at 7c3f918)
748 + + checkout: don't check worktrees when not necessary
749
499 - Docfix.
750 + "git checkout [<tree-ish>] <paths>" spent unnecessary cycles
751 + checking if the current branch was checked out elsewhere, when we
752 + know we are not switching the branches ourselves.
753
754 Will merge to 'master'.
755
@@ -515,54 +768,11 @@ of the repositories listed at
768
769
770 * jc/prompt-document-ps1-state-separator (2015-06-10) 1 commit
518 - - git-prompt.sh: document GIT_PS1_STATESEPARATOR
771 + (merged to 'next' on 2015-06-24 at e4d1bad)
772 + + git-prompt.sh: document GIT_PS1_STATESEPARATOR
773
774 Docfix.
775
522 - Will merge to 'next'.
523 -
524 -
525 -* jk/index-pack-reduce-recheck (2015-06-09) 1 commit
526 - (merged to 'next' on 2015-06-16 at ff83705)
527 - + index-pack: avoid excessive re-reading of pack directory
528 -
529 - Disable "have we lost a race with competing repack?" check while
530 - receiving a huge object transfer that runs index-pack.
531 -
532 - Will merge to 'master'.
533 -
534 -
535 -* js/sleep-without-select (2015-06-05) 4 commits
536 - (merged to 'next' on 2015-06-11 at 278edb1)
537 - + lockfile: wait using sleep_millisec() instead of select()
538 - + lockfile: convert retry timeout computations to millisecond
539 - + help.c: wrap wait-only poll() invocation in sleep_millisec()
540 - + lockfile: replace random() by rand()
541 -
542 - Portability fix.
543 -
544 - Will merge to 'master'.
545 -
546 -
547 -* ld/p4-changes-block-size (2015-06-10) 4 commits
548 - (merged to 'next' on 2015-06-16 at 09b7daa)
549 - + git-p4: fixing --changes-block-size handling
550 - + git-p4: add tests for non-numeric revision range
551 - + git-p4: test with limited p4 server results
552 - + git-p4: additional testing of --changes-block-size
553 -
554 - More Perforce row number limit workaround for "git p4".
555 -
556 - Will merge to 'master'.
557 -
558 -
559 -* mh/fsck-reflog-entries (2015-06-08) 2 commits
560 - (merged to 'next' on 2015-06-16 at 44e3202)
561 - + fsck: report errors if reflog entries point at invalid objects
562 - + fsck_handle_reflog_sha1(): new function
563 -
564 - "git fsck" used to ignore missing or invalid objects recorded in reflog.
565 -
776 Will merge to 'master'.
777
778
@@ -586,42 +796,17 @@ of the repositories listed at
796 Will merge to 'next'.
797
798
589 -* nd/untracked-cache (2015-06-08) 1 commit
590 - (merged to 'next' on 2015-06-16 at 5e7df1d)
591 - + read-cache: fix untracked cache invalidation when split-index is used
592 -
593 - Hotfix for the 'untracked-cache' topic that is already in 'master'.
594 -
595 - Will merge to 'master'.
596 -
597 -
598 -* pt/am-abort-fix (2015-06-08) 6 commits
599 - (merged to 'next' on 2015-06-16 at 9cac1de)
600 - + am --abort: keep unrelated commits on unborn branch
601 - + am --abort: support aborting to unborn branch
602 - + am --abort: revert changes introduced by failed 3way merge
603 - + am --skip: support skipping while on unborn branch
604 - + am -3: support 3way merge on unborn branch
605 - + am --skip: revert changes introduced by failed 3way merge
606 -
607 - Various fixes around "git am" that applies a patch to a history
608 - that is not there yet.
609 -
610 - Will merge to 'master'.
611 -
612 -
799 * pt/am-foreign (2015-06-15) 5 commits
614 - - am: teach mercurial patch parser how to read from stdin
615 - - am: use gmtime() to parse mercurial patch date
616 - - t4150: test applying StGit series
617 - - am: teach StGit patch parser how to read from stdin
618 - - t4150: test applying StGit patch
800 + (merged to 'next' on 2015-06-24 at 838c702)
801 + + am: teach mercurial patch parser how to read from stdin
802 + + am: use gmtime() to parse mercurial patch date
803 + + t4150: test applying StGit series
804 + + am: teach StGit patch parser how to read from stdin
805 + + t4150: test applying StGit patch
806
807 Various enhancements around "git am" reading patches generated by
808 foreign SCM.
809
623 - Will merge to 'next'.
624 -
810
811 * pt/pull-builtin (2015-06-18) 19 commits
812 - pull: remove redirection to git-pull.sh
@@ -646,6 +831,9 @@ of the repositories listed at
831
832 Reimplement 'git pull' in C.
833
834 + This is v4 ($gmane/271943).
835 + Comments from mentors and others?
836 +
837
838 * rl/send-email-aliases (2015-06-17) 10 commits
839 - send-email: suppress meaningless whitespaces in from field
@@ -666,24 +854,9 @@ of the repositories listed at
854 which makes it a bit scary, but as long as it works as designed, it
855 makes it wonderful ;-).
856
669 - Still RFC?
670 -
671 -
672 -* sg/commit-cleanup-scissors (2015-06-09) 1 commit
673 - (merged to 'next' on 2015-06-16 at 988e23d)
674 - + commit: cope with scissors lines in commit message
675 -
676 - "git commit --cleanup=scissors" was not careful enough to protect
677 - against getting fooled by a line that looked like scissors.
678 -
679 - Will merge to 'master'.
680 -
681 -
682 -* sg/completion-commit-cleanup (2015-06-08) 1 commit
683 - (merged to 'next' on 2015-06-16 at a9d1c77)
684 - + completion: teach 'scissors' mode to 'git commit --cleanup='
685 -
686 - Will merge to 'master'.
857 + This is a lot older version than the latest round ($gmane/272499).
858 + Expecting a reroll.
859 + ($gmane/272517).
860
861
862 * wp/sha1-name-negative-match (2015-06-08) 2 commits
@@ -714,19 +887,6 @@ of the repositories listed at
887 around, this cannot go in; ejected from 'pu'.
888
889
717 -* jc/ll-merge-expose-path (2015-06-04) 1 commit
718 - (merged to 'next' on 2015-06-11 at 5c5fe41)
719 - + ll-merge: pass the original path to external drivers
720 -
721 - Traditionally, external low-level 3-way merge drivers are expected
722 - to produce their results based solely on the contents of the three
723 - variants given in temporary files named by %O, %A and %B on their
724 - command line. Additionally allow them to look at the final path
725 - (given by %P).
726 -
727 - Will merge to 'master'.
728 -
729 -
890 * jk/log-missing-default-HEAD (2015-06-03) 1 commit
891 - log: diagnose empty HEAD more clearly
892
@@ -745,7 +905,9 @@ of the repositories listed at
905 who do not use it (and instead just remove the lines) by throwing
906 a warning.
907
748 - Expecting a reroll ($gmane/271831).
908 + This is a lot older version than the latest round ($gmane/272420)
909 + Expecting a reroll.
910 + ($gmane/272506).
911
912
913 * jh/strbuf-read-use-read-in-full (2015-06-01) 1 commit
@@ -759,81 +921,6 @@ of the repositories listed at
921 Expecting a reroll.
922
923
762 -* mh/reporting-broken-refs-from-for-each-ref (2015-06-08) 4 commits
763 - (merged to 'next' on 2015-06-16 at 31af2b8)
764 - + read_loose_refs(): treat NULL_SHA1 loose references as broken
765 - + read_loose_refs(): simplify function logic
766 - + for-each-ref: report broken references correctly
767 - + t6301: new tests of for-each-ref error handling
768 -
769 - "git for-each-ref" reported "missing object" for 0{40} when it
770 - encounters a broken ref. The lack of object whose name is 0{40} is
771 - not the problem; the ref being broken is.
772 -
773 - Will merge to 'master'.
774 -
775 -
776 -* jc/apply-reject-noop-hunk (2015-06-01) 1 commit
777 - (merged to 'next' on 2015-06-11 at 8063665)
778 - + apply: reject a hunk that does not do anything
779 -
780 - "git apply" cannot diagnose a patch corruption when the breakage is
781 - to mark the length of the hunk shorter than it really is on the
782 - hunk header line "@@ -l,k +m,n @@"; one special case it could is
783 - when the hunk becomes no-op (e.g. k == n == 2 for two-line context
784 - patch output), and it learned how to do so.
785 -
786 - Will merge to 'master'.
787 -
788 -
789 -* es/configure-getdelim (2015-06-03) 2 commits
790 - (merged to 'next' on 2015-06-11 at cdead14)
791 - + configure: add getdelim() check
792 - + config.mak.uname: Darwin: define HAVE_GETDELIM for modern OS X releases
793 -
794 - Auto-detect availability of getdelim() that helps optimized version
795 - of strbuf_getwholeline().
796 -
797 - Will merge to 'master'.
798 -
799 -
800 -* es/osx-header-pollutes-mask-macro (2015-06-03) 2 commits
801 - (merged to 'next' on 2015-06-11 at cd8c39e)
802 - + ewah: use less generic macro name
803 - + ewah/bitmap: silence warning about MASK macro redefinition
804 -
805 - Will merge to 'master'.
806 -
807 -
808 -* es/send-email-sendmail-alias (2015-06-01) 10 commits
809 - (merged to 'next' on 2015-06-11 at b5e310e)
810 - + send-email: further warn about unsupported sendmail aliases features
811 - + t9001: add sendmail aliases line continuation tests
812 - + t9001: refactor sendmail aliases test infrastructure
813 - + send-email: implement sendmail aliases line continuation support
814 - + send-email: simplify sendmail aliases comment and blank line recognizer
815 - + send-email: refactor sendmail aliases parser
816 - + send-email: fix style: cuddle 'elsif' and 'else' with closing brace
817 - + send-email: drop noise comments which merely repeat what code says
818 - + send-email: visually distinguish sendmail aliases parser warnings
819 - + send-email: further document missing sendmail aliases functionality
820 -
821 - "git send-email" learned to handle more forms of sendmail style
822 - aliases file.
823 -
824 - Will merge to 'master'.
825 -
826 -
827 -* jc/do-not-feed-tags-to-clear-commit-marks (2015-06-01) 1 commit
828 - (merged to 'next' on 2015-06-11 at 65b4308)
829 - + format-patch: do not feed tags to clear_commit_marks()
830 -
831 - "git format-patch --ignore-if-upstream A..B" did not like to be fed
832 - tags as boundary commits.
833 -
834 - Will merge to 'master'.
835 -
836 -
924 * mg/index-read-error-messages (2015-06-01) 2 commits
925 - messages: uniform error messages for index write
926 - show-index: uniform error messages for index read
@@ -842,39 +929,6 @@ of the repositories listed at
929 Expecting a reroll.
930
931
845 -* pt/pull-optparse (2015-06-02) 3 commits
846 - (merged to 'next' on 2015-06-11 at e252b4c)
847 - + pull: use git-rev-parse --parseopt for option parsing
848 - + pull: handle git-fetch's options as well
849 - + Merge branch 'pt/pull-tests' into pt/pull-optparse
850 -
851 - "git pull" has become more aware of the options meant for
852 - underlying "git fetch" and then learned to use parse-options
853 - parser.
854 -
855 - Will merge to 'master'.
856 -
857 -
858 -* qn/blame-show-email (2015-06-01) 1 commit
859 - (merged to 'next' on 2015-06-11 at b4998e2)
860 - + blame: add blame.showEmail configuration
861 -
862 - "git blame" learned blame.showEmail configuration variable.
863 -
864 - Will merge to 'master'.
865 -
866 -
867 -* rl/am-3way-config (2015-06-04) 3 commits
868 - (merged to 'next' on 2015-06-11 at 9b9910d)
869 - + git-am: add am.threeWay config variable
870 - + t4150-am: refactor am -3 tests
871 - + git-am.sh: fix initialization of the threeway variable
872 -
873 - "git am" learned am.threeWay configuration variable.
874 -
875 - Will merge to 'master'.
876 -
877 -
932 * hv/submodule-config (2015-06-15) 4 commits
933 - do not die on error of parsing fetchrecursesubmodules option
934 - use new config API for worktree configurations of submodules
@@ -886,19 +940,7 @@ of the repositories listed at
940
941 Looked reasonable from a cursory read.
942
889 -
890 -* sg/config-name-only (2015-05-28) 3 commits
891 - - completion: use new 'git config' options to reliably list variable names
892 - - SQUASH
893 - - config: add options to list only variable names
894 -
895 - "git config --list" output was hard to parse when values consist of
896 - multiple lines. Introduce a way to show only the keys.
897 -
898 - Adding a single --name-only option may be a better way to go than
899 - adding two new options.
900 -
901 - Expecting reroll.
943 + Will merge to 'next'.
944
945
946 * jc/push-tags-also (2015-05-29) 1 commit
@@ -922,17 +964,18 @@ of the repositories listed at
964
965
966 * ee/clean-remove-dirs (2015-06-15) 5 commits
925 - - clean: improve performance when removing lots of directories
926 - - p7300: add performance tests for clean
927 - - t7300: add tests to document behavior of clean and nested git
928 - - setup: sanity check file size in read_gitfile_gently
929 - - setup: add gentle version of read_gitfile
967 + (merged to 'next' on 2015-06-24 at 7c27821)
968 + + clean: improve performance when removing lots of directories
969 + + p7300: add performance tests for clean
970 + + t7300: add tests to document behavior of clean and nested git
971 + + setup: sanity check file size in read_gitfile_gently
972 + + setup: add gentle version of read_gitfile
973
974 Replace "is this subdirectory a separate repository that should not
975 be touched?" check "git clean" does by checking if it has .git/HEAD
976 using the submodule-related code with a more optimized check.
977
935 - Looked reasonable from a cursory read.
978 + Will merge to 'master'.
979
980
981 * jc/merge-drop-old-syntax (2015-04-29) 1 commit