Leftover what's cooking

Junio C Hamano committed Mar 3, 2009 at 01:08 UTC b0eb1eceaafae445ac9b4608e6c328f883354850
1 file changed +336
whats/cooking/2009/02/06.txt new
+336
@@ -0,0 +1,336 @@
1 +To: git@vger.kernel.org
2 +Subject: What's cooking in git.git (Feb 2009, #06; Wed, 18)
3 +X-master-at: 25487f8e2ae266936df0f807ae79dca41606e404
4 +X-next-at: 7bf82e6b638b58e0dd7bf2ab96f861e1f239b822
5 +
6 +What's cooking in git.git (Feb 2009, #06; Wed, 18)
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 +The master branch is slightly past 1.6.2-rc1.
18 +
19 +As an experiment, 'next' and 'pu' stay open during this release freeze;
20 +new topics are accepted as time permits, but people are much more strongly
21 +encouraged to find issues on what is already on 'master', and patches to
22 +fix them always takes precedence over what is still on 'next' and will
23 +never graduate until 1.6.2 final.
24 +
25 +----------------------------------------------------------------
26 +[New Topics]
27 +
28 +* fc/parseopt-config (Tue Feb 17 15:52:56 2009 +0200) 11 commits
29 + . config: Don't allow extra arguments for -e or -l
30 + . config: Disallow multiple variable types
31 + . config: Disallow multiple config file locations
32 + . config: Disallow --getcolor* and other actions used together
33 + . config: Use parseopt
34 + . config: Reorganize get_color*
35 + . config: Trivial rename in preparation for parseopt
36 + . ??? config: Make git_config() more flexible
37 + . config: Cleanup editor action
38 + . config: style clean-ups
39 + - config: Add new option to open an editor.
40 +
41 +Builds on top of "config -e" change.
42 +
43 +* mv/parseopt-ls-files (Tue Feb 17 15:27:11 2009 +0100) 2 commits
44 + - parse-opt: migrate builtin-ls-files.
45 + - Turn the flags in struct dir_struct into a single variable
46 +
47 +----------------------------------------------------------------
48 +[Stalled and may need help and prodding to go forward]
49 +
50 +* ns/stash-keep (Thu Feb 12 06:25:14 2009 +0900) 1 commit
51 + - stash: --keep option just saves
52 +
53 +Do we want to keep this one?
54 +
55 +* lh/submodule-tree-traversal (Sun Jan 25 01:52:06 2009 +0100) 1 commit
56 + - archive.c: add support for --submodules[=(all|checkedout)]
57 +
58 +Discussion stalled on the submodule selection criteria.
59 +
60 +* jc/blame (Wed Jun 4 22:58:40 2008 -0700) 2 commits
61 + + blame: show "previous" information in --porcelain/--incremental
62 + format
63 + + git-blame: refactor code to emit "porcelain format" output
64 +
65 +This gives Porcelains (like gitweb) the information on the commit _before_
66 +the one that the final blame is laid on, which should save them one
67 +rev-parse to dig further. The line number in the "previous" information
68 +may need refining, and sanity checking code for reference counting may
69 +need to be resurrected before this can move forward.
70 +
71 +I thought recent tig discussion may blow new life into it, but is this
72 +unneeded? If so I'd rather revert it (or discard after 1.6.2).
73 +
74 +* db/foreign-scm (Sun Jan 11 15:12:10 2009 -0500) 3 commits
75 + - Support fetching from foreign VCSes
76 + - Add specification of git-vcs helpers
77 + - Add "vcs" config option in remotes
78 +
79 +The "spec" did not seem quite well cooked yet, but in the longer term I
80 +think something like this to allow interoperating with other SCMs as if
81 +the other end is a native git repository is a very worthy goal.
82 +
83 +* cc/replace (Mon Feb 2 06:13:06 2009 +0100) 11 commits
84 + - builtin-replace: use "usage_msg_opt" to give better error messages
85 + - parse-options: add new function "usage_msg_opt"
86 + - builtin-replace: teach "git replace" to actually replace
87 + - Add new "git replace" command
88 + - environment: add global variable to disable replacement
89 + - mktag: call "check_sha1_signature" with the replacement sha1
90 + - replace_object: add a test case
91 + - object: call "check_sha1_signature" with the replacement sha1
92 + - sha1_file: add a "read_sha1_file_repl" function
93 + - replace_object: add mechanism to replace objects found in
94 + "refs/replace/"
95 + - refs: add a "for_each_replace_ref" function
96 +
97 +I think the code is much cleaner than the first round, but I am not
98 +convinced it is doing the right thing in the connectivity traverser.
99 +Independent review sorely needed.
100 +
101 +* sc/gitweb-category (Fri Dec 12 00:45:12 2008 +0100) 3 commits
102 + - gitweb: Optional grouping of projects by category
103 + - gitweb: Split git_project_list_body in two functions
104 + - gitweb: Modularized git_get_project_description to be more generic
105 +
106 +Design discussion between Jakub and Sebastien seems to have stalled, but
107 +Jakub seems to be taking this over.
108 +
109 +* jc/fsck (Fri Jan 30 02:33:47 2009 -0800) 4 commits
110 + - fsck: three levels of validation
111 + - verify-pack: add --quick
112 + - verify_pack(): allow a quicker verification for a pack with
113 + version 2 idx
114 + - pack-check.c: minor formatting fix to match coding style
115 +
116 +J6t has a good point that if this had any value then medium level should
117 +replace the default. I am tempted to actually dropping this as a failed
118 +experiment.
119 +
120 +----------------------------------------------------------------
121 +[Reverted]
122 +
123 +* mh/unify-color (Fri Jan 23 01:25:23 2009 -0800) 3 commits
124 + ? Revert previous two commits
125 + ? move the color variables to color.c
126 + ? handle color.ui at a central place
127 +
128 +This broke git-format-patch badly.
129 +
130 +* js/rebase-error-a-bit-more-verbose (Sun Feb 8 21:22:18 2009 -0800) 2 commits
131 + ? Revert "rebase: explain why when the HEAD could not be detached"
132 + ? rebase: explain why when the HEAD could not be detached
133 +
134 +This turned out to be unnecessary.
135 +
136 +* rs/maint-1.6.0-windows-ceiling (Sat Feb 7 12:40:40 2009 -0800) 2 commits
137 + ? Revert "fix t1504 on Windows"
138 + ? fix t1504 on Windows
139 +
140 +I'm giving a fresh start to J6t's series which contains this.
141 +
142 +* lh/reverted-submodule-tree-traversal (Sun Jan 25 18:39:55 2009 -0800) 4 commits
143 + ? Revert round #1 of the series
144 + ? builtin-ls-tree: enable traversal of submodules
145 + ? archive.c: enable traversal of submodules
146 + ? tree.c: add support for traversal of submodules
147 +
148 +I'm giving a fresh start to Lars's second iteration.
149 +
150 +----------------------------------------------------------------
151 +[Will merge to 'next' soon]
152 +
153 +* tr/gcov (Sun Feb 15 23:25:45 2009 +0100) 8 commits
154 + - Test git-patch-id
155 + - Test rev-list --parents/--children
156 + - Test log --decorate
157 + - Test fsck a bit harder
158 + - Test log --graph
159 + - Test diff --dirstat functionality
160 + - Test that diff can read from stdin
161 + - Support coverage testing with GCC/gcov
162 +
163 +----------------------------------------------------------------
164 +[Ready for 'master' after 1.6.2]
165 +
166 +* jw/imap-preformatted-html (Thu Feb 12 08:58:12 2009 -0600) 1 commit
167 + + imap.preformattedHTML to tell Thunderbird to send non-flowed text
168 +
169 +The patch text should be identical to Jeremy's "Virtual Patch", except
170 +that the configuration variable was renamed per list discussion.
171 +
172 +* jw/format-patch-attach (Thu Feb 12 09:51:55 2009 -0600) 1 commit
173 + + Enable setting attach as the default in .gitconfig for git-format-
174 + patch.
175 +
176 +* sr/force-rebase (Fri Feb 13 23:48:01 2009 +0100) 1 commit
177 + + Teach rebase to rebase even if upstream is up to date
178 +
179 +* fg/exclude-bq (Tue Feb 10 15:20:17 2009 +0100) 1 commit
180 + + Support "\" in non-wildcard exclusion entries
181 +
182 +* dm/add-i-edit-abort (Thu Feb 12 00:19:41 2009 -0500) 1 commit
183 + + add -i: revisit hunk on editor failure
184 +
185 +* tp/completion (Wed Feb 11 13:03:26 2009 -0500) 4 commits
186 + + completion: More fixes to prevent unbound variable errors
187 + + completion: Better __git_ps1 support when not in working directory
188 + + completion: Use consistent if [...] convention, not "test"
189 + + completion: For consistency, change "git rev-parse" to __gitdir
190 + calls
191 +
192 +* js/branch-symref (Wed Feb 18 19:14:59 2009 +0100) 2 commits
193 + + Avoid segfault with 'git branch' when the HEAD is detached
194 + + builtin-branch: improve output when displaying remote branches
195 +
196 +* al/ansi-color (Fri Feb 13 22:53:41 2009 +0100) 2 commits
197 + + builtin-branch.c: Rename branch category color names
198 + + Clean up use of ANSI color sequences
199 +
200 +* kb/checkout-optim (Wed Feb 18 23:18:03 2009 +0100) 10 commits
201 + + check_updates(): effective removal of cache entries marked
202 + CE_REMOVE
203 + + lstat_cache(): print a warning if doing ping-pong between cache
204 + types
205 + + show_patch_diff(): remove a call to fstat()
206 + + write_entry(): use fstat() instead of lstat() when file is open
207 + + write_entry(): cleanup of some duplicated code
208 + + create_directories(): remove some memcpy() and strchr() calls
209 + + unlink_entry(): introduce schedule_dir_for_removal()
210 + + lstat_cache(): swap func(length, string) into func(string, length)
211 + + lstat_cache(): generalise longest_match_lstat_cache()
212 + + lstat_cache(): small cleanup and optimisation
213 +
214 +* js/valgrind (Thu Feb 5 22:03:00 2009 +0100) 9 commits
215 + + valgrind: do not require valgrind 3.4.0 or newer
216 + + test-lib: avoid assuming that templates/ are in the GIT_EXEC_PATH
217 + + Tests: let --valgrind imply --verbose and --tee
218 + + Add a script to coalesce the valgrind outputs
219 + + t/Makefile: provide a 'valgrind' target
220 + + test-lib.sh: optionally output to test-results/$TEST.out, too
221 + + Valgrind support: check for more than just programming errors
222 + + valgrind: ignore ldso and more libz errors
223 + + Add valgrind support in test scripts
224 +
225 +----------------------------------------------------------------
226 +[Actively cooking]
227 +
228 +* jc/add-p-unquote (Mon Feb 16 22:43:43 2009 -0800) 1 commit
229 + + git-add -i/-p: learn to unwrap C-quoted paths
230 +
231 +* js/send-email (Sat Feb 14 23:32:15 2009 -0500) 3 commits
232 + + send-email: --suppress-cc improvements
233 + + send-email: handle multiple Cc addresses when reading mbox message
234 + + send-email: allow send-email to run outside a repo
235 +
236 +* sg/rerere-cleanup (Sat Feb 14 23:21:04 2009 +0100) 1 commit
237 + + rerere: remove duplicated functions
238 +
239 +* js/notes (Wed Feb 18 11:17:27 2009 -0800) 14 commits
240 + + tests: fix "export var=val"
241 + + notes: refuse to edit notes outside refs/notes/
242 + + t3301: use test_must_fail instead of !
243 + + t3301: fix confusing quoting in test for valid notes ref
244 + + notes: use GIT_EDITOR and core.editor over VISUAL/EDITOR
245 + + notes: only clean up message file when editing
246 + + handle empty notes gracefully
247 + + git notes show: test empty notes
248 + + git-notes: fix printing of multi-line notes
249 + + notes: fix core.notesRef documentation
250 + + Add an expensive test for git-notes
251 + + Speed up git notes lookup
252 + + Add a script to edit/inspect notes
253 + + Introduce commit notes
254 +
255 +Earlier part was merged to master and then reverted there. I probably
256 +should rebase this after 1.6.2 to keep my sanity.
257 +
258 +* fc/config-editor (Sat Feb 7 23:53:00 2009 +0200) 1 commit
259 + - config: Add new option to open an editor.
260 +
261 +* js/remote-set-head (Sat Feb 14 05:30:30 2009 -0500) 5 commits
262 + - builtin-remote: better handling of multiple remote HEADs
263 + - builtin-remote: add set-head subcommand
264 + - builtin-remote: teach show to display remote HEAD
265 + - builtin-remote: move duplicated cleanup code its own function
266 + - builtin-clone: move locate_head() to remote.c so it can be re-used
267 +
268 +* jk/head-lookup (Sun Feb 15 01:18:18 2009 -0500) 5 commits
269 + - remote: use exact HEAD lookup if it is available
270 + - remote: refactor guess_remote_head
271 + - refactor find_refs_by_name to accept const list
272 + - add basic http clone/fetch tests
273 + - test scripts: refactor start_httpd helper
274 +
275 +Builds on top of Jay Soffian's js/remote-set-head topic. How well do
276 +these two work in practice in the real world? Success stories?
277 +
278 +----------------------------------------------------------------
279 +[On Hold]
280 +
281 +* jc/deny-delete-current-1.7.0 (Mon Feb 9 00:19:46 2009 -0800) 1 commit
282 + - receive-pack: default receive.denyDeleteCurrent to refuse
283 +
284 +* jc/refuse-push-to-current-1.7.0 (Wed Feb 11 02:28:03 2009 -0800) 1 commit
285 + - Refuse updating the current branch in a non-bare repository via
286 + push
287 +
288 +This is for 1.7.0.
289 +
290 +* jc/commit-assume-also-during-merge (Thu Jan 22 22:21:49 2009 -0800) 3 commits
291 + - git commit: pathspec without -i/-o implies -i semantics during a
292 + merge
293 + - builtin-commit: shorten eye-sore overlong lines
294 + - Add "partial commit" tests during a conflicted merge
295 +
296 +This was only meant as a weatherballoon to help facilitate discussion.
297 +
298 +* jc/merge-convert (Mon Jan 26 16:45:01 2009 -0800) 1 commit
299 + - git-merge-file: allow converting the results for the work tree
300 +
301 +This is a feature waiting for a user. I do not need it in 1.6.2
302 +
303 +We did not give scripted Porcelains a way to say "this temporary file I am
304 +using for merging is for this path, so use the core.autocrlf and attributes
305 +rules for that final path". Instead, merge-file simply wrote out the
306 +data in the canonical repository representation.
307 +
308 +rerere has the same issue, but it is a lot worse. It reads the three
309 +files (preimage, postimage and thisimage) from the work tree in the work
310 +tree representation, merges them without converting them to the canonical
311 +representation first but inserts the conflict markers with the canonical
312 +representation and writes the resulting mess out. It needs to be fixed to
313 +read with convert_to_git(), merge them while they are still in the
314 +canonical representation and possibly add conflict markers, and then write
315 +the results out after convert_to_working_tree(). It also needs to write
316 +in binary mode as well.
317 +
318 +----------------------------------------------------------------
319 +[Perhaps will discard]
320 +
321 +* jk/renamelimit (Sat May 3 13:58:42 2008 -0700) 1 commit
322 + . diff: enable "too large a rename" warning when -M/-C is explicitly
323 + asked for
324 +
325 +* jc/stripspace (Sun Mar 9 00:30:35 2008 -0800) 6 commits
326 + . git-am --forge: add Signed-off-by: line for the author
327 + . git-am: clean-up Signed-off-by: lines
328 + . stripspace: add --log-clean option to clean up signed-off-by:
329 + lines
330 + . stripspace: use parse_options()
331 + . Add "git am -s" test
332 + . git-am: refactor code to add signed-off-by line for the committer
333 +
334 +* jc/post-simplify (Fri Aug 15 01:34:51 2008 -0700) 2 commits
335 + . revision --simplify-merges: incremental simplification
336 + . revision --simplify-merges: prepare for incremental simplification