What's cooking (2009/04 #02)
[git/dscho.git] / whats-cooking.txt
blob0b8eaa374da8ede53e13f6429d32a67518b9d0e4
1 To: git@vger.kernel.org
2 Subject: What's cooking in git.git (Apr 2009, #02; Sun, 12)
3 X-master-at: c965c029330b1f81cc107c5d829e7fd79c61d8ea
4 X-next-at: d07d5c8f15ddd1f2569e1778cb82501a201d2f22
6 What's cooking in git.git (Apr 2009, #02; Sun, 12)
7 --------------------------------------------------
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.
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.
17 We are at 1.6.3-rc0; the tip of 'master' might have some unexpected
18 minor regressions, and I'd appreciate people to test and report so that we
19 can keep this cycle short.
21 ----------------------------------------------------------------
22 [New Topics]
24 * mm/add-p-quit (Fri Apr 10 16:57:01 2009 +0200) 1 commit
25  - [NEEDS SIGN OFF, DOC, AND REVIEW] git add -p: new "quit" command
26    at the prompt.
28 I think this is Ok for 1.6.3, but some duplicated hunks bothered me.  I
29 did not read the patch really seriously.
31 * lt/bool-on-off (Thu Apr 9 12:40:39 2009 -0700) 1 commit
32  - Allow users to un-configure rename detection
34 The commit log message needs to be cleaned up, the patch needs to be
35 signed off, and there probably needs a documentation, but I think
36 otherwise this is a good idea.
38 * nd/archive-attribute (Thu Apr 9 17:01:30 2009 +1000) 2 commits
39  - archive: do not read .gitattributes in working directory
40  - attr: add GIT_ATTR_INDEX "direction"
42 I think this is Ok for 1.6.3 but it needs new tests to protect the new
43 feature from future breakages.
45 * js/add-edit (Wed Apr 8 23:30:24 2009 +0200) 1 commit
46  - git-add: introduce --edit (to edit the diff vs. the index)
48 I am Ok with the general idea, but the error detection needs to be more
49 robust than merely relying on --recount.
51 * eb/upload-archive-from-git-shell (Thu Apr 9 21:58:52 2009 +0200) 1 commit
52  - git-shell: Add 'git-upload-archive' to allowed commands.
54 I think this is Ok for 1.6.3.
56 * jc/shared-literally (Sun Apr 12 17:55:18 2009 -0700) 2 commits
57  - Mark t1301 permission test to depend on POSIXPERM
58  - t1301-shared-repo: fix forced modes test
60 J6t's updates to fix permission tests and make sure they won't run on
61 systems without permission bits on the filesystem.
63 I think this is Ok for 1.6.3.
65 * ns/am-to-empty (Fri Apr 10 09:34:42 2009 +0900) 1 commit
66  - git-am: teach git-am to apply a patch to an unborn branch
68 I think this is Ok for 1.6.3.
70 * bw/short-ref-strict (Sat Apr 11 22:35:18 2009 +0200) 2 commits
71  . for-each-ref: refname:short utilize core.warnAmbiguousRefs
72  . get_short_ref(): add strict mode
74 This is an "obviously good thing to do" candidate for 1.6.3 but had
75 serious conflicts with other topics I didn't feel like resolving myself;
76 as the series is coming from TopGit, I'd ask the submitter to rebase it
77 for me ;-)
79 * lt/pack-object-memuse (Fri Apr 10 18:15:26 2009 -0700) 2 commits
80  - show_object(): push path_name() call further down
81  - process_{tree,blob}: show objects without buffering
83 This had some conflicts with Christian's bisect topic; I think I resolved
84 them correctly, but double-checking would be nice.
86 ----------------------------------------------------------------
87 [Graduated to "master"]
89 * mh/html-path (Sun Apr 5 04:15:16 2009 +0200) 1 commit
90  + add --html-path to get the location of installed HTML docs
92 * lt/reflog-expire (Mon Mar 30 21:34:14 2009 -0700) 2 commits
93  + Speed up reflog pruning of unreachable commits
94  + Clean up reflog unreachability pruning decision
96 * bs/maint-1.6.0-tree-walk-prefix (Wed Apr 1 19:34:03 2009 -0700) 2 commits
97  + match_tree_entry(): a pathspec only matches at directory
98    boundaries
99  + tree_entry_interesting: a pathspec only matches at directory
100    boundary
102 * ms/http-auth (Wed Apr 1 19:48:24 2009 +0300) 1 commit
103  + Allow curl to rewind the read buffers
105 * js/maint-submodule-checkout (Thu Apr 2 15:30:25 2009 +0200) 1 commit
106  + Fix 'git checkout <submodule>' to update the index
108 * cb/maint-merge-recursive-submodule-fix (Sun Apr 5 02:47:00 2009 +0200) 3 commits
109  + simplify output of conflicting merge
110  + update cache for conflicting submodule entries
111  + add tests for merging with submodules
113 * fg/remote-prune (Fri Apr 3 11:03:44 2009 +0200) 2 commits
114  + git remote update: New option --prune
115  + builtin-remote.c: Split out prune_remote as a separate function.
117 These should go to 'master' soonish.
119 * cc/sha1-bsearch (Mon Apr 6 00:48:49 2009 -0700) 3 commits
120  + sha1-lookup: fix up the assertion message
121  + patch-ids: use the new generic "sha1_pos" function to lookup sha1
122  + sha1-lookup: add new "sha1_pos" function to efficiently lookup
123    sha1
125 * jc/name-branch-iffy (Sat Mar 21 14:30:21 2009 -0700) 1 commit
126  + checkout -: make "-" to mean "previous branch" everywhere
128 * cc/bisect-filter (Mon Mar 30 06:59:59 2009 +0200) 19 commits
129  + bisect--helper: string output variables together with "&&"
130  + rev-list: pass "int flags" as last argument of "show_bisect_vars"
131  + t6030: test bisecting with paths
132  + bisect: use "bisect--helper" and remove "filter_skipped" function
133  + bisect: implement "read_bisect_paths" to read paths in
134    "$GIT_DIR/BISECT_NAMES"
135  + bisect--helper: implement "git bisect--helper"
136  + bisect: use the new generic "sha1_pos" function to lookup sha1
137  + rev-list: call new "filter_skip" function
138  + Merge branch 'cc/sha1-bsearch' into HEAD
139  + patch-ids: use the new generic "sha1_pos" function to lookup sha1
140  + sha1-lookup: add new "sha1_pos" function to efficiently lookup
141    sha1
142  + rev-list: pass "revs" to "show_bisect_vars"
143  + rev-list: make "show_bisect_vars" non static
144  + rev-list: move code to show bisect vars into its own function
145  + rev-list: move bisect related code into its own file
146  + rev-list: make "bisect_list" variable local to "cmd_rev_list"
147  + refs: add "for_each_ref_in" function to refactor "for_each_*_ref"
148    functions
149  + quote: add "sq_dequote_to_argv" to put unwrapped args in an argv
150    array
151  + quote: implement "sq_dequote_many" to unwrap many args in one
152    string
154 ----------------------------------------------------------------
155 [Stalled and may need help and prodding to go forward]
157 * ps/blame (Thu Mar 12 21:30:03 2009 +1100) 1 commit
158  - blame.c: start libifying the blame infrastructure
160 A few minor point remains in this initial one.  I hate to do these minor
161 fix-ups myself, but I may end up doing so...
163 * jc/log-tz (Tue Mar 3 00:45:37 2009 -0800) 1 commit
164  - Allow --date=local --date=other-format to work as expected
166 The one I posted had a few corner-case bugs that was caught with the test
167 suite; this one has them fixed.  People did not like the UI so it is kept
168 out of 'next'
170 * jc/merge-convert (Mon Jan 26 16:45:01 2009 -0800) 1 commit
171  - git-merge-file: allow converting the results for the work tree
173 This is a feature waiting for a user.
175 We did not give scripted Porcelains a way to say "this temporary file I am
176 using for merging is for this path, so use the core.autocrlf and attributes
177 rules for that final path".  Instead, merge-file simply wrote out the
178 data in the canonical repository representation.
180 rerere has the same issue, but it is a lot worse.  It reads the three
181 files (preimage, postimage and thisimage) from the work tree in the work
182 tree representation, merges them without converting them to the canonical
183 representation first but inserts the conflict markers with the canonical
184 representation and writes the resulting mess out.  It needs to be fixed to
185 read with convert_to_git(), merge them while they are still in the
186 canonical representation and possibly add conflict markers, and then write
187 the results out after convert_to_working_tree().  It also needs to write
188 in binary mode as well.
190 * db/foreign-scm (Tue Mar 24 23:04:12 2009 -0400) 3 commits
191  - Add option for using a foreign VCS
192  - Document details of transport function APIs
193  - Allow late reporting of fetched hashes
195 * js/notes (Wed Feb 18 11:17:27 2009 -0800) 14 commits
196  - tests: fix "export var=val"
197  - notes: refuse to edit notes outside refs/notes/
198  - t3301: use test_must_fail instead of !
199  - t3301: fix confusing quoting in test for valid notes ref
200  - notes: use GIT_EDITOR and core.editor over VISUAL/EDITOR
201  - notes: only clean up message file when editing
202  - handle empty notes gracefully
203  - git notes show: test empty notes
204  - git-notes: fix printing of multi-line notes
205  - notes: fix core.notesRef documentation
206  - Add an expensive test for git-notes
207  - Speed up git notes lookup
208  - Add a script to edit/inspect notes
209  - Introduce commit notes
211 * hv/cvsps-tests (Sun Apr 5 01:40:50 2009 -0700) 8 commits
212  - t/t9600: remove exit after test_done
213  - cvsimport: extend testcase about patchset order to contain
214    branches
215  - cvsimport: add test illustrating a bug in cvsps
216  + Add a test of "git cvsimport"'s handling of tags and branches
217  + Add some tests of git-cvsimport's handling of vendor branches
218  + Test contents of entire cvsimported "master" tree contents
219  + Use CVS's -f option if available (ignore user's ~/.cvsrc file)
220  + Start a library for cvsimport-related tests
222 Two cvsimport test topics were rewound from 'next' and merged into this
223 one.  I'll keep this in 'pu' so that people can polish their cvsps skilz
224 to resolve issues these tests identify.
226 ----------------------------------------------------------------
227 [Actively cooking]
229 * da/difftool (Sat Apr 11 20:41:56 2009 -0700) 16 commits
230  - mergetool--lib: simplify API usage by removing more global
231    variables
232  - Fix misspelled mergetool.keepBackup
233  - difftool/mergetool: refactor commands to use git-mergetool--lib
234  - mergetool: use $( ... ) instead of `backticks`
235  - bash completion: add git-difftool
236  - difftool: add support for a difftool.prompt config variable
237  - difftool: add various git-difftool tests
238  - difftool: move 'git-difftool' out of contrib
239  - difftool/mergetool: add diffuse as merge and diff tool
240  - difftool: add a -y shortcut for --no-prompt
241  - difftool: use perl built-ins when testing for msys
242  - difftool: remove the backup file feature
243  - difftool: remove merge options for opendiff, tkdiff, kdiff3 and
244    xxdiff
245  - git-mergetool: add new merge tool TortoiseMerge
246  - git-mergetool/difftool: make (g)vimdiff workable under Windows
247  - doc/merge-config: list ecmerge as a built-in merge tool
249 * cc/replace (Mon Feb 2 06:13:06 2009 +0100) 11 commits
250  - builtin-replace: use "usage_msg_opt" to give better error messages
251  - parse-options: add new function "usage_msg_opt"
252  - builtin-replace: teach "git replace" to actually replace
253  - Add new "git replace" command
254  - environment: add global variable to disable replacement
255  - mktag: call "check_sha1_signature" with the replacement sha1
256  - replace_object: add a test case
257  - object: call "check_sha1_signature" with the replacement sha1
258  - sha1_file: add a "read_sha1_file_repl" function
259  - replace_object: add mechanism to replace objects found in
260    "refs/replace/"
261  - refs: add a "for_each_replace_ref" function
263 I suspect an attempt to replace an object that is directly listed on the
264 command line would not work very well with this series.
266 ----------------------------------------------------------------
267 [On Hold]
269 * jc/deny-delete-current-1.7.0 (Mon Feb 9 00:19:46 2009 -0800) 1 commit
270  - receive-pack: default receive.denyDeleteCurrent to refuse
272 * jc/refuse-push-to-current-1.7.0 (Wed Feb 11 02:28:03 2009 -0800) 1 commit
273  - Refuse updating the current branch in a non-bare repository via
274    push
276 These are for 1.7.0, but the messages when they trigger together may need
277 to be rethought.