What's cooking (2016/02 #04)

Junio C Hamano committed Feb 12, 2016 at 15:49 UTC 0c9f49f00764b28798b24233a67cf4490eb51697
1 file changed +272 -223
whats-cooking.txt
+272 -223
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Feb 2016, #03; Tue, 9)
4 -X-master-at: ff4ea6004fb48146330d663d64a71e7774f059f9
5 -X-next-at: ced85554d3d871f66dc4442631320a96a5d702f5
3 +Subject: What's cooking in git.git (Feb 2016, #04; Fri, 12)
4 +X-master-at: 494398473714dcbedb38b1ac79b531c7384b3bc4
5 +X-next-at: 6faf27b4ff26804a07363078b238b5cfd3dfa976
6
7 -What's cooking in git.git (Feb 2016, #03; Tue, 9)
7 +What's cooking in git.git (Feb 2016, #04; Fri, 12)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -20,80 +20,175 @@ repositories listed at
20 --------------------------------------------------
21 [New Topics]
22
23 -* jk/rerere-xsnprintf (2016-02-08) 1 commit
24 - (merged to 'next' on 2016-02-09 at ff9ade3)
25 - + rerere: replace strcpy with xsnprintf
26 - (this branch is used by jc/rerere-multi.)
23 +* ep/format-printf (2016-02-11) 22 commits
24 + - wt-status.h: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
25 + - utf8.h: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
26 + - transport-helper.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
27 + - trace.h: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
28 + - strbuf.h: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
29 + - remote.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
30 + - pkt-line.h: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
31 + - merge-recursive.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
32 + - imap-send.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
33 + - http-backend.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
34 + - fsck.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
35 + - daemon.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
36 + - config.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
37 + - color.h: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
38 + - cache.h: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
39 + - builtin/upload-archive.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
40 + - builtin/update-index.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
41 + - builtin/receive-pack.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
42 + - builtin/index-pack.c: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
43 + - argv-array.h: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
44 + - advice.h: use the FORMAT_PRINTF macro to declare the gcc function attribute 'format printf'
45 + - git-compat-util.h: add the FORMAT_PRINTF macro
46 +
47 + Undecided.
48 +
49 +
50 +* ew/force-ipv4 (2016-02-12) 1 commit
51 + - connect & http: support -4 and -6 switches for remote operations
52 +
53 + "git fetch" and friends that make network connections can now be
54 + told to only use ipv4 (or ipv6).
55 +
56 + Will merge to 'next'.
57 +
58 +
59 +* jk/lose-name-path (2016-02-12) 5 commits
60 + - list-objects: pass full pathname to callbacks
61 + - list-objects: drop name_path entirely
62 + - list-objects: convert name_path to a strbuf
63 + - show_object_with_name: simplify by using path_name()
64 + - http-push: stop using name_path
65 +
66 + The "name_path" API was an attempt to reduce the need to construct
67 + the full path out of a series of path components while walking a
68 + tree hierarchy, but over time made less efficient because the path
69 + needs to be flattened, e.g. to be compared with another path that
70 + is already flat. Remove the API and rewrite its users to simplify
71 + overall code complexity.
72 +
73 + Will merge to 'next'.
74
28 - Some calls to strcpy(3) triggers a false warning from static
29 - analysers that are less intelligent than humans, and reducing the
30 - number of these false hits helps us notice real issues. A few
31 - calls to strcpy(3) in "git rerere" that are already safe has been
32 - rewritten to avoid false wanings.
75 +--------------------------------------------------
76 +[Graduated to "master"]
77
34 - Will merge to 'master'.
78 +* aw/push-force-with-lease-reporting (2016-02-01) 1 commit
79 + (merged to 'next' on 2016-02-03 at facd28f)
80 + + push: fix ref status reporting for --force-with-lease
81
82 + "git push --force-with-lease" has been taught to report if the push
83 + needed to force (or fast-forwarded).
84
37 -* jk/test-path-utils-xsnprintf (2016-02-08) 1 commit
38 - (merged to 'next' on 2016-02-09 at 931f70b)
39 - + test-path-utils: use xsnprintf in favor of strcpy
85
41 - Some calls to strcpy(3) triggers a false warning from static
42 - analysers that are less intelligent than humans, and reducing the
43 - number of these false hits helps us notice real issues. A few
44 - calls to strcpy(3) in test-path-utils that are already safe has
45 - been rewritten to avoid false wanings.
86 +* cc/untracked (2016-01-27) 11 commits
87 + (merged to 'next' on 2016-02-01 at 8203631)
88 + + t7063: add tests for core.untrackedCache
89 + + test-dump-untracked-cache: don't modify the untracked cache
90 + + config: add core.untrackedCache
91 + + dir: simplify untracked cache "ident" field
92 + + dir: add remove_untracked_cache()
93 + + dir: add {new,add}_untracked_cache()
94 + + update-index: move 'uc' var declaration
95 + + update-index: add untracked cache notifications
96 + + update-index: add --test-untracked-cache
97 + + update-index: use enum for untracked cache options
98 + + dir: free untracked cache when removing it
99
47 - Will merge to 'master'.
100 + Update the untracked cache subsystem and change its primary UI from
101 + "git update-index" to "git config".
102
103
50 -* mm/clean-doc-fix (2016-02-09) 1 commit
51 - (merged to 'next' on 2016-02-09 at ced8555)
52 - + Documentation/git-clean.txt: don't mention deletion of .git/modules/*
104 +* ew/connect-verbose (2016-01-28) 1 commit
105 + (merged to 'next' on 2016-02-03 at ceac37e)
106 + + pass transport verbosity down to git_connect
107
54 - The documentation for "git clean" has been corrected; it mentioned
55 - that .git/modules/* are removed by giving two "-f", which has never
56 - been the case.
108 + There were a few "now I am doing this thing" progress messages in
109 + the TCP connection code that can be triggered by setting a verbose
110 + option internally in the code, but "git fetch -v" and friends never
111 + passed the verbose option down to that codepath.
112
58 - Will merge to 'master'.
113 + There was a brief discussion about the impact on the end-user
114 + experience by not limiting this to "fetch -v -v", but I think the
115 + conclusion is that this is OK to enable with a single "-v" as it is
116 + not too noisy.
117
118
61 -* mg/mingw-test-fix (2016-02-08) 1 commit
62 - - t9100: fix breakage when SHELL_PATH is not /bin/sh
63 - (this branch uses js/mingw-tests.)
119 +* jk/options-cleanup (2016-02-01) 6 commits
120 + (merged to 'next' on 2016-02-03 at a78d89d)
121 + + apply, ls-files: simplify "-z" parsing
122 + + checkout-index: disallow "--no-stage" option
123 + + checkout-index: handle "--no-index" option
124 + + checkout-index: handle "--no-prefix" option
125 + + checkout-index: simplify "-z" option parsing
126 + + give "nbuf" strbuf a more meaningful name
127
65 - An earlier adjustment of test mistakenly used write_script
66 - to prepare a file whose exact content matters for the test;
67 - reverting that part fixes the breakage for those who use
68 - SHELL_PATH that is different from /bin/sh.
128 + Various clean-ups to the command line option parsing.
129
130
71 -* nd/icase (2016-02-09) 11 commits
72 - - diffcore-pickaxe: support case insensitive match on non-ascii
73 - - diffcore-pickaxe: "share" regex error handling code
74 - - grep/pcre: support utf-8
75 - - gettext: add is_utf8_locale()
76 - - grep/pcre: prepare locale-dependent tables for icase matching
77 - - grep/icase: avoid kwsset when -F is specified
78 - - grep/icase: avoid kwsset on literal non-ascii strings
79 - - test-regex: expose full regcomp() to the command line
80 - - test-regex: isolate the bug test code
81 - - grep: break down an "if" stmt in preparation for next changes
82 - - grep: allow -F -i combination
131 +* js/test-lib-windows-emulated-yes (2016-02-02) 1 commit
132 + (merged to 'next' on 2016-02-03 at bf6b42c)
133 + + test-lib: limit the output of the yes utility
134 +
135 + The emulated "yes" command used in our test scripts has been
136 + tweaked not to spend too much time generating unnecessary output
137 + that is not used, to help those who test on Windows where it would
138 + not stop until it fills the pipe buffer due to lack of SIGPIPE.
139
84 - "git grep -i" has been taught to fold case in non-ascii locales.
140
141 +* js/xmerge-marker-eol (2016-01-27) 2 commits
142 + (merged to 'next' on 2016-02-01 at 05d91a4)
143 + + merge-file: ensure that conflict sections match eol style
144 + + merge-file: let conflict markers match end-of-line style of the context
145 +
146 + The low-level merge machinery has been taught to use CRLF line
147 + termination when inserting conflict markers to merged contents that
148 + are themselves CRLF line-terminated.
149
87 -* tb/conversion (2016-02-08) 7 commits
88 - - convert.c: simplify text_stat
89 - - convert.c: refactor crlf_action
90 - - convert: auto_crlf=false and no attributes set: same as binary
91 - - convert.c: use text_eol_is_crlf()
92 - - convert.c: remove input_crlf_action()
93 - - convert.c: remove unused parameter 'path'
94 - - t0027: add tests for get_stream_filter()
150
96 - Simplication of eol conversion codepath.
151 +* ls/clean-smudge-override-in-config (2016-01-29) 1 commit
152 + (merged to 'next' on 2016-02-03 at 5962354)
153 + + convert: treat an empty string for clean/smudge filters as "cat"
154 +
155 + Clean/smudge filters defined in a configuration file of lower
156 + precedence can now be overridden to be a pass-through no-op by
157 + setting the variable to an empty string.
158 +
159 +
160 +* nd/do-not-move-worktree-manually (2016-01-22) 2 commits
161 + (merged to 'next' on 2016-01-26 at c539221)
162 + + worktree: stop supporting moving worktrees manually
163 + + worktree.c: fix indentation
164 +
165 + "git worktree" had a broken code that attempted to auto-fix
166 + possible inconsistency that results from end-users moving a
167 + worktree to different places without telling Git (the original
168 + repository needs to maintain backpointers to its worktrees, but
169 + "mv" run by end-users who are not familiar with that fact will
170 + obviously not adjust them), which actually made things worse
171 + when triggered.
172 +
173 +
174 +* sb/submodule-init (2016-01-28) 2 commits
175 + - submodule: port init from shell to C
176 + - submodule: port resolve_relative_url from shell to C
177 + (this branch uses sb/submodule-parallel-update; is tangled with dt/refs-backend-lmdb.)
178 +
179 + Major part of "git submodule init" has been ported to C.
180 +
181 + Will have to wait for 'sb/submodule-parallel-update'.
182 +
183 +
184 +* wp/sha1-name-negative-match (2016-02-01) 2 commits
185 + (merged to 'next' on 2016-02-03 at 89fa5ef)
186 + + object name: introduce '^{/!-<negative pattern>}' notation
187 + + test for '!' handling in rev-parse's named commits
188 +
189 + A new "<branch>^{/!-<pattern>}" notation can be used to name a
190 + commit that is reachable from <branch> that does not match the
191 + given <pattern>.
192
193 --------------------------------------------------
194 [Stalled]
@@ -115,6 +210,29 @@ repositories listed at
210 ($gmane/284426)
211
212
213 +* js/am-3-merge-recursive-direct (2015-10-12) 2 commits
214 + - am: make a direct call to merge_recursive
215 + - merge_recursive_options: introduce the "gently" flag
216 +
217 + The merge_recursive_generic() function has been made a bit safer to
218 + call from inside a process. "git am -3" was taught to make a direct
219 + call to the function when falling back to three-way merge.
220 +
221 + Being able to make a direct call would be good in general, but as a
222 + performance thing, the change needs to be backed up by numbers.
223 +
224 + Needs review.
225 +
226 + I haven't gone through the "gently" change with fine toothed comb;
227 + I can see that the change avoids calling die(), but I haven't made
228 + sure that the program states (e.g. what's in the in-core index) are
229 + adjusted sensibly when it returns to the caller instead of dying,
230 + or the codepaths that used to die() are free of resource leaks.
231 + The original code certainly did not care the program states at the
232 + point of dying exactly because it knew it is going to exit, but now
233 + they have to care, and they need to be audited.
234 +
235 +
236 * dk/gc-more-wo-pack (2016-01-13) 4 commits
237 - gc: clean garbage .bitmap files from pack dir
238 - t5304: ensure non-garbage files are not deleted
@@ -157,67 +275,105 @@ repositories listed at
275 --------------------------------------------------
276 [Cooking]
277
160 -* da/user-useconfigonly (2016-02-08) 2 commits
161 - (merged to 'next' on 2016-02-09 at 8b303ce)
162 - + ident: add user.useConfigOnly boolean for when ident shouldn't be guessed
163 - + fmt_ident: refactor strictness checks
278 +* jk/rerere-xsnprintf (2016-02-08) 1 commit
279 + (merged to 'next' on 2016-02-09 at ff9ade3)
280 + + rerere: replace strcpy with xsnprintf
281 + (this branch is used by jc/rerere-multi.)
282
165 - The "user.useConfigOnly" configuration variable can be used to
166 - force the user to always set user.email & user.name configuration
167 - variables, serving as a reminder for those who work on multiple
168 - projects and do not want to put these in their $HOME/.gitconfig.
283 + Some calls to strcpy(3) triggers a false warning from static
284 + analysers that are less intelligent than humans, and reducing the
285 + number of these false hits helps us notice real issues. A few
286 + calls to strcpy(3) in "git rerere" that are already safe has been
287 + rewritten to avoid false wanings.
288
289 Will merge to 'master'.
290
291
173 -* aw/push-force-with-lease-reporting (2016-02-01) 1 commit
174 - (merged to 'next' on 2016-02-03 at facd28f)
175 - + push: fix ref status reporting for --force-with-lease
292 +* jk/test-path-utils-xsnprintf (2016-02-08) 1 commit
293 + (merged to 'next' on 2016-02-09 at 931f70b)
294 + + test-path-utils: use xsnprintf in favor of strcpy
295
177 - "git push --force-with-lease" has been taught to report if the push
178 - needed to force (or fast-forwarded).
296 + Some calls to strcpy(3) triggers a false warning from static
297 + analysers that are less intelligent than humans, and reducing the
298 + number of these false hits helps us notice real issues. A few
299 + calls to strcpy(3) in test-path-utils that are already safe has
300 + been rewritten to avoid false wanings.
301
302 Will merge to 'master'.
303
304
183 -* ew/connect-verbose (2016-01-28) 1 commit
184 - (merged to 'next' on 2016-02-03 at ceac37e)
185 - + pass transport verbosity down to git_connect
186 -
187 - There were a few "now I am doing this thing" progress messages in
188 - the TCP connection code that can be triggered by setting a verbose
189 - option internally in the code, but "git fetch -v" and friends never
190 - passed the verbose option down to that codepath.
305 +* mm/clean-doc-fix (2016-02-09) 1 commit
306 + (merged to 'next' on 2016-02-09 at ced8555)
307 + + Documentation/git-clean.txt: don't mention deletion of .git/modules/*
308
192 - There was a brief discussion about the impact on the end-user
193 - experience by not limiting this to "fetch -v -v", but I think the
194 - conclusion is that this is OK to enable with a single "-v" as it is
195 - not too noisy.
309 + The documentation for "git clean" has been corrected; it mentioned
310 + that .git/modules/* are removed by giving two "-f", which has never
311 + been the case.
312
313 Will merge to 'master'.
314
315
200 -* ls/clean-smudge-override-in-config (2016-01-29) 1 commit
201 - (merged to 'next' on 2016-02-03 at 5962354)
202 - + convert: treat an empty string for clean/smudge filters as "cat"
316 +* nd/icase (2016-02-09) 11 commits
317 + - diffcore-pickaxe: support case insensitive match on non-ascii
318 + - diffcore-pickaxe: "share" regex error handling code
319 + - grep/pcre: support utf-8
320 + - gettext: add is_utf8_locale()
321 + - grep/pcre: prepare locale-dependent tables for icase matching
322 + - grep/icase: avoid kwsset when -F is specified
323 + - grep/icase: avoid kwsset on literal non-ascii strings
324 + - test-regex: expose full regcomp() to the command line
325 + - test-regex: isolate the bug test code
326 + - grep: break down an "if" stmt in preparation for next changes
327 + - grep: allow -F -i combination
328
204 - Clean/smudge filters defined in a configuration file of lower
205 - precedence can now be overridden to be a pass-through no-op by
206 - setting the variable to an empty string.
329 + "git grep -i" has been taught to fold case in non-ascii locales.
330 +
331 + ($gmane/285666)
332 +
333 +
334 +* tb/conversion (2016-02-10) 6 commits
335 + (merged to 'next' on 2016-02-12 at 6faf27b)
336 + + convert.c: simplify text_stat
337 + + convert.c: refactor crlf_action
338 + + convert.c: use text_eol_is_crlf()
339 + + convert.c: remove input_crlf_action()
340 + + convert.c: remove unused parameter 'path'
341 + + t0027: add tests for get_stream_filter()
342 +
343 + Simplication of eol conversion codepath.
344 +
345 +
346 +* da/user-useconfigonly (2016-02-08) 2 commits
347 + (merged to 'next' on 2016-02-09 at 8b303ce)
348 + + ident: add user.useConfigOnly boolean for when ident shouldn't be guessed
349 + + fmt_ident: refactor strictness checks
350 +
351 + The "user.useConfigOnly" configuration variable can be used to
352 + force the user to always set user.email & user.name configuration
353 + variables, serving as a reminder for those who work on multiple
354 + projects and do not want to put these in their $HOME/.gitconfig.
355
356 Will merge to 'master'.
357
358
359 * ah/stripspace-optstring (2016-01-29) 1 commit
212 - - stripspace: call U+0020 a "space" instead of a "blank"
360 + (merged to 'next' on 2016-02-12 at cd021aa)
361 + + stripspace: call U+0020 a "space" instead of a "blank"
362 +
363 + Will merge to 'master'.
364
214 - Comments?
365
366 +* dw/mergetool-vim-window-shuffle (2016-02-12) 1 commit
367 + (merged to 'next' on 2016-02-12 at 2a2e8bd)
368 + + mergetool: reorder vim/gvim buffers in three-way diffs
369
217 -* dw/mergetool-vim-window-shuffle (2016-01-29) 1 commit
218 - - mergetool: reorder vim/gvim buffers in three-way diffs
370 + The vimdiff backend for "git mergetool" has been tweaked to arrange
371 + and number buffers in the order that would match the expectation of
372 + majority of people who read left to right, then top down and assign
373 + buffers 1 2 3 4 "mentally" to local base remote merge windows based
374 + on that order.
375
220 - Comments from real vim/gvim users?
376 + Will merge to 'master'.
377
378
379 * jk/drop-rsync-transport (2016-02-01) 1 commit
@@ -231,55 +387,30 @@ repositories listed at
387 Will merge to 'master'.
388
389
234 -* jk/options-cleanup (2016-02-01) 6 commits
235 - (merged to 'next' on 2016-02-03 at a78d89d)
236 - + apply, ls-files: simplify "-z" parsing
237 - + checkout-index: disallow "--no-stage" option
238 - + checkout-index: handle "--no-index" option
239 - + checkout-index: handle "--no-prefix" option
240 - + checkout-index: simplify "-z" option parsing
241 - + give "nbuf" strbuf a more meaningful name
242 -
243 - Various clean-ups to the command line option parsing.
244 -
245 - Will merge to 'master'.
246 -
247 -
390 * dv/http-try-negotiate-at-least-once (2016-02-02) 1 commit
391 - remote-curl: don't fall back to Basic auth if we haven't tried Negotiate
392
251 - Will be replaced with a solution with a different approach.
393 + Will be rerolled.
394 + A solution with a different approach may be a better one.
395 ($gmane/285633)
396
397
255 -* js/test-lib-windows-emulated-yes (2016-02-02) 1 commit
256 - (merged to 'next' on 2016-02-03 at bf6b42c)
257 - + test-lib: limit the output of the yes utility
258 -
259 - The emulated "yes" command used in our test scripts has been
260 - tweaked not to spend too much time generating unnecessary output
261 - that is not used, to help those who test on Windows where it would
262 - not stop until it fills the pipe buffer due to lack of SIGPIPE.
263 -
264 - Will merge to 'master'.
265 -
266 -
267 -* sb/submodule-parallel-update (2016-01-12) 8 commits
398 +* sb/submodule-parallel-update (2016-02-12) 7 commits
399 - clone: allow an explicit argument for parallel submodule clones
400 - submodule update: expose parallelism to the user
401 - git submodule update: have a dedicated helper for cloning
402 + - submodule update: direct error message to stderr
403 - fetching submodules: respect `submodule.fetchJobs` config option
272 - - submodule-config: introduce parse_generic_submodule_config
273 - - submodule-config: remove name_and_item_from_var
404 - submodule-config: drop check against NULL
405 - submodule-config: keep update strategy around
276 - (this branch is used by dt/refs-backend-lmdb and sb/submodule-init.)
406 + (this branch is used by dt/refs-backend-lmdb.)
407
278 - A reroll exists. Not picked up yet as it takes a while to flip
279 - three overlapping topics.
408 + A major part of "git submodule update" has been ported to C to take
409 + advantage of the recently added framework to run download tasks in
410 + parallel.
411
412
282 -* dt/refs-backend-lmdb (2016-02-08) 22 commits
413 +* dt/refs-backend-lmdb (2016-02-12) 22 commits
414 - refs: tests for lmdb backend
415 - refs: add LMDB refs storage backend
416 - refs: add register_ref_storage_backends()
@@ -301,16 +432,14 @@ repositories listed at
432 - refs: add methods for the ref iterators
433 - refs: add methods for misc ref operations
434 - refs: add a backend method structure with transaction functions
304 - - Merge branch 'sb/submodule-parallel-update' into dt/refs-backend-lmdb
305 - (this branch uses sb/submodule-parallel-update; is tangled with sb/submodule-init.)
435 + - Merge branch 'sb/submodule-parallel-update' into dt/refs/backend-lmdb
436 + (this branch uses sb/submodule-parallel-update.)
437
438 Building on top of a few refs-backend preparatory series, LMDB
439 based refs backend has been plugged into the system.
440
310 - This can now be reviewed and polished as it no longer depends on
311 - too many topics in flight. I haven't picked the latest one posted
312 - apart to queue it as a topic properly, as the patches sent to the
313 - list were done on top of some version of 'pu'.
441 + Will be rerolled.
442 + ($gmane/285604)
443
444
445 * js/mingw-tests (2016-02-08) 21 commits
@@ -346,14 +475,15 @@ repositories listed at
475 Will merge to 'master'.
476
477
349 -* js/xmerge-marker-eol (2016-01-27) 2 commits
350 - (merged to 'next' on 2016-02-01 at 05d91a4)
351 - + merge-file: ensure that conflict sections match eol style
352 - + merge-file: let conflict markers match end-of-line style of the context
478 +* mg/mingw-test-fix (2016-02-08) 1 commit
479 + (merged to 'next' on 2016-02-12 at df77956)
480 + + t9100: fix breakage when SHELL_PATH is not /bin/sh
481 + (this branch uses js/mingw-tests.)
482
354 - The low-level merge machinery has been taught to use CRLF line
355 - termination when inserting conflict markers to merged contents that
356 - are themselves CRLF line-terminated.
483 + An earlier adjustment of test mistakenly used write_script
484 + to prepare a file whose exact content matters for the test;
485 + reverting that part fixes the breakage for those who use
486 + SHELL_PATH that is different from /bin/sh.
487
488 Will merge to 'master'.
489
@@ -371,64 +501,6 @@ repositories listed at
501 Will merge to 'master'.
502
503
374 -* nd/do-not-move-worktree-manually (2016-01-22) 2 commits
375 - (merged to 'next' on 2016-01-26 at c539221)
376 - + worktree: stop supporting moving worktrees manually
377 - + worktree.c: fix indentation
378 -
379 - "git worktree" had a broken code that attempted to auto-fix
380 - possible inconsistency that results from end-users moving a
381 - worktree to different places without telling Git (the original
382 - repository needs to maintain backpointers to its worktrees, but
383 - "mv" run by end-users who are not familiar with that fact will
384 - obviously not adjust them), which actually made things worse
385 - when triggered.
386 -
387 - Will merge to 'master'.
388 -
389 -
390 -* sb/submodule-init (2016-01-28) 2 commits
391 - - submodule: port init from shell to C
392 - - submodule: port resolve_relative_url from shell to C
393 - (this branch uses sb/submodule-parallel-update; is tangled with dt/refs-backend-lmdb.)
394 -
395 - Major part of "git submodule init" has been ported to C.
396 -
397 - Will have to wait for 'sb/submodule-parallel-update'.
398 -
399 -
400 -* wp/sha1-name-negative-match (2016-02-01) 2 commits
401 - (merged to 'next' on 2016-02-03 at 89fa5ef)
402 - + object name: introduce '^{/!-<negative pattern>}' notation
403 - + test for '!' handling in rev-parse's named commits
404 -
405 - A new "<branch>^{/!-<pattern>}" notation can be used to name a
406 - commit that is reachable from <branch> that does not match the
407 - given <pattern>.
408 -
409 - Will merge to 'master'.
410 -
411 -
412 -* cc/untracked (2016-01-27) 11 commits
413 - (merged to 'next' on 2016-02-01 at 8203631)
414 - + t7063: add tests for core.untrackedCache
415 - + test-dump-untracked-cache: don't modify the untracked cache
416 - + config: add core.untrackedCache
417 - + dir: simplify untracked cache "ident" field
418 - + dir: add remove_untracked_cache()
419 - + dir: add {new,add}_untracked_cache()
420 - + update-index: move 'uc' var declaration
421 - + update-index: add untracked cache notifications
422 - + update-index: add --test-untracked-cache
423 - + update-index: use enum for untracked cache options
424 - + dir: free untracked cache when removing it
425 -
426 - Update the untracked cache subsystem and change its primary UI from
427 - "git update-index" to "git config".
428 -
429 - Will merge to 'master'.
430 -
431 -
504 * kn/ref-filter-atom-parsing (2016-02-02) 12 commits
505 - ref-filter: introduce objectname_atom_parser()
506 - ref-filter: introduce contents_atom_parser()
@@ -449,29 +521,6 @@ repositories listed at
521 ($gmane/285158)
522
523
452 -* js/am-3-merge-recursive-direct (2015-10-12) 2 commits
453 - - am: make a direct call to merge_recursive
454 - - merge_recursive_options: introduce the "gently" flag
455 -
456 - The merge_recursive_generic() function has been made a bit safer to
457 - call from inside a process. "git am -3" was taught to make a direct
458 - call to the function when falling back to three-way merge.
459 -
460 - Being able to make a direct call would be good in general, but as a
461 - performance thing, the change needs to be backed up by numbers.
462 -
463 - Needs review.
464 -
465 - I haven't gone through the "gently" change with fine toothed comb;
466 - I can see that the change avoids calling die(), but I haven't made
467 - sure that the program states (e.g. what's in the in-core index) are
468 - adjusted sensibly when it returns to the caller instead of dying,
469 - or the codepaths that used to die() are free of resource leaks.
470 - The original code certainly did not care the program states at the
471 - point of dying exactly because it knew it is going to exit, but now
472 - they have to care, and they need to be audited.
473 -
474 -
524 * ad/cygwin-wants-rename (2015-08-07) 1 commit
525 - config.mak.uname: Cygwin needs OBJECT_CREATION_USES_RENAMES
526