What's cooking (2010/01 #04)
Junio C Hamano committed
Jan 13, 2010 at 15:07 UTC
1a76fbc90765494b2c0fd4e54a4c05237f716214
1 file changed
+216
-165
whats-cooking.txt
+216
-165
@@ -1,9 +1,9 @@
1
To: git@vger.kernel.org
2
-Subject: What's cooking in git.git (Jan 2010, #03; Sun, 10)
3
-X-master-at: 637afcf4e07616d1dd15d33f56c6b72f90f39821
4
-X-next-at: e295b7f76150bd2ee9a82c569ccbbde6b8fba391
2
+Subject: What's cooking in git.git (Jan 2010, #04; Wed, 13)
3
+X-master-at: 1f73566af5bec28cd8489c6139a9ede95817349c
4
+X-next-at: 20f8f4b285926bc486429e4b6b1d6fcf8a74804d
5
6
-What's cooking in git.git (Jan 2010, #03; Sun, 10)
6
+What's cooking in git.git (Jan 2010, #04; Wed, 13)
7
--------------------------------------------------
8
9
Here are the topics that have been cooking. Commits prefixed with '-' are
@@ -14,70 +14,162 @@ still holding onto them.
14
--------------------------------------------------
15
[Graduated to "master"]
16
17
-* tr/http-updates (2009-12-28) 4 commits
18
- (merged to 'next' on 2010-01-02 at cf25698)
19
- + Remove http.authAny
20
- + Allow curl to rewind the RPC read buffer
21
- + Add an option for using any HTTP authentication scheme, not only basic
22
- + http: maintain curl sessions
23
-
24
-* jk/maint-1.6.5-reset-hard (2009-12-30) 1 commit
25
- (merged to 'next' on 2010-01-02 at 190d63b)
26
- + reset: unbreak hard resets with GIT_WORK_TREE
27
-
28
-* jk/push-to-delete (2009-12-30) 1 commit
29
- (merged to 'next' on 2010-01-03 at 9ee293b)
30
- + builtin-push: add --delete as syntactic sugar for :foo
31
-
32
-* mm/config-path (2009-12-30) 1 commit
33
- (merged to 'next' on 2010-01-03 at 9c0e81a)
34
- + builtin-config: add --path option doing ~ and ~user expansion.
17
+* nd/sparse (2010-01-04) 25 commits
18
+ (merged to 'next' on 2010-01-10 at fa73d6e)
19
+ + t7002: test for not using external grep on skip-worktree paths
20
+ + t7002: set test prerequisite "external-grep" if supported
21
+ (merged to 'next' on 2010-01-02 at 5499bbe)
22
+ + grep: do not do external grep on skip-worktree entries
23
+ + commit: correctly respect skip-worktree bit
24
+ + ie_match_stat(): do not ignore skip-worktree bit with CE_MATCH_IGNORE_VALID
25
+ + tests: rename duplicate t1009
26
+ + sparse checkout: inhibit empty worktree
27
+ + Add tests for sparse checkout
28
+ + read-tree: add --no-sparse-checkout to disable sparse checkout support
29
+ + unpack-trees(): ignore worktree check outside checkout area
30
+ + unpack_trees(): apply $GIT_DIR/info/sparse-checkout to the final index
31
+ + unpack-trees(): "enable" sparse checkout and load $GIT_DIR/info/sparse-checkout
32
+ + unpack-trees.c: generalize verify_* functions
33
+ + unpack-trees(): add CE_WT_REMOVE to remove on worktree alone
34
+ + Introduce "sparse checkout"
35
+ + dir.c: export excluded_1() and add_excludes_from_file_1()
36
+ + excluded_1(): support exclude files in index
37
+ + unpack-trees(): carry skip-worktree bit over in merged_entry()
38
+ + Read .gitignore from index if it is skip-worktree
39
+ + Avoid writing to buffer in add_excludes_from_file_1()
40
+ + Teach Git to respect skip-worktree bit (writing part)
41
+ + Teach Git to respect skip-worktree bit (reading part)
42
+ + Introduce "skip-worktree" bit in index, teach Git to get/set this bit
43
+ + Add test-index-version
44
+ + update-index: refactor mark_valid() in preparation for new options
45
36
-* pm/cvs-environ (2009-12-30) 1 commit
37
- (merged to 'next' on 2010-01-03 at 4c22932)
38
- + CVS Server: Support reading base and roots from environment
46
+With the removal of external grep near future, some codepaths will be
47
+slightly simplified.
48
40
-* tr/maint-1.6.5-bash-prompt-show-submodule-changes (2009-12-31) 1 commit
41
- (merged to 'next' on 2010-01-03 at b785974)
42
- + bash completion: factor submodules into dirty state
49
+* cc/reset-more (2010-01-08) 8 commits
50
+ (merged to 'next' on 2010-01-10 at 84730de)
51
+ + t7111: check that reset options work as described in the tables
52
+ (merged to 'next' on 2010-01-06 at 96639cb)
53
+ + Documentation: reset: add some missing tables
54
+ (merged to 'next' on 2010-01-04 at 8802c2c)
55
+ + Fix bit assignment for CE_CONFLICTED
56
+ (merged to 'next' on 2010-01-03 at f83d4c6)
57
+ + "reset --merge": fix unmerged case
58
+ + reset: use "unpack_trees()" directly instead of "git read-tree"
59
+ + reset: add a few tests for "git reset --merge"
60
+ + Documentation: reset: add some tables to describe the different options
61
+ + reset: improve mixed reset error message when in a bare repo
62
44
-* bg/maint-remote-update-default (2009-12-31) 1 commit
45
- (merged to 'next' on 2010-01-03 at 113009e)
46
- + Fix "git remote update" with remotes.defalt set
63
+* rs/maint-archive-match-pathspec (2009-12-12) 1 commit
64
+ (merged to 'next' on 2010-01-03 at 92d7d15)
65
+ + archive: complain about path specs that don't match anything
66
48
-* mm/diag-path-in-treeish (2009-12-07) 1 commit
49
- (merged to 'next' on 2010-01-06 at 6b4201e)
50
- + Detailed diagnosis when parsing an object name fails.
67
+* il/vcs-helper (2010-01-09) 9 commits
68
+ (merged to 'next' on 2010-01-10 at 11e448e)
69
+ + Reset possible helper before reusing remote structure
70
+ (merged to 'next' on 2010-01-06 at 7c79f42)
71
+ + Remove special casing of http, https and ftp
72
+ + Support remote archive from all smart transports
73
+ + Support remote helpers implementing smart transports
74
+ + Support taking over transports
75
+ + Refactor git transport options parsing
76
+ + Pass unknown protocols to external protocol handlers
77
+ + Support mandatory capabilities
78
+ + Add remote helper debug mode
79
52
-* fc/opt-quiet-gc-reset (2009-12-02) 1 commit
53
- (merged to 'next' on 2010-01-06 at 03e00cd)
54
- + General --quiet improvements
80
+* jc/checkout-merge-base (2010-01-07) 4 commits
81
+ (merged to 'next' on 2010-01-07 at 5229608)
82
+ + rebase -i: teach --onto A...B syntax
83
+ + rebase: fix --onto A...B parsing and add tests
84
+ (merged to 'next' on 2010-01-02 at 6a8f6fc)
85
+ + "rebase --onto A...B" replays history on the merge base between A and B
86
+ + "checkout A...B" switches to the merge base between A and B
87
88
--------------------------------------------------
89
[New Topics]
90
59
-* bk/fix-relative-gitdir-file (2010-01-08) 2 commits
60
- - Handle relative paths in submodule .git files
61
- - Test update-index for a gitlink to a .git file
62
-
63
-* jc/ident (2010-01-08) 3 commits
64
- - ident.c: treat $EMAIL as giving user.email identity explicitly
65
- (merged to 'next' on 2010-01-10 at f1f9ded)
66
- + ident.c: check explicit identity for name and email separately
67
- + ident.c: remove unused variables
68
-
69
-* jc/ls-files-ignored-pathspec (2010-01-08) 4 commits
70
- - ls-files: fix overeager pathspec optimization
71
- - read_directory(): further split treat_path()
72
- - read_directory_recursive(): refactor handling of a single path into a separate function
73
- - t3001: test ls-files -o ignored/dir
74
-
75
-* js/exec-error-report (2010-01-10) 4 commits
76
- - Improve error message when a transport helper was not found
77
- - start_command: detect execvp failures early
78
- - run-command: move wait_or_whine earlier
79
- - start_command: report child process setup errors to the parent's stderr
80
- (this branch uses il/vcs-helper.)
91
+* jc/maint-1.6.4-grep-lookahead (2010-01-10) 1 commit
92
+ (merged to 'next' on 2010-01-13 at 20f8f4b)
93
+ + grep: optimize built-in grep by skipping lines that do not hit
94
+ (this branch is used by jc/grep-lookahead and jc/maint-grep-lookahead.)
95
+
96
+Optimize the "line-by-line" internal grep by skiping en masse over lines
97
+that cannot possibly match.
98
+
99
+* jc/maint-grep-lookahead (2010-01-12) 0 commits
100
+ (this branch uses jc/maint-1.6.4-grep-lookahead; is used by jc/grep-lookahead.)
101
+
102
+Early conflict resolution for the above for recent git.
103
+
104
+* jc/grep-lookahead (2010-01-12) 2 commits
105
+ (merged to 'next' on 2010-01-13 at 20f8f4b)
106
+ + grep: rip out pessimization to use fixmatch()
107
+ + grep: rip out support for external grep
108
+ (this branch uses jc/maint-1.6.4-grep-lookahead and jc/maint-grep-lookahead.)
109
+
110
+This is for eventual inclusion for the next release.
111
+
112
+* jc/symbol-static (2010-01-11) 17 commits
113
+ - symlinks.c: remove unused functions
114
+ - object.c: remove unused functions
115
+ - blob.c: remove unused function
116
+ - strbuf.c: remove unused function
117
+ - sha1_file.c: remove unused function
118
+ - mailmap.c: remove unused function
119
+ - utf8.c: mark file-local function static
120
+ - submodule.c: mark file-local function static
121
+ - quote.c: mark file-local function static
122
+ - remote-curl.c: mark file-local function static
123
+ - read-cache.c: mark file-local functions static
124
+ - parse-options.c: mark file-local function static
125
+ - entry.c: mark file-local function static
126
+ - http.c: mark file-local functions static
127
+ - pretty.c: mark file-local function static
128
+ - builtin-rev-list.c: mark file-local function static
129
+ - bisect.c: mark file-local function static
130
+
131
+Mark file-local symbols "static", and remove unused functions. Daniel
132
+suggests to leave some comment for blob.c and I agree in principle, but
133
+I don't think of a good description myself.
134
+
135
+* nd/include-termios-for-osol (2010-01-11) 1 commit
136
+ - Add missing #include to support TIOCGWINSZ on Solaris
137
+
138
+* pc/uninteresting-submodule-disappear-upon-switch-branches (2010-01-11) 1 commit
139
+ - Remove empty directories when checking out a commit with fewer submodules
140
+
141
+Instead of using unlink(2) that will never succeed, use rmdir(2) to remove
142
+an empty directory, knowing that this won't harm a populated directory.
143
+
144
+* sd/cd-p-show-toplevel (2010-01-12) 2 commits
145
+ - Use $(git rev-parse --show-toplevel) in cd_to_toplevel().
146
+ - Add 'git rev-parse --show-toplevel' option.
147
+
148
+Avoid having to use "cd -P" that may not be available on some platforms'
149
+shells.
150
+
151
+* jk/warn-author-committer-after-commit (2010-01-13) 4 commits
152
+ - commit: allow suppression of implicit identity advice
153
+ - commit: show interesting ident information in summary
154
+ - strbuf: add strbuf_addbuf_percentquote
155
+ - strbuf_expand: convert "%%" to "%"
156
+
157
+* js/refer-upstream (2009-09-10) 1 commit
158
+ - Introduce <branch>@{upstream} notation
159
+
160
+This does not teach the public interface about the new syntax; callers
161
+that care about distinction between name vs SHA-1 might not work as well
162
+as they should.
163
+
164
+* mm/conflict-advice (2010-01-12) 1 commit
165
+ - Be more user-friendly when refusing to do something because of conflict.
166
+
167
+* jc/maint-strbuf-add-fix-doubling (2010-01-12) 1 commit
168
+ - strbuf_addbuf(): allow passing the same buf to dst and src
169
+
170
+* jl/submodule-diff (2010-01-13) 2 commits
171
+ - Teach diff that modified submodule directory is dirty
172
+ - Show submodules as modified when they contain a dirty work tree
173
174
--------------------------------------------------
175
[Stalled]
@@ -93,12 +185,11 @@ still holding onto them.
185
"git pull" patch needs sq-then-eval fix to protect it from $IFS
186
but otherwise seemed good.
187
96
-* jh/commit-status (2009-12-07) 1 commit
97
- - [test?] Add commit.status, --status, and --no-status
98
-
99
-Needs tests.
100
-
101
-* mh/rebase-fixup (2009-12-07) 2 commits
188
+* mh/rebase-fixup (2010-01-12) 5 commits
189
+ (merged to 'next' on 2010-01-12 at e84eab0)
190
+ + rebase-i: Ignore comments and blank lines in peek_next_command
191
+ + lib-rebase: Allow comments and blank lines to be added to the rebase script
192
+ + lib-rebase: Provide clearer debugging info about what the editor did
193
(merged to 'next' on 2010-01-06 at c4779a7)
194
+ Add a command "fixup" to rebase --interactive
195
+ t3404: Use test_commit to set up test repository
@@ -137,76 +228,53 @@ file complaints before I do so if people have objections.
228
229
Hold: JH on 2010-01-05, http://article.gmane.org/gmane.comp.version-control.git/136183
230
231
+* jh/gitweb-cached (2010-01-13) 7 commits
232
+ - (sign-off?) gitweb: File based caching layer (from git.kernel.org)
233
+ - (sign-off?) gitweb: add a get function to compliment print_local_time
234
+ - (sign-off?) gitweb: Convert output to using indirect file handle
235
+ - gitweb: Optionally add "git" links in project list page
236
+ - gitweb: Makefile improvements
237
+ - gitweb: Add option to force version match
238
+ - gitweb: Load checking
239
+
240
+Replaced with a re-roll. Update to t9500 is probably needed.
241
+
242
--------------------------------------------------
141
-[Will graduate after a bit more cooking]
243
+[Cooking]
244
143
-* nd/sparse (2010-01-04) 25 commits
144
- (merged to 'next' on 2010-01-10 at fa73d6e)
145
- + t7002: test for not using external grep on skip-worktree paths
146
- + t7002: set test prerequisite "external-grep" if supported
147
- (merged to 'next' on 2010-01-02 at 5499bbe)
148
- + grep: do not do external grep on skip-worktree entries
149
- + commit: correctly respect skip-worktree bit
150
- + ie_match_stat(): do not ignore skip-worktree bit with CE_MATCH_IGNORE_VALID
151
- + tests: rename duplicate t1009
152
- + sparse checkout: inhibit empty worktree
153
- + Add tests for sparse checkout
154
- + read-tree: add --no-sparse-checkout to disable sparse checkout support
155
- + unpack-trees(): ignore worktree check outside checkout area
156
- + unpack_trees(): apply $GIT_DIR/info/sparse-checkout to the final index
157
- + unpack-trees(): "enable" sparse checkout and load $GIT_DIR/info/sparse-checkout
158
- + unpack-trees.c: generalize verify_* functions
159
- + unpack-trees(): add CE_WT_REMOVE to remove on worktree alone
160
- + Introduce "sparse checkout"
161
- + dir.c: export excluded_1() and add_excludes_from_file_1()
162
- + excluded_1(): support exclude files in index
163
- + unpack-trees(): carry skip-worktree bit over in merged_entry()
164
- + Read .gitignore from index if it is skip-worktree
165
- + Avoid writing to buffer in add_excludes_from_file_1()
166
- + Teach Git to respect skip-worktree bit (writing part)
167
- + Teach Git to respect skip-worktree bit (reading part)
168
- + Introduce "skip-worktree" bit in index, teach Git to get/set this bit
169
- + Add test-index-version
170
- + update-index: refactor mark_valid() in preparation for new options
245
+* jh/commit-status (2010-01-13) 2 commits
246
+ (merged to 'next' on 2010-01-13 at 0905d59)
247
+ + t7502: test commit.status, --status and --no-status
248
+ + commit: support commit.status, --status, and --no-status
249
172
-I've queued the (close to) original tests for external grep, but as a belt
173
-and suspender measure Nguyễn may also want to add the whitebox test
174
-in the review thread.
250
+I have already given ample time for people to react, but ended up getting
251
+tired of waiting for tests to materialize and doing it myself, as I want
252
+to close merge window for 1.7.0-rc0 by the end of next week to have the
253
+final release early next month.
254
176
-* cc/reset-more (2010-01-08) 8 commits
177
- (merged to 'next' on 2010-01-10 at 84730de)
178
- + t7111: check that reset options work as described in the tables
179
- (merged to 'next' on 2010-01-06 at 96639cb)
180
- + Documentation: reset: add some missing tables
181
- (merged to 'next' on 2010-01-04 at 8802c2c)
182
- + Fix bit assignment for CE_CONFLICTED
183
- (merged to 'next' on 2010-01-03 at f83d4c6)
184
- + "reset --merge": fix unmerged case
185
- + reset: use "unpack_trees()" directly instead of "git read-tree"
186
- + reset: add a few tests for "git reset --merge"
187
- + Documentation: reset: add some tables to describe the different options
188
- + reset: improve mixed reset error message when in a bare repo
255
+* bk/fix-relative-gitdir-file (2010-01-08) 2 commits
256
+ - Handle relative paths in submodule .git files
257
+ - Test update-index for a gitlink to a .git file
258
190
-* rs/maint-archive-match-pathspec (2009-12-12) 1 commit
191
- (merged to 'next' on 2010-01-03 at 92d7d15)
192
- + archive: complain about path specs that don't match anything
259
+* jc/ident (2010-01-08) 3 commits
260
+ - ident.c: treat $EMAIL as giving user.email identity explicitly
261
+ (merged to 'next' on 2010-01-10 at f1f9ded)
262
+ + ident.c: check explicit identity for name and email separately
263
+ + ident.c: remove unused variables
264
194
-* il/vcs-helper (2010-01-09) 9 commits
195
- (merged to 'next' on 2010-01-10 at 11e448e)
196
- + Reset possible helper before reusing remote structure
197
- (merged to 'next' on 2010-01-06 at 7c79f42)
198
- + Remove special casing of http, https and ftp
199
- + Support remote archive from all smart transports
200
- + Support remote helpers implementing smart transports
201
- + Support taking over transports
202
- + Refactor git transport options parsing
203
- + Pass unknown protocols to external protocol handlers
204
- + Support mandatory capabilities
205
- + Add remote helper debug mode
206
- (this branch is used by js/exec-error-report.)
265
+Opinions on the topmost one?
266
208
---------------------------------------------------
209
-[Cooking]
267
+* jc/ls-files-ignored-pathspec (2010-01-08) 4 commits
268
+ - ls-files: fix overeager pathspec optimization
269
+ - read_directory(): further split treat_path()
270
+ - read_directory_recursive(): refactor handling of a single path into a separate function
271
+ - t3001: test ls-files -o ignored/dir
272
+
273
+* js/exec-error-report (2010-01-12) 4 commits
274
+ - Improve error message when a transport helper was not found
275
+ - start_command: detect execvp failures early
276
+ - run-command: move wait_or_whine earlier
277
+ - start_command: report child process setup errors to the parent's stderr
278
279
* jc/maint-1.6.1-checkout-m-custom-merge (2010-01-06) 1 commit
280
(merged to 'next' on 2010-01-10 at df14116)
@@ -229,30 +297,23 @@ in the review thread.
297
+ git-difftool: Add '--gui' for selecting a GUI tool
298
+ t7800-difftool: Set a bogus tool for use by tests
299
232
-* jh/gitweb-cached (2010-01-03) 4 commits
233
- - gitweb: Makefile improvements
234
- - gitweb: Optionally add "git" links in project list page
235
- - gitweb: Add option to force version match
236
- - gitweb: Load checking
237
-
238
-Hold: Warthog on 2010-01-06, http://article.gmane.org/gmane.comp.version-control.git/136306
239
-
300
* tc/test-locate-httpd (2010-01-02) 1 commit
301
(merged to 'next' on 2010-01-06 at 9d913e5)
302
+ t/lib-http.sh: Restructure finding of default httpd location
303
304
* jc/fix-tree-walk (2009-09-14) 7 commits
245
- - read-tree --debug-unpack
246
- - unpack-trees.c: look ahead in the index
247
- - unpack-trees.c: prepare for looking ahead in the index
248
- - Aggressive three-way merge: fix D/F case
249
- - traverse_trees(): handle D/F conflict case sanely
250
- - more D/F conflict tests
251
- - tests: move convenience regexp to match object names to test-lib.sh
305
+ (merged to 'next' on 2010-01-13 at 1c01b87)
306
+ + read-tree --debug-unpack
307
+ + unpack-trees.c: look ahead in the index
308
+ + unpack-trees.c: prepare for looking ahead in the index
309
+ + Aggressive three-way merge: fix D/F case
310
+ + traverse_trees(): handle D/F conflict case sanely
311
+ + more D/F conflict tests
312
+ + tests: move convenience regexp to match object names to test-lib.sh
313
314
Resurrected from "Ejected" category. This is fix for a tricky codepath
254
-and testing and improving before it hits 'next' by brave souls is greatly
255
-appreciated (I am using this in my private build).
315
+and testing and improving before it hits 'master' is greatly appreciated.
316
+(I have been using this in my private build for some time).
317
318
* jc/branch-d (2009-12-29) 1 commit
319
(merged to 'next' on 2010-01-10 at 61a14b7)
@@ -293,26 +354,16 @@ Perhaps needs an entry in the Release Notes, but otherwise looked Ok.
354
+ Smart-http: check if repository is OK to export before serving it
355
356
* jc/cache-unmerge (2009-12-25) 9 commits
296
- - rerere forget path: forget recorded resolution
297
- - rerere: refactor rerere logic to make it independent from I/O
298
- - rerere: remove silly 1024-byte line limit
299
- - resolve-undo: teach "update-index --unresolve" to use resolve-undo info
300
- - resolve-undo: "checkout -m path" uses resolve-undo information
301
- - resolve-undo: allow plumbing to clear the information
302
- - resolve-undo: basic tests
303
- - resolve-undo: record resolved conflicts in a new index extension section
304
- - builtin-merge.c: use standard active_cache macros
305
-
306
-Will wait a bit more before moving it to 'next'. J6t spotted an issue
307
-with "rerere forget" and has a test script.
308
-
309
-* jc/checkout-merge-base (2010-01-07) 4 commits
310
- (merged to 'next' on 2010-01-07 at 5229608)
311
- + rebase -i: teach --onto A...B syntax
312
- + rebase: fix --onto A...B parsing and add tests
313
- (merged to 'next' on 2010-01-02 at 6a8f6fc)
314
- + "rebase --onto A...B" replays history on the merge base between A and B
315
- + "checkout A...B" switches to the merge base between A and B
357
+ (merged to 'next' on 2010-01-13 at 2290c44)
358
+ + rerere forget path: forget recorded resolution
359
+ + rerere: refactor rerere logic to make it independent from I/O
360
+ + rerere: remove silly 1024-byte line limit
361
+ + resolve-undo: teach "update-index --unresolve" to use resolve-undo info
362
+ + resolve-undo: "checkout -m path" uses resolve-undo information
363
+ + resolve-undo: allow plumbing to clear the information
364
+ + resolve-undo: basic tests
365
+ + resolve-undo: record resolved conflicts in a new index extension section
366
+ + builtin-merge.c: use standard active_cache macros
367
368
* tr/http-push-ref-status (2010-01-08) 6 commits
369
- transport-helper.c::push_refs(): emit "no refs" error message