What's cooking (2014/01 #06)
Junio C Hamano committed
Jan 29, 2014 at 14:19 UTC
dd7142c9f19b12d4bf3ff3da34d4a229a0e078d9
1 file changed
+116
-218
whats-cooking.txt
+116
-218
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Jan 2014, #05; Mon, 27)
3
+Subject: What's cooking in git.git (Jan 2014, #06; Wed, 29)
4
X-master-at: bd3e186d811a13d8687584856f345a767e3e4d67
5
-X-next-at: 0b1dcb534ef2691254edb3a0d66a3bdbbb849f98
5
+X-next-at: 614c158afed5077691c76d341b6888596b24b9fd
6
7
-What's cooking in git.git (Jan 2014, #05; Mon, 27)
7
+What's cooking in git.git (Jan 2014, #06; Wed, 29)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -23,221 +23,70 @@ of the repositories listed at
23
http://git-blame.blogspot.com/p/git-public-repositories.html
24
25
--------------------------------------------------
26
-[Graduated to "master"]
27
-
28
-* ab/subtree-doc (2014-01-13) 1 commit
29
- (merged to 'next' on 2014-01-22 at e352c75)
30
- + subtree: fix argument validation in add/pull/push
31
-
32
-
33
-* ef/mingw-write (2014-01-17) 2 commits
34
- (merged to 'next' on 2014-01-22 at b9ddab2)
35
- + mingw: remove mingw_write
36
- + prefer xwrite instead of write
37
-
38
-
39
-* jc/maint-pull-docfix (2014-01-14) 2 commits
40
- (merged to 'next' on 2014-01-22 at 2e62ef4)
41
- + Documentation: "git pull" does not have the "-m" option
42
- + Merge branch 'jc/maint-pull-docfix-for-409b8d82' into jc/maint-pull-docfix
43
- (this branch uses jc/maint-pull-docfix-for-409b8d82.)
44
-
45
-
46
-* jc/revision-range-unpeel (2014-01-15) 2 commits
47
- (merged to 'next' on 2014-01-22 at ab2a159)
48
- + revision: propagate flag bits from tags to pointees
49
- + revision: mark contents of an uninteresting tree uninteresting
50
-
51
- "git log --left-right A...B" lost the "leftness" of commits
52
- reachable from A when A is a tag as a side effect of a recent
53
- bugfix. This is a regression in 1.8.4.x series.
54
-
55
-
56
-* jk/allow-fetch-onelevel-refname (2014-01-15) 1 commit
57
- (merged to 'next' on 2014-01-22 at 15089b1)
58
- + fetch-pack: do not filter out one-level refs
59
-
60
- "git clone" would fail to clone from a repository that has a ref
61
- directly under "refs/", e.g. "refs/stash", because different
62
- validation paths do different things on such a refname. Loosen the
63
- client side's validation to allow such a ref.
64
-
65
-
66
-* jk/complete-merge-base (2014-01-13) 2 commits
67
- (merged to 'next' on 2014-01-22 at 91c428d)
68
- + completion: handle --[no-]fork-point options to git-rebase
69
- + completion: complete merge-base options
70
-
71
-
72
-* jk/diff-filespec-cleanup (2014-01-17) 5 commits
73
- (merged to 'next' on 2014-01-22 at fb26e43)
74
- + diff_filespec: use only 2 bits for is_binary flag
75
- + diff_filespec: reorder is_binary field
76
- + diff_filespec: drop xfrm_flags field
77
- + diff_filespec: drop funcname_pattern_ident field
78
- + diff_filespec: reorder dirty_submodule macro definitions
79
-
80
-
81
-* jk/interpret-branch-name-fix (2014-01-15) 5 commits
82
- (merged to 'next' on 2014-01-22 at f113c68)
83
- + interpret_branch_name: find all possible @-marks
84
- + interpret_branch_name: avoid @{upstream} past colon
85
- + interpret_branch_name: always respect "namelen" parameter
86
- + interpret_branch_name: rename "cp" variable to "at"
87
- + interpret_branch_name: factor out upstream handling
88
- (this branch is used by jk/branch-at-publish-rebased.)
89
-
90
- Fix a handful of bugs around interpreting $branch@{upstream}
91
- notation and its lookalike, when $branch part has interesting
92
- characters, e.g. "@", and ":".
93
-
94
-
95
-* jk/mark-edges-uninteresting (2014-01-21) 2 commits
96
- (merged to 'next' on 2014-01-22 at d8807c4)
97
- + list-objects: only look at cmdline trees with edge_hint
98
- + t/perf: time rev-list with UNINTERESTING commits
99
-
100
- Fix to regression in v1.8.4.x and later.
101
-
102
-
103
-* jk/test-fixes (2014-01-23) 2 commits
104
- (merged to 'next' on 2014-01-23 at 6515089)
105
- + t7700: do not use "touch" unnecessarily
106
- + t7501: fix "empty commit" test with NO_PERL
107
-
108
-
109
-* jn/ignore-doc (2014-01-16) 1 commit
110
- (merged to 'next' on 2014-01-22 at a07ac63)
111
- + gitignore doc: add global gitignore to synopsis
112
-
113
- Explicitly list $HOME/.config/git/ignore as one of the places you
114
- can use to keep ignore patterns that depend on your personal choice
115
- of tools, e.g. *~ for Emacs users.
116
-
117
-
118
-* mh/attr-macro-doc (2014-01-14) 1 commit
119
- (merged to 'next' on 2014-01-22 at e3ed767)
120
- + gitattributes: document more clearly where macros are allowed
121
-
122
-
123
-* mh/retire-ref-fetch-rules (2014-01-14) 1 commit
124
- (merged to 'next' on 2014-01-22 at 753b1f6)
125
- + refname_match(): always use the rules in ref_rev_parse_rules
126
-
127
- Code simplification.
128
-
129
-
130
-* mh/safe-create-leading-directories (2014-01-21) 17 commits
131
- (merged to 'next' on 2014-01-22 at ad38e73)
132
- + rename_tmp_log(): on SCLD_VANISHED, retry
133
- + rename_tmp_log(): limit the number of remote_empty_directories() attempts
134
- + rename_tmp_log(): handle a possible mkdir/rmdir race
135
- + rename_ref(): extract function rename_tmp_log()
136
- + remove_dir_recurse(): handle disappearing files and directories
137
- + remove_dir_recurse(): tighten condition for removing unreadable dir
138
- + lock_ref_sha1_basic(): if locking fails with ENOENT, retry
139
- + lock_ref_sha1_basic(): on SCLD_VANISHED, retry
140
- + safe_create_leading_directories(): add new error value SCLD_VANISHED
141
- + cmd_init_db(): when creating directories, handle errors conservatively
142
- + safe_create_leading_directories(): introduce enum for return values
143
- + safe_create_leading_directories(): always restore slash at end of loop
144
- + safe_create_leading_directories(): split on first of multiple slashes
145
- + safe_create_leading_directories(): rename local variable
146
- + safe_create_leading_directories(): add explicit "slash" pointer
147
- + safe_create_leading_directories(): reduce scope of local variable
148
- + safe_create_leading_directories(): fix format of "if" chaining
149
- (this branch is used by ss/safe-create-leading-dir-with-slash.)
150
-
151
- Code clean-up and protection against concurrent write access to the
152
- ref namespace.
153
-
154
-
155
-* nd/negative-pathspec (2014-01-23) 1 commit
156
- (merged to 'next' on 2014-01-23 at fd64119)
157
- + tree-walk.c: ignore trailing slash on submodule in tree_entry_interesting()
26
+[New Topics]
27
28
+* bc/gpg-sign-everywhere (2014-01-27) 9 commits
29
+ - pull: add the --gpg-sign option.
30
+ - rebase: add the --gpg-sign option
31
+ - rebase: parse options in stuck-long mode
32
+ - rebase: don't try to match -M option
33
+ - rebase: remove useless arguments check
34
+ - am: add the --gpg-sign option
35
+ - am: parse options in stuck-long mode
36
+ - git-sh-setup.sh: add variable to use the stuck-long mode
37
+ - cherry-pick, revert: add the --gpg-sign option
38
160
-* pw/git-p4 (2014-01-22) 11 commits
161
- (merged to 'next' on 2014-01-22 at 60489cd)
162
- + git p4 doc: use two-line style for options with multiple spellings
163
- + git p4 test: examine behavior with locked (+l) files
164
- + git p4: fix an error message when "p4 where" fails
165
- + git p4: handle files with wildcards when doing RCS scrubbing
166
- + git p4 test: do not pollute /tmp
167
- + git p4 test: run as user "author"
168
- + git p4 test: is_cli_file_writeable succeeds
169
- + git p4 test: explicitly check p4 wildcard delete
170
- + git p4: work around p4 bug that causes empty symlinks
171
- + git p4 test: ensure p4 symlink parsing works
172
- + git p4 test: wildcards are supported
39
+ Teach "--gpg-sign" option to many commands that create commits.
40
174
- Various "git p4" updates.
41
+ Changes to some scripted Porcelains use unsafe variable
42
+ substitutions and need to be tightened.
43
44
+ Waiting for a reroll.
45
177
-* rk/send-email-ssl-cert (2014-01-16) 1 commit
178
- (merged to 'next' on 2014-01-22 at 2fb13f2)
179
- + send-email: /etc/ssl/certs/ directory may not be usable as ca_path
46
181
- The "if /etc/ssl/certs/ directory exists, explicitly tell the
182
- library to use it as SSL_ca_path" blind-defaulting in "git
183
- send-email" broke platforms where /etc/ssl/certs/ directory exists,
184
- but it cannot used as SSL_ca_path (e.g. Fedora rawhide). Fix it by
185
- not specifying any SSL_ca_path/SSL_ca_file but still asking for
186
- peer verification in such a case.
47
+* ds/rev-parse-required-args (2014-01-28) 1 commit
48
+ - rev-parse: check i before using argv[i] against argc
49
50
+ "git rev-parse --default" without the required option argument did
51
+ not diagnose it as an error.
52
189
-* sb/repack-in-c (2014-01-23) 3 commits
190
- (merged to 'next' on 2014-01-23 at 3ff349f)
191
- + repack: propagate pack-objects options as strings
192
- + repack: make parsed string options const-correct
193
- + repack: fix typo in max-pack-size option
53
+ Will merge to 'next'.
54
195
- "git repack --max-pack-size=8g" stopped being parsed correctly when
196
- the command was reimplemented in C.
55
56
+* jk/config-path-include-fix (2014-01-28) 2 commits
57
+ - handle_path_include: don't look at NULL value
58
+ - expand_user_path: do not look at NULL path
59
199
-* ss/safe-create-leading-dir-with-slash (2014-01-22) 1 commit
200
- (merged to 'next' on 2014-01-22 at ca62c45)
201
- + safe_create_leading_directories(): on Windows, \ can separate path components
202
- (this branch uses mh/safe-create-leading-directories.)
60
+ include.path variable (or any variable that expects a path that can
61
+ use ~username expansion) in the configuration file is not a
62
+ boolean, but the code failed to check it.
63
204
- "git clone $origin foo\bar\baz" on Windows failed to create the
205
- leading directories (i.e. a moral-equivalent of "mkdir -p").
64
+ Will merge to 'next'.
65
66
208
-* tr/gitk-doc-range-trace (2014-01-21) 1 commit
209
- (merged to 'next' on 2014-01-22 at 1d93d1d)
210
- + Documentation/gitk: document -L option
67
+* jk/repack-honor-pack-keep (2014-01-28) 1 commit
68
+ - repack: add `repack.honorpackkeep` config var
69
+ (this branch uses jk/pack-bitmap.)
70
71
+ Optionally allow "git repack" to include objects that exist in kept
72
+ packs in newly created packfiles.
73
213
-* tr/nth-previous-is-a-commit (2014-01-21) 1 commit
214
- (merged to 'next' on 2014-01-22 at 0425887)
215
- + Documentation: @{-N} can refer to a commit
74
+ Waiting for response to review comments.
75
217
---------------------------------------------------
218
-[New Topics]
76
220
-* lt/request-pull (2014-01-23) 3 commits
221
- - pull-request: test updates
222
- - Make request-pull able to take a refspec of form local:remote
223
- - Make 'git request-pull' more strict about matching
224
-
225
- Waiting for the updates to settle.
77
+* nd/submodule-pathspec-ending-with-slash (2014-01-27) 8 commits
78
+ - clean: use cache_name_is_other()
79
+ - clean: replace match_pathspec() with dir_path_match()
80
+ - Pass directory indicator to match_pathspec_item()
81
+ - match_pathspec: match pathspec "foo/" against directory "foo"
82
+ - dir.c: prepare match_pathspec_item for taking more flags
83
+ - Rename match_pathspec_depth() to match_pathspec()
84
+ - Convert some match_pathspec_depth() to dir_path_match()
85
+ - Convert some match_pathspec_depth() to ce_path_match()
86
227
-
228
-* bk/refresh-missing-ok-in-merge-recursive (2014-01-27) 4 commits
229
- - merge-recursive.c: Tolerate missing files while refreshing index
230
- - read-cache.c: Extend make_cache_entry refresh flag with options
231
- - read-cache.c: Refactor --ignore-missing implementation
232
- - t3030-merge-recursive: Test known breakage with empty work tree
233
-
234
- Will merge to 'next'.
235
-
236
-
237
-* nd/diff-quiet-stat-dirty (2014-01-27) 3 commits
238
- - diff: turn off skip_stat_unmatch on "diff --cached"
239
- - diff: do not quit early on stat-dirty files
240
- - Move diffcore_skip_stat_unmatch core logic out for reuse later
87
+ Allow "git cmd path/", when the 'path' is where a submodule is
88
+ bound to the top-level working tree, to match 'path', despite the
89
+ extra and unnecessary trailing slash.
90
91
Will merge to 'next'.
92
@@ -256,9 +105,9 @@ of the repositories listed at
105
106
It appears that we are coming to the consensus that trying to be
107
too intimately knowledgeable about quirks of various pager
259
- implementations on different platforms is a losing proposition, so
260
- perhaps I should replace this with the alternative and simpler
261
- approach I posted, unless there are strong objections.
108
+ implementations on different platforms is a losing proposition.
109
+
110
+ Waiting for a reroll.
111
112
113
* po/everyday-doc (2014-01-27) 1 commit
@@ -270,6 +119,8 @@ of the repositories listed at
119
the right direction, but needs more work to at least get the
120
mark-up right before public consumption.
121
122
+ Will hold.
123
+
124
125
* jk/branch-at-publish-rebased (2014-01-17) 5 commits
126
- t1507 (rev-parse-upstream): fix typo in test title
@@ -296,7 +147,7 @@ of the repositories listed at
147
hook, prepare-commit-msg, but it would equally apply to other hooks
148
like post-merge, I think.
149
299
- Waiting to give a chance to reroll.
150
+ Waiting for a reroll.
151
152
153
* jl/submodule-recursive-checkout (2013-12-26) 5 commits
@@ -366,6 +217,8 @@ of the repositories listed at
217
with two changes to "git add" that have been scheduled for Git 2.0
218
quite badly, and I think I got the resolution right this time.
219
220
+ Waiting for a reroll.
221
+
222
223
* kb/fast-hashmap (2014-01-03) 19 commits
224
- hashmap.h: make sure map entries are tightly packed
@@ -396,6 +249,8 @@ of the repositories listed at
249
250
The tip one does not seem to have reached concensus (yet).
251
252
+ Will hold.
253
+
254
255
* jc/create-directories-microopt (2013-11-11) 1 commit
256
- checkout: most of the time we have good leading directories
@@ -414,7 +269,10 @@ of the repositories listed at
269
more generic solution that can be tailored for specific needs, as
270
many people stated in the thread.
271
417
- It appears that the discussion stalled.
272
+ cc/interpret-trailers could be such a generic solution (although
273
+ there don't seem to be much concensus yet).
274
+
275
+ Will discard.
276
277
278
* np/pack-v4 (2013-09-18) 90 commits
@@ -444,6 +302,8 @@ of the repositories listed at
302
an extra blank line after every root, which I tend to think is a
303
better approach to the problem.
304
305
+ Will discard.
306
+
307
308
* tg/perf-lib-test-perf-cleanup (2013-09-19) 2 commits
309
- perf-lib: add test_perf_cleanup target
@@ -452,7 +312,7 @@ of the repositories listed at
312
Add test_perf_cleanup shell function to the perf suite, that allows
313
the script writers to define a test with a clean-up action.
314
455
- Holding until needed.
315
+ Will hold.
316
317
318
* yt/shortened-rename (2013-10-18) 2 commits
@@ -470,6 +330,8 @@ of the repositories listed at
330
- git-send-email: Cache generated message-ids, use them when prompting
331
- git-send-email: add optional 'choices' parameter to the ask sub
332
333
+ Will discard.
334
+
335
336
* rj/read-default-config-in-show-ref-pack-refs (2013-06-17) 3 commits
337
- ### DONTMERGE: needs better explanation on what config they need
@@ -518,6 +380,36 @@ of the repositories listed at
380
--------------------------------------------------
381
[Cooking]
382
383
+* lt/request-pull (2014-01-23) 3 commits
384
+ - pull-request: test updates
385
+ - Make request-pull able to take a refspec of form local:remote
386
+ - Make 'git request-pull' more strict about matching
387
+
388
+ Waiting for the updates to settle.
389
+
390
+
391
+* bk/refresh-missing-ok-in-merge-recursive (2014-01-27) 4 commits
392
+ (merged to 'next' on 2014-01-29 at 614c158)
393
+ + merge-recursive.c: Tolerate missing files while refreshing index
394
+ + read-cache.c: Extend make_cache_entry refresh flag with options
395
+ + read-cache.c: Refactor --ignore-missing implementation
396
+ + t3030-merge-recursive: Test known breakage with empty work tree
397
+
398
+ Allows "merge-recursive" to work in an empty (temporary) working
399
+ tree again when there are renames involved, correcting an old
400
+ regression in 1.7.7 era.
401
+
402
+ Will cook in 'next'.
403
+
404
+
405
+* nd/diff-quiet-stat-dirty (2014-01-29) 3 commits
406
+ - diff: turn skip_stat_unmatch on selectively
407
+ - diff: do not quit early on stat-dirty files
408
+ - Move diffcore_skip_stat_unmatch core logic out for reuse later
409
+
410
+ Will merge to 'next'.
411
+
412
+
413
* cc/interpret-trailers (2014-01-27) 17 commits
414
- Documentation: add documentation for 'git interpret-trailers'
415
- trailer: add tests for commands using env variables
@@ -537,19 +429,25 @@ of the repositories listed at
429
- trailer: process trailers from file and arguments
430
- Add data structures and basic functions for commit trailers
431
432
+ Waiting for a reroll.
433
+
434
435
* dk/blame-janitorial (2014-01-22) 2 commits
542
- - Eliminate same_suspect function in builtin/blame.c
543
- - builtin/blame.c: struct blame_entry does not need a prev link
436
+ (merged to 'next' on 2014-01-29 at 0b7ea97)
437
+ + Eliminate same_suspect function in builtin/blame.c
438
+ + builtin/blame.c: struct blame_entry does not need a prev link
439
545
- Will merge to 'next'.
440
+ Code clean-up.
441
442
+ Will hold.
443
548
-* ks/diff-c-with-diff-order (2014-01-21) 4 commits
444
+
445
+* ks/diff-c-with-diff-order (2014-01-29) 5 commits
446
+ - combine_diff: simplify intersect_paths() further
447
- combine-diff: combine_diff_path.len is not needed anymore
550
- - combine-diff: Optimize combine_diff_path sets intersection
551
- - diff test: Add tests for combine-diff with orderfile
552
- - diffcore-order: Export generic ordering interface
448
+ - combine-diff: optimize combine_diff_path sets intersection
449
+ - diff test: add tests for combine-diff with orderfile
450
+ - diffcore-order: export generic ordering interface
451
452
Teach combine-diff to honour the path-output-order imposed by
453
diffcore-order.
@@ -645,6 +543,7 @@ of the repositories listed at
543
+ pack-objects: factor out name_hash
544
+ pack-objects: refactor the packing list
545
+ revindex: export new APIs
546
+ (this branch is used by jk/repack-honor-pack-keep.)
547
548
Borrows the bitmap index into packfiles from JGit to speed up
549
enumeration of objects involved in a commit range without having to
@@ -697,7 +596,7 @@ of the repositories listed at
596
- merge-recursive: internal flag to avoid touching the worktree
597
- merge-recursive: remove dead conditional in update_stages()
598
700
- Will hold until using script appears.
599
+ Will hold.
600
601
602
* jn/add-2.0-u-A-sans-pathspec (2013-04-26) 1 commit
@@ -740,7 +639,7 @@ of the repositories listed at
639
--------------------------------------------------
640
[Discarded]
641
743
-* jk/branch-at-publish (2014-01-13) 6 commits
642
+* jk/branch-at-publish (2014-01-23) 6 commits
643
. t1507 (rev-parse-upstream): fix typo in test title
644
. implement @{publish} shorthand
645
. branch_get: provide per-branch pushremote pointers
@@ -764,9 +663,8 @@ of the repositories listed at
663
Now in 'master' from the upstream gitk repository.
664
665
767
-* jc/parse-options-humint (2014-01-22) 2 commits
768
- . repack: accept larger window-memory and max-pack-size
666
+* jc/parse-options-humint (2014-01-22) 1 commit
667
. parse-options: refactor human-friendly-integer parser out of pack-objects
668
771
- "git repack --max-pack-size=8g" stopped being parsed correctly when
772
- the command was reimplemented in C.
669
+ Teach parse-options machinery to optionally parse numbers with a
670
+ unit suffix, e.g. 8g, 4m, 128k.