What's cooking
Junio C Hamano committed
May 25, 2009 at 01:17 UTC
b35f99113f080867bec31027542e4c6a5642051c
1 file changed
+393
whats/cooking/2009/05/03.txt
new
+393
@@ -0,0 +1,393 @@
1
+To: git@vger.kernel.org
2
+Subject: What's cooking in git.git (May 2009, #03; Mon, 25)
3
+X-master-at: 9619ff14159ab3401636b9883a715b0f20b051df
4
+X-next-at: 2435664148ab70c34750a9f1339d4ca898bd289e
5
+
6
+What's cooking in git.git (May 2009, #03; Mon, 25)
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
+----------------------------------------------------------------
18
+[New Topics]
19
+
20
+* sb/opt-filename (Sat May 23 11:53:13 2009 -0700) 5 commits
21
+ - parse-opts: add OPT_FILENAME and transition builtins
22
+ - parse-opts: prepare for OPT_FILENAME
23
+ - Merge branch 'jc/mktree' into sb/opt-filename
24
+ - Merge branch 'sb/format-patch-parseopt' into sb/opt-filename
25
+ - Merge branch 'sb/show-branch-parse-options' into sb/opt-filename
26
+ - Merge branch 'master' into sb/opt-filename
27
+ + apply, fmt-merge-msg: use relative filenames
28
+ + commit: -F overrides -t
29
+
30
+There are quite a few new callers to parse_options() in 'next' and 'pu'
31
+that are more likely to graduate before this series, so for now I merged a
32
+few of them and adjusted the commit "prepare for OPT_FILENAME". I tried
33
+to be careful but extra sets of eyeballs would be helpful.
34
+
35
+* da/araxis-mergetool (Sun May 24 00:24:41 2009 +0000) 1 commit
36
+ + mergetool--lib: add support for araxis merge
37
+
38
+I admit that I feel certain distaste in supporting a closed tool, but we
39
+already make things bearable for people on Windows; Araxis is no worse,
40
+right?
41
+
42
+* rs/maint-grep-word-regexp-fix (Sat May 23 13:45:26 2009 +0200) 1 commit
43
+ + grep: fix word-regexp at the beginning of lines
44
+
45
+* mm/apply-double-slash (Thu May 21 14:25:11 2009 +0200) 1 commit
46
+ + apply: handle filenames with double slashes better
47
+
48
+* bc/old-iconv (Fri May 22 18:47:06 2009 -0500) 10 commits
49
+ + t8005: convert CP1251 character set to ISO8859-5
50
+ + t8005: use more portable character encoding names
51
+ + t5100: use ancient encoding syntax for backwards compatibility
52
+ + t9301: use ISO8859-1 rather than ISO-8859-1
53
+ + t3901: Use ISO8859-1 instead of ISO-8859-1 for backward
54
+ compatibility
55
+ + t3901: avoid negation on right hand side of '|'
56
+ + builtin-mailinfo.c: use "ISO8859-1" instead of "latin1" as
57
+ fallback encoding
58
+ + builtin-mailinfo.c: compare character encodings case insensitively
59
+ + Use 'UTF-8' rather than 'utf-8' everywhere for backward
60
+ compatibility
61
+ + t3900: use ancient iconv names for backward compatibility
62
+
63
+* sb/show-branch-parse-options (Thu May 21 00:33:18 2009 -0700) 3 commits
64
+ + show-branch: migrate to parse-options API
65
+ + Merge branch 'mh/show-branch-color' into sb/show-branch-parse-
66
+ options
67
+ + parse-options: add PARSE_OPT_LITERAL_ARGHELP for complicated
68
+ argh's
69
+
70
+* sb/maint-1.6.2-opt-filename-fix (Sat May 23 11:53:11 2009 -0700) 2 commits
71
+ + apply, fmt-merge-msg: use relative filenames
72
+ + commit: -F overrides -t
73
+
74
+* jc/cache-tree (Fri May 22 23:14:25 2009 -0700) 5 commits
75
+ - Avoid "diff-index --cached" optimization under --find-copies-
76
+ harder
77
+ - Optimize "diff-index --cached" using cache-tree
78
+ - t4007: modernize the style
79
+ - cache-tree.c::cache_tree_find(): simplify inernal API
80
+ - write-tree --ignore-cache-tree
81
+
82
+* jc/solaris-0811 (Fri May 22 22:55:31 2009 -0700) 2 commits
83
+ - OpenSolaris 200811 (SunOS 5.11) does not want OLD_ICONV
84
+ - Teach Solaris that _XOPEN_SOURCE=600 really menas XPG6
85
+
86
+* cb/maint-1.6.0-xdl-merge-fix (Mon May 25 01:21:14 2009 +0100) 2 commits
87
+ - Change xdl_merge to generate output even for null merges
88
+ - t6023: merge-file fails to output anything for a degenerate merge
89
+
90
+* jc/diff-whitespace-only-status (Sat May 23 01:15:35 2009 -0700) 2 commits
91
+ - diff: Rename QUIET internal option to QUICK
92
+ - diff: change semantics of "ignore whitespace" options
93
+
94
+----------------------------------------------------------------
95
+[Graduated to "master"]
96
+
97
+* cc/bisect (Sat May 9 17:55:47 2009 +0200) 20 commits
98
+ + bisect: make "git bisect" use new "--next-all" bisect-helper
99
+ function
100
+ + bisect: add "check_good_are_ancestors_of_bad" function
101
+ + bisect: implement the "check_merge_bases" function
102
+ + bisect: automatically sort sha1_array if needed when looking it up
103
+ + bisect: make skipped array functions more generic
104
+ + bisect: remove too much function nesting
105
+ + bisect: use new "struct argv_array" to prepare argv for
106
+ "setup_revisions"
107
+ + bisect: store good revisions in a "sha1_array"
108
+ + bisect: implement "rev_argv_push" to fill an argv with revs
109
+ + bisect: use "sha1_array" to store skipped revisions
110
+ + am: simplify "sq" function by using "git rev-parse --sq-quote"
111
+ + bisect: use "git rev-parse --sq-quote" instead of a custom "sq"
112
+ function
113
+ + rev-parse: add --sq-quote to shell quote arguments
114
+ + rev-list: remove stringed output flag from "show_bisect_vars"
115
+ + bisect--helper: remove "--next-vars" option as it is now useless
116
+ + bisect: use "git bisect--helper --next-exit" in "git-bisect.sh"
117
+ + bisect--helper: add "--next-exit" to output bisect results
118
+ + bisect: move common bisect functionality to "bisect_common"
119
+ + rev-list: refactor printing bisect vars
120
+ + rev-list: make "estimate_bisect_steps" non static
121
+
122
+Rewriting major part of "git-bisect" shell script continues. The patches
123
+seem to be reasonably clean.
124
+
125
+* fc/decorate-tag (Thu May 14 00:32:53 2009 +0300) 2 commits
126
+ + Prettify log decorations even more
127
+ + Change prettify_ref to prettify_refname
128
+
129
+* mg/track (Mon May 11 16:42:54 2009 +0200) 2 commits
130
+ + Fix behavior with non-commit upstream references
131
+ + Test tracking of non-commit upstreams
132
+
133
+* jn/gitweb-cleanup (Mon May 11 19:45:11 2009 +0200) 8 commits
134
+ + gitweb: Remove unused $hash_base parameter from
135
+ normalize_link_target
136
+ + gitweb: Simplify snapshot format detection logic in
137
+ evaluate_path_info
138
+ + gitweb: Use capturing parentheses only when you intend to capture
139
+ + gitweb: Replace wrongly added tabs with spaces
140
+ + gitweb: Use block form of map/grep in a few cases more
141
+ + gitweb: Always use three argument form of open
142
+ + gitweb: Always use three argument form of open
143
+ + gitweb: Do not use bareword filehandles
144
+
145
+* js/maint-no-ln-across-libexec-and-bin (Mon May 11 13:02:18 2009 +0200) 1 commit
146
+ + Add NO_CROSS_DIRECTORY_HARDLINKS support to the Makefile
147
+
148
+* tp/send-email-from-config (Tue May 12 15:48:56 2009 -0700) 1 commit
149
+ + send-email: Add config option for sender address
150
+
151
+* ae/anon-fetch-info (Fri Apr 17 10:20:11 2009 +0200) 1 commit
152
+ + fetch: Strip usernames from url's before storing them
153
+
154
+* ac/graph-horizontal-line (Tue Apr 21 08:47:01 2009 -0400) 1 commit
155
+ + graph API: Use horizontal lines for more compact graphs
156
+
157
+* mh/show-branch-color (Sat Apr 25 13:46:14 2009 +0200) 2 commits
158
+ + bash completion: show-branch color support
159
+ + show-branch: color the commit status signs
160
+
161
+* mh/diff-stat-color (Sat Apr 25 00:06:47 2009 +0200) 1 commit
162
+ + diff: do not color --stat output like patch context
163
+
164
+* js/add-edit (Mon Apr 27 19:51:42 2009 +0200) 2 commits
165
+ + t3702: fix reliance on SHELL_PATH being '/bin/sh'
166
+ + git-add: introduce --edit (to edit the diff vs. the index)
167
+
168
+* jk/maint-add-empty (Tue Apr 28 23:21:01 2009 -0400) 1 commit
169
+ + add: don't complain when adding empty project root
170
+
171
+* ar/unlink-err (Wed Apr 29 23:24:52 2009 +0200) 3 commits
172
+ + print unlink(2) errno in copy_or_link_directory
173
+ + replace direct calls to unlink(2) with unlink_or_warn
174
+ + Introduce an unlink(2) wrapper which gives warning if unlink
175
+ failed
176
+
177
+* ar/merge-one-file-diag (Wed Apr 29 23:40:50 2009 +0200) 1 commit
178
+ + Clarify kind of conflict in merge-one-file helper
179
+
180
+* np/push-delta (Fri May 1 16:56:47 2009 -0400) 1 commit
181
+ + allow OFS_DELTA objects during a push
182
+
183
+* mt/submodule-reference (Mon May 4 22:30:01 2009 +0300) 1 commit
184
+ + Add --reference option to git submodule.
185
+
186
+* fl/git-pm (Thu May 7 15:41:28 2009 +0200) 2 commits
187
+ + Git.pm: Always set Repository to absolute path if autodetecting
188
+ + Git.pm: Set GIT_WORK_TREE if we set GIT_DIR
189
+
190
+* rs/grep-parseopt (Thu May 7 21:46:48 2009 +0200) 5 commits
191
+ + grep: use parseopt
192
+ + grep: remove global variable builtin_grep
193
+ + parseopt: add PARSE_OPT_NODASH
194
+ + parseopt: add OPT_NUMBER_CALLBACK
195
+ + parseopt: add OPT_NEGBIT
196
+
197
+* jk/no-no-no-empty-directory (Fri May 8 01:01:17 2009 -0400) 2 commits
198
+ + parseopt: add OPT_NEGBIT
199
+ + parseopt: add OPT_NEGBIT
200
+
201
+* jk/maint-1.6.0-trace-argv (Fri May 8 05:06:15 2009 -0400) 1 commit
202
+ + fix GIT_TRACE segfault with shell-quoted aliases
203
+
204
+* hv/sample-update (Fri May 8 17:22:30 2009 +0200) 1 commit
205
+ + Extend sample update hook, disable modifying of existing tags
206
+
207
+* rr/forbid-bs-in-ref (Fri May 8 07:32:37 2009 +0200) 1 commit
208
+ + Disallow '\' in ref names
209
+
210
+* do/maint-merge-recursive-fix (Sat May 9 14:49:59 2009 -0700) 1 commit
211
+ + merge-recursive: never leave index unmerged while recursing
212
+
213
+* jm/format-patch-no-auto-n-when-k-is-given (Sat May 9 10:12:01 2009 +0200) 1 commit
214
+ + format-patch let -k override a config-specified format.numbered
215
+
216
+* lt/maint-diff-reduce-lstat (Sat May 9 15:11:17 2009 -0700) 2 commits
217
+ + Teach 'git checkout' to preload the index contents
218
+ + Avoid unnecessary 'lstat()' calls in 'get_stat_data()'
219
+
220
+* da/mergetool-lib (Sat May 2 01:57:21 2009 -0700) 1 commit
221
+ + mergetool--lib: specialize diff options for emerge and ecmerge
222
+
223
+----------------------------------------------------------------
224
+[Will merge to "master" soon]
225
+
226
+* mw/send-email (Mon Apr 13 13:23:52 2009 -0500) 6 commits
227
+ + send-email: Remove superfluous `my $editor = ...'
228
+ + send-email: 'References:' should only reference what is sent
229
+ + send-email: Handle "GIT:" rather than "GIT: " during --compose
230
+ + Docs: send-email: --smtp-server-port can take symbolic ports
231
+ + Docs: send-email: Refer to CONFIGURATION section for
232
+ sendemail.multiedit
233
+ + Docs: send-email: Put options back into alphabetical order
234
+
235
+* ph/submodule-rebase (Fri Apr 24 09:06:38 2009 +1000) 1 commit
236
+ + git-submodule: add support for --rebase.
237
+
238
+* cc/bisect (Sun May 17 17:36:46 2009 +0200) 3 commits
239
+ + bisect: check ancestors without forking a "git rev-list" process
240
+ + commit: add function to unparse a commit and its parents
241
+ + bisect: rework some rev related functions to make them more
242
+ reusable
243
+
244
+----------------------------------------------------------------
245
+[Stalled and may need help and prodding to go forward]
246
+
247
+* lt/read-directory (Fri May 15 12:01:29 2009 -0700) 3 commits
248
+ - Add initial support for pathname conversion to UTF-8
249
+ - read_directory(): infrastructure for pathname character set
250
+ conversion
251
+ - Add 'fill_directory()' helper function for directory traversal
252
+
253
+Before adding the real "conversion", this needs a few real fixups, I
254
+think. For example there is one hardcoded array that is used without
255
+bounds check.
256
+
257
+* ar/maint-1.6.2-merge-recursive-d-f (Mon May 11 21:25:36 2009 +0200) 2 commits
258
+ - Fix for a merge where a branch has an F->D transition
259
+ - Add a reminder test case for a merge with F/D transition
260
+
261
+Although the reported breakage is covered with the patch, Alex feels the
262
+solution unsatisfactory. Cleaning up D/F conflict handling in merge-recursive
263
+may be long overdue but seems to be a hard problem.
264
+
265
+* ps/blame (Thu Mar 12 21:30:03 2009 +1100) 1 commit
266
+ - blame.c: start libifying the blame infrastructure
267
+
268
+A few minor point remains in this initial one. I hate to do these minor
269
+fix-ups myself, but I may end up doing so...
270
+
271
+* jc/log-tz (Tue Mar 3 00:45:37 2009 -0800) 1 commit
272
+ - Allow --date=local --date=other-format to work as expected
273
+
274
+The one I posted had a few corner-case bugs that was caught with the test
275
+suite; this one has them fixed. People did not like the UI so it is kept
276
+out of 'next'
277
+
278
+* jc/merge-convert (Mon Jan 26 16:45:01 2009 -0800) 1 commit
279
+ - git-merge-file: allow converting the results for the work tree
280
+
281
+This is a feature waiting for a user.
282
+
283
+We did not give scripted Porcelains a way to say "this temporary file I am
284
+using for merging is for this path, so use the core.autocrlf and attributes
285
+rules for that final path". Instead, merge-file simply wrote out the
286
+data in the canonical repository representation.
287
+
288
+rerere has the same issue, but it is a lot worse. It reads the three
289
+files (preimage, postimage and thisimage) from the work tree in the work
290
+tree representation, merges them without converting them to the canonical
291
+representation first but inserts the conflict markers with the canonical
292
+representation and writes the resulting mess out. It needs to be fixed to
293
+read with convert_to_git(), merge them while they are still in the
294
+canonical representation and possibly add conflict markers, and then write
295
+the results out after convert_to_working_tree(). It also needs to write
296
+in binary mode as well.
297
+
298
+* db/foreign-scm (Tue Mar 24 23:04:12 2009 -0400) 3 commits
299
+ - Add option for using a foreign VCS
300
+ - Document details of transport function APIs
301
+ - Allow late reporting of fetched hashes
302
+
303
+* hv/cvsps-tests (Sun Apr 5 01:40:50 2009 -0700) 8 commits
304
+ - t/t9600: remove exit after test_done
305
+ - cvsimport: extend testcase about patchset order to contain
306
+ branches
307
+ - cvsimport: add test illustrating a bug in cvsps
308
+ - Add a test of "git cvsimport"'s handling of tags and branches
309
+ - Add some tests of git-cvsimport's handling of vendor branches
310
+ - Test contents of entire cvsimported "master" tree contents
311
+ - Use CVS's -f option if available (ignore user's ~/.cvsrc file)
312
+ - Start a library for cvsimport-related tests
313
+
314
+----------------------------------------------------------------
315
+[Actively cooking]
316
+
317
+* jc/mktree (Thu May 14 15:49:10 2009 -0700) 9 commits
318
+ + mktree: validate entry type in input
319
+ + mktree --batch: build more than one tree object
320
+ + mktree --missing: updated usage message and man page
321
+ + mktree --missing: allow missing objects
322
+ + t1010: add mktree test
323
+ + mktree: do not barf on a submodule commit
324
+ + builtin-mktree.c: use a helper function to handle one line of
325
+ input
326
+ + mktree: use parse-options
327
+ + build-in git-mktree
328
+
329
+* jc/maint-add-p-coalesce-fix (Sat May 16 10:48:23 2009 -0700) 2 commits
330
+ + Revert "git-add--interactive: remove hunk coalescing"
331
+ + Splitting a hunk that adds a line at the top fails in "add -p"
332
+
333
+* sb/format-patch-parseopt (Sat May 16 02:24:46 2009 -0700) 1 commit
334
+ + format-patch: migrate to parse-options API
335
+
336
+* jh/notes (Sat May 16 13:44:17 2009 +0200) 5 commits
337
+ - Teach "-m <msg>" and "-F <file>" to "git notes edit"
338
+ - Add an expensive test for git-notes
339
+ - Speed up git notes lookup
340
+ - Add a script to edit/inspect notes
341
+ - Introduce commit notes
342
+
343
+* rc/http-push (Mon May 18 16:14:24 2009 +0800) 15 commits
344
+ - http*: add helper methods for fetching objects (loose)
345
+ - http*: add helper methods for fetching objects/info/packs
346
+ - http*: add helper methods for fetching packs
347
+ - http*: add fetch_http_pack_index
348
+ - http: create function end_url_with_slash
349
+ - http*: move common variables and macros to http.[ch]
350
+ - http-push: do not SEGV after fetching a bad pack idx file
351
+ - http*: copy string returned by sha1_to_hex
352
+ - http-walker: verify remote packs
353
+ - http-push, http-walker: style fixes
354
+ - t5550-http-fetch: test fetching of packed objects
355
+ - http-push: fix missing "#ifdef USE_CURL_MULTI" around
356
+ "is_running_queue"
357
+ - http-push: send out fetch requests on queue
358
+ - t5540-http-push: test fetching of packed objects
359
+ - t5540-http-push: test fetching of loose objects
360
+
361
+This is not the re-rolled 18-patch series we discussed yesterday.
362
+
363
+* cc/replace (Tue Apr 14 00:36:59 2009 +0200) 13 commits
364
+ - Documentation: add documentation for "git replace"
365
+ - Add git-replace to .gitignore
366
+ - builtin-replace: use "usage_msg_opt" to give better error messages
367
+ - parse-options: add new function "usage_msg_opt"
368
+ - builtin-replace: teach "git replace" to actually replace
369
+ - Add new "git replace" command
370
+ - environment: add global variable to disable replacement
371
+ - mktag: call "check_sha1_signature" with the replacement sha1
372
+ - replace_object: add a test case
373
+ - object: call "check_sha1_signature" with the replacement sha1
374
+ - sha1_file: add a "read_sha1_file_repl" function
375
+ - replace_object: add mechanism to replace objects found in
376
+ "refs/replace/"
377
+ - refs: add a "for_each_replace_ref" function
378
+
379
+I suspect an attempt to replace an object that is directly listed on the
380
+command line would not work very well with this series.
381
+
382
+----------------------------------------------------------------
383
+[On Hold]
384
+
385
+* jc/deny-delete-current-1.7.0 (Mon Feb 9 00:19:46 2009 -0800) 1 commit
386
+ - receive-pack: default receive.denyDeleteCurrent to refuse
387
+
388
+* jc/refuse-push-to-current-1.7.0 (Wed Feb 11 02:28:03 2009 -0800) 1 commit
389
+ - Refuse updating the current branch in a non-bare repository via
390
+ push
391
+
392
+These are for 1.7.0, but the messages when they trigger together may need
393
+to be rethought.