What's cooking (2016/07 #08)

Junio C Hamano committed Jul 27, 2016 at 15:50 UTC b3944ba4dccc6a7ac43651f9b490534ad41f4803
1 file changed +211 -359
whats-cooking.txt
+211 -359
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Jul 2016, #07; Mon, 25)
3 +Subject: What's cooking in git.git (Jul 2016, #08; Wed, 27)
4 X-master-at: 8c6d1f9807c67532e7fb545a944b064faff0f70b
5 -X-next-at: 73e62d03eaf435459000ac11b091e54ac5fc5b85
5 +X-next-at: f76a962d0b7dc838990b78509c5b907bd27b527e
6
7 -What's cooking in git.git (Jul 2016, #07; Mon, 25)
7 +What's cooking in git.git (Jul 2016, #08; Wed, 27)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -17,385 +17,77 @@ of the repositories listed at
17
18 http://git-blame.blogspot.com/p/git-public-repositories.html
19
20 ---------------------------------------------------
21 -[Graduated to "master"]
22 -
23 -* ew/autoconf-pthread (2016-07-18) 1 commit
24 - (merged to 'next' on 2016-07-19 at 146e249)
25 - + configure.ac: stronger test for pthread linkage
26 -
27 - Existing autoconf generated test for the need to link with pthread
28 - library did not check all the functions from pthread libraries;
29 - recent FreeBSD has some functions in libc but not others, and we
30 - mistakenly thought linking with libc is enough when it is not.
31 -
32 -
33 -* jc/doc-diff-filter-exclude (2016-07-14) 1 commit
34 - (merged to 'next' on 2016-07-19 at 0c8aa92)
35 - + diff: document diff-filter exclusion
36 -
37 - Belated doc update for a feature added in v1.8.5.
38 -
39 -
40 -* jc/renormalize-merge-kill-safer-crlf (2016-07-12) 2 commits
41 - (merged to 'next' on 2016-07-13 at c243dd6)
42 - + merge: avoid "safer crlf" during recording of merge results
43 - + convert: unify the "auto" handling of CRLF
44 - (this branch is tangled with tb/convert-peek-in-index.)
45 -
46 - "git merge" with renormalization did not work well with
47 - merge-recursive, due to "safer crlf" conversion kicking in when it
48 - shouldn't.
49 -
50 -
51 -* jk/push-scrub-url (2016-07-20) 2 commits
52 - (merged to 'next' on 2016-07-20 at 22bb7ed)
53 - + t5541: fix url scrubbing test when GPG is not set
54 - (merged to 'next' on 2016-07-19 at 6ada3f1)
55 - + push: anonymize URL in status output
56 -
57 - "git fetch http://user:pass@host/repo..." scrubbed the userinfo
58 - part, but "git push" didn't.
59 -
60 -
61 -* js/fsck-name-object (2016-07-18) 4 commits
62 - (merged to 'next' on 2016-07-19 at 6f39d2f)
63 - + fsck: optionally show more helpful info for broken links
64 - + fsck: give the error function a chance to see the fsck_options
65 - + fsck_walk(): optionally name objects on the go
66 - + fsck: refactor how to describe objects
67 -
68 - When "git fsck" reports a broken link (e.g. a tree object contains
69 - a blob that does not exist), both containing object and the object
70 - that is referred to were reported with their 40-hex object names.
71 - The command learned the "--name-objects" option to show the path to
72 - the containing object from existing refs (e.g. "HEAD~24^2:file.txt").
73 -
74 -
75 -* js/ignore-space-at-eol (2016-07-11) 2 commits
76 - (merged to 'next' on 2016-07-13 at 429dd83)
77 - + diff: fix a double off-by-one with --ignore-space-at-eol
78 - + diff: demonstrate a bug with --patience and --ignore-space-at-eol
79 -
80 - An age old bug that caused "git diff --ignore-space-at-eol"
81 - misbehave has been fixed.
82 -
83 -
84 -* ls/travis-enable-httpd-tests (2016-07-12) 1 commit
85 - (merged to 'next' on 2016-07-13 at 06fa12e)
86 - + travis-ci: enable web server tests t55xx on Linux
87 -
88 - Allow http daemon tests in Travis CI tests.
89 -
90 -
91 -* mh/blame-worktree (2016-07-18) 2 commits
92 - (merged to 'next' on 2016-07-19 at 4c39534)
93 - + t/t8003-blame-corner-cases.sh: Use here documents
94 - + blame: allow to blame paths freshly added to the index
95 -
96 - "git blame file" allowed the lineage of lines in the uncommitted,
97 - unadded contents of "file" to be inspected, but it refused when
98 - "file" did not appear in the current commit. When "file" was
99 - created by renaming an existing file (but the change has not been
100 - committed), this restriction was unnecessarily tight.
101 -
102 -
103 -* mh/ref-iterators (2016-06-20) 13 commits
104 - (merged to 'next' on 2016-07-13 at a5b4e62)
105 - + for_each_reflog(): reimplement using iterators
106 - + dir_iterator: new API for iterating over a directory tree
107 - + for_each_reflog(): don't abort for bad references
108 - + do_for_each_ref(): reimplement using reference iteration
109 - + refs: introduce an iterator interface
110 - + ref_resolves_to_object(): new function
111 - + entry_resolves_to_object(): rename function from ref_resolves_to_object()
112 - + get_ref_cache(): only create an instance if there is a submodule
113 - + remote rm: handle symbolic refs correctly
114 - + delete_refs(): add a flags argument
115 - + refs: use name "prefix" consistently
116 - + do_for_each_ref(): move docstring to the header file
117 - + refs: remove unnecessary "extern" keywords
118 - (this branch is used by mh/ref-store; uses mh/split-under-lock; is tangled with mh/update-ref-errors.)
119 -
120 - The API to iterate over all the refs (i.e. for_each_ref(), etc.)
121 - has been revamped.
122 -
123 -
124 -* mh/split-under-lock (2016-06-13) 33 commits
125 - (merged to 'next' on 2016-07-13 at aa598af)
126 - + lock_ref_sha1_basic(): only handle REF_NODEREF mode
127 - + commit_ref_update(): remove the flags parameter
128 - + lock_ref_for_update(): don't resolve symrefs
129 - + lock_ref_for_update(): don't re-read non-symbolic references
130 - + refs: resolve symbolic refs first
131 - + ref_transaction_update(): check refname_is_safe() at a minimum
132 - + unlock_ref(): move definition higher in the file
133 - + lock_ref_for_update(): new function
134 - + add_update(): initialize the whole ref_update
135 - + verify_refname_available(): adjust constness in declaration
136 - + refs: don't dereference on rename
137 - + refs: allow log-only updates
138 - + delete_branches(): use resolve_refdup()
139 - + ref_transaction_commit(): correctly report close_ref() failure
140 - + ref_transaction_create(): disallow recursive pruning
141 - + refs: make error messages more consistent
142 - + lock_ref_sha1_basic(): remove unneeded local variable
143 - + read_raw_ref(): move docstring to header file
144 - + read_raw_ref(): improve docstring
145 - + read_raw_ref(): rename symref argument to referent
146 - + read_raw_ref(): clear *type at start of function
147 - + read_raw_ref(): rename flags argument to type
148 - + ref_transaction_commit(): remove local variables n and updates
149 - + rename_ref(): remove unneeded local variable
150 - + commit_ref_update(): write error message to *err, not stderr
151 - + refname_is_safe(): insist that the refname already be normalized
152 - + refname_is_safe(): don't allow the empty string
153 - + refname_is_safe(): use skip_prefix()
154 - + remove_dir_recursively(): add docstring
155 - + safe_create_leading_directories(): improve docstring
156 - + read_raw_ref(): don't get confused by an empty directory
157 - + commit_ref(): if there is an empty dir in the way, delete it
158 - + t1404: demonstrate a bug resolving references
159 - (this branch is used by mh/ref-iterators, mh/ref-store and mh/update-ref-errors.)
160 -
161 - Further preparatory work on the refs API before the pluggable
162 - backend series can land.
163 -
164 -
165 -* mh/update-ref-errors (2016-06-20) 6 commits
166 - (merged to 'next' on 2016-07-13 at 53482fa)
167 - + lock_ref_for_update(): avoid a symref resolution
168 - + lock_ref_for_update(): make error handling more uniform
169 - + t1404: add more tests of update-ref error handling
170 - + t1404: document function test_update_rejected
171 - + t1404: remove "prefix" argument to test_update_rejected
172 - + t1404: rename file to t1404-update-ref-errors.sh
173 - (this branch uses mh/split-under-lock; is tangled with mh/ref-iterators and mh/ref-store.)
174 -
175 - Error handling in the codepaths that updates refs has been
176 - improved.
177 -
178 -
179 -* nd/cache-tree-ita (2016-07-18) 4 commits
180 - (merged to 'next' on 2016-07-19 at 512fd96)
181 - + cache-tree: do not generate empty trees as a result of all i-t-a subentries
182 - + cache-tree.c: fix i-t-a entry skipping directory updates sometimes
183 - + test-lib.sh: introduce and use $EMPTY_BLOB
184 - + test-lib.sh: introduce and use $EMPTY_TREE
185 -
186 - "git add -N dir/file && git write-tree" produced an incorrect tree
187 - when there are other paths in the same directory that sorts after
188 - "file".
189 -
190 -
191 -* nd/test-helpers (2016-07-11) 3 commits
192 - (merged to 'next' on 2016-07-19 at 78ef465)
193 - + t/test-lib.sh: fix running tests with --valgrind
194 - + Makefile: use VCSSVN_LIB to refer to svn library
195 - + Makefile: drop extra dependencies for test helpers
196 -
197 - Build clean-up.
198 -
199 -
200 -* rs/rm-strbuf-optim (2016-07-12) 1 commit
201 - (merged to 'next' on 2016-07-13 at 5b71fc8)
202 - + rm: reuse strbuf for all remove_dir_recursively() calls
203 -
204 - The use of strbuf in "git rm" to build filename to remove was a bit
205 - suboptimal, which has been fixed.
206 -
207 -
208 -* rs/use-strbuf-addbuf (2016-07-22) 2 commits
209 - (merged to 'next' on 2016-07-22 at efbf09b)
210 - + strbuf: avoid calling strbuf_grow() twice in strbuf_addbuf()
211 - (merged to 'next' on 2016-07-19 at 679f992)
212 - + use strbuf_addbuf() for appending a strbuf to another
213 -
214 - Code cleanup.
215 -
216 -
217 -* rs/worktree-use-strbuf-absolute-path (2016-07-12) 1 commit
218 - (merged to 'next' on 2016-07-13 at e8c9c02)
219 - + worktree: use strbuf_add_absolute_path() directly
220 -
221 - Code simplification.
222 -
223 -
224 -* rw/make-needs-librt (2016-07-11) 2 commits
225 - (merged to 'next' on 2016-07-13 at 7fafd37)
226 - + config.mak.uname: define NEEDS_LIBRT under Linux, for now
227 - + Makefile: add NEEDS_LIBRT to optionally link with librt
228 -
229 - Makefile assumed that -lrt is always available on platforms that
230 - want to use clock_gettime() and CLOCK_MONOTONIC, which is not a
231 - case for recent Mac OS X. The necessary symbols are often found in
232 - libc on many modern systems and having -lrt on the command line, as
233 - long as the library exists, had no effect, but when the platform
234 - removes librt.a that is a different matter--having -lrt will break
235 - the linkage.
236 -
237 - This change could be seen as a regression for those who do need to
238 - specify -lrt, as they now specifically ask for NEEDS_LIBRT when
239 - building. Hopefully they are in the minority these days.
240 -
20 --------------------------------------------------
21 [New Topics]
22
244 -* jc/grep-commandline-vs-configuration (2016-07-25) 1 commit
245 - - grep: further simplify setting the pattern type
246 -
247 - "git -c grep.patternType=extended log --basic-regexp" misbehaved
248 - because the internal API to access the grep machinery was not
249 - designed well.
250 -
251 - Will merge to 'next'.
252 -
23 +* da/subtree-2.9-regression (2016-07-26) 2 commits
24 + (merged to 'next' on 2016-07-26 at 9d71562)
25 + + subtree: fix "git subtree split --rejoin"
26 + + t7900-subtree.sh: fix quoting and broken && chains
27
254 -* jk/diff-do-not-reuse-wtf-needs-cleaning (2016-07-22) 1 commit
255 - - diff: do not reuse worktree files that need "clean" conversion
256 -
257 - There is an optimization used in "git diff $treeA $treeB" to borrow
258 - an already checked-out copy in the working tree when it is known to
259 - be the same as the blob being compared, expecting that open/mmap of
260 - such a file is faster than reading it from the object store, which
261 - involves inflating and applying delta. This however kicked in even
262 - when the checked-out copy needs to go through the convert-to-git
263 - conversion (including the clean filter), which defeats the whole
264 - point of the optimization. The optimization has been disabled when
265 - the conversion is necessary.
266 -
267 - Will merge to 'next'.
268 -
269 -
270 -* jk/git-jump (2016-07-22) 3 commits
271 - - contrib/git-jump: fix typo in README
272 - - contrib/git-jump: add whitespace-checking mode
273 - - contrib/git-jump: fix greedy regex when matching hunks
274 -
275 - "git jump" script (in contrib/) has been updated a bit.
276 -
277 - Will merge to 'next'.
278 -
279 -
280 -* jk/parse-options-concat (2016-07-06) 1 commit
281 - - parse_options: allocate a new array when concatenating
282 -
283 - Users of the parse_options_concat() API function needs to allocate
284 - extra slots in advance and fill them with OPT_END() when they want
285 - to decide the set of options to support dynamically, which is
286 - error-prone and hard to read. This has been corrected by tweaking
287 - the API to allocate and return a new copy of "struct option" array.
288 -
289 - Will merge to 'next'.
290 -
291 -
292 -* jk/push-progress (2016-07-20) 12 commits
293 - - receive-pack: send keepalives during quiet periods
294 - - receive-pack: turn on connectivity progress
295 - - receive-pack: relay connectivity errors to sideband
296 - - receive-pack: turn on index-pack resolving progress
297 - - index-pack: add flag for showing delta-resolution progress
298 - - clone: use a real progress meter for connectivity check
299 - - check_connected: add progress flag
300 - - check_connected: relay errors to alternate descriptor
301 - - check_everything_connected: use a struct with named options
302 - - check_everything_connected: convert to argv_array
303 - - rev-list: add optional progress reporting
304 - - check_everything_connected: always pass --quiet to rev-list
28 + "git merge" in Git v2.9 was taught to forbid merging an unrelated
29 + lines of history by default, but that is exactly the kind of thing
30 + the "--rejoin" mode of "git subtree" (in contrib/) wants to do.
31 + "git subtree" has been taught to use the "--allow-unrelated-histories"
32 + option to override the default.
33
306 - "git push" and "git clone" learned to give better progress meters
307 - to the end user who is waiting on the terminal.
308 -
309 - Will merge to 'next'.
310 -
311 -
312 -* jk/reflog-date (2016-07-22) 6 commits
313 - - date: add "unix" format
314 - - date: document and test "raw-local" mode
315 - - doc/pretty-formats: explain shortening of %gd
316 - - doc/pretty-formats: describe index/time formats for %gd
317 - - doc/rev-list-options: explain "-g" output formats
318 - - doc/rev-list-options: clarify "commit@{Nth}" for "-g" option
319 -
320 - The reflog output format is documented better, and a new format
321 - --date=unix to report the seconds-since-epoch (without timezone)
322 - has been added.
323 -
324 - Will merge to 'next'.
325 -
326 -
327 -* mm/status-suggest-merge-abort (2016-07-22) 1 commit
328 - - status: suggest 'git merge --abort' when appropriate
329 -
330 - "git status" learned to suggest "merge --abort" during a conflicted
331 - merge, just like it already suggests "rebase --abort" during a
332 - conflicted rebase.
333 -
334 - Will merge to 'next'.
34 + Will merge to 'master'.
35
36
337 -* pm/build-persistent-https-with-recent-go (2016-07-22) 2 commits
338 - - contrib/persistent-https: use Git version for build label
339 - - contrib/persistent-https: update ldflags syntax for Go 1.7+
37 +* jk/pack-objects-optim-skimming (2016-07-26) 2 commits
38 + - pack-objects: compute local/ignore_pack_keep early
39 + - pack-objects: break out of want_object loop early
40
341 - The build procedure for "git persistent-https" helper (in contrib/)
342 - has been updated so that it can be built with more recent versions
343 - of Go.
41 + "git pack-objects" has a few options that tell it not to pack
42 + objects found in certain packfiles, which require it to scan .idx
43 + files of all available packs. The codepaths involved in these
44 + operations have been optimized for a common case of not having any
45 + non-local pack and/or any .kept pack.
46
345 - Will merge to 'next'.
47 + Will wait for a t/perf update.
48
49
348 -* sb/pack-protocol-doc-nak (2016-07-22) 1 commit
349 - - Documentation: pack-protocol correct NAK response
50 +* nd/fetch-ref-summary (2016-07-26) 1 commit
51 + - t5510: skip tests under GETTEXT_POISON build
52
351 - A doc update.
53 + Hotfix of a test in a topic that has already been merged to 'master'.
54
55 Will merge to 'next'.
56
57
356 -* sb/submodule-clone-retry (2016-07-22) 2 commits
357 - - submodule-helper: fix indexing in clone retry error reporting path
358 - - git-submodule: forward exit code of git-submodule--helper more faithfully
58 +* os/no-verify-skips-commit-msg-too (2016-07-26) 1 commit
59 + (merged to 'next' on 2016-07-26 at 09b98b9)
60 + + commit: describe that --no-verify skips the commit-msg hook in the help text
61
360 - An earlier tweak to make "submodule update" retry a failing clone
361 - of submodules was buggy and caused segfault, which has been fixed.
62 + "git commit --help" said "--no-verify" is only about skipping the
63 + pre-commit hook, and failed to say that it also skipped the
64 + commit-msg hook.
65
363 - Will merge to 'next'.
66 + Will merge to 'master'.
67
68
366 -* ew/find-perl-on-freebsd-in-local (2016-07-25) 1 commit
367 - - config.mak.uname: set PERL_PATH for FreeBSD 5.0+
69 +* sb/submodule-deinit-all (2016-07-26) 1 commit
70 + (merged to 'next' on 2016-07-26 at ca0b067)
71 + + submodule deinit: remove outdated comment
72
369 - Recent FreeBSD stopped making perl available at /usr/bin/perl;
370 - switch the default the built-in path to /usr/local/bin/perl on not
371 - too ancient FreeBSD releases.
73 + A comment update for a topic that was merged to Git v2.8.
74
373 - Will wait for bikeshedding to settle.
75 + Will merge to 'master'.
76
77
376 -* ew/git-svn-http-tests (2016-07-25) 2 commits
377 - - git svn: migrate tests to use lib-httpd
378 - - t/t91*: do not say how to avoid the tests
379 -
380 - Reuse the lib-httpd test infrastructure when testing the subversion
381 - integration that interacts with subversion repositories served over
382 - the http:// protocol.
78 +* cp/completion-clone-recurse-submodules (2016-07-27) 1 commit
79 + - completion: add option '--recurse-submodules' to 'git clone'
80
81 Will merge to 'next'.
82
83
387 -* jk/push-force-with-lease-creation (2016-07-25) 3 commits
388 - - push: allow pushing new branches with --force-with-lease
389 - - push: add shorthand for --force-with-lease branch creation
390 - - Documentation/git-push: fix placeholder formatting
391 -
392 - "git push --force-with-lease" already had enough logic to allow
393 - ensuring that such a push results in creation of a ref (i.e. the
394 - receiving end did not have another push from sideways that would be
395 - discarded by our force-pushing), but didn't expose this possibility
396 - to the users. It does so now.
84 +* va/i18n (2016-07-27) 3 commits
85 + - SQUASH??? -Werror=format-security
86 + - i18n: config: unfold error messages marked for translation
87 + - i18n: notes: mark comment for translation
88
398 - Perhaps needs s/memset/hashclr/, but other than that looked good.
89 + More i18n marking. The top one seems to need more work; the bottom
90 + one looked OK.
91
92 --------------------------------------------------
93 [Stalled]
@@ -548,6 +240,165 @@ of the repositories listed at
240 --------------------------------------------------
241 [Cooking]
242
243 +* jc/grep-commandline-vs-configuration (2016-07-25) 1 commit
244 + - grep: further simplify setting the pattern type
245 +
246 + "git -c grep.patternType=extended log --basic-regexp" misbehaved
247 + because the internal API to access the grep machinery was not
248 + designed well.
249 +
250 + Will merge to 'next'.
251 +
252 +
253 +* jk/diff-do-not-reuse-wtf-needs-cleaning (2016-07-22) 1 commit
254 + - diff: do not reuse worktree files that need "clean" conversion
255 +
256 + There is an optimization used in "git diff $treeA $treeB" to borrow
257 + an already checked-out copy in the working tree when it is known to
258 + be the same as the blob being compared, expecting that open/mmap of
259 + such a file is faster than reading it from the object store, which
260 + involves inflating and applying delta. This however kicked in even
261 + when the checked-out copy needs to go through the convert-to-git
262 + conversion (including the clean filter), which defeats the whole
263 + point of the optimization. The optimization has been disabled when
264 + the conversion is necessary.
265 +
266 + Will merge to 'next'.
267 +
268 +
269 +* jk/git-jump (2016-07-22) 3 commits
270 + - contrib/git-jump: fix typo in README
271 + - contrib/git-jump: add whitespace-checking mode
272 + - contrib/git-jump: fix greedy regex when matching hunks
273 +
274 + "git jump" script (in contrib/) has been updated a bit.
275 +
276 + Will merge to 'next'.
277 +
278 +
279 +* jk/parse-options-concat (2016-07-06) 1 commit
280 + - parse_options: allocate a new array when concatenating
281 +
282 + Users of the parse_options_concat() API function needs to allocate
283 + extra slots in advance and fill them with OPT_END() when they want
284 + to decide the set of options to support dynamically, which is
285 + error-prone and hard to read. This has been corrected by tweaking
286 + the API to allocate and return a new copy of "struct option" array.
287 +
288 + Will merge to 'next'.
289 +
290 +
291 +* jk/push-progress (2016-07-20) 12 commits
292 + - receive-pack: send keepalives during quiet periods
293 + - receive-pack: turn on connectivity progress
294 + - receive-pack: relay connectivity errors to sideband
295 + - receive-pack: turn on index-pack resolving progress
296 + - index-pack: add flag for showing delta-resolution progress
297 + - clone: use a real progress meter for connectivity check
298 + - check_connected: add progress flag
299 + - check_connected: relay errors to alternate descriptor
300 + - check_everything_connected: use a struct with named options
301 + - check_everything_connected: convert to argv_array
302 + - rev-list: add optional progress reporting
303 + - check_everything_connected: always pass --quiet to rev-list
304 +
305 + "git push" and "git clone" learned to give better progress meters
306 + to the end user who is waiting on the terminal.
307 +
308 + Will merge to 'next'.
309 +
310 +
311 +* jk/reflog-date (2016-07-27) 7 commits
312 + - date: clarify --date=raw description
313 + - date: add "unix" format
314 + - date: document and test "raw-local" mode
315 + - doc/pretty-formats: explain shortening of %gd
316 + - doc/pretty-formats: describe index/time formats for %gd
317 + - doc/rev-list-options: explain "-g" output formats
318 + - doc/rev-list-options: clarify "commit@{Nth}" for "-g" option
319 +
320 + The reflog output format is documented better, and a new format
321 + --date=unix to report the seconds-since-epoch (without timezone)
322 + has been added.
323 +
324 + Will merge to 'next'.
325 +
326 +
327 +* mm/status-suggest-merge-abort (2016-07-22) 1 commit
328 + - status: suggest 'git merge --abort' when appropriate
329 +
330 + "git status" learned to suggest "merge --abort" during a conflicted
331 + merge, just like it already suggests "rebase --abort" during a
332 + conflicted rebase.
333 +
334 + Will merge to 'next'.
335 +
336 +
337 +* pm/build-persistent-https-with-recent-go (2016-07-22) 2 commits
338 + - contrib/persistent-https: use Git version for build label
339 + - contrib/persistent-https: update ldflags syntax for Go 1.7+
340 +
341 + The build procedure for "git persistent-https" helper (in contrib/)
342 + has been updated so that it can be built with more recent versions
343 + of Go.
344 +
345 + Will merge to 'next'.
346 +
347 +
348 +* sb/pack-protocol-doc-nak (2016-07-22) 1 commit
349 + - Documentation: pack-protocol correct NAK response
350 +
351 + A doc update.
352 +
353 + Will merge to 'next'.
354 +
355 +
356 +* sb/submodule-clone-retry (2016-07-22) 2 commits
357 + - submodule-helper: fix indexing in clone retry error reporting path
358 + - git-submodule: forward exit code of git-submodule--helper more faithfully
359 +
360 + An earlier tweak to make "submodule update" retry a failing clone
361 + of submodules was buggy and caused segfault, which has been fixed.
362 +
363 + Will merge to 'next'.
364 +
365 +
366 +* ew/find-perl-on-freebsd-in-local (2016-07-26) 1 commit
367 + (merged to 'next' on 2016-07-26 at f76a962)
368 + + config.mak.uname: correct perl path on FreeBSD
369 +
370 + Recent FreeBSD stopped making perl available at /usr/bin/perl;
371 + switch the default the built-in path to /usr/local/bin/perl on not
372 + too ancient FreeBSD releases.
373 +
374 + Will merge to 'master'.
375 +
376 +
377 +* ew/git-svn-http-tests (2016-07-25) 2 commits
378 + - git svn: migrate tests to use lib-httpd
379 + - t/t91*: do not say how to avoid the tests
380 +
381 + Reuse the lib-httpd test infrastructure when testing the subversion
382 + integration that interacts with subversion repositories served over
383 + the http:// protocol.
384 +
385 + Will merge to 'next'.
386 +
387 +
388 +* jk/push-force-with-lease-creation (2016-07-26) 3 commits
389 + - push: allow pushing new branches with --force-with-lease
390 + - push: add shorthand for --force-with-lease branch creation
391 + - Documentation/git-push: fix placeholder formatting
392 +
393 + "git push --force-with-lease" already had enough logic to allow
394 + ensuring that such a push results in creation of a ref (i.e. the
395 + receiving end did not have another push from sideways that would be
396 + discarded by our force-pushing), but didn't expose this possibility
397 + to the users. It does so now.
398 +
399 + Will merge to 'next'.
400 +
401 +
402 * ew/daemon-socket-keepalive (2016-07-22) 2 commits
403 (merged to 'next' on 2016-07-22 at d39c827)
404 + Windows: add missing definition of ENOTSOCK
@@ -585,18 +436,20 @@ of the repositories listed at
436 other updates to git-svn, in which case this needs to be scrapped.
437
438
588 -* rs/submodule-config-code-cleanup (2016-07-19) 1 commit
439 +* rs/submodule-config-code-cleanup (2016-07-26) 3 commits
440 + - submodule-config: combine error checking if clauses
441 + - fix passing a name for config from submodules
442 (merged to 'next' on 2016-07-19 at 59dbd58)
443 + submodule-config: use explicit empty string instead of strbuf in config_from()
444
445 Code cleanup.
446
594 - Will merge to 'master'.
447 + Will merge to 'next'.
448
449
597 -* js/am-3-merge-recursive-direct (2016-07-22) 16 commits
450 +* js/am-3-merge-recursive-direct (2016-07-26) 16 commits
451 - merge-recursive: flush output buffer even when erroring out
599 - - merge_trees(): ensure that the output buffer is released after calling merge_trees()
452 + - merge_trees(): ensure that the callers release output buffer
453 - merge-recursive: offer an option to retain the output in 'obuf'
454 - merge-recursive: write the commit title in one go
455 - merge-recursive: flush output buffer before printing error messages
@@ -610,13 +463,12 @@ of the repositories listed at
463 - merge-recursive: clarify code in was_tracked()
464 - die(_("BUG")): avoid translating bug messages
465 - die("bug"): report bugs consistently
613 - - t5520: verify that `git pull --rebase` shows the helpful advice when failing
466 + - t5520: verify that `pull --rebase` shows the helpful advice when failing
467
468 "git am -3" calls "git merge-recursive" when it needs to fall back
469 to a three-way merge; this call has been turned into an internal
470 subroutine call instead of spawning a separate subprocess.
471
619 - Rerolled.
472 Needs review.
473 I started re-reading them, but I do want eyes from other people.
474