add a perl script to convert MaintNotes to wiki format
[git/dscho.git] / whats-cooking.txt
blob8dee12b891ef66b8c48d78de275bd0fdf785c521
1 To: git@vger.kernel.org
2 Subject: What's cooking in git.git (Jan 2010, #05; Sat, 16)
3 X-master-at: 561197238ef95b126b5ff16780250d492ad24233
4 X-next-at: f77bc8fa3d46eb76daac398c969137b207334af2
6 What's cooking in git.git (Jan 2010, #05; Sat, 16)
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 integration branches, but I am
12 still holding onto them.
14 --------------------------------------------------
15 [New Topics]
17 * dp/maint-1.6.5-fast-import-non-commit-tag (2010-01-14) 1 commit
18   (merged to 'next' on 2010-01-16 at f95ea8e)
19  + fast-import: tag may point to any object type
21 * il/push-set-upstream (2010-01-16) 1 commit
22   (merged to 'next' on 2010-01-16 at e3a7a60)
23  + Add push --set-upstream
25 * js/windows (2010-01-15) 7 commits
26  - Do not use date.c:tm_to_time_t() from compat/mingw.c
27  - MSVC: Windows-native implementation for subset of Pthreads API
28  - MSVC: Fix an "incompatible pointer types" compiler warning
29  - Windows: avoid the "dup dance" when spawning a child process
30  - Windows: simplify the pipe(2) implementation
31  - Windows: boost startup by avoiding a static dependency on shell32.dll
32  - Windows: disable Python
34 * nd/status-partial-refresh (2010-01-14) 1 commit
35   (merged to 'next' on 2010-01-16 at f77bc8f)
36  + status: only touch path we may need to check
38 * rr/core-tutorial (2010-01-16) 1 commit
39   (merged to 'next' on 2010-01-16 at d9dd8bd)
40  + Documentation: Update git core tutorial clarifying reference to scripts
42 * jc/conflict-mark-len-attr (2010-01-16) 3 commits
43  . WIP : honor conflict-marker-lenght in rerere (does not work yet)
44  . rerere: use ll_merge() instead of using xdl_merge()
45  . conflict-marker-length: new attribute
46  (this branch uses jc/cache-unmerge.)
48 I am attempting to introduce a new per-path attribute to specify
49 non-default conflict marker length to help rerere grok conflicts in
50 Documentation/git-merge.txt, but the series is not yet in a presentable
51 state yet.
53 --------------------------------------------------
54 [Stalled]
56 * ap/merge-backend-opts (2008-07-18) 6 commits
57  - Document that merge strategies can now take their own options
58  - Extend merge-subtree tests to test -Xsubtree=dir.
59  - Make "subtree" part more orthogonal to the rest of merge-recursive.
60  - Teach git-pull to pass -X<option> to git-merge
61  - git merge -X<option>
62  - git-merge-file --ours, --theirs
64 "git pull" patch needs sq-then-eval fix to protect it from $IFS
65 but otherwise seemed good.
67 * js/refer-upstream (2009-09-10) 1 commit
68  - Introduce <branch>@{upstream} notation
70 This does not teach the public interface about the new syntax; callers
71 that care about distinction between name vs SHA-1 might not work as well
72 as they should.
74 * jh/notes (2009-12-07) 11 commits
75  - Refactor notes concatenation into a flexible interface for combining notes
76  - Notes API: Allow multiple concurrent notes trees with new struct notes_tree
77  - Notes API: for_each_note(): Traverse the entire notes tree with a callback
78  - Notes API: get_note(): Return the note annotating the given object
79  - Notes API: add_note(): Add note objects to the internal notes tree structure
80  - Notes API: init_notes(): Initialize the notes tree from the given notes ref
81  - Notes API: get_commit_notes() -> format_note() + remove the commit restriction
82  - Minor style fixes to notes.c
83   (merged to 'next' on 2010-01-02 at ae42130)
84  + Add more testcases to test fast-import of notes
85  + Rename t9301 to t9350, to make room for more fast-import tests
86  + fast-import: Proper notes tree manipulation
88 http://thread.gmane.org/gmane.comp.version-control.git/134738
90 What's the status of the fourth and later patches on this topic?  Overall
91 it looked reasonable, if I recall correctly what I thought when I reviewed
92 it last time, and I am tempted to merge it to 'next' soonish.  Please
93 file complaints before I do so if people have objections.
95 Hold: JH on 2010-01-05, http://article.gmane.org/gmane.comp.version-control.git/136183
97 --------------------------------------------------
98 [Will merge to 'master' soon unless somebody complains]
100 * jk/warn-author-committer-after-commit (2010-01-13) 4 commits
101   (merged to 'next' on 2010-01-16 at f22c077)
102  + commit: allow suppression of implicit identity advice
103  + commit: show interesting ident information in summary
104  + strbuf: add strbuf_addbuf_percentquote
105  + strbuf_expand: convert "%%" to "%"
107 * tr/http-push-ref-status (2010-01-08) 6 commits
108   (merged to 'next' on 2010-01-16 at 7e872ac)
109  + transport-helper.c::push_refs(): emit "no refs" error message
110  + transport-helper.c::push_refs(): ignore helper-reported status if ref is not to be pushed
111  + transport.c::transport_push(): make ref status affect return value
112  + refactor ref status logic for pushing
113  + t5541-http-push.sh: add test for unmatched, non-fast-forwarded refs
114  + t5541-http-push.sh: add tests for non-fast-forward pushes
116 * sr/gfi-options (2009-12-04) 7 commits
117   (merged to 'next' on 2010-01-10 at 8b305fb)
118  + fast-import: add (non-)relative-marks feature
119  + fast-import: allow for multiple --import-marks= arguments
120  + fast-import: test the new option command
121  + fast-import: add option command
122  + fast-import: add feature command
123  + fast-import: put marks reading in its own function
124  + fast-import: put option parsing code in separate functions
126 * tc/smart-http-restrict (2010-01-14) 5 commits
127   (merged to 'next' on 2010-01-16 at 71fc84c)
128  + Test t5560: Fix test when run with dash
129   (merged to 'next' on 2010-01-06 at 82736cb)
130  + Smart-http tests: Test http-backend without curl or a webserver
131  + Smart-http tests: Break test t5560-http-backend into pieces
132  + Smart-http tests: Improve coverage in test t5560
133  + Smart-http: check if repository is OK to export before serving it
135 * tc/clone-v-progress (2009-12-26) 4 commits
136   (merged to 'next' on 2010-01-10 at ec2bfd7)
137  + clone: use --progress to force progress reporting
138  + clone: set transport->verbose when -v/--verbose is used
139  + git-clone.txt: reword description of progress behaviour
140  + check stderr with isatty() instead of stdout when deciding to show progress
142 Perhaps needs an entry in the Release Notes, but otherwise looked Ok.
144 * jk/run-command-use-shell (2010-01-01) 8 commits
145   (merged to 'next' on 2010-01-10 at 7479e2a)
146  + t4030, t4031: work around bogus MSYS bash path conversion
147  + diff: run external diff helper with shell
148  + textconv: use shell to run helper
149  + editor: use run_command's shell feature
150  + run-command: optimize out useless shell calls
151  + run-command: convert simple callsites to use_shell
152  + t0021: use $SHELL_PATH for the filter script
153  + run-command: add "use shell" option
155 Shuffled the commits in the topic, following J6t's suggestion in
156 http://thread.gmane.org/gmane.comp.version-control.git/136128
158 * jn/makefile (2010-01-06) 4 commits
159   (merged to 'next' on 2010-01-10 at f5a5d42)
160  + Makefile: consolidate .FORCE-* targets
161  + Makefile: learn to generate listings for targets requiring special flags
162  + Makefile: use target-specific variable to pass flags to cc
163  + Makefile: regenerate assembler listings when asked
165 * jc/maint-1.6.1-checkout-m-custom-merge (2010-01-06) 1 commit
166   (merged to 'next' on 2010-01-10 at df14116)
167  + checkout -m path: fix recreating conflicts
169 * bk/fix-relative-gitdir-file (2010-01-08) 2 commits
170   (merged to 'next' on 2010-01-16 at cc4ae57)
171  + Handle relative paths in submodule .git files
172  + Test update-index for a gitlink to a .git file
174 * jh/commit-status (2010-01-13) 2 commits
175   (merged to 'next' on 2010-01-13 at 0905d59)
176  + t7502: test commit.status, --status and --no-status
177  + commit: support commit.status, --status, and --no-status
179 I have already given ample time for people to react, but ended up getting
180 tired of waiting for tests to materialize and doing it myself, as I want
181 to close merge window for 1.7.0-rc0 by the end of next week to have the
182 final release early next month.
184 * sd/cd-p-show-toplevel (2010-01-12) 2 commits
185   (merged to 'next' on 2010-01-16 at 57d6d31)
186  + Use $(git rev-parse --show-toplevel) in cd_to_toplevel().
187  + Add 'git rev-parse --show-toplevel' option.
189 Avoid having to use "cd -P" that may not be available on some platforms'
190 shells.
192 * tc/test-locate-httpd (2010-01-02) 1 commit
193   (merged to 'next' on 2010-01-06 at 9d913e5)
194  + t/lib-http.sh: Restructure finding of default httpd location
196 --------------------------------------------------
197 [Will merge to 'master' after a bit more cooking in 'next']
199 * mh/rebase-fixup (2010-01-14) 21 commits
200   (merged to 'next' on 2010-01-16 at 7ccb228)
201  + rebase -i: Retain user-edited commit messages after squash/fixup conflicts
202  + t3404: Set up more of the test repo in the "setup" step
203  + rebase -i: For fixup commands without squashes, do not start editor
204  + rebase -i: Change function make_squash_message into update_squash_message
205  + rebase -i: Extract function do_with_author
206  + rebase -i: Handle the author script all in one place in do_next
207  + rebase -i: Extract a function "commit_message"
208  + rebase -i: Simplify commit counting for generated commit messages
209  + rebase -i: Improve consistency of commit count in generated commit messages
210  + t3404: Test the commit count in commit messages generated by "rebase -i"
211  + rebase -i: Introduce a constant AMEND
212  + rebase -i: Introduce a constant AUTHOR_SCRIPT
213  + rebase -i: Document how temporary files are used
214  + rebase -i: Use symbolic constant $MSG consistently
215  + rebase -i: Use "test -n" instead of "test ! -z"
216  + rebase -i: Inline expression
217  + rebase -i: Remove dead code
218  + rebase -i: Make the condition for an "if" more transparent
219   (merged to 'next' on 2010-01-12 at e84eab0)
220  + rebase-i: Ignore comments and blank lines in peek_next_command
221  + lib-rebase: Allow comments and blank lines to be added to the rebase script
222  + lib-rebase: Provide clearer debugging info about what the editor did
223  + Add a command "fixup" to rebase --interactive
224  + t3404: Use test_commit to set up test repository
225  (this branch is used by ns/rebase-auto-squash.)
227 * ns/rebase-auto-squash (2009-12-08) 1 commit
228   (merged to 'next' on 2010-01-06 at da4e2f5)
229  + rebase -i --autosquash: auto-squash commits
230  (this branch uses mh/rebase-fixup.)
232 * da/difftool (2010-01-15) 10 commits
233   (merged to 'next' on 2010-01-16 at 609f0da)
234  + difftool: Update copyright notices to list each year separately
235  + difftool: Use eval to expand '--extcmd' expressions
236  + difftool: Add '-x' and as an alias for '--extcmd'
237  + t7800-difftool.sh: Simplify the --extcmd test
238   (merged to 'next' on 2010-01-10 at 749c870)
239  + git-diff.txt: Link to git-difftool
240  + difftool: Allow specifying unconfigured commands with --extcmd
241  + difftool--helper: Remove use of the GIT_MERGE_TOOL variable
242  + difftool--helper: Update copyright and remove distracting comments
243   (merged to 'next' on 2010-01-06 at e957395)
244  + git-difftool: Add '--gui' for selecting a GUI tool
245  + t7800-difftool: Set a bogus tool for use by tests
247 * mm/conflict-advice (2010-01-12) 1 commit
248   (merged to 'next' on 2010-01-16 at b83be11)
249  + Be more user-friendly when refusing to do something because of conflict.
251 * jc/maint-strbuf-add-fix-doubling (2010-01-12) 1 commit
252   (merged to 'next' on 2010-01-16 at 5959eee)
253  + strbuf_addbuf(): allow passing the same buf to dst and src
255 * jc/maint-1.6.4-grep-lookahead (2010-01-10) 1 commit
256   (merged to 'next' on 2010-01-13 at 20f8f4b)
257  + grep: optimize built-in grep by skipping lines that do not hit
258  (this branch is used by jc/grep-lookahead and jc/maint-grep-lookahead.)
260 Optimize the "line-by-line" internal grep by skiping en masse over lines
261 that cannot possibly match.
263 * jc/maint-grep-lookahead (2010-01-12) 0 commits
264  (this branch uses jc/maint-1.6.4-grep-lookahead; is used by jc/grep-lookahead.)
266 Early conflict resolution for the above for recent git.
268 * jc/grep-lookahead (2010-01-15) 4 commits
269  - grep --no-index: allow use of "git grep" outside a git repository
270  - grep: prepare to run outside of a work tree
271   (merged to 'next' on 2010-01-13 at 20f8f4b)
272  + grep: rip out pessimization to use fixmatch()
273  + grep: rip out support for external grep
274  (this branch uses jc/maint-1.6.4-grep-lookahead and jc/maint-grep-lookahead.)
276 * nd/include-termios-for-osol (2010-01-11) 1 commit
277   (merged to 'next' on 2010-01-16 at 3160c76)
278  + Add missing #include to support TIOCGWINSZ on Solaris
280 * pc/uninteresting-submodule-disappear-upon-switch-branches (2010-01-11) 1 commit
281   (merged to 'next' on 2010-01-16 at b06ca1a)
282  + Remove empty directories when checking out a commit with fewer submodules
284 Instead of using unlink(2) that will never succeed, use rmdir(2) to remove
285 an empty directory, knowing that this won't harm a populated directory.
287 * jl/submodule-diff (2010-01-16) 2 commits
288   (merged to 'next' on 2010-01-16 at 0a99e3c)
289  + Teach diff that modified submodule directory is dirty
290  + Show submodules as modified when they contain a dirty work tree
292 * jc/ls-files-ignored-pathspec (2010-01-08) 4 commits
293   (merged to 'next' on 2010-01-16 at d36016a)
294  + ls-files: fix overeager pathspec optimization
295  + read_directory(): further split treat_path()
296  + read_directory_recursive(): refactor handling of a single path into a separate function
297  + t3001: test ls-files -o ignored/dir
299 * js/exec-error-report (2010-01-12) 4 commits
300   (merged to 'next' on 2010-01-16 at 0e28d02)
301  + Improve error message when a transport helper was not found
302  + start_command: detect execvp failures early
303  + run-command: move wait_or_whine earlier
304  + start_command: report child process setup errors to the parent's stderr
306 * jc/fix-tree-walk (2009-09-14) 7 commits
307   (merged to 'next' on 2010-01-13 at 1c01b87)
308  + read-tree --debug-unpack
309  + unpack-trees.c: look ahead in the index
310  + unpack-trees.c: prepare for looking ahead in the index
311  + Aggressive three-way merge: fix D/F case
312  + traverse_trees(): handle D/F conflict case sanely
313  + more D/F conflict tests
314  + tests: move convenience regexp to match object names to test-lib.sh
316 Resurrected from "Ejected" category.  This is fix for a tricky codepath
317 and testing and improving before it hits 'master' is greatly appreciated.
318 (I have been using this in my private build for some time).
320 * jc/cache-unmerge (2009-12-25) 9 commits
321   (merged to 'next' on 2010-01-13 at 2290c44)
322  + rerere forget path: forget recorded resolution
323  + rerere: refactor rerere logic to make it independent from I/O
324  + rerere: remove silly 1024-byte line limit
325  + resolve-undo: teach "update-index --unresolve" to use resolve-undo info
326  + resolve-undo: "checkout -m path" uses resolve-undo information
327  + resolve-undo: allow plumbing to clear the information
328  + resolve-undo: basic tests
329  + resolve-undo: record resolved conflicts in a new index extension section
330  + builtin-merge.c: use standard active_cache macros
331  (this branch is used by jc/conflict-mark-len-attr.)
333 * jc/rerere (2009-12-04) 1 commit
334   (merged to 'next' on 2010-01-10 at e295b7f)
335  + Teach --[no-]rerere-autoupdate option to merge, revert and friends
337 --------------------------------------------------
338 [Cooking]
340 * jc/symbol-static (2010-01-11) 17 commits
341  - symlinks.c: remove unused functions
342  - object.c: remove unused functions
343  - blob.c: remove unused function
344  - strbuf.c: remove unused function
345  - sha1_file.c: remove unused function
346  - mailmap.c: remove unused function
347  - utf8.c: mark file-local function static
348  - submodule.c: mark file-local function static
349  - quote.c: mark file-local function static
350  - remote-curl.c: mark file-local function static
351  - read-cache.c: mark file-local functions static
352  - parse-options.c: mark file-local function static
353  - entry.c: mark file-local function static
354  - http.c: mark file-local functions static
355  - pretty.c: mark file-local function static
356  - builtin-rev-list.c: mark file-local function static
357  - bisect.c: mark file-local function static
359 Mark file-local symbols "static", and remove unused functions.  Daniel
360 suggests to leave some comment for blob.c and I agree in principle, but
361 I don't think of a good description myself.
363 * jh/gitweb-cached (2010-01-13) 9 commits
364  - gitweb: File based caching layer (from git.kernel.org)
365  - gitweb: Convert output to using indirect file handle
366  - gitweb: cleanup error message produced by undefined $site_header
367  - gitweb: add a get function to compliment print_sort_th
368  - gitweb: add a get function to compliment print_local_time
369  - gitweb: Makefile improvements
370  - gitweb: Add option to force version match
371  - gitweb: change die_error to take "extra" argument for extended die information
372  - gitweb: Load checking
374 Replaced with a re-roll.  Update to t9500 is probably needed.
376 * jc/ident (2010-01-08) 3 commits
377  - ident.c: treat $EMAIL as giving user.email identity explicitly
378   (merged to 'next' on 2010-01-10 at f1f9ded)
379  + ident.c: check explicit identity for name and email separately
380  + ident.c: remove unused variables
382 Opinions on the topmost one?
384 * jc/branch-d (2009-12-29) 1 commit
385   (merged to 'next' on 2010-01-10 at 61a14b7)
386  + branch -d: base the "already-merged" safety on the branch it merges with