What's cooking (2015/05 #03)

Junio C Hamano committed May 8, 2015 at 15:25 UTC f2b20052823cc5f6d8af02bdb446fc6b1035fa6f
1 file changed +132 -250
whats-cooking.txt
+132 -250
@@ -1,241 +1,79 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (May 2015, #02; Wed, 6)
3 +Subject: What's cooking in git.git (May 2015, #03; Fri, 8)
4 X-master-at: 8440f74997cf7958c7e8ec853f590828085049b8
5 -X-next-at: 8e1974edaeee9161b10b8f31a7a86892259e9768
5 +X-next-at: 38e70713119c25ab5699df6b2fb13e4133d399ab
6
7 -What's cooking in git.git (May 2015, #02; Wed, 6)
7 +What's cooking in git.git (May 2015, #03; Fri, 8)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
11 '-' are only in 'pu' (proposed updates) while commits prefixed with
12 '+' are in 'next'.
13
14 -The first batch for the next feature release (tentatively called 2.5)
15 -has been merged to 'master'. They mostly are fixes that are meant
16 -for the first maintenance release for 2.4.x track. The tip of 'next'
17 -has been rewound and rebuilt.
18 -
14 You can find the changes described here in the integration branches
15 of the repositories listed at
16
17 http://git-blame.blogspot.com/p/git-public-repositories.html
18
19 --------------------------------------------------
25 -[Graduated to "master"]
26 -
27 -* bc/object-id (2015-03-13) 10 commits
28 - (merged to 'next' on 2015-05-05 at 975002f)
29 - + apply: convert threeway_stage to object_id
30 - + patch-id: convert to use struct object_id
31 - + commit: convert parts to struct object_id
32 - + diff: convert struct combine_diff_path to object_id
33 - + bulk-checkin.c: convert to use struct object_id
34 - + zip: use GIT_SHA1_HEXSZ for trailers
35 - + archive.c: convert to use struct object_id
36 - + bisect.c: convert leaf functions to use struct object_id
37 - + define utility functions for object IDs
38 - + define a structure for object IDs
39 -
40 - Originally merged to 'next' on 2015-03-24
41 -
42 - Identify parts of the code that knows that we use SHA-1 hash to
43 - name our objects too much, and use (1) symbolic constants instead
44 - of hardcoded 20 as byte count and/or (2) use struct object_id
45 - instead of unsigned char [20] for object names.
46 -
47 -
48 -* cn/bom-in-gitignore (2015-04-16) 5 commits
49 - (merged to 'next' on 2015-05-05 at 8aa8b91)
50 - + attr: skip UTF8 BOM at the beginning of the input file
51 - + config: use utf8_bom[] from utf.[ch] in git_parse_source()
52 - + utf8-bom: introduce skip_utf8_bom() helper
53 - + add_excludes_from_file: clarify the bom skipping logic
54 - + dir: allow a BOM at the beginning of exclude files
55 -
56 - Originally merged to 'next' on 2015-04-21
57 -
58 - Teach the codepaths that read .gitignore and .gitattributes files
59 - that these files encoded in UTF-8 may have UTF-8 BOM marker at the
60 - beginning; this makes it in line with what we do for configuration
61 - files already.
62 -
63 -
64 -* ep/fix-test-lib-functions-report (2015-04-16) 1 commit
65 - (merged to 'next' on 2015-05-05 at e49e876)
66 - + test-lib-functions.sh: fix the second argument to some helper functions
67 -
68 - Originally merged to 'next' on 2015-04-21
69 -
70 -
71 -* jc/diff-no-index-d-f (2015-03-26) 2 commits
72 - (merged to 'next' on 2015-05-05 at 61538ca)
73 - + diff-no-index: align D/F handling with that of normal Git
74 - + diff-no-index: DWIM "diff D F" into "diff D/F F"
75 -
76 - Originally merged to 'next' on 2015-03-27
77 -
78 - The usual "git diff" when seeing a file turning into a directory
79 - showed a patchset to remove the file and create all files in the
80 - directory, but "git diff --no-index" simply refused to work. Also,
81 - when asked to compare a file and a directory, imitate POSIX "diff"
82 - and compare the file with the file with the same name in the
83 - directory, instead of refusing to run.
84 -
85 -
86 -* jc/epochtime-wo-tz (2015-04-15) 2 commits
87 - (merged to 'next' on 2015-05-05 at 3d10988)
88 - + parse_date_basic(): let the system handle DST conversion
89 - + parse_date_basic(): return early when given a bogus timestamp
90 -
91 - Originally merged to 'next' on 2015-04-21
92 -
93 - "git commit --date=now" or anything that relies on approxidate lost
94 - the daylight-saving-time offset.
95 -
96 -
97 -* jk/init-core-worktree-at-root (2015-04-02) 1 commit
98 - (merged to 'next' on 2015-05-05 at 65c7453)
99 - + init: don't set core.worktree when initializing /.git
100 -
101 - Originally merged to 'next' on 2015-04-08
102 -
103 - We avoid setting core.worktree when the repository location is the
104 - ".git" directory directly at the top level of the working tree, but
105 - the code misdetected the case in which the working tree is at the
106 - root level of the filesystem (which arguably is a silly thing to
107 - do, but still valid).
108 -
109 -
110 -* jk/prune-mtime (2015-04-20) 3 commits
111 - (merged to 'next' on 2015-05-05 at 6c0a311)
112 - + sha1_file: only freshen packs once per run
113 - + sha1_file: freshen pack objects before loose
114 - + reachable: only mark local objects as recent
115 -
116 - Originally merged to 'next' on 2015-04-21
117 -
118 - Access to objects in repositories that borrow from another one on a
119 - slow NFS server unnecessarily got more expensive due to recent code
120 - becoming more cautious in a naive way not to lose objects to pruning.
121 -
122 -
123 -* jk/type-from-string-gently (2015-04-17) 1 commit
124 - (merged to 'next' on 2015-05-05 at 73b5c2a)
125 - + type_from_string_gently: make sure length matches
126 -
127 - Originally merged to 'next' on 2015-04-20
128 -
129 - "git cat-file bl $blob" failed to barf even though there is no
130 - object type that is "bl".
131 -
132 -
133 -* ld/p4-filetype-detection (2015-04-04) 3 commits
134 - (merged to 'next' on 2015-05-05 at ce95858)
135 - + git-p4: fix filetype detection on files opened exclusively
136 - + git-p4: small fix for locked-file-move-test
137 - + git-p4: fix small bug in locked test scripts
138 -
139 - Originally merged to 'next' on 2015-04-08
140 -
141 -
142 -* mh/show-branch-topic (2015-03-31) 1 commit
143 - (merged to 'next' on 2015-05-05 at 43c6237)
144 - + show-branch: show all local heads when only giving one rev along --topics
145 -
146 - Originally merged to 'next' on 2015-04-08
147 -
148 - "git show-branch --topics HEAD" (with no other arguments) did not
149 - do anything interesting. Instead, contrast the given revision
150 - against all the local branches by default.
151 -
152 -
153 -* mm/usage-log-l-can-take-regex (2015-04-20) 2 commits
154 - (merged to 'next' on 2015-05-05 at dbe590c)
155 - + log -L: improve error message on malformed argument
156 - + Documentation: change -L:<regex> to -L:<funcname>
157 -
158 - Originally merged to 'next' on 2015-04-21
159 -
160 - Documentation fix.
161 -
162 -
163 -* nd/t1509-chroot-test (2015-04-18) 1 commit
164 - (merged to 'next' on 2015-05-05 at e93f60e)
165 - + t1509: update prepare script to be able to run t1509 in chroot again
166 -
167 - Originally merged to 'next' on 2015-04-21
168 -
169 - Correct test bitrot.
170 -
171 -
172 -* oh/fix-config-default-user-name-section (2015-04-17) 1 commit
173 - (merged to 'next' on 2015-05-05 at b4778c2)
174 - + config: fix settings in default_user_config template
175 -
176 - Originally merged to 'next' on 2015-04-20
177 -
178 - The default $HOME/.gitconfig file created upon "git config --global"
179 - that edits it had incorrectly spelled user.name and user.email
180 - entries in it.
20 +[New Topics]
21
22 +* dl/branch-error-message (2015-05-06) 1 commit
23 + - branch: do not call a "remote-tracking branch" a "remote branch"
24
183 -* sb/line-log-plug-pairdiff-leak (2015-03-30) 1 commit
184 - (merged to 'next' on 2015-05-05 at 3d8e735)
185 - + line-log.c: fix a memleak
25 + Will merge to 'next'.
26
187 - Originally merged to 'next' on 2015-04-08
27
28 +* dl/subtree-push-no-squash (2015-05-07) 1 commit
29 + - contrib/subtree: there's no push --squash
30
190 -* sb/test-bitmap-free-at-end (2015-04-12) 1 commit
191 - (merged to 'next' on 2015-05-05 at 2b83c75)
192 - + pack-bitmap.c: fix a memleak
31 + Will merge to 'next'.
32
194 - Originally merged to 'next' on 2015-04-14
33
34 +* ld/p4-editor-multi-words (2015-05-07) 2 commits
35 + - git-p4: fix handling of multi-word P4EDITOR
36 + - git-p4: add failing test for P4EDITOR handling
37
197 -* ts/checkout-advice-plural (2015-04-02) 1 commit
198 - (merged to 'next' on 2015-05-05 at 546f824)
199 - + checkout: call a single commit "it" intead of "them"
38 + Unlike "$EDITOR" and "$GIT_EDITOR" that can hold the path to the
39 + command and initial options (e.g. "/path/to/emacs -nw"), 'git p4'
40 + did not let the shell interpolate the contents of the environment
41 + variable that name the editor "$P4EDITOR" (and "$EDITOR", too).
42 + Make it in line with the rest of Git, as well as with Perforce.
43
201 - Originally merged to 'next' on 2015-04-08
44 + Reported to break some tests that assume the non-interpolating
45 + behaviour that need to be fixed.
46
203 ---------------------------------------------------
204 -[New Topics]
47
206 -* jc/daemon-no-ipv6-for-2.4.1 (2015-05-05) 1 commit
207 - (merged to 'next' on 2015-05-05 at 1eb279f)
208 - + daemon: unbreak NO_IPV6 build regression
48 +* dl/subtree-avoid-tricky-echo (2015-05-08) 1 commit
49 + - contrib/subtree: portability fix for string printing
50
210 - "git daemon" fails to build from the source under NO_IPV6
211 - configuration (regression in 2.4).
51 + "git subtree" script (in contrib/) used "echo -n" to produce
52 + progress messages in a non-portable way.
53
213 - Will merge to 'master' in the second batch.
54 + Will merge to 'next'.
55
56
216 -* sb/prefix-path-free-results (2015-05-05) 1 commit
217 - - prefix_path(): unconditionally free results in the callers
57 +* ls/http-ssl-cipher-list (2015-05-08) 1 commit
58 + - http: add support for specifying an SSL cipher list
59
219 - Code clean-up (not a leak-fix).
60 + Introduce http.<url>.SSLCipherList configuration variable to tweak
61 + the list of cipher suite to be used with libcURL when talking with
62 + https:// sites.
63
64 Will merge to 'next'.
65
66
224 -* sg/completion-omit-credential-helpers (2015-05-05) 2 commits
225 - - SQUASH???
226 - - completion: remove credential helpers from porcelain commands
67 +* ps/bundle-verify-arg (2015-05-08) 1 commit
68 + - bundle: verify arguments more strictly
69
228 - The Git subcommand completion (in contrib/) listed credential
229 - helpers among candidates, which is not something the end user would
230 - invoke interatively.
231 -
232 - Will merge to 'next' after squashing the fix in.
70 + Will merge to 'next'.
71
72
235 -* jk/skip-http-tests-under-no-curl (2015-05-06) 1 commit
236 - - t/lib-httpd.sh: skip tests if NO_CURL is defined
73 +* sg/help-subcommands (2015-05-08) 1 commit
74 + - command-list.txt: fix whitespace inconsistency
75
238 - Test clean-up.
76 + A preparatory clean-up step.
77
78 Will merge to 'next'.
79
@@ -483,6 +321,44 @@ of the repositories listed at
321 --------------------------------------------------
322 [Cooking]
323
324 +* jc/daemon-no-ipv6-for-2.4.1 (2015-05-05) 1 commit
325 + (merged to 'next' on 2015-05-05 at 1eb279f)
326 + + daemon: unbreak NO_IPV6 build regression
327 +
328 + "git daemon" fails to build from the source under NO_IPV6
329 + configuration (regression in 2.4).
330 +
331 + Will merge to 'master' in the second batch.
332 +
333 +
334 +* sb/prefix-path-free-results (2015-05-05) 1 commit
335 + (merged to 'next' on 2015-05-07 at 64f15a8)
336 + + prefix_path(): unconditionally free results in the callers
337 +
338 + Code clean-up (not a leak-fix).
339 +
340 + Will merge to 'master' in the second batch.
341 +
342 +
343 +* sg/completion-omit-credential-helpers (2015-05-06) 1 commit
344 + - completion: remove credential helpers from porcelain commands
345 +
346 + The Git subcommand completion (in contrib/) listed credential
347 + helpers among candidates, which is not something the end user would
348 + invoke interatively.
349 +
350 + Will merge to 'next'.
351 +
352 +
353 +* jk/skip-http-tests-under-no-curl (2015-05-07) 2 commits
354 + - tests: skip dav http-push tests under NO_EXPAT=NoThanks
355 + - t/lib-httpd.sh: skip tests if NO_CURL is defined
356 +
357 + Test clean-up.
358 +
359 + Will merge to 'next'.
360 +
361 +
362 * mh/ref-directory-file (2015-05-05) 19 commits
363 - SQUASH???
364 - reflog_expire(): integrate lock_ref_sha1_basic() errors into ours
@@ -509,7 +385,8 @@ of the repositories listed at
385
386
387 * nd/dwim-wildcards-as-pathspecs (2015-05-03) 1 commit
512 - - pathspec: avoid the need of "--" when wildcard is used
388 + (merged to 'next' on 2015-05-07 at 8176de7)
389 + + pathspec: avoid the need of "--" when wildcard is used
390
391 A heuristic to help the "git <cmd> <revs> <pathspec>" command line
392 convention to catch mistyped paths is to make sure all the non-rev
@@ -520,7 +397,7 @@ of the repositories listed at
397 heuristic to declare that with a wildcard string the user likely
398 meant to give us a pathspec.
399
523 - Will merge to 'next'.
400 + Will merge to 'master' in the third batch.
401
402
403 * pt/pull-tests (2015-05-03) 7 commits
@@ -539,31 +416,34 @@ of the repositories listed at
416
417
418 * sg/complete-decorate-full-not-long (2015-05-03) 1 commit
542 - - completion: fix and update 'git log --decorate=' options
419 + (merged to 'next' on 2015-05-07 at 2beb429)
420 + + completion: fix and update 'git log --decorate=' options
421
422 The completion for "log --decorate=" parameter value was incorrect.
423
546 - Will merge to 'next'.
424 + Will merge to 'master' in the second batch.
425
426
427 * sg/completion-no-redundant-all-command-list (2015-05-03) 1 commit
550 - - completion: remove redundant __git_compute_all_commands() call
428 + (merged to 'next' on 2015-05-07 at 00b4bd9)
429 + + completion: remove redundant __git_compute_all_commands() call
430
431 Code simplification.
432
554 - Will merge to 'next'.
433 + Will merge to 'master' in the second batch.
434
435
436 * jc/hash-object (2015-05-05) 4 commits
558 - - write_sha1_file(): do not use a separate sha1[] array
559 - - t1007: add hash-object --literally tests
560 - - hash-object --literally: fix buffer overrun with extra-long object type
561 - - git-hash-object.txt: document --literally option
437 + (merged to 'next' on 2015-05-07 at 9b81a06)
438 + + write_sha1_file(): do not use a separate sha1[] array
439 + + t1007: add hash-object --literally tests
440 + + hash-object --literally: fix buffer overrun with extra-long object type
441 + + git-hash-object.txt: document --literally option
442
563 - "hash-object --literally" introduced in v2.2 days was not prepared
564 - to take a really long object type name.
443 + "hash-object --literally" introduced in v2.2 was not prepared to
444 + take a really long object type name.
445
566 - Will merge to 'next'.
446 + Will merge to 'master' in the second batch.
447
448
449 * jn/clean-use-error-not-fprintf-on-stderr (2015-05-04) 1 commit
@@ -628,31 +508,34 @@ of the repositories listed at
508
509
510 * jk/filter-branch-use-of-sed-on-incomplete-line (2015-04-29) 1 commit
631 - - filter-branch: avoid passing commit message through sed
511 + (merged to 'next' on 2015-05-07 at 849a24d)
512 + + filter-branch: avoid passing commit message through sed
513
633 - "filter-branch" was broken by some "sed" implementations that
634 - corrupt commit log message that ends with an incomplete line.
635 - Work it around by avoiding to use "sed".
514 + "filter-branch" corrupted commit log message that ends with an
515 + incomplete line on platforms with some "sed" implementations that
516 + munge such a line. Work it around by avoiding to use "sed".
517
637 - Will merge to 'next'.
518 + Will merge to 'master' in the second batch.
519
520
521 * ph/rebase-i-redo (2015-04-29) 1 commit
641 - - rebase -i: redo tasks that die during cherry-pick
522 + (merged to 'next' on 2015-05-07 at 8fc1f52)
523 + + rebase -i: redo tasks that die during cherry-pick
524
525 "git rebase -i" moved the "current" command from "todo" to "done" a
526 bit too prematurely, losing a step when a "pick" did not even start.
527
646 - Will merge to 'next'.
528 + Will merge to 'master' in the third batch.
529
530
531 * ep/do-not-feed-a-pointer-to-array-size (2015-05-05) 1 commit
650 - - git-compat-util.h: implement a different ARRAY_SIZE macro for for safely deriving the size of array
532 + (merged to 'next' on 2015-05-07 at 64d9a20)
533 + + git-compat-util.h: implement a different ARRAY_SIZE macro for for safely deriving the size of array
534
652 - Catch programmer mistake to feed a pointer not an array to
535 + Catch a programmer mistake to feed a pointer not an array to
536 ARRAY_SIZE() macro, by using a couple of GCC extensions.
537
655 - Will merge to 'next'.
538 + Will merge to 'master' in the second batch.
539
540
541 * tb/blame-resurrect-convert-to-git (2015-05-03) 1 commit
@@ -799,21 +682,22 @@ of the repositories listed at
682
683
684 * jc/merge (2015-04-29) 15 commits
802 - - merge: deprecate 'git merge <message> HEAD <commit>' syntax
803 - - merge: handle FETCH_HEAD internally
804 - - merge: decide if we auto-generate the message early in collect_parents()
805 - - merge: make collect_parents() auto-generate the merge message
806 - - merge: extract prepare_merge_message() logic out
807 - - merge: narrow scope of merge_names
808 - - merge: split reduce_parents() out of collect_parents()
809 - - merge: clarify collect_parents() logic
810 - - merge: small leakfix and code simplification
811 - - merge: do not check argc to determine number of remote heads
812 - - merge: clarify "pulling into void" special case
813 - - t5520: test pulling an octopus into an unborn branch
814 - - t5520: style fixes
815 - - merge: simplify code flow
816 - - merge: test the top-level merge driver
685 + (merged to 'next' on 2015-05-07 at 1c56512)
686 + + merge: deprecate 'git merge <message> HEAD <commit>' syntax
687 + + merge: handle FETCH_HEAD internally
688 + + merge: decide if we auto-generate the message early in collect_parents()
689 + + merge: make collect_parents() auto-generate the merge message
690 + + merge: extract prepare_merge_message() logic out
691 + + merge: narrow scope of merge_names
692 + + merge: split reduce_parents() out of collect_parents()
693 + + merge: clarify collect_parents() logic
694 + + merge: small leakfix and code simplification
695 + + merge: do not check argc to determine number of remote heads
696 + + merge: clarify "pulling into void" special case
697 + + t5520: test pulling an octopus into an unborn branch
698 + + t5520: style fixes
699 + + merge: simplify code flow
700 + + merge: test the top-level merge driver
701 (this branch is used by jc/merge-drop-old-syntax.)
702
703 "git merge FETCH_HEAD" learned that the previous "git fetch" could
@@ -823,7 +707,7 @@ of the repositories listed at
707 implementation of "git pull" script; the old style syntax can now
708 be deprecated.
709
826 - Will merge to 'next'.
710 + Will merge to 'master' in the third batch.
711
712
713 * jc/merge-drop-old-syntax (2015-04-29) 1 commit
@@ -931,8 +815,7 @@ of the repositories listed at
815 Will merge to 'master' in the second batch.
816
817
934 -* kn/cat-file-literally (2015-05-04) 5 commits
935 - - fixup! sha1_file: support reading from a loose object of unknown type
818 +* kn/cat-file-literally (2015-05-06) 4 commits
819 - t1006: add tests for git cat-file --allow-unknown-type
820 - cat-file: teach cat-file a '--allow-unknown-type' option
821 - cat-file: make the options mutually exclusive
@@ -941,9 +824,7 @@ of the repositories listed at
824 Add the "--allow-unknown-type" option to "cat-file" to allow
825 inspecting loose objects of an experimental or a broken type.
826
944 - This is v10 $gmane/267960; I think with fixup! squashed in the
945 - series is in a good shape (the test may fail without Eric's fix
946 - to "hash-object --literally" elsewhere, though).
827 + This is v10 $gmane/267960 with fixup! squashed in.
828
829
830 * lm/squelch-bg-progress (2015-04-15) 2 commits
@@ -998,18 +879,19 @@ of the repositories listed at
879
880
881 * pt/xdg-config-path (2015-05-06) 7 commits
1001 - - path.c: remove home_config_paths()
1002 - - git-config: replace use of home_config_paths()
1003 - - git-commit: replace use of home_config_paths()
1004 - - credential-store.c: replace home_config_paths() with xdg_config_home()
1005 - - dir.c: replace home_config_paths() with xdg_config_home()
1006 - - attr.c: replace home_config_paths() with xdg_config_home()
1007 - - path.c: implement xdg_config_home()
882 + (merged to 'next' on 2015-05-07 at 38e7071)
883 + + path.c: remove home_config_paths()
884 + + git-config: replace use of home_config_paths()
885 + + git-commit: replace use of home_config_paths()
886 + + credential-store.c: replace home_config_paths() with xdg_config_home()
887 + + dir.c: replace home_config_paths() with xdg_config_home()
888 + + attr.c: replace home_config_paths() with xdg_config_home()
889 + + path.c: implement xdg_config_home()
890 (this branch uses pt/credential-xdg.)
891
892 Code clean-up for xdg configuration path support.
893
1012 - Will merge to 'next'.
894 + Will merge to 'master' in the second batch.
895
896
897 * nd/diff-i-t-a (2015-03-23) 1 commit