What's cooking (2015/07 #02)
Junio C Hamano committed
Jul 7, 2015 at 15:26 UTC
9cdb781852e6d25db9fcdf9dc6191643aa5fa82d
1 file changed
+222
-70
whats-cooking.txt
+222
-70
@@ -1,87 +1,208 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Jul 2015, #01; Wed, 1)
4
-X-master-at: cbed29f37b690e0a497bd2b6ca9a5bdd7e6ea5aa
5
-X-next-at: 417e6682ab1b640df833193fd7f33c19661721b2
3
+Subject: What's cooking in git.git (Jul 2015, #02; Tue, 7)
4
+X-master-at: 5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3
5
+X-next-at: a12d9f81e25048c9843da262f526bf229e6bb487
6
7
-What's cooking in git.git (Jul 2015, #01; Wed, 1)
7
+What's cooking in git.git (Jul 2015, #02; Tue, 7)
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
+As there is at least one new topic in 2.5-rc that has a real and
15
+severe breakage (I haven't merged the fix for it to 'master' yet),
16
+we may probably need to delay the final by at least a few weeks.
17
+
18
+Projects from GSoC students and Ensimag students have also been a
19
+pleasure to work with. I'd have to say that this year is much
20
+better than some previous years.
21
+
22
You can find the changes described here in the integration branches
23
of the repositories listed at
24
25
http://git-blame.blogspot.com/p/git-public-repositories.html
26
27
--------------------------------------------------
20
-[Graduated to "master"]
21
-
22
-* da/mergetool-winmerge (2015-06-19) 1 commit
23
- (merged to 'next' on 2015-06-24 at 2fb10c4)
24
- + mergetool-lib: fix default tool selection
25
-
26
- Hotfix for an earlier change already in 'master' that broke the
27
- default tool selection for mergetool.
28
-
29
-
30
-* jc/prompt-document-ps1-state-separator (2015-06-10) 1 commit
31
- (merged to 'next' on 2015-06-24 at e4d1bad)
32
- + git-prompt.sh: document GIT_PS1_STATESEPARATOR
33
-
34
- Docfix.
35
-
36
-
37
-* me/fetch-into-shallow-safety (2015-06-17) 1 commit
38
- (merged to 'next' on 2015-06-24 at 8ecc19a)
39
- + fetch-pack: check for shallow if depth given
40
-
41
- "git fetch --depth=<depth>" and "git clone --depth=<depth>" issued
42
- a shallow transfer request even to an upload-pack that does not
43
- support the capability.
44
-
45
-
46
-* mm/describe-doc (2015-06-16) 1 commit
47
- (merged to 'next' on 2015-06-24 at 75e34cc)
48
- + Documentation/describe: improve one-line summary
28
+[New Topics]
29
50
- Docfix.
30
+* es/worktree-add (2015-07-07) 23 commits
31
+ - checkout: retire --ignore-other-worktrees in favor of --force
32
+ - worktree: add: auto-vivify new branch when <branch> is omitted
33
+ - worktree: add: make -b/-B default to HEAD when <branch> is omitted
34
+ - worktree: extract basename computation to new function
35
+ - checkout: require worktree unconditionally
36
+ - checkout: retire --to option
37
+ - tests: worktree: retrofit "checkout --to" tests for "worktree add"
38
+ - worktree: add -b/-B options
39
+ - worktree: add --detach option
40
+ - worktree: add --force option
41
+ - worktree: introduce "add" command
42
+ - checkout: drop 'checkout_opts' dependency from prepare_linked_checkout
43
+ - checkout: make --to unconditionally verbose
44
+ - checkout: prepare_linked_checkout: drop now-unused 'new' argument
45
+ - checkout: relocate --to's "no branch specified" check
46
+ - checkout: fix bug with --to and relative HEAD
47
+ - Documentation/git-worktree: add EXAMPLES section
48
+ - Documentation/git-worktree: add high-level 'lock' overview
49
+ - Documentation/git-worktree: split technical info from general description
50
+ - Documentation/git-worktree: add BUGS section
51
+ - Documentation: move linked worktree description from checkout to worktree
52
+ - Documentation/git-worktree: associate options with commands
53
+ - Documentation/git-checkout: fix incorrect worktree prune command
54
+ (this branch uses nd/multiple-work-trees.)
55
+
56
+ Update to the "linked checkout" in 2.5.0-rc1; while I very much
57
+ like what I see in this series, I think it does not work well with
58
+ the date-based release schedule for v2.5, and as we've been
59
+ labelling the feature with "experimental, UI will change" warning,
60
+ I am tempted to cook this (or a reroll of it) in 'next' and shoot
61
+ for a refined version of it in 2.6, rather than delaying 2.5 final.
62
+
63
+ An alternative obviously is to slip 2.5 final for a few weeks,
64
+ waiting for this and possibly other hotfix topics to mature.
65
+
66
+ Undecided.
67
+
68
+
69
+* jc/fix-alloc-sortbuf-in-index-pack (2015-07-04) 1 commit
70
+ (merged to 'next' on 2015-07-06 at c05da06)
71
+ + index-pack: fix allocation of sorted_by_pos array
72
+
73
+ Another hotfix for what is in 2.5-rc but not in 2.4
74
+
75
+ The alternative to slip 2.5 final for a few weeks starting to
76
+ become more and more attractive...
77
+
78
+
79
+* jc/unexport-git-pager-in-use-in-pager (2015-07-03) 1 commit
80
+ - pager: do not leak "GIT_PAGER_IN_USE" to the pager
81
+
82
+ When you say "!<ENTER>" while running say "git log", you'd confuse
83
+ yourself in the resulting shell, that may look as if you took
84
+ control back to the original shell you spawned "git log" from but
85
+ that isn't what is happening. To that new shell, we leaked
86
+ GIT_PAGER_IN_USE environment variable that was meant as a local
87
+ communication between the original "Git" and subprocesses that was
88
+ spawned by it after we launched the pager, which caused many
89
+ "interesting" things to happen, e.g. "git diff | cat" still paints
90
+ its output in color by default.
91
+
92
+ Stop leaking that environment variable to the pager's half of the
93
+ fork; we only need it on "Git" side when we spawn the pager.
94
52
---------------------------------------------------
53
-[New Topics]
95
+ Will merge to 'next'.
96
55
-* jk/rev-list-no-bitmap-while-pruning (2015-07-01) 1 commit
56
- - rev-list: disable --use-bitmap-index when pruning commits
97
58
- A minor bugfix when pack bitmap was brought in.
98
+* mh/strbuf-read-file-returns-ssize-t (2015-07-03) 1 commit
99
+ - strbuf: strbuf_read_file() should return ssize_t
100
101
Will merge to 'next'.
102
103
63
-* kb/config-unmap-before-renaming (2015-06-30) 1 commit
64
- - config.c: fix writing config files on Windows network shares
104
+* mm/branch-doc-updates (2015-07-06) 2 commits
105
+ - Documentation/branch: document -M and -D in terms of --force
106
+ - Documentation/branch: document -d --force and -m --force
107
108
Will merge to 'next'.
109
110
69
-* ls/hint-rev-list-count (2015-07-01) 1 commit
70
- - rev-list: add --count to usage guide
111
+* pt/am-tests (2015-07-07) 12 commits
112
+ - t3901: test git-am encoding conversion
113
+ - t3418: non-interactive rebase --continue with rerere enabled
114
+ - t4150: tests for am --[no-]scissors
115
+ - t4150: am with post-applypatch hook
116
+ - t4150: am with pre-applypatch hook
117
+ - t4150: am with applypatch-msg hook
118
+ - t4150: am --resolved fails if index has unmerged entries
119
+ - t4150: am --resolved fails if index has no changes
120
+ - t4150: am refuses patches when paused
121
+ - t4151: am --abort will keep dirty index intact
122
+ - t4150: am fails if index is dirty
123
+ - t4150: am.messageid really adds the message id
124
125
Will merge to 'next'.
126
127
75
-* mh/fast-import-get-mark (2015-07-01) 1 commit
76
- - fast-import: add a get-mark command
128
+* kn/for-each-tag-branch (2015-07-07) 11 commits
129
+ - for-each-ref: add '--contains' option
130
+ - ref-filter: implement '--contains' option
131
+ - parse-options.h: add macros for '--contains' option
132
+ - parse-option: rename parse_opt_with_commit()
133
+ - for-each-ref: add '--merged' and '--no-merged' options
134
+ - ref-filter: implement '--merged' and '--no-merged' options
135
+ - ref-filter: add parse_opt_merge_filter()
136
+ - for-each-ref: add '--points-at' option
137
+ - ref-filter: implement '--points-at' option
138
+ - tag: libify parse_opt_points_at()
139
+ - t6302: for-each-ref tests for ref-filter APIs
140
+ (this branch uses kn/for-each-ref.)
141
+
142
+
143
+* pt/am-builtin (2015-07-07) 45 commits
144
+ - builtin-am: remove redirection to git-am.sh
145
+ - builtin-am: check for valid committer ident
146
+ - builtin-am: implement legacy -b/--binary option
147
+ - builtin-am: implement -i/--interactive
148
+ - builtin-am: support and auto-detect mercurial patches
149
+ - builtin-am: support and auto-detect StGit series files
150
+ - builtin-am: support and auto-detect StGit patches
151
+ - builtin-am: rerere support
152
+ - builtin-am: invoke post-applypatch hook
153
+ - builtin-am: invoke pre-applypatch hook
154
+ - builtin-am: invoke applypatch-msg hook
155
+ - builtin-am: support automatic notes copying
156
+ - builtin-am: invoke post-rewrite hook
157
+ - builtin-am: implement -S/--gpg-sign, commit.gpgsign
158
+ - builtin-am: implement --committer-date-is-author-date
159
+ - builtin-am: implement --ignore-date
160
+ - builtin-am: pass git-apply's options to git-apply
161
+ - builtin-am: implement --[no-]scissors
162
+ - builtin-am: support --keep-cr, am.keepcr
163
+ - builtin-am: implement --[no-]message-id, am.messageid
164
+ - builtin-am: implement -k/--keep, --keep-non-patch
165
+ - builtin-am: implement -u/--utf8
166
+ - builtin-am: handle stray state directory
167
+ - builtin-am: bypass git-mailinfo when --rebasing
168
+ - builtin-am: implement --rebasing mode
169
+ - builtin-am: implement --3way, am.threeWay
170
+ - cache-tree: introduce write_index_as_tree()
171
+ - builtin-am: implement -s/--signoff
172
+ - builtin-am: exit with user friendly message on failure
173
+ - builtin-am: implement -q/--quiet
174
+ - builtin-am: reject patches when there's a session in progress
175
+ - builtin-am: implement --abort
176
+ - builtin-am: implement --skip
177
+ - builtin-am: implement --resolved/--continue
178
+ - builtin-am: refuse to apply patches if index is dirty
179
+ - builtin-am: implement committing applied patch
180
+ - builtin-am: apply patch with git-apply
181
+ - builtin-am: extract patch and commit info with git-mailinfo
182
+ - builtin-am: auto-detect mbox patches
183
+ - builtin-am: split out mbox/maildir patches with git-mailsplit
184
+ - builtin-am: implement patch queue mechanism
185
+ - builtin-am: implement skeletal builtin am
186
+ - wrapper: implement xfopen()
187
+ - wrapper: implement xopen()
188
+ - Merge branch 'pt/pull-builtin' into pt/am-builtin
189
+ (this branch uses pt/pull-builtin.)
190
191
Will merge to 'next'.
192
193
81
-* nd/dwim-wildcards-as-pathspecs (2015-07-01) 1 commit
82
- - Add tests for wildcard "path vs ref" disambiguation
194
+* ad/bisect-cleanup (2015-06-29) 6 commits
195
+ - bisect: don't mix option parsing and non-trivial code
196
+ - bisect: simplify the addition of new bisect terms
197
+ - bisect: replace hardcoded "bad|good" by variables
198
+ - Documentation/bisect: revise overall content
199
+ - Documentation/bisect: move getting help section to the end
200
+ - bisect: correction of typo
201
+ (this branch is used by ad/bisect-terms.)
202
84
- Will merge to 'next' and then to 'master'.
203
+ Code and documentation clean-up to "git bisect".
204
+
205
+ Will merge to 'next'.
206
207
--------------------------------------------------
208
[Stalled]
@@ -278,6 +399,38 @@ of the repositories listed at
399
--------------------------------------------------
400
[Cooking]
401
402
+* jk/rev-list-no-bitmap-while-pruning (2015-07-01) 1 commit
403
+ - rev-list: disable --use-bitmap-index when pruning commits
404
+
405
+ A minor bugfix when pack bitmap was brought in.
406
+
407
+ Will merge to 'next'.
408
+
409
+
410
+* kb/config-unmap-before-renaming (2015-06-30) 1 commit
411
+ - config.c: fix writing config files on Windows network shares
412
+
413
+ Will merge to 'next'.
414
+
415
+
416
+* ls/hint-rev-list-count (2015-07-01) 1 commit
417
+ - rev-list: add --count to usage guide
418
+
419
+ Will merge to 'next'.
420
+
421
+
422
+* mh/fast-import-get-mark (2015-07-01) 1 commit
423
+ - fast-import: add a get-mark command
424
+
425
+ Will merge to 'next'.
426
+
427
+
428
+* nd/dwim-wildcards-as-pathspecs (2015-07-01) 1 commit
429
+ - Add tests for wildcard "path vs ref" disambiguation
430
+
431
+ Will merge to 'next' and then to 'master'.
432
+
433
+
434
* kb/i18n-doc (2015-07-01) 1 commit
435
- Documentation/i18n.txt: clarify character encoding support
436
@@ -371,7 +524,13 @@ of the repositories listed at
524
Will merge to 'next'.
525
526
374
-* jc/rerere (2015-06-30) 13 commits
527
+* jc/rerere (2015-07-06) 19 commits
528
+ . t4200: rerere a merge with two identical conflicts
529
+ . rerere: un-nest merge() further
530
+ . rerere: use "struct rerere_id" instead of "char *" for conflict ID
531
+ - rerere: call conflict-ids IDs
532
+ - rerere: further clarify do_rerere_one_path()
533
+ - rerere: further de-dent do_plain_rerere()
534
- rerere: refactor "replay" part of do_plain_rerere()
535
- rerere: explain the remainder
536
- rerere: explain "rerere forget" codepath
@@ -386,20 +545,15 @@ of the repositories listed at
545
- rerere: plug conflict ID leaks
546
- rerere: fix an off-by-one non-bug
547
389
- Code clean-up and minor fixes.
548
+ Code clean-up and minor fixes (so far).
549
550
392
-* ad/bisect-terms (2015-06-29) 10 commits
551
+* ad/bisect-terms (2015-06-29) 4 commits
552
- bisect: allow setting any user-specified in 'git bisect start'
553
- bisect: add 'git bisect terms' to view the current terms
554
- bisect: add the terms old/new
555
- bisect: sanity check on terms
397
- - bisect: don't mix option parsing and non-trivial code
398
- - bisect: simplify the addition of new bisect terms
399
- - bisect: replace hardcoded "bad|good" by variables
400
- - Documentation/bisect: revise overall content
401
- - Documentation/bisect: move getting help section to the end
402
- - bisect: correction of typo
556
+ (this branch uses ad/bisect-cleanup.)
557
558
The use of 'good/bad' in "git bisect" made it confusing to use when
559
hunting for a state change that is not a regression (e.g. bugfix).
@@ -407,10 +561,9 @@ of the repositories listed at
561
say e.g. "bisect start --term-old=fast --term=new=slow" to find a
562
performance regression.
563
410
- The bottom part has been quite well cooked. Perhaps split it into
411
- two topisc and merge the earlier ones to 'next' before the rest
412
- settles. Michael's idea to make 'good/bad' more intelligent does
413
- have certain attractiveness ($gname/272867).
564
+ Michael's idea to make 'good/bad' more intelligent does have
565
+ certain attractiveness ($gname/272867), and makes some of the work
566
+ on this topic a moot point.
567
568
569
* mh/tempfile (2015-06-10) 14 commits
@@ -647,23 +800,20 @@ of the repositories listed at
800
other than refs/replace/ for the object replacement data.
801
802
650
-* nd/multiple-work-trees (2015-07-01) 3 commits
651
- - worktree: replace "checkout --to" with "worktree add"
803
+* nd/multiple-work-trees (2015-06-29) 2 commits
804
(merged to 'next' on 2015-06-29 at fd4eb60)
805
+ worktree: new place for "git prune --worktrees"
806
(merged to 'next' on 2015-06-24 at 7c3f918)
807
+ checkout: don't check worktrees when not necessary
808
+ (this branch is used by es/worktree-add.)
809
810
"git checkout [<tree-ish>] <paths>" spent unnecessary cycles
811
checking if the current branch was checked out elsewhere, when we
812
know we are not switching the branches ourselves.
813
661
- Waiting for a reroll to transition to "worktree add".
814
663
-
664
-* gp/status-rebase-i-info (2015-07-01) 5 commits
815
+* gp/status-rebase-i-info (2015-07-06) 4 commits
816
- status: add new tests for status during rebase -i
666
- - SQUASH???
817
- status: give more information during rebase -i
818
- status: differentiate interactive from non-interactive rebases
819
- status: factor two rebase-related messages together
@@ -671,7 +821,9 @@ of the repositories listed at
821
Teach "git status" to show a more detailed information regarding
822
the "rebase -i" session in progress.
823
674
- Reroll exists; not picked up yet.
824
+ Looks ready for 'next'. I however wonder if there is a negative
825
+ interaction with 16cf51c7 (git-rebase--interactive.sh: add config
826
+ option for custom instruction format, 2015-06-13)?
827
828
829
* mk/utf8-no-iconv-warn (2015-06-08) 1 commit
@@ -726,14 +878,14 @@ of the repositories listed at
878
- argv-array: implement argv_array_pushv()
879
- parse-options-cb: implement parse_opt_passthru_argv()
880
- parse-options-cb: implement parse_opt_passthru()
881
+ (this branch is used by pt/am-builtin.)
882
883
Reimplement 'git pull' in C.
884
732
- This is v4 ($gmane/271943).
885
Will merge to 'next'.
886
887
736
-* rl/send-email-aliases (2015-07-01) 10 commits
888
+* rl/send-email-aliases (2015-07-07) 10 commits
889
- send-email: suppress meaningless whitespaces in from field
890
- send-email: allow multiple emails using --cc, --to and --bcc
891
- send-email: consider quote as delimiter instead of character