What's cooking
Junio C Hamano committed
Jun 12, 2009 at 02:10 UTC
bec61476ede93cdf19b62b164689455960666137
1 file changed
+366
whats/cooking/2009/06/01.txt
new
+366
@@ -0,0 +1,366 @@
1
+To: git@vger.kernel.org
2
+Subject: What's cooking in git.git (Jun 2009, #01; Fri, 12)
3
+X-master-at: b8364903c3e4cde713102e4a36d3926b020b0f70
4
+X-next-at: f0de74fb063e75167a6c218a93cfeae5b8bdaaba
5
+
6
+What's cooking in git.git (Jun 2009, #01; Fri, 12)
7
+--------------------------------------------------
8
+
9
+Here are the topics that have been cooking. Commits prefixed with '-' are
10
+only in 'pu' while commits prefixed with '+' are in 'next'. The ones
11
+marked with '.' do not appear in any of the branches, but I am still
12
+holding onto them.
13
+
14
+The topics list the commits in reverse chronological order. The topics
15
+meant to be merged to the maintenance series have "maint-" in their names.
16
+
17
+Unfortunately I am unusually short of time these days, and some of the
18
+topics unfortunately got less "final review before deciding to merge up"
19
+than I would have liked to give them. This message itself has more
20
+"please comment/review" requests than usual.
21
+
22
+----------------------------------------------------------------
23
+[New Topics]
24
+
25
+* tr/die_errno (Mon Jun 8 23:02:20 2009 +0200) 4 commits
26
+ - Use die_errno() instead of die() when checking syscalls
27
+ - Convert existing die(..., strerror(errno)) to die_errno()
28
+ - die_errno(): double % in strerror() output just in case
29
+ - Introduce die_errno() that appends strerror(errno) to die()
30
+
31
+I didn't check the individual conversion from die() to die_errno()
32
+in this latest round; comments?
33
+
34
+* cb/maint-no-double-merge (Mon Jun 1 11:20:56 2009 +0200) 1 commit
35
+ + refuse to merge during a merge
36
+
37
+Will merge to 'master' soonish.
38
+
39
+* sp/msysgit (Thu Jun 11 22:56:12 2009 +0200) 13 commits
40
+ + compat/ has subdirectories: do not omit them in 'make clean'
41
+ + Fix typo in nedmalloc warning fix
42
+ + MinGW: Teach Makefile to detect msysgit and apply specific
43
+ settings
44
+ + Fix warnings in nedmalloc when compiling with GCC 4.4.0
45
+ + Add custom memory allocator to MinGW and MacOS builds
46
+ + MinGW readdir reimplementation to support d_type
47
+ + connect.c: Support PuTTY plink and TortoisePlink as SSH on Windows
48
+ + git: browsing paths with spaces when using the start command
49
+ + MinGW: fix warning about implicit declaration of _getch()
50
+ + test-chmtime: work around Windows limitation
51
+ + Work around a regression in Windows 7, causing erase_in_line() to
52
+ crash sometimes
53
+ + Quiet make: do not leave Windows behind
54
+ + MinGW: GCC >= 4 does not need SNPRINTF_SIZE_CORR anymore
55
+
56
+A silly typo I failed to spot was fixed by J6t; should be ready for
57
+'master' now.
58
+
59
+* mh/master-send-email (Sun Jun 7 23:40:52 2009 +0200) 8 commits
60
+ - send-email: fix a typo in a comment
61
+ - Merge branch 'mh/maint-send-email' into mh/master-send-email
62
+ - Merge branch 'mh/master-send-email-threaded-fix' into mh/master-
63
+ send-email
64
+ - add a test for git-send-email for threaded mails without chain-
65
+ reply-to
66
+ - send-email: fix threaded mails without chain-reply-to
67
+ - doc/send-email: clarify the behavior of --in-reply-to with --no-
68
+ thread
69
+ - send-email: fix non-threaded mails
70
+ - add a test for git-send-email for non-threaded mails
71
+
72
+The author seems to have a better organization than the way I queued this
73
+topic, so I am holding off merging it to 'next' yet. My goal was to have
74
+two topics, one eventually mergeable to 'maint', the other to 'master'.
75
+
76
+* mn/maint-iconv-autoconf (Mon Jun 8 20:46:38 2009 -0700) 1 commit
77
+ - fix handling of iconv configuration options
78
+
79
+Will merge to 'next' soon.
80
+
81
+* rc/maint-http-local-slot-fix (Sat Jun 6 16:43:26 2009 +0800) 1 commit
82
+ + http*: cleanup slot->local after fclose
83
+
84
+* sb/parse-options-integer (Thu Jun 4 16:43:57 2009 -0700) 2 commits
85
+ + parse-options: simplify usage argh handling
86
+ + parse-options: make OPT_INTEGER's argh explicit
87
+
88
+* sb/pull-rebase (Fri Jun 12 00:39:21 2009 +0200) 3 commits
89
+ - parse-remote: remove unused functions
90
+ - parse-remote: support default reflist in get_remote_merge_branch
91
+ - parse-remote: function to get the tracking branch to be merge
92
+
93
+Will merge to 'next' soon, but it would be nice if we can fix the
94
+"currently works only for the default mapping" before it goes to
95
+'master'.
96
+
97
+* ne/futz-upload-pack (Wed Jun 10 01:50:18 2009 +0200) 1 commit
98
+ - Shift object enumeration out of upload-pack
99
+
100
+* ml/http (Wed May 27 23:16:03 2009 -0400) 2 commits
101
+ - http.c: add http.sslCertNoPass option
102
+ - http.c: prompt for SSL client certificate password
103
+
104
+I think "sslCertNoPass" is a mistake. We should aim for the ideal (i.e.
105
+detect when we do not need passphrase), and live with a configuration
106
+kludge until the code achives the ideal (i.e. "needPass" to trigger the
107
+new codepath to ask for passphrase), _if_ that ideal is achievable. And
108
+in this particular case, I think the ideal is not rocket science.
109
+
110
+* mg/pushurl (Tue Jun 9 18:01:38 2009 +0200) 5 commits
111
+ - builtin-remote: Make "remote -v" display push urls
112
+ - builtin-remote: Show push urls as well
113
+ - technical/api-remote: Describe new struct remote member pushurl
114
+ - t5516: Check pushurl config setting
115
+ - Allow push and fetch urls to be different
116
+
117
+Will merge to 'next' soon.
118
+
119
+----------------------------------------------------------------
120
+[Graduated to "master"]
121
+
122
+* tr/maint-doc-stash-pop (Thu May 28 11:40:15 2009 +0200) 1 commit
123
+ + Documentation: teach stash/pop workflow instead of stash/apply
124
+
125
+* da/pretty-tempname (Sun May 31 01:35:52 2009 -0700) 3 commits
126
+ + diff: generate pretty filenames in prep_temp_blob()
127
+ + compat: add a basename() compatibility function
128
+ + compat: add a mkstemps() compatibility function
129
+
130
+* cb/maint-1.6.0-xdl-merge-fix (Mon May 25 01:21:14 2009 +0100) 2 commits
131
+ + Change xdl_merge to generate output even for null merges
132
+ + t6023: merge-file fails to output anything for a degenerate merge
133
+
134
+----------------------------------------------------------------
135
+[Will merge to "master" soon]
136
+
137
+* bc/solaris (Sun Jun 7 07:40:29 2009 +0200) 10 commits
138
+ - configure: test whether -lresolv is needed
139
+ + Makefile: insert SANE_TOOL_PATH to PATH before /bin or /usr/bin
140
+ + git-compat-util.h: avoid using c99 flex array feature with Sun
141
+ compiler 5.8
142
+ + Makefile: add section for SunOS 5.7
143
+ + Makefile: introduce SANE_TOOL_PATH for prepending required
144
+ elements to PATH
145
+ + Makefile: define __sun__ on SunOS
146
+ + git-compat-util.h: tweak the way _XOPEN_SOURCE is set on Solaris
147
+ + On Solaris choose the OLD_ICONV iconv() declaration based on the
148
+ UNIX spec
149
+ + Makefile: add NEEDS_RESOLV to optionally add -lresolv to compile
150
+ arguments
151
+ + Makefile: use /usr/ucb/install on SunOS platforms rather than
152
+ ginstall
153
+
154
+We saw some success report with Sun's c99 compiler, which would allow us
155
+to include the last remaining patch from Brandon with updates. I lost
156
+track of the status of the tip patch for autoconf. Is it ready to go?
157
+Comments from Solaris folks are appreciated.
158
+
159
+* cb/match_refs_internal_tail (Sun May 31 16:26:48 2009 +0200) 1 commit
160
+ + match_refs: search ref list tail internally
161
+
162
+* nw/maint-cvsexportcommit (Fri May 29 00:23:33 2009 +0100) 1 commit
163
+ + git-cvsexportcommit can't commit files which have been removed
164
+ from CVS
165
+
166
+* ak/maint-for-each-ref-no-lookup (Wed May 27 15:23:12 2009 -0400) 1 commit
167
+ + for-each-ref: Do not lookup objects when they will not be used
168
+
169
+I think this makes sense, except that I have this nagging feeling that its
170
+use of for_each_rawref() where the original used for_each_ref() may have
171
+some unintended side effects in corner cases.
172
+
173
+* ph/submodule-rebase (Wed Jun 3 00:59:12 2009 +0200) 3 commits
174
+ - git-submodule: add support for --merge.
175
+ + Rename submodule.<name>.rebase to submodule.<name>.update
176
+ + git-submodule: add support for --rebase.
177
+
178
+I think people do not have issues with the first two, even though some
179
+might still argue that "update --merge" is not a good mode of
180
+operation.
181
+
182
+* da/araxis-mergetool (Sun May 24 00:24:41 2009 +0000) 1 commit
183
+ + mergetool--lib: add support for araxis merge
184
+
185
+* cc/bisect (Sat Jun 6 06:41:35 2009 +0200) 5 commits
186
+ + t6030: test skipping away from an already skipped commit
187
+ + bisect: when skipping, choose a commit away from a skipped commit
188
+ + bisect: add parameters to "filter_skipped"
189
+ + bisect: display first bad commit without forking a new process
190
+ + bisect: drop unparse_commit() and use clear_commit_marks()
191
+
192
+Regardless of metrics, this is an improvement from the current one. Will
193
+merge to 'master', and let the finer details taken care of later.
194
+
195
+* rc/http-push (Sat Jun 6 16:44:02 2009 +0800) 24 commits
196
+ + http*: add helper methods for fetching objects (loose)
197
+ + http*: add helper methods for fetching packs
198
+ + http: use new http API in fetch_index()
199
+ + http*: add http_get_info_packs
200
+ + http-push.c::fetch_symref(): use the new http API
201
+ + http-push.c::remote_exists(): use the new http API
202
+ + http.c::http_fetch_ref(): use the new http API
203
+ + transport.c::get_refs_via_curl(): use the new http API
204
+ + http.c: new functions for the http API
205
+ + http: create function end_url_with_slash
206
+ + http*: move common variables and macros to http.[ch]
207
+ + transport.c::get_refs_via_curl(): do not leak refs_url
208
+ + Don't expect verify_pack() callers to set pack_size
209
+ + http-push: do not SEGV after fetching a bad pack idx file
210
+ + http*: copy string returned by sha1_to_hex
211
+ + http-walker: verify remote packs
212
+ + http-push, http-walker: style fixes
213
+ + t5550-http-fetch: test fetching of packed objects
214
+ + http-push: fix missing "#ifdef USE_CURL_MULTI" around
215
+ "is_running_queue"
216
+ + http-push: send out fetch requests on queue
217
+ + t5540-http-push: test fetching of packed objects
218
+ + t5540-http-push: test fetching of loose objects
219
+ + Merge branch 'rc/maint-http-local-slot-fix' into rc/http-push
220
+ + http*: cleanup slot->local after fclose
221
+
222
+I do not use http-push myself, and as I said, I have shortage of git time
223
+in recent weeks, so these are not as carefully reviewed as usual; but
224
+RCTay is proving to be a very reliable HTTP guy I can trust, so unless
225
+there are regression reports from people who actually use http-push, this
226
+will be in 'master' soon.
227
+
228
+----------------------------------------------------------------
229
+[Stalled and may need help and prodding to go forward]
230
+
231
+* jh/notes (Sat May 16 13:44:17 2009 +0200) 5 commits
232
+ - Teach "-m <msg>" and "-F <file>" to "git notes edit"
233
+ - Add an expensive test for git-notes
234
+ - Speed up git notes lookup
235
+ - Add a script to edit/inspect notes
236
+ - Introduce commit notes
237
+
238
+Dscho asked about the performance implications of this; I do not think I
239
+saw any progress on that yet...
240
+
241
+* lt/read-directory (Fri May 15 12:01:29 2009 -0700) 3 commits
242
+ - Add initial support for pathname conversion to UTF-8
243
+ - read_directory(): infrastructure for pathname character set
244
+ conversion
245
+ - Add 'fill_directory()' helper function for directory traversal
246
+
247
+Before adding the real "conversion", this needs a few real fixups, I
248
+think. For example there is one hardcoded array that is used without
249
+bounds check.
250
+
251
+* ar/maint-1.6.2-merge-recursive-d-f (Mon May 11 21:25:36 2009 +0200) 2 commits
252
+ - Fix for a merge where a branch has an F->D transition
253
+ - Add a reminder test case for a merge with F/D transition
254
+
255
+Although the reported breakage is covered with the patch, Alex feels the
256
+solution unsatisfactory. Cleaning up D/F conflict handling in merge-recursive
257
+may be long overdue but seems to be a hard problem.
258
+
259
+* ps/blame (Thu Mar 12 21:30:03 2009 +1100) 1 commit
260
+ - blame.c: start libifying the blame infrastructure
261
+
262
+A few minor point remains in this initial one.
263
+
264
+* jc/log-tz (Tue Mar 3 00:45:37 2009 -0800) 1 commit
265
+ - Allow --date=local --date=other-format to work as expected
266
+
267
+The one I posted had a few corner-case bugs that was caught with the test
268
+suite; this one has them fixed. People did not like the UI so it is kept
269
+out of 'next'
270
+
271
+* jc/merge-convert (Mon Jan 26 16:45:01 2009 -0800) 1 commit
272
+ - git-merge-file: allow converting the results for the work tree
273
+
274
+This is a feature waiting for a user.
275
+
276
+We did not give scripted Porcelains a way to say "this temporary file I am
277
+using for merging is for this path, so use the core.autocrlf and attributes
278
+rules for that final path". Instead, merge-file simply wrote out the
279
+data in the canonical repository representation.
280
+
281
+rerere has the same issue, but it is a lot worse. It reads the three
282
+files (preimage, postimage and thisimage) from the work tree in the work
283
+tree representation, merges them without converting them to the canonical
284
+representation first but inserts the conflict markers with the canonical
285
+representation and writes the resulting mess out. It needs to be fixed to
286
+read with convert_to_git(), merge them while they are still in the
287
+canonical representation and possibly add conflict markers, and then write
288
+the results out after convert_to_working_tree(). It also needs to write
289
+in binary mode as well.
290
+
291
+* db/foreign-scm (Tue Mar 24 23:04:12 2009 -0400) 3 commits
292
+ - Add option for using a foreign VCS
293
+ - Document details of transport function APIs
294
+ - Allow late reporting of fetched hashes
295
+
296
+* hv/cvsps-tests (Sun Apr 5 01:40:50 2009 -0700) 8 commits
297
+ - t/t9600: remove exit after test_done
298
+ - cvsimport: extend testcase about patchset order to contain
299
+ branches
300
+ - cvsimport: add test illustrating a bug in cvsps
301
+ - Add a test of "git cvsimport"'s handling of tags and branches
302
+ - Add some tests of git-cvsimport's handling of vendor branches
303
+ - Test contents of entire cvsimported "master" tree contents
304
+ - Use CVS's -f option if available (ignore user's ~/.cvsrc file)
305
+ - Start a library for cvsimport-related tests
306
+
307
+----------------------------------------------------------------
308
+[Actively cooking]
309
+
310
+* gb/am-foreign (Wed May 27 11:25:19 2009 +0200) 4 commits
311
+ - git-am: refactor 'cleaning up and aborting'
312
+ - git-am foreign patch support: StGIT support
313
+ - git-am foreign patch support: autodetect some patch formats
314
+ - git-am foreign patch support: introduce patch_format
315
+
316
+Should re-review and merge to 'next' but I am short of time these days.
317
+
318
+* jc/cache-tree (Fri May 22 23:14:25 2009 -0700) 5 commits
319
+ + Avoid "diff-index --cached" optimization under --find-copies-
320
+ harder
321
+ + Optimize "diff-index --cached" using cache-tree
322
+ + t4007: modernize the style
323
+ + cache-tree.c::cache_tree_find(): simplify internal API
324
+ + write-tree --ignore-cache-tree
325
+
326
+I believe the code is right, but this touches a very low-level code with
327
+high chance of subtle breakages unless you are really careful. I'll let
328
+it simmer a bit longer in 'next'.
329
+
330
+* jc/diff-whitespace-only-status (Sat May 23 01:15:35 2009 -0700) 2 commits
331
+ - diff: Rename QUIET internal option to QUICK
332
+ - diff: change semantics of "ignore whitespace" options
333
+
334
+I am not sure if it should wait for a major version bump but this is a
335
+good semantics change. Perhaps merge to 'next' soonish, but I am
336
+undecided. Comments?
337
+
338
+* cc/replace (Wed May 27 07:14:09 2009 +0200) 14 commits
339
+ - t6050: check pushing something based on a replaced commit
340
+ - Documentation: add documentation for "git replace"
341
+ - Add git-replace to .gitignore
342
+ - builtin-replace: use "usage_msg_opt" to give better error messages
343
+ - parse-options: add new function "usage_msg_opt"
344
+ - builtin-replace: teach "git replace" to actually replace
345
+ - Add new "git replace" command
346
+ - environment: add global variable to disable replacement
347
+ - mktag: call "check_sha1_signature" with the replacement sha1
348
+ - replace_object: add a test case
349
+ - object: call "check_sha1_signature" with the replacement sha1
350
+ - sha1_file: add a "read_sha1_file_repl" function
351
+ - replace_object: add mechanism to replace objects found in
352
+ "refs/replace/"
353
+ - refs: add a "for_each_replace_ref" function
354
+
355
+----------------------------------------------------------------
356
+[On Hold]
357
+
358
+* jc/deny-delete-current-1.7.0 (Mon Feb 9 00:19:46 2009 -0800) 1 commit
359
+ - receive-pack: default receive.denyDeleteCurrent to refuse
360
+
361
+* jc/refuse-push-to-current-1.7.0 (Wed Feb 11 02:28:03 2009 -0800) 1 commit
362
+ - Refuse updating the current branch in a non-bare repository via
363
+ push
364
+
365
+These are for 1.7.0, but the messages when they trigger together may need
366
+to be rethought.