What's cooking

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