What's cooking in git.git (Jul 2008, issue #05; Sun, 13)

Junio C Hamano committed Jul 20, 2008 at 22:58 UTC 4471b6020a729c91d4c0190f72056fdece34e984
1 file changed +153 -118
whatscooking.txt
+153 -118
@@ -1,4 +1,4 @@
1 -What's cooking in git.git (Jul 2008, issue #04; Wed, 09)
1 +What's cooking in git.git (Jul 2008, issue #05; Sun, 13)
2 --------------------------------------------------------
3
4 Here are the topics that have been cooking. Commits prefixed
@@ -6,48 +6,94 @@ with '-' are only in 'pu' while commits prefixed with '+' are
6 in 'next'.
7
8 The topics list the commits in reverse chronological order. The topics
9 -meant to be applied to the maintenance series have "maint-" in their
10 -names.
9 +meant to be merged to the maintenance series have "maint-" in their names.
10
12 -It already is beginning to become clear what 1.6.0 will look like. What's
13 -already in 'next' all are well intentioned (I do not guarantee they are
14 -already bug-free --- that is what cooking them in 'next' is for) and are
15 -good set of feature enhancements. Bigger changes will be:
11 +I think most of the important stuff is already in 'next'. Let's start
12 +talking about closing the merge window for 1.6.0.
13
17 - * Port for MinGW.
14 +----------------------------------------------------------------
15 +[New Topics]
16
19 - * With the default Makefile settings, most of the programs will be
20 - installed outside your $PATH, except for "git", "gitk", "git-gui" and
21 - some server side programs that need to be accessible for technical
22 - reasons. Invoking a git subcommand as "git-xyzzy" from the command
23 - line has been deprecated since early 2006 (and officially announced in
24 - 1.5.4 release notes); use of them from your scripts after adding
25 - output from "git --exec-path" to the $PATH will still be supported in
26 - 1.6.0, but users are again strongly encouraged to adjust their
27 - scripts to use "git xyzzy" form, as we will stop installing
28 - "git-xyzzy" hardlinks for built-in commands in later releases.
17 +* sb/dashless (Sun Jul 13 15:36:15 2008 +0200) 3 commits
18 + - Make usage strings dash-less
19 + - t/: Use "test_must_fail git" instead of "! git"
20 + - t/test-lib.sh: exit with small negagive int is ok with
21 + test_must_fail
22 +
23 +* mv/dashless (Fri Jul 11 02:12:06 2008 +0200) 4 commits
24 + - make remove-dashes: apply to scripts and programs as well, not
25 + just to builtins
26 + - git-bisect: use dash-less form on git bisect log
27 + - t1007-hash-object.sh: use quotes for the test description
28 + - t0001-init.sh: change confusing directory name
29 +
30 +* sp/maint-bash-completion-optim (Mon Jul 14 00:22:03 2008 +0000) 1 commit
31 + + bash completion: Append space after file names have been completed
32 +
33 +Early parts are already merged to 'master' and need to be merged down to
34 +maint as well, as this is about a "performance bug" that has been with us
35 +almost forever.
36 +
37 +* ag/rewrite_one (Sat Jul 12 22:00:57 2008 +0400) 1 commit
38 + + Fix quadratic performance in rewrite_one.
39 +
40 +* sp/win (Fri Jul 11 18:52:42 2008 +0200) 3 commits
41 + + We need to check for msys as well as Windows in add--interactive.
42 + + Convert CR/LF to LF in tag signatures
43 + + Fixed text file auto-detection: treat EOF character 032 at the end
44 + of file as printable
45 +
46 +* js/merge-rr (Sat Jul 12 15:56:19 2008 +0100) 2 commits
47 + + Move MERGE_RR from .git/rr-cache/ into .git/
48 + + builtin-rerere: more carefully find conflict markers
49
30 - * git-merge will be rewritten in C.
50 +* sb/rerere-lib (Wed Jul 9 14:58:57 2008 +0200) 2 commits
51 + + rerere: Separate libgit and builtin functions
52 + + builtin-rerere: more carefully find conflict markers
53
32 - * default pack and idx versions will be updated as scheduled for some
33 - time ago.
54 +* ls/mailinfo (Sun Jul 13 20:30:12 2008 +0200) 3 commits
55 + - git-mailinfo: use strbuf's instead of fixed buffers
56 + - Add some useful functions for strbuf manipulation.
57 + - Make some strbuf_*() struct strbuf arguments const.
58
35 - * GIT_CONFIG, which was only documented as affecting "git config", but
36 - actually affected all git commands, now only affects "git config".
37 - GIT_LOCAL_CONFIG, also only documented as affecting "git config" and
38 - not different from GIT_CONFIG in a useful way, is removed.
59 +* gi/cherry-cache (Sat Jul 12 20:14:51 2008 -0700) 1 commit
60 + - cherry: cache patch-ids to avoid repeating work
61
40 -----------------------------------------------------------------
41 -[New Topics]
62 +This does not seem to pass tests even on its own.
63
43 -* xx/merge-in-c-into-next (Wed Jul 9 13:51:46 2008 -0700) 4 commits
44 - + Teach git-merge -X<option> again.
45 - + Merge branch 'jc/merge-theirs' into xx/merge-in-c-into-next
46 - + builtin-merge.c: use parse_options_step() "incremental parsing"
47 - machinery
48 - + Merge branch 'ph/parseopt-step-blame' into xx/merge-in-c-into-next
64 +* js/maint-pretty-mailmap (Sat Jul 12 00:28:18 2008 +0100) 1 commit
65 + + Add pretty format %aN which gives the author name, respecting
66 + .mailmap
67
50 -I've described what this is in a separate message.
68 +* js/more-win (Sun Jul 13 22:31:23 2008 +0200) 6 commits
69 + - Allow add_path() to add non-existent directories to the path
70 + - Allow the built-in exec path to be relative to the command
71 + invocation path
72 + - Fix relative built-in paths to be relative to the command
73 + invocation
74 + + help (Windows): Display HTML in default browser using Windows'
75 + shell API
76 + + help.c: Add support for htmldir relative to git_exec_path()
77 + + Move code interpreting path relative to exec-dir to new function
78 + system_path()
79 +
80 +The earlier parts are obvious; Dscho seemed to have some comments on the
81 +later ones that are in 'pu'.
82 +
83 +* lw/gitweb (Fri Jul 11 03:11:48 2008 +0200) 3 commits
84 + - gitweb: use new Git::Repo API, and add optional caching
85 + - Add new Git::Repo API
86 + - gitweb: add test suite with Test::WWW::Mechanize::CGI
87 +
88 +This does not pass t9710, at least for me X-<.
89 +
90 +----------------------------------------------------------------
91 +[Will merge to master soon]
92 +
93 +* jc/rebase-orig-head (Tue Jul 8 00:12:22 2008 -0400) 2 commits
94 + + Documentation: mention ORIG_HEAD in am, merge, and rebase
95 + + Teach "am" and "rebase" to mark the original position with
96 + ORIG_HEAD
97
98 * jc/branch-merged (Tue Jul 8 17:55:47 2008 -0700) 3 commits
99 + branch --merged/--no-merged: allow specifying arbitrary commit
@@ -57,19 +103,81 @@ I've described what this is in a separate message.
103 This builds on top of the parse-options enhancement series that
104 has been cooking in 'next' for some time.
105
106 +* om/rerere-careful (Mon Jul 7 14:42:48 2008 +0200) 1 commit
107 + + builtin-rerere: more carefully find conflict markers
108 +
109 +* ls/maint-mailinfo-patch-label (Thu Jul 10 23:41:33 2008 +0200) 1 commit
110 + + git-mailinfo: Fix getting the subject from the in-body [PATCH]
111 + line
112 +
113 +----------------------------------------------------------------
114 +[Actively Cooking]
115 +
116 +* xx/merge-in-c-into-next (Wed Jul 9 13:51:46 2008 -0700) 4 commits
117 + + Teach git-merge -X<option> again.
118 + + Merge branch 'jc/merge-theirs' into xx/merge-in-c-into-next
119 + + builtin-merge.c: use parse_options_step() "incremental parsing"
120 + machinery
121 + + Merge branch 'ph/parseopt-step-blame' into xx/merge-in-c-into-next
122 +
123 +I've described what this is in a separate message.
124 +
125 * rs/imap (Wed Jul 9 22:29:02 2008 +0100) 5 commits
61 - + Documentation: Improve documentation for git-imap-send(1)
62 - + imap-send.c: more style fixes
63 - + imap-send.c: style fixes
64 - + git-imap-send: Support SSL
65 - + git-imap-send: Allow the program to be run from subdirectories of
126 + - Documentation: Improve documentation for git-imap-send(1)
127 + - imap-send.c: more style fixes
128 + - imap-send.c: style fixes
129 + - git-imap-send: Support SSL
130 + - git-imap-send: Allow the program to be run from subdirectories of
131 a git tree
132
68 -* om/rerere-careful (Mon Jul 7 14:42:48 2008 +0200) 1 commit
69 - + builtin-rerere: more carefully find conflict markers
133 +Some people seem to prefer having this feature available also with gnutls.
134 +If such a patch materializes soon, that would be good, but otherwise I'll
135 +merge this as-is to 'next'. Such an enhancement can be done in-tree on
136 +top of this series.
137 +
138 +* jc/merge-theirs (Mon Jun 30 22:18:57 2008 -0700) 5 commits
139 + + Make "subtree" part more orthogonal to the rest of merge-
140 + recursive.
141 + + Teach git-pull to pass -X<option> to git-merge
142 + + Teach git-merge to pass -X<option> to the backend strategy module
143 + + git-merge-recursive-{ours,theirs}
144 + + git-merge-file --ours, --theirs
145 +
146 +Punting a merge by discarding your own work in conflicting parts but still
147 +salvaging the parts that are cleanly automerged. It is likely that this
148 +will result in nonsense mishmash, but somehow often people want this, so
149 +here they are. The interface to the backends is updated so that you can
150 +say "git merge -Xours -Xsubtree=foo/bar/baz -s recursive other" now.
151 +
152 +* mv/merge-in-c (Sun Jul 13 08:13:55 2008 +0000) 19 commits
153 + + reduce_heads(): thinkofix
154 + + Add a new test for git-merge-resolve
155 + + t6021: add a new test for git-merge-resolve
156 + + Teach merge.log to "git-merge" again
157 + + Build in merge
158 + + Fix t7601-merge-pull-config.sh on AIX
159 + + git-commit-tree: make it usable from other builtins
160 + + Add new test case to ensure git-merge prepends the custom merge
161 + message
162 + + Add new test case to ensure git-merge reduces octopus parents when
163 + possible
164 + + Introduce reduce_heads()
165 + + Introduce get_merge_bases_many()
166 + + Add new test to ensure git-merge handles more than 25 refs.
167 + + Introduce get_octopus_merge_bases() in commit.c
168 + + git-fmt-merge-msg: make it usable from other builtins
169 + + Move read_cache_unmerged() to read-cache.c
170 + + Add new test to ensure git-merge handles pull.twohead and
171 + pull.octopus
172 + + Move parse-options's skip_prefix() to git-compat-util.h
173 + + Move commit_list_count() to commit.c
174 + + Move split_cmdline() to alias.c
175 +
176 +Sverre seems to have a yet another fixup on top of this that came late and
177 +I haven't looked at.
178
179 ----------------------------------------------------------------
72 -[Will merge to master soon]
180 +[Graduated to "master"]
181
182 * js/pick-root (Fri Jul 4 16:19:52 2008 +0100) 1 commit
183 + Allow cherry-picking root commits
@@ -113,14 +221,6 @@ Adds 'e/dit' action to interactive add command.
221 Makes the "your branch is ahead of the tracked one by N commits" logic and
222 messages available to other commands; status and branch are updated.
223
116 -----------------------------------------------------------------
117 -[Actively Cooking]
118 -
119 -* jc/rebase-orig-head (Tue Jul 8 00:12:22 2008 -0400) 2 commits
120 - + Documentation: mention ORIG_HEAD in am, merge, and rebase
121 - + Teach "am" and "rebase" to mark the original position with
122 - ORIG_HEAD
123 -
224 * ph/parseopt-step-blame (Wed Jul 9 23:38:34 2008 +0200) 18 commits
225 + revisions: refactor handle_revision_opt into parse_revision_opt.
226 + git-shortlog: migrate to parse-options partially.
@@ -146,61 +246,6 @@ Became active again ;-) This probably is ready for 'master' already,
246 except for the last two which I only looked at the patch and have not
247 used heavily in production yet.
248
149 -* jc/merge-theirs (Mon Jun 30 22:18:57 2008 -0700) 5 commits
150 - + Make "subtree" part more orthogonal to the rest of merge-
151 - recursive.
152 - + Teach git-pull to pass -X<option> to git-merge
153 - + Teach git-merge to pass -X<option> to the backend strategy module
154 - + git-merge-recursive-{ours,theirs}
155 - + git-merge-file --ours, --theirs
156 -
157 -Punting a merge by discarding your own work in conflicting parts but still
158 -salvaging the parts that are cleanly automerged. It is likely that this
159 -will result in nonsense mishmash, but somehow often people want this, so
160 -here they are. The interface to the backends is updated so that you can
161 -say "git merge -Xours -Xsubtree=foo/bar/baz -s recursive other" now.
162 -
163 -* mv/merge-in-c (Mon Jul 7 19:24:20 2008 +0200) 15 commits
164 - + Build in merge
165 - + Fix t7601-merge-pull-config.sh on AIX
166 - + git-commit-tree: make it usable from other builtins
167 - + Add new test case to ensure git-merge prepends the custom merge
168 - message
169 - + Add new test case to ensure git-merge reduces octopus parents when
170 - possible
171 - + Introduce reduce_heads()
172 - + Introduce get_merge_bases_many()
173 - + Add new test to ensure git-merge handles more than 25 refs.
174 - + Introduce get_octopus_merge_bases() in commit.c
175 - + git-fmt-merge-msg: make it usable from other builtins
176 - + Move read_cache_unmerged() to read-cache.c
177 - + Add new test to ensure git-merge handles pull.twohead and
178 - pull.octopus
179 - + Move parse-options's skip_prefix() to git-compat-util.h
180 - + Move commit_list_count() to commit.c
181 - + Move split_cmdline() to alias.c
182 -
183 -----------------------------------------------------------------
184 -[Graduated to "master"]
185 -
186 -* js/apply-root (Sun Jul 6 18:36:01 2008 -0700) 3 commits
187 - + git-apply --directory: make --root more similar to GNU diff
188 - + apply --root: thinkofix.
189 - + Teach "git apply" to prepend a prefix with "--root=<root>"
190 -
191 -* jc/reflog-expire (Sat Jun 28 22:24:49 2008 -0700) 2 commits
192 - + Make default expiration period of reflog used for stash infinite
193 - + Per-ref reflog expiry configuration
194 -
195 -As 1.6.0 will be a good time to make backward incompatible changes, the
196 -tip commit makes the default expiry period of stash 'never', unless you
197 -configure them to expire explicitly using gc.refs/stash.* variables.
198 -Needs consensus, but I am guessing that enough people would want stash
199 -that does not expire.
200 -
201 -* jk/pager-config (Thu Jul 3 07:46:57 2008 -0400) 1 commit
202 - + Allow per-command pager config
203 -
249 ----------------------------------------------------------------
250 [On Hold]
251
@@ -247,22 +292,12 @@ need these to pass fsck. This fixes object transfer to ignore grafts.
292 Another fix is needed to git-prune so that it ignores grafts but treats
293 commits that are mentioned in grafts as reachable.
294
250 -* jc/blame (Wed Jun 4 22:58:40 2008 -0700) 7 commits
295 +* jc/blame (Wed Jun 4 22:58:40 2008 -0700) 2 commits
296 - blame: show "previous" information in --porcelain/--incremental
297 format
298 - git-blame: refactor code to emit "porcelain format" output
254 - + git-blame --reverse
255 - + builtin-blame.c: allow more than 16 parents
256 - + builtin-blame.c: move prepare_final() into a separate function.
257 - + rev-list --children
258 - + revision traversal: --children option
299
260 -The blame that finds where each line in the original lines moved to. This
261 -may help a GSoC project that wants to gather statistical overview of the
262 -history. The final presentation may need tweaking (see the log message of
263 -the commit ""git-blame --reverse" on the series).
300 +This is for peeling to see what's behind the blamed commit, which may or
301 +may not help applications like gitweb.
302
265 -The tip two commits are for peeling to see what's behind the blamed
266 -commit, which we should be able to separate out into an independent topic
267 -from the rest.
303