What's cooking (2009/02 #01)

Junio C Hamano committed Feb 1, 2009 at 23:39 UTC 0e180236b59998bf6a4394046512d15c00e57398
1 file changed +193 -142
whats-cooking.txt
+193 -142
@@ -1,9 +1,9 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Jan 2009, #07; Wed, 28)
3 -X-master-at: 8712b3cdb0495f5a56b91cd67e2697412447a886
4 -X-next-at: c2891ee32a7e8274426c22439ed8d536a5b0bb43
2 +Subject: What's cooking in git.git (Feb 2009, #01; Sun, 01)
3 +X-master-at: 2ea3c17189bf9ca459879129ca190792b5451f05
4 +X-next-at: 5bad675db98a79d08ce5abadd3347d829c6c5b36
5
6 -What's cooking in git.git (Jan 2009, #07; Wed, 28)
6 +What's cooking in git.git (Feb 2009, #01; Sun, 01)
7 --------------------------------------------------
8
9 Here are the topics that have been cooking. Commits prefixed with '-' are
@@ -17,51 +17,93 @@ meant to be merged to the maintenance series have "maint-" in their names.
17 ----------------------------------------------------------------
18 [New Topics]
19
20 -* jc/maint-1.6.0-split-diff-metainfo (Mon Jan 26 00:08:24 2009 -0800) 1 commit
21 - + diff.c: output correct index lines for a split diff
22 -
23 -This is slated for maintenance series 1.6.0.X, 1.6.1.X and also for
24 -'master'. I think the change is pretty safe and sane to go directly to
25 -'master' but I had too many other topoics to look at that I did not feel
26 -comfortable enough to do so.
27 -
28 -* jc/maint-split-diff-metainfo (Tue Jan 27 01:08:02 2009 -0800) 2 commits
29 - + Merge branch 'jc/maint-1.6.0-split-diff-metainfo' into jc/maint-
30 - split-diff-metainfo
31 - + diff.c: output correct index lines for a split diff
32 -
33 -Early conflict resolution branch for the above to carry it to 1.6.1X
34 -series.
35 -
36 -* js/maint-rebase-i-submodule (Tue Jan 27 12:42:31 2009 +0100) 2 commits
37 - + Fix submodule squashing into unrelated commit
38 - + rebase -i squashes submodule changes into unrelated commit
39 -
40 -* jg/tag-contains (Mon Jan 26 09:13:25 2009 -0500) 3 commits
41 - + git-tag: Add --contains option
42 - + Make has_commit() non-static
43 - + Make opt_parse_with_commit() non-static
20 +* gt/utf8-width (Fri Jan 30 04:41:29 2009 -0500) 2 commits
21 + - builtin-blame.c: Use utf8_strwidth for author's names
22 + - utf8: add utf8_strwidth()
23 +
24 +I am not sure if utf8_strwidth() behaves sensibly when fed a non-UTF8
25 +string (a possible failure mode is utf8_width() says "no" and it returns
26 +0, resulting in width of all zero and causing division by zero somewhere
27 +downstream, or something silly like that), but other than that, I do not
28 +think it would hurt, and will actively improve the current code.
29 +
30 +* jc/refuse-push-to-current (Sat Jan 31 17:34:05 2009 -0800) 2 commits
31 + - Set receive.denyCurrentBranch to true in a new non-bare repository
32 + - receive-pack: explain what to do when push updates the current
33 + branch
34 +
35 +This prepares to finally switch the default for receive.denyCurrentBranch
36 +to "refuse". The idea is to issue a big warning to people who push into
37 +currently checked out branch when the configuration is unset and we
38 +default to "warn", and explain in detail (1) why it is not likely to be
39 +what they want to do (to help new people), (2) if it is what they want,
40 +how to squelch that annoyingly long message, and (3) the default will be
41 +changed to "refuse" in a future release of git. The tip commit also sets
42 +the configuration to refuse in a newly created repository, but with a
43 +twist. People who get the "refusal" configuration this way may be
44 +expecting the recipe they picked up to push into a live repository,
45 +perhaps a website, and let its post-update hook to "reset --hard" the
46 +deployment, and we will explain that (1) it will no longer work (because
47 +we default to "refuse" in a newly created repository), (2) how to
48 +configure it to work again, and (3) how to squelch the annoying message.
49 +
50 +I personally do not think anything short of an approach like this would
51 +work without a huge fallout like we had when yanked git-foo commands from
52 +people's $PATH in 1.6.0, but I can still be pursuaded by a better
53 +alternative, and that is why they are not in 'next' yet. Saying "old
54 +timers can flip a single switch just once" is not a better alternative, as
55 +I explained already.
56 +
57 +* jc/fsck (Fri Jan 30 02:44:13 2009 -0800) 7 commits
58 + - fsck: revert --quick to the default and introduce --medium
59 + - fsck: three levels of validation
60 + - verify-pack: add --quick
61 + - verify_pack(): allow a quicker verification for a pack with
62 + version 2 idx
63 + - pack-check.c: minor formatting fix to match coding style
64 + + fsck: check loose objects from alternate object stores by default
65 + + fsck: HEAD is part of refs
66 +
67 +I haven't heard anything positive nor negative about this series. I
68 +consider the bottom two changes are pure bugfixes and should probably be
69 +in 1.6.2.
70 +
71 +I think the tip two commits should be squashed (and perhaps the option
72 +parser cleaned up as suggested on the list) if we were to take the
73 +remainder.
74 +
75 +* rc/http-push (Sat Jan 31 07:51:55 2009 +0800) 1 commit
76 + + http-push: refactor request url creation
77 +
78 +Looked fine for 1.6.2.
79 +
80 +* jk/head-symref (Thu Jan 29 03:33:02 2009 -0500) 2 commits
81 + + symbolic ref: refuse non-ref targets in HEAD
82 + + validate_headref: tighten ref-matching to just branches
83 +
84 +Looked fine for 1.6.2.
85 +
86 +* kb/checkout-optim (Sun Feb 1 21:23:39 2009 +0100) 7 commits
87 + - unpack-trees.c: introduce schedule_dir_for_removal()
88 + - lstat_cache(): print a warning if doing ping-pong between cache
89 + types
90 + - combine-diff.c: remove a call to fstat() inside show_patch_diff()
91 + - write_entry(): use fstat() instead of lstat() when file is open
92 + - cleanup of write_entry() in entry.c
93 + - remove some memcpy() and strchr() calls inside
94 + create_directories()
95 + - symlinks.c: small cleanup and optimisation
96 +
97 +Love to have in 1.6.2
98
45 -* jk/maint-cleanup-after-exec-failure (Wed Jan 28 02:38:14 2009 -0500) 4 commits
46 - + git: use run_command() to execute dashed externals
47 - + run_command(): help callers distinguish errors
48 - + run_command(): handle missing command errors more gracefully
49 - + git: s/run_command/run_builtin/
50 -
51 -* jc/maint-allow-uninteresting-missing (Tue Jan 27 23:19:30 2009 -0800) 1 commit
52 - + revision traversal: allow UNINTERESTING objects to be missing
53 -
54 -This is a small follow-up to the fix to send-pack in 1.6.1; meant to go in
55 -1.6.1.X maintenance series and newer.
56 -
57 -* am/maint-push-doc (Mon Jan 26 00:45:33 2009 +0100) 3 commits
58 - + Documentation: rework src/dst description in git push
59 - + Documentation: more git push examples
60 - + Documentation: simplify refspec format description
99 +----------------------------------------------------------------
100 +[Stalled and may need help and prodding to go forward]
101
102 * jc/merge-convert (Mon Jan 26 16:45:01 2009 -0800) 1 commit
103 - git-merge-file: allow converting the results for the work tree
104
105 +This is a feature waiting for a user. I do not need it in 1.6.2
106 +
107 We did not give scripted Porcelains a way to say "this temporary file I am
108 using for merging is for this path, so use the core.autocrlf and attributes
109 rules for that final path". Instead, merge-file simply wrote out the
@@ -77,24 +119,6 @@ canonical representation and possibly add conflict markers, and then write
119 the results out after convert_to_working_tree(). It also needs to write
120 in binary mode as well.
121
80 -* jc/maint-add-u-remove-conflicted (Wed Jan 28 14:24:53 2009 -0800) 1 commit
81 - - add -u: do not fail to resolve a path as deleted
82 -
83 -This has been updated from the posted version with a correction.
84 -
85 -* ns/am-slacker (Sat Jan 24 10:18:02 2009 +0900) 2 commits
86 - + git-am: Add --ignore-date option
87 - + am: Add --committer-date-is-author-date option
88 -
89 -It is a (probably) useful new feature with a sort-of cute explanation.
90 -
91 -* jc/maint-apply-fix (Sun Jan 25 23:41:26 2009 -0800) 1 commit
92 - + builtin-apply.c: do not set bogus mode in check_preimage() for
93 - deleted path
94 -
95 -----------------------------------------------------------------
96 -[Stalled and may need help and prodding to go forward]
97 -
122 * jc/blame (Wed Jun 4 22:58:40 2008 -0700) 2 commits
123 + blame: show "previous" information in --porcelain/--incremental
124 format
@@ -115,7 +139,11 @@ The "spec" did not seem quite well cooked yet, but in the longer term I
139 think something like this to allow interoperating with other SCMs as if
140 the other end is a native git repository is a very worthy goal.
141
118 -* cc/replace (Fri Jan 23 10:07:46 2009 +0100) 7 commits
142 +* cc/replace (Mon Feb 2 06:13:06 2009 +0100) 11 commits
143 + - builtin-replace: use "usage_msg_opt" to give better error messages
144 + - parse-options: add new function "usage_msg_opt"
145 + - builtin-replace: teach "git replace" to actually replace
146 + - Add new "git replace" command
147 - environment: add global variable to disable replacement
148 - mktag: call "check_sha1_signature" with the replacement sha1
149 - replace_object: add a test case
@@ -125,7 +153,9 @@ the other end is a native git repository is a very worthy goal.
153 "refs/replace/"
154 - refs: add a "for_each_replace_ref" function
155
128 -Nobody has review comments on this yet.
156 +I think the code is much cleaner than the first round, but I am not
157 +convinced it is doing the right thing in the connectivity traverser.
158 +I'd like to keep this out of 1.6.2.
159
160 * lh/submodule-tree-traversal (Sun Jan 25 01:52:06 2009 +0100) 6 commits
161 - archive.c: add support for --submodules[=(all|checkedout)]
@@ -135,6 +165,19 @@ Nobody has review comments on this yet.
165 + archive.c: enable traversal of submodules
166 + tree.c: add support for traversal of submodules
167
168 +Sorry, but what's the status of this one? I am not particularly
169 +interested in this new feature myself, so unless I hear otherwise from
170 +people, I'd like to keep this out of 1.6.2. That would have the added
171 +benefit of being able to discard the first four that is already in 'next'
172 +to get a fresh start post 1.6.2 ;-)
173 +
174 +* sc/gitweb-category (Fri Dec 12 00:45:12 2008 +0100) 3 commits
175 + - gitweb: Optional grouping of projects by category
176 + - gitweb: Split git_project_list_body in two functions
177 + - gitweb: Modularized git_get_project_description to be more generic
178 +
179 +Design discussion between Jakub and Sebastien seems to have stalled.
180 +
181 ----------------------------------------------------------------
182 [Reverted]
183
@@ -148,6 +191,21 @@ This broke git-format-patch badly.
191 ----------------------------------------------------------------
192 [Actively cooking]
193
194 +* wp/add-patch-find (Thu Nov 27 04:08:03 2008 +0000) 3 commits
195 + + In add --patch, Handle K,k,J,j slightly more gracefully.
196 + + Add / command in add --patch
197 + + git-add -i/-p: Change prompt separater from slash to comma
198 +
199 +I think this is Ok to have in 1.6.2
200 +
201 +* cb/mergetool (Fri Jan 30 23:20:11 2009 +0000) 3 commits
202 + - mergetool: fix running mergetool in sub-directories
203 + - mergetool: Add a test for running mergetool in a sub-directory
204 + + mergetool: respect autocrlf by using checkout-index
205 +
206 +The fix to its subdirectory behaviour looked somewhat iffy and may have a
207 +potential for cleaning up. But we should have it in 1.6.2.
208 +
209 * js/valgrind (Wed Jan 21 02:36:40 2009 +0100) 2 commits
210 - valgrind: ignore ldso errors
211 - Add valgrind support in test scripts
@@ -155,15 +213,6 @@ This broke git-format-patch badly.
213 Dscho and Peff had further exchanges on the list; I am sort of waiting for
214 the conclusion before picking any intermediate version up.
215
158 -* ks/maint-mailinfo-folded (Tue Jan 13 01:21:04 2009 +0300) 4 commits
159 - + mailinfo: tests for RFC2047 examples
160 - + mailinfo: add explicit test for mails like '<a.u.thor@example.com>
161 - (A U Thor)'
162 - + mailinfo: 'From:' header should be unfold as well
163 - + mailinfo: correctly handle multiline 'Subject:' header
164 -
165 -I just got tired of waiting and cleaned up the series myself.
166 -
216 * js/notes (Tue Jan 13 20:57:16 2009 +0100) 6 commits
217 + git-notes: fix printing of multi-line notes
218 + notes: fix core.notesRef documentation
@@ -176,73 +225,57 @@ It would be nice to hear a real world success story using the notes
225 mechanism; Dscho says he also wants to make sure the current choice
226 of the structure scales well before casting it in stone.
227
179 -* sc/gitweb-category (Fri Dec 12 00:45:12 2008 +0100) 3 commits
180 - - gitweb: Optional grouping of projects by category
181 - - gitweb: Split git_project_list_body in two functions
182 - - gitweb: Modularized git_get_project_description to be more generic
183 -
184 -Design discussion between Jakub and Sebastien continues.
185 -
228 ----------------------------------------------------------------
229 [Graduated to "master"]
230
189 -* sr/clone-empty (Fri Jan 23 01:07:32 2009 +0100) 1 commit
190 - + Allow cloning an empty repository
191 -
192 -Has anybody actually tried this and made sure the resulting empty clone
193 -works fine after the clone source gets updated with some contents?
194 -
195 -* kb/lstat-cache (Sun Jan 18 16:14:54 2009 +0100) 5 commits
196 - + lstat_cache(): introduce clear_lstat_cache() function
197 - + lstat_cache(): introduce invalidate_lstat_cache() function
198 - + lstat_cache(): introduce has_dirs_only_path() function
199 - + lstat_cache(): introduce has_symlink_or_noent_leading_path()
200 - function
201 - + lstat_cache(): more cache effective symlink/directory detection
202 -
203 -* tr/previous-branch (Wed Jan 21 00:37:38 2009 -0800) 10 commits
204 - + Simplify parsing branch switching events in reflog
205 - + Introduce for_each_recent_reflog_ent().
206 - + interpret_nth_last_branch(): plug small memleak
207 - + Fix reflog parsing for a malformed branch switching entry
208 - + Fix parsing of @{-1}@{1}
209 - + interpret_nth_last_branch(): avoid traversing the reflog twice
210 - + checkout: implement "-" abbreviation, add docs and tests
211 - + sha1_name: support @{-N} syntax in get_sha1()
212 - + sha1_name: tweak @{-N} lookup
213 - + checkout: implement "@{-N}" shortcut name for N-th last branch
214 -
215 -* js/maint-all-implies-HEAD (Sat Jan 17 22:27:08 2009 -0800) 2 commits
216 - + bundle: allow the same ref to be given more than once
217 - + revision walker: include a detached HEAD in --all
218 -
219 -* cb/add-pathspec (Wed Jan 14 15:54:35 2009 +0100) 2 commits
220 - + remove pathspec_match, use match_pathspec instead
221 - + clean up pathspec matching
222 -
223 -* js/diff-color-words (Tue Jan 20 22:59:54 2009 -0600) 9 commits
224 - + Change the spelling of "wordregex".
225 - + color-words: Support diff.wordregex config option
226 - + color-words: make regex configurable via attributes
227 - + color-words: expand docs with precise semantics
228 - + color-words: enable REG_NEWLINE to help user
229 - + color-words: take an optional regular expression describing words
230 - + color-words: change algorithm to allow for 0-character word
231 - boundaries
232 - + color-words: refactor word splitting and use ALLOC_GROW()
233 - + Add color_fwrite_lines(), a function coloring each line
234 - individually
231 +* jc/maint-1.6.0-split-diff-metainfo (Mon Jan 26 00:08:24 2009 -0800) 1 commit
232 + + diff.c: output correct index lines for a split diff
233
236 -----------------------------------------------------------------
237 -[Will merge to "master" soon]
234 +This is slated for maintenance series 1.6.0.X.
235
239 -* jg/mergetool (Sat Jan 24 00:12:45 2009 +0100) 1 commit
240 - + mergetool: Don't repeat merge tool candidates
236 +* jc/maint-split-diff-metainfo (Tue Jan 27 01:08:02 2009 -0800) 2 commits
237 + + Merge branch 'jc/maint-1.6.0-split-diff-metainfo' into jc/maint-
238 + split-diff-metainfo
239 + + diff.c: output correct index lines for a split diff
240
242 -* cb/mergetool (Wed Jan 21 22:57:48 2009 +0000) 1 commit
243 - + mergetool: respect autocrlf by using checkout-index
241 +Early conflict resolution branch for the above to carry it to 1.6.1.X
242 +series.
243 +
244 +* js/maint-rebase-i-submodule (Tue Jan 27 12:42:31 2009 +0100) 2 commits
245 + + Fix submodule squashing into unrelated commit
246 + + rebase -i squashes submodule changes into unrelated commit
247 +
248 +* jg/tag-contains (Mon Jan 26 09:13:25 2009 -0500) 3 commits
249 + + git-tag: Add --contains option
250 + + Make has_commit() non-static
251 + + Make opt_parse_with_commit() non-static
252 +
253 +* jc/maint-allow-uninteresting-missing (Tue Jan 27 23:19:30 2009 -0800) 1 commit
254 + + revision traversal: allow UNINTERESTING objects to be missing
255 +
256 +This is a small follow-up to the fix to send-pack in 1.6.1; meant to go in
257 +1.6.1.X maintenance series and newer.
258 +
259 +* am/maint-push-doc (Mon Jan 26 00:45:33 2009 +0100) 3 commits
260 + + Documentation: rework src/dst description in git push
261 + + Documentation: more git push examples
262 + + Documentation: simplify refspec format description
263
245 -Now Ted told us not to wait for him, we'll go ahead by ourselves ;-).
264 +* jc/maint-apply-fix (Sun Jan 25 23:41:26 2009 -0800) 1 commit
265 + + builtin-apply.c: do not set bogus mode in check_preimage() for
266 + deleted path
267 +
268 +* ks/maint-mailinfo-folded (Tue Jan 13 01:21:04 2009 +0300) 4 commits
269 + + mailinfo: tests for RFC2047 examples
270 + + mailinfo: add explicit test for mails like '<a.u.thor@example.com>
271 + (A U Thor)'
272 + + mailinfo: 'From:' header should be unfold as well
273 + + mailinfo: correctly handle multiline 'Subject:' header
274 +
275 +Graduated with a follow-up patch from the original author.
276 +
277 +* jg/mergetool (Sat Jan 24 00:12:45 2009 +0100) 1 commit
278 + + mergetool: Don't repeat merge tool candidates
279
280 * jk/signal-cleanup (Thu Jan 22 01:03:28 2009 -0500) 5 commits
281 + pager: do wait_for_pager on signal death
@@ -264,6 +297,33 @@ Now Ted told us not to wait for him, we'll go ahead by ourselves ;-).
297 + Move computation of absolute paths from Makefile to runtime (in
298 preparation for RUNTIME_PREFIX)
299
300 +There was a report that this breaks with older GNU Make.
301 +
302 +----------------------------------------------------------------
303 +[Will merge to "master" soon]
304 +
305 +* jc/maint-add-u-remove-conflicted (Wed Jan 28 14:24:53 2009 -0800) 1 commit
306 + - add -u: do not fail to resolve a path as deleted
307 +
308 +This has been updated from the posted version with a correction. We
309 +should have it in 1.6.2
310 +
311 +* jk/maint-cleanup-after-exec-failure (Wed Jan 28 02:38:14 2009 -0500) 4 commits
312 + + git: use run_command() to execute dashed externals
313 + + run_command(): help callers distinguish errors
314 + + run_command(): handle missing command errors more gracefully
315 + + git: s/run_command/run_builtin/
316 +
317 +Looked good for 1.6.2.
318 +
319 +* ns/am-slacker (Sat Jan 24 10:18:02 2009 +0900) 2 commits
320 + + git-am: Add --ignore-date option
321 + + am: Add --committer-date-is-author-date option
322 +
323 +It is a (probably) useful new feature with a sort-of cute explanation.
324 +I am not sure if it needs further work (such as hooking it to rebase),
325 +but other than that, I think it is Ok to have in 1.6.2.
326 +
327 ----------------------------------------------------------------
328 [On Hold]
329
@@ -291,12 +351,3 @@ This is only meant as a weatherballoon to help facilitate discussion.
351 * jc/post-simplify (Fri Aug 15 01:34:51 2008 -0700) 2 commits
352 . revision --simplify-merges: incremental simplification
353 . revision --simplify-merges: prepare for incremental simplification
294 -
295 -* jk/valgrind (Thu Oct 23 04:30:45 2008 +0000) 2 commits
296 - . valgrind: ignore ldso errors
297 - . add valgrind support in test scripts
298 -
299 -* wp/add-patch-find (Thu Nov 27 04:08:03 2008 +0000) 3 commits
300 - . In add --patch, Handle K,k,J,j slightly more gracefully.
301 - . Add / command in add --patch
302 - . git-add -i/-p: Change prompt separater from slash to comma