What's cooking (2015/12 #03)
Junio C Hamano committed
Dec 10, 2015 at 14:46 UTC
dcb901c83d0794bf7b4a22523461a19f15e91ed2
1 file changed
+200
-214
whats-cooking.txt
+200
-214
@@ -1,127 +1,227 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Dec 2015, #02; Fri, 4)
4
-X-master-at: e5da8655b23737a8449868e1d99973a8d0e25fe3
5
-X-next-at: 362d2fc2f8ab9ee22072f76fb36ec16918511944
3
+Subject: What's cooking in git.git (Dec 2015, #03; Thu, 10)
4
+X-master-at: 7d722536dd86b5fbd0c0434bfcea5588132ee6ad
5
+X-next-at: 4a846af92dfa9c9799c6c2f1a61e3a1b87ceb0f4
6
7
-What's cooking in git.git (Dec 2015, #02; Fri, 4)
7
+What's cooking in git.git (Dec 2015, #03; Thu, 10)
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'.
12
+'+' are in 'next'. The ones marked with '.' do not appear in any of
13
+the integration branches, but I am still holding onto them.
14
14
-A big thank-you to Peff for managing the list traffic during my
15
-absence for the past few weeks. I think my tree is now back in
16
-shape and I started merging a handful of topics to 'next' and
17
-'master'. What's in 'master' plus just a few trivial topics in
18
-'next' should be pretty much "it" for the upcoming release.
15
+An early preview v2.7.0-rc0 has been tagged. I notice that quite a
16
+few topics have been in "waiting for review" state without getting
17
+anybody helping the review process, leaving them in 'pu'--they will
18
+not have enough time to be part of 2.7 at this rate, but perhaps
19
+that is unavoidable, as this is historically a slow season.
20
20
-You can find the normal integration branches at:
21
+You can find the changes described here in the integration branches of the
22
+repositories listed at
23
22
- https://github.com/git/git/
24
+ http://git-blame.blogspot.com/p/git-public-repositories.html
25
24
-and all topic branches at:
26
+--------------------------------------------------
27
+[Graduated to "master"]
28
26
- https://github.com/peff/git/
29
+* bc/object-id (2015-11-20) 12 commits
30
+ (merged to 'next' on 2015-12-04 at 2d3f5f2)
31
+ + remote: convert functions to struct object_id
32
+ + Remove get_object_hash.
33
+ + Convert struct object to object_id
34
+ + Add several uses of get_object_hash.
35
+ + object: introduce get_object_hash macro.
36
+ + ref_newer: convert to use struct object_id
37
+ + push_refs_with_export: convert to struct object_id
38
+ + get_remote_heads: convert to struct object_id
39
+ + parse_fetch: convert to use struct object_id
40
+ + add_sought_entry_mem: convert to struct object_id
41
+ + Convert struct ref to use object_id.
42
+ + sha1_file: introduce has_object_file helper.
43
+ (this branch is used by bc/format-patch-null-from-line.)
44
28
-But note that I will _not_ be pushing to kernel.org.
45
+ More transition from "unsigned char[40]" to "struct object_id".
46
30
---------------------------------------------------
31
-[Graduated to "master"]
47
+ This needed a few merge fixups, but is mostly disentangled from other
48
+ topics.
49
33
-* ad/sha1-update-chunked (2015-11-05) 2 commits
34
- (merged to 'next' on 2015-12-01 at a22bf47)
35
- + sha1: allow limiting the size of the data passed to SHA1_Update()
36
- + sha1: provide another level of indirection for the SHA-1 functions
50
38
- Apple's common crypto implementation of SHA1_Update() does not take
39
- more than 4GB at a time, and we now have a compile-time workaround
40
- for it.
51
+* dt/fsck-verify-pack-error (2015-12-01) 1 commit
52
+ (merged to 'next' on 2015-12-04 at fbd82d1)
53
+ + verify_pack: do not ignore return value of verification function
54
+
55
+ The exit code of git-fsck didnot reflect some types of errors found
56
+ in packed objects, which has been corrected.
57
+
58
+
59
+* dt/refs-backend-pre-vtable (2015-11-20) 10 commits
60
+ (merged to 'next' on 2015-11-24 at 8fd7293)
61
+ + refs: break out ref conflict checks
62
+ + files_log_ref_write: new function
63
+ + initdb: make safe_create_dir public
64
+ + refs: split filesystem-based refs code into a new file
65
+ + refs/refs-internal.h: new header file
66
+ + refname_is_safe(): improve docstring
67
+ + pack_if_possible_fn(): use ref_type() instead of is_per_worktree_ref()
68
+ + copy_msg(): rename to copy_reflog_msg()
69
+ + verify_refname_available(): new function
70
+ + verify_refname_available(): rename function
71
+ (this branch is used by dt/refs-backend-lmdb.)
72
73
+ Code preparation for pluggable ref backends.
74
43
-* jk/filter-branch-no-index (2015-11-06) 1 commit
44
- (merged to 'next' on 2015-11-24 at e31946e)
45
- + filter-branch: skip index read/write when possible
75
47
- Speed up filter-branch for cases where we only care about rewriting
48
- commits, not tree data.
76
+* ep/ident-with-getaddrinfo (2015-11-28) 1 commit
77
+ (merged to 'next' on 2015-12-01 at 0775d4c)
78
+ + ident.c: add support for IPv6
79
80
+ A build without NO_IPv6 used to use gethostbyname() when guessing
81
+ user's hostname, instead of getaddrinfo() that is used in other
82
+ codepaths in such a build.
83
51
-* jk/send-email-complete-aliases (2015-11-20) 2 commits
52
- (merged to 'next' on 2015-11-24 at a50094f)
53
- + completion: add support for completing email aliases
54
- + sendemail: teach git-send-email to dump alias names
84
56
- Teach send-email to dump mail aliases, so that we can do tab completion
57
- on the command line.
85
+* ls/test-must-fail-sigpipe (2015-11-28) 2 commits
86
+ (merged to 'next' on 2015-12-01 at d374686)
87
+ + add "ok=sigpipe" to test_must_fail and use it to fix flaky tests
88
+ + implement test_might_fail using a refactored test_must_fail
89
90
+ Fix some racy client/server tests by treating SIGPIPE the same as a
91
+ normal non-zero exit.
92
60
-* np/credential-cache-sighup (2015-11-20) 1 commit
61
- (merged to 'next' on 2015-11-24 at 410167f)
62
- + credential-cache: new option to ignore sighup
93
64
- Workaround for using credential-cache with emacs.
94
+* ls/travis-yaml (2015-11-28) 1 commit
95
+ (merged to 'next' on 2015-12-04 at e7852e1)
96
+ + Add Travis CI support
97
98
+ The necessary infrastructure to build topics using the free Travis
99
+ CI has been added. Developers forking from this topic (and enabling
100
+ Travis) can do their own builds, and we can turn on auto-builds for
101
+ git/git (including build-status for pull requests that people
102
+ open).
103
67
-* rs/parseopt-short-help (2015-11-20) 5 commits
68
- (merged to 'next' on 2015-11-24 at f22b6e0)
69
- + show-ref: stop using PARSE_OPT_NO_INTERNAL_HELP
70
- + grep: stop using PARSE_OPT_NO_INTERNAL_HELP
71
- + parse-options: allow -h as a short option
72
- + parse-options: inline parse_options_usage() at its only remaining caller
73
- + parse-options: deduplicate parse_options_usage() calls
104
75
- Make "-h" command line option work more consistently in all commands.
105
+* nd/doc-check-ref-format-typo (2015-12-04) 1 commit
106
+ (merged to 'next' on 2015-12-08 at 1ec8a6b)
107
+ + git-check-ref-format.txt: typo, s/avoids/avoid/
108
109
78
-* sg/bash-prompt-dirty-orphan (2015-11-24) 3 commits
79
- (merged to 'next' on 2015-11-24 at ac6eb1c)
80
- + bash prompt: indicate dirty index even on orphan branches
81
- + bash prompt: remove a redundant 'git diff' option
82
- + bash prompt: test dirty index and worktree while on an orphan branch
110
+* rs/status-detached-head-memcmp (2015-11-28) 1 commit
111
+ (merged to 'next' on 2015-12-04 at 60232db)
112
+ + wt-status: correct and simplify check for detached HEAD
113
84
- Produce correct "dirty" marker for shell prompts, even when we
85
- are on an orphan or an unborn branch.
114
+ Fix some string-matching corner cases when digging in the reflog for
115
+ "git status".
116
117
--------------------------------------------------
118
[New Topics]
119
90
-* cb/t3404-shellquote (2015-12-04) 1 commit
91
- - t3404: fix quoting of redirect for some versions of bash
120
+* bc/format-patch-null-from-line (2015-12-07) 2 commits
121
+ - format-patch: add an option to suppress commit hash
122
+ - Introduce a null_oid constant.
123
93
- Will merge to 'next'.
124
+ "format-patch" has learned a new option to zero-out the commit
125
+ object name on the mbox "From " line.
126
127
+ The bottom patch needs to be retitled but otherwise OK. The top
128
+ one names the new option --no-hash that is doubly undesirable.
129
96
-* nd/clear-gitenv-upon-use-of-alias (2015-12-04) 2 commits
97
- - setup.c: re-fix d95138e (setup: set env $GIT_WORK_TREE when ..
98
- - git.c: make it clear save_env() is for alias handling only
130
+ Waiting for a reroll.
131
+ ($gmane/282111)
132
+
133
+
134
+* sn/null-pointer-arith-in-mark-tree-uninteresting (2015-12-07) 1 commit
135
+ (merged to 'next' on 2015-12-08 at 91b14e2)
136
+ + revision.c: fix possible null pointer arithmetic
137
+
138
+ mark_tree_uninteresting() has code to handle the case where it gets
139
+ passed a NULL pointer in its 'tree' parameter, but the function had
140
+ 'object = &tree->object' assignment before checking if tree is
141
+ NULL. This gives a compiler an excuse to declare that tree will
142
+ never be NULL and apply a wrong optimization. Avoid it.
143
+
144
+ Will merge to 'master'.
145
100
- d95138e6 (setup: set env $GIT_WORK_TREE when work tree is set, like
101
- $GIT_DIR, 2015-06-26) attempted to work around a glitch in alias
102
- handling by overwriting GIT_WORK_TREE environment variable to
103
- affect subprocesses when set_git_work_tree() gets called, which
104
- resulted in a rather unpleasant regression to "clone" and "init".
105
- Try to address the same issue by always restoring the environment
106
- and respawning the real underlying command when handling alias.
146
+
147
+* dt/refs-backend-lmdb (2015-12-04) 16 commits
148
+ - refs: tests for lmdb backend
149
+ - refs: add LMDB refs backend
150
+ - refs: allow ref backend to be set for clone
151
+ - init: allow alternate backends to be set for new repos
152
+ - refs: always handle non-normal refs in files backend
153
+ - refs: move duplicate check to common code
154
+ - refs: make lock generic
155
+ - refs: add method to rename refs
156
+ - refs: add methods to init refs backend and db
157
+ - refs: add method for delete_refs
158
+ - refs: add method for initial ref transaction commit
159
+ - refs: add methods for reflog
160
+ - refs: add do_for_each_per_worktree_ref
161
+ - refs: add methods for the ref iterators
162
+ - refs: add methods for misc ref operations
163
+ - refs: add a backend method structure with transaction functions
164
+
165
+ Building on top of a few refs-backend preparatory series, LMDB
166
+ based refs backend has been plugged into the system.
167
168
Waiting for review.
169
170
111
-* nd/doc-check-ref-format-typo (2015-12-04) 1 commit
112
- - git-check-ref-format.txt: typo, s/avoids/avoid/
171
+* dw/subtree-split-do-not-drop-merge (2015-12-10) 1 commit
172
+ - contrib/subtree: fix "subtree split" skipped-merge bug
173
114
- Will merge to 'next'.
174
+ The "split" subcommand of "git subtree" (in contrib/) incorrectly
175
+ skipped merges when it shouldn't, which was corrected.
176
177
+ Waiting for review from 'subtree' folks.
178
117
-* sb/doc-submodule-sync-recursive (2015-12-04) 1 commit
118
- - document submodule sync --recursive
179
+
180
+* ls/p4-keep-empty-commits (2015-12-10) 1 commit
181
+ - git-p4: add option to keep empty commits
182
+
183
+ "git p4" used to import Perforce CLs that touch only paths outside
184
+ the client spec as empty commits. It has been corrected to ignore
185
+ them instead, with a new configuration git-p4.keepEmptyCommits as a
186
+ backward compatibility knob.
187
188
Will merge to 'next'.
189
190
--------------------------------------------------
191
[Stalled]
192
193
+* vl/grep-configurable-threads (2015-12-04) 1 commit
194
+ . grep: add --threads=<num> option and grep.threads configuration
195
+
196
+ "git grep" can now be configured (or told from the command line)
197
+ how many threads to use when searching in the working tree files.
198
+
199
+ There was some review from Eric. Also this seems to break a test.
200
+
201
+ Waiting for a reroll, or at least a response.
202
+ ($gmane/281160)
203
+
204
+
205
+* kf/http-proxy-auth-methods (2015-11-04) 3 commits
206
+ . SQUASH???
207
+ . http: use credential API to handle proxy authentication
208
+ . http: allow selection of proxy authentication method
209
+
210
+ New http.proxyAuthMethod configuration variable can be used to
211
+ specify what authentication method to use, as a way to work around
212
+ proxies that do not give error response expected by libcurl when
213
+ CURLAUTH_ANY is used. Also, the codepath for proxy authentication
214
+ has been taught to use credential API to store the authentication
215
+ material in user's keyrings.
216
+
217
+ I ejected this from pu for the moment, as it conflicts with the
218
+ pt/http-socks-proxy topic. That is now in master, so it can
219
+ be re-rolled on top.
220
+
221
+ Still being worked on.
222
+ ($gmane/280925)
223
+
224
+
225
* nd/ita-cleanup (2015-09-06) 6 commits
226
- grep: make it clear i-t-a entries are ignored
227
- checkout(-index): do not checkout i-t-a entries
@@ -186,35 +286,34 @@ But note that I will _not_ be pushing to kernel.org.
286
--------------------------------------------------
287
[Cooking]
288
189
-* bc/object-id (2015-11-20) 12 commits
190
- (merged to 'next' on 2015-12-04 at 2d3f5f2)
191
- + remote: convert functions to struct object_id
192
- + Remove get_object_hash.
193
- + Convert struct object to object_id
194
- + Add several uses of get_object_hash.
195
- + object: introduce get_object_hash macro.
196
- + ref_newer: convert to use struct object_id
197
- + push_refs_with_export: convert to struct object_id
198
- + get_remote_heads: convert to struct object_id
199
- + parse_fetch: convert to use struct object_id
200
- + add_sought_entry_mem: convert to struct object_id
201
- + Convert struct ref to use object_id.
202
- + sha1_file: introduce has_object_file helper.
289
+* cb/t3404-shellquote (2015-12-04) 1 commit
290
+ (merged to 'next' on 2015-12-08 at 1a01305)
291
+ + t3404: fix quoting of redirect for some versions of bash
292
204
- More transition from "unsigned char[40]" to "struct object_id".
293
+ Will merge to 'master'.
294
206
- This needed a few merge fixups, but is mostly disentangled from other
207
- topics.
295
209
- Will merge to 'master'.
296
+* nd/clear-gitenv-upon-use-of-alias (2015-12-07) 3 commits
297
+ . git.c: make sure we do not leak GIT_* to alias scripts
298
+ - setup.c: re-fix d95138e (setup: set env $GIT_WORK_TREE when ..
299
+ - git.c: make it clear save_env() is for alias handling only
300
301
+ d95138e6 (setup: set env $GIT_WORK_TREE when work tree is set, like
302
+ $GIT_DIR, 2015-06-26) attempted to work around a glitch in alias
303
+ handling by overwriting GIT_WORK_TREE environment variable to
304
+ affect subprocesses when set_git_work_tree() gets called, which
305
+ resulted in a rather unpleasant regression to "clone" and "init".
306
+ Try to address the same issue by always restoring the environment
307
+ and respawning the real underlying command when handling alias.
308
212
-* dt/fsck-verify-pack-error (2015-12-01) 1 commit
213
- (merged to 'next' on 2015-12-04 at fbd82d1)
214
- + verify_pack: do not ignore return value of verification function
309
+ The tip one seems to break tests under "prove".
310
216
- The exit code of git-fsck would not reflect some types of errors found
217
- in packed objects.
311
+ Waiting for review.
312
+
313
+
314
+* sb/doc-submodule-sync-recursive (2015-12-04) 1 commit
315
+ (merged to 'next' on 2015-12-08 at 7c24ee5)
316
+ + document submodule sync --recursive
317
318
Will merge to 'master'.
319
@@ -240,39 +339,13 @@ But note that I will _not_ be pushing to kernel.org.
339
Waiting for review.
340
341
243
-* ls/travis-yaml (2015-11-28) 1 commit
244
- (merged to 'next' on 2015-12-04 at e7852e1)
245
- + Add Travis CI support
246
-
247
- Provides the necessary infrastructure to build topics using the free
248
- Travis CI. Developers forking from this topic (and enabling Travis) can
249
- do their own builds, and we can turn on auto-builds for git/git
250
- (including build-status for pull requests that people open).
251
-
252
- I'm inclined to merge this up, as the worst case is that it becomes
253
- dormant cruft in the repository root.
254
-
255
- Will merge to 'master'.
256
-
257
-
258
-* rs/status-detached-head-memcmp (2015-11-28) 1 commit
259
- (merged to 'next' on 2015-12-04 at 60232db)
260
- + wt-status: correct and simplify check for detached HEAD
261
-
262
- Fix some string-matching corner cases when digging in the reflog for
263
- "git status".
264
-
265
- Will merge to 'master' and then 'maint'.
266
-
267
-
342
* sg/lock-file-commit-error (2015-12-01) 1 commit
269
- - Make error message after failing commit_lock_file() less confusing
343
+ (merged to 'next' on 2015-12-08 at ef53cd6)
344
+ + Make error message after failing commit_lock_file() less confusing
345
346
Cosmetic improvement to lock-file error messages.
347
273
- Comments on the new messages?
274
-
275
- Will merge to 'next' after giving time for bikeshedding.
348
+ Will merge to 'master'.
349
350
351
* bb/merge-marker-crlf (2015-11-24) 1 commit
@@ -355,20 +428,10 @@ But note that I will _not_ be pushing to kernel.org.
428
Waiting for review.
429
430
358
-* ls/test-must-fail-sigpipe (2015-11-28) 2 commits
359
- (merged to 'next' on 2015-12-01 at d374686)
360
- + add "ok=sigpipe" to test_must_fail and use it to fix flaky tests
361
- + implement test_might_fail using a refactored test_must_fail
362
-
363
- Fix some racy client/server tests by treating SIGPIPE the same as a
364
- normal non-zero exit.
365
-
366
- Will merge to 'master' by -rc0.
367
-
368
-
431
* mc/push-recurse-submodules-config (2015-12-04) 3 commits
370
- - push: follow the "last one wins" convention for --recurse-submodules
371
- - push: test that --recurse-submodules on command line overrides config
432
+ (merged to 'next' on 2015-12-08 at 1b81967)
433
+ + push: follow the "last one wins" convention for --recurse-submodules
434
+ + push: test that --recurse-submodules on command line overrides config
435
(merged to 'next' on 2015-11-24 at 3644d4b)
436
+ push: add recurseSubmodules config option
437
@@ -377,56 +440,6 @@ But note that I will _not_ be pushing to kernel.org.
440
Waiting for review from submodule folks.
441
442
380
-* dt/refs-backend-pre-vtable (2015-11-20) 10 commits
381
- (merged to 'next' on 2015-11-24 at 8fd7293)
382
- + refs: break out ref conflict checks
383
- + files_log_ref_write: new function
384
- + initdb: make safe_create_dir public
385
- + refs: split filesystem-based refs code into a new file
386
- + refs/refs-internal.h: new header file
387
- + refname_is_safe(): improve docstring
388
- + pack_if_possible_fn(): use ref_type() instead of is_per_worktree_ref()
389
- + copy_msg(): rename to copy_reflog_msg()
390
- + verify_refname_available(): new function
391
- + verify_refname_available(): rename function
392
-
393
- Code preparation for pluggable ref backends.
394
-
395
- Will merge to 'master' by -rc0.
396
-
397
-
398
-* vl/grep-configurable-threads (2015-12-04) 1 commit
399
- . grep: add --threads=<num> option and grep.threads configuration
400
-
401
- "git grep" can now be configured (or told from the command line)
402
- how many threads to use when searching in the working tree files.
403
-
404
- There was some review from Eric. Also this seems to break a test.
405
-
406
- Waiting for a reroll, or at least a response.
407
- ($gmane/281160)
408
-
409
-
410
-* kf/http-proxy-auth-methods (2015-11-04) 3 commits
411
- . SQUASH???
412
- . http: use credential API to handle proxy authentication
413
- . http: allow selection of proxy authentication method
414
-
415
- New http.proxyAuthMethod configuration variable can be used to
416
- specify what authentication method to use, as a way to work around
417
- proxies that do not give error response expected by libcurl when
418
- CURLAUTH_ANY is used. Also, the codepath for proxy authentication
419
- has been taught to use credential API to store the authentication
420
- material in user's keyrings.
421
-
422
- I ejected this from pu for the moment, as it conflicts with the
423
- pt/http-socks-proxy topic. That is now in master, so it can
424
- be re-rolled on top.
425
-
426
- Still being worked on.
427
- ($gmane/280925)
428
-
429
-
443
* sb/submodule-parallel-update (2015-11-20) 27 commits
444
- clone: allow an explicit argument for parallel submodule clones
445
- submodule update: expose parallelism to the user
@@ -503,17 +516,6 @@ But note that I will _not_ be pushing to kernel.org.
516
Waiting for review.
517
518
506
-* ep/ident-with-getaddrinfo (2015-11-28) 1 commit
507
- (merged to 'next' on 2015-12-01 at 0775d4c)
508
- + ident.c: add support for IPv6
509
-
510
- A build without NO_IPv6 used to use gethostbyname() when guessing
511
- user's hostname, instead of getaddrinfo() that is used in other
512
- codepaths in such a build.
513
-
514
- Will merge to 'master' by -rc0.
515
-
516
-
519
* mh/notes-allow-reading-treeish (2015-10-08) 3 commits
520
(merged to 'next' on 2015-10-23 at 8a697f0)
521
+ notes: allow treeish expressions as notes ref
@@ -688,19 +690,3 @@ But note that I will _not_ be pushing to kernel.org.
690
before this final step can proceed.
691
692
Will keep in 'next'.
691
-
692
-
693
---------------------------------------------------
694
-[Discarded]
695
-
696
-* mr/ff-refs (2015-11-28) 6 commits
697
- . builtin/ff-refs.c: mark some file-local variables static
698
- . ff-refs: Add tests
699
- . ff-refs: Add documentation
700
- . ff-refs: add --dry-run and --skip-worktree options
701
- . ff-refs: update each updatable ref
702
- . ff-refs: builtin cmd to check and fast forward local refs to their upstream
703
-
704
- Specialized command to fast-forward refs to match their upstream.
705
-
706
-