What's cooking (2009/07 #03)
Junio C Hamano committed
Jul 29, 2009 at 14:11 UTC
a1e0616406ce28248ba29150e05c7f0d8d4df0e3
1 file changed
+164
-212
whats-cooking.txt
+164
-212
@@ -1,29 +1,68 @@
1
To: git@vger.kernel.org
2
-Subject: What's cooking in git.git (Jul 2009, #02; Sun, 26)
3
-X-master-at: d8f7be2ebcb7e3ec40269080a9ab9a28bc06ba17
4
-X-next-at: 2b05f9bd0a9944bbaab9f24d305932a57e4735d4
2
+Subject: What's cooking in git.git (Jul 2009, #03; Wed, 29)
3
+X-master-at: e6580020057afd207b7cfb9c96905f99e13cfe4d
4
+X-next-at: 4719968c98d7ad8352bb14916c65c094842a980d
5
6
-What's cooking in git.git (Jul 2009, #02; Sun, 26)
6
+What's cooking in git.git (Jul 2009, #03; Wed, 29)
7
--------------------------------------------------
8
9
-These topics in 'next' (ones prefixed with '+') and 'pu' (ones prefixed
10
-with '.') will not be in 1.6.4 final, and are subject to be rewound once
11
-it happens.
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
13
-We have quite a few solid topics in 'next', so hopefully the next cycle
14
-would be shorter than usual. I'd propose to call it 1.6.5, and then make
15
-the one after that 1.7.0, which means that during the 1.6.5 cycle, 'next'
16
-will have the two incompatible "push" (actually, receive-pack) changes
17
-hitherto kept on hold in 'pu'.
14
+In preparation for rewinding 'next' after a major release, one topic was
15
+reverted and kicked back to 'pu' to give it a fresh start.
16
+
17
+After the 1.6.5 cycle, the next release will be 1.7.0, and we will push
18
+out the planned "push safety" change. 1.7.0 would be a good time to
19
+introduce "justifiable" changes that are not strictly backward compatible.
20
+
21
+During 1.6.5 cycle, 'next' will hold topics meant for 1.6.5 and 1.7.0.
22
+I've already merged the "diff --exit-code --ignore-whitespace" change and
23
+"push safety" change.
24
+
25
+I'll rewind 'next' sometime this weekend.
26
27
----------------------------------------------------------------
20
-[New Topics]
28
+[In 'next']
29
22
-* jk/show-tag (Sat Jul 18 06:14:37 2009 -0400) 2 commits
23
- + show: add space between multiple items
24
- + show: suppress extra newline when showing annotated tag
30
+* ne/futz-upload-pack (Wed Jun 10 01:50:18 2009 +0200) 1 commit
31
+ + Shift object enumeration out of upload-pack
32
+
33
+* js/run-command-updates (Sat Jul 4 21:26:43 2009 +0200) 6 commits
34
+ + receive-pack: remove unnecessary run_status report
35
+ + run_command: report failure to execute the program, but optionally
36
+ don't
37
+ + run_command: encode deadly signal number in the return value
38
+ + run_command: report system call errors instead of returning error
39
+ codes
40
+ + run_command: return exit code as positive value
41
+ + MinGW: simplify waitpid() emulation macros
42
+
43
+* sb/maint-pull-rebase (Sun Jul 19 09:45:16 2009 +0200) 2 commits
44
+ + pull: support rebased upstream + fetch + pull --rebase
45
+ + t5520-pull: Test for rebased upstream + fetch + pull --rebase
46
+
47
+* jc/1.7.0-diff-whitespace-only-status (Sat May 23 01:15:35 2009 -0700) 2 commits
48
+ + diff: Rename QUIET internal option to QUICK
49
+ + diff: change semantics of "ignore whitespace" options
50
+
51
+This changes exit code from "git diff --ignore-whitespace" and friends
52
+when there is no actual output. It is a backward incompatible change, but
53
+we could argue that it is a bugfix.
54
+
55
+* jc/1.7.0-push-safety (Mon Feb 9 00:19:46 2009 -0800) 2 commits
56
+ + Refuse deleting the current branch via push
57
+ + Refuse updating the current branch in a non-bare repository via
58
+ push
59
26
-Didn't look bad at all, but is not pressing either.
60
+This is old 'jc/deny-delete-current-1.7.0' and 'jc/1.7.0-push-safety'
61
+topics redone.
62
+
63
+* sb/read-tree (Thu Jun 25 22:14:10 2009 -0700) 2 commits
64
+ + read-tree: migrate to parse-options
65
+ + read-tree: convert unhelpful usage()'s to helpful die()'s
66
67
* sb/parse-options (Tue Jul 7 22:15:41 2009 -0700) 4 commits
68
+ prune-packed: migrate to parse-options
@@ -31,248 +70,161 @@ Didn't look bad at all, but is not pressing either.
70
+ verify-tag: migrate to parse-options
71
+ write-tree: migrate to parse-options
72
73
+Parse-options migration; should be in 'master' soonish.
74
+
75
* mk/grep-max-depth (Wed Jul 22 19:52:15 2009 +0200) 1 commit
76
+ grep: Add --max-depth option.
77
37
-* jn/gitweb-blame (Sat Jul 25 00:44:10 2009 +0200) 10 commits
38
- - gitweb: Create links leading to 'blame_incremental' using
39
- JavaScript
40
- - gitweb: Incremental blame (proof of concept)
41
- - gitweb: Add optional "time to generate page" info in footer
42
- - gitweb: Add -partial_query option to href() subroutine
43
- - gitweb: Use light/dark for class names also in 'blame' view
44
- - gitweb: Add author initials in 'blame' view, a la "git gui blame"
45
- - gitweb: Mark commits with no "previous" in 'blame' view
46
- - gitweb: Use "previous" header of git-blame -p in 'blame' view
47
- - gitweb: Mark boundary commits in 'blame' view
48
- - gitweb: Make .error style generic
78
+* cc/replace (Wed May 27 07:14:09 2009 +0200) 14 commits
79
+ + t6050: check pushing something based on a replaced commit
80
+ + Documentation: add documentation for "git replace"
81
+ + Add git-replace to .gitignore
82
+ + builtin-replace: use "usage_msg_opt" to give better error messages
83
+ + parse-options: add new function "usage_msg_opt"
84
+ + builtin-replace: teach "git replace" to actually replace
85
+ + Add new "git replace" command
86
+ + environment: add global variable to disable replacement
87
+ + mktag: call "check_sha1_signature" with the replacement sha1
88
+ + replace_object: add a test case
89
+ + object: call "check_sha1_signature" with the replacement sha1
90
+ + sha1_file: add a "read_sha1_file_repl" function
91
+ + replace_object: add mechanism to replace objects found in
92
+ "refs/replace/"
93
+ + refs: add a "for_each_replace_ref" function
94
50
-Still in flux/rfc.
95
+Does not seem to hurt normal operation without "replace". The basic idea
96
+should be easier and safer to use than the graft mechanism. I haven't
97
+tried the replacement myself, though.
98
99
* ns/init-mkdir (Sat Jul 25 06:59:28 2009 +0900) 1 commit
100
+ git init: optionally allow a directory argument
101
55
-Didn't look bad, but is not pressing either.
102
+Straightforward usability change. Should be in 'master' soonish.
103
+
104
+* mk/init-db-parse-options (Sun Jul 12 12:24:32 2009 +0200) 1 commit
105
+ + init-db: migrate to parse-options
106
+
107
+* jk/maint-show-tag (Sat Jul 18 06:14:37 2009 -0400) 2 commits
108
+ + show: add space between multiple items
109
+ + show: suppress extra newline when showing annotated tag
110
111
* jc/apply-epoch-patch (Fri Jul 10 18:38:08 2009 -0700) 1 commit
112
+ apply: notice creation/removal patches produced by GNU diff
113
60
-* sb/pull-rebase (Sun Jul 19 09:45:16 2009 +0200) 2 commits
61
- + pull: support rebased upstream + fetch + pull --rebase
62
- + t5520-pull: Test for rebased upstream + fetch + pull --rebase
114
+Better acceptance of some "GNU patch" output to create or remove files.
115
64
-* db/transport-shim (Sat Jul 25 13:51:40 2009 -0400) 3 commits
116
+----------------------------------------------------------------
117
+[In 'pu']
118
+
119
+* jp/symlink-dirs (Sun Jun 14 15:08:28 2009 +0200) 2 commits
120
+ - lstat_cache: guard against full match of length of 'name'
121
+ parameter
122
+ - Demonstrate bugs when a directory is replaced with a symlink
123
+
124
+James's test scripts to expose corner case bugs in the merge and branch
125
+switching machinery.
126
+
127
+* jh/vcs-cvs (Mon Jul 27 03:04:17 2009 +0200) 15 commits
128
+ - Introduce a 'marks <filename>' feature to the foreign transport
129
+ code
130
+ - Teach foreign transport code to perform the "capabilities" command
131
+ - Preliminary clarifications to git-vcs documentation
132
+ - fast-import: Add support for importing commit notes
133
+ - Add a transport implementation using git-vcs-* helpers
134
+ - Allow programs to not depend on remotes having urls
135
+ - Use a function to determine whether a remote is valid
136
+ - Add specification of git-vcs-* helper programs
137
+ - Merge branch 'db/transport-shim' into jh/vcs-cvs
138
- git-http-fetch: not a builtin
139
- Use an external program to implement fetching with curl
140
- Add support for external programs for handling native fetches
141
+ - Add option for using a foreign VCS
142
+ - Document details of transport function APIs
143
+ - Allow late reporting of fetched hashes
144
69
-Interesting as a concept. I saw its ls-remote segfault on me, though.
70
-Hopefully will mature by 1.6.5 final.
71
-
72
-* pb/tracking (Thu Jul 16 16:26:15 2009 -0500) 7 commits
73
- + branch.c: if remote is not config'd for branch, don't try delete
74
- push config
75
- + branch, checkout: introduce autosetuppush
76
- + move deletion of merge configuration to branch.c
77
- + remote: add per-remote autosetupmerge and autosetuprebase
78
- configuration
79
- + introduce a struct tracking_config
80
- + branch: install_branch_config and struct tracking refactoring
81
- + config: allow false and true values for branch.autosetuprebase
82
-
83
-After some discussion, I suspect we may want to rewind this out of 'next'
84
-and start over with a fresh design.
85
-
86
-* mk/init-db-parse-options (Sun Jul 12 12:24:32 2009 +0200) 1 commit
87
- + init-db: migrate to parse-options
88
-
89
-* tr/reset-checkout-patch (Sat Jul 25 23:29:34 2009 +0200) 5 commits
90
- - Implement 'git stash save --patch'
91
- - Implement 'git checkout --patch'
92
- - Implement 'git reset --patch'
93
- - builtin-add: refactor the meat of interactive_add()
94
- - git-apply--interactive: Refactor patch mode code
95
-
96
-Still in flux/rfc.
97
-
98
-----------------------------------------------------------------
99
-[Stalled and may need help and prodding to go forward]
100
-
101
-* gp/maint-rebase-p-onto (Wed Jul 22 12:38:58 2009 -0400) 1 commit
102
- . Fix rebase -p --onto
145
+With its 6th patch replaced to keep the pathname syntax of the fast-import
146
+language, but without the commits near the tip of the old series.
147
104
-I'd say we should take this even if it means Dscho needs his rebase -p
105
-rewrite. It is not very pressing, so perhaps do so immediately after
106
-1.6.4 final.
148
+* db/transport-shim (Tue Jul 28 02:08:53 2009 -0400) 3 commits
149
+ - git-http-fetch: not a builtin
150
+ - Use an external program to implement fetching with curl
151
+ - Add support for external programs for handling native fetches
152
108
-* jh/notes (Sat May 16 13:44:17 2009 +0200) 5 commits
153
+* jh/notes (Wed Jul 29 04:25:26 2009 +0200) 8 commits
154
+ - t3302-notes-index-expensive: Speed up create_repo()
155
+ - fast-import: Add support for importing commit notes
156
+ - First draft of notes tree parser with support for fanout subtrees
157
- Teach "-m <msg>" and "-F <file>" to "git notes edit"
158
- Add an expensive test for git-notes
159
- Speed up git notes lookup
160
- Add a script to edit/inspect notes
161
- Introduce commit notes
162
115
-Dscho asked about the performance implications of this; I do not think I
116
-saw any progress on that yet...
117
-
118
-Will drop after 1.6.4 unless any further progress is seen.
119
-
120
-* ar/maint-1.6.2-merge-recursive-d-f (Mon May 11 21:25:36 2009 +0200) 2 commits
121
- - Fix for a merge where a branch has an F->D transition
122
- - Add a reminder test case for a merge with F/D transition
123
-
124
-Although the reported breakage is covered with the patch, Alex feels the
125
-solution unsatisfactory. Cleaning up D/F conflict handling in merge-recursive
126
-may be long overdue but seems to be a hard problem.
127
-
128
-* ps/blame (Thu Mar 12 21:30:03 2009 +1100) 1 commit
129
- - blame.c: start libifying the blame infrastructure
130
-
131
-A few minor point remains in this initial one.
132
-
133
-Will drop after 1.6.4 unless any further progress is seen.
134
-
135
-* jc/log-tz (Tue Mar 3 00:45:37 2009 -0800) 1 commit
136
- - Allow --date=local --date=other-format to work as expected
137
-
138
-The one I posted had a few corner-case bugs that was caught with the test
139
-suite; this one has them fixed. People did not like the UI so it is kept
140
-out of 'next'
141
-
142
-Will drop after 1.6.4 unless any further progress is seen.
143
-
144
-* jc/merge-convert (Mon Jan 26 16:45:01 2009 -0800) 1 commit
145
- - git-merge-file: allow converting the results for the work tree
146
-
147
-This is a feature waiting for a user.
148
-
149
-We did not give scripted Porcelains a way to say "this temporary file I am
150
-using for merging is for this path, so use the core.autocrlf and attributes
151
-rules for that final path". Instead, merge-file simply wrote out the
152
-data in the canonical repository representation.
153
-
154
-rerere has the same issue, but it is a lot worse. It reads the three
155
-files (preimage, postimage and thisimage) from the work tree in the work
156
-tree representation, merges them without converting them to the canonical
157
-representation first but inserts the conflict markers with the canonical
158
-representation and writes the resulting mess out. It needs to be fixed to
159
-read with convert_to_git(), merge them while they are still in the
160
-canonical representation and possibly add conflict markers, and then write
161
-the results out after convert_to_working_tree(). It also needs to write
162
-in binary mode as well.
163
-
164
-Will drop after 1.6.4 unless any further progress is seen.
163
+jh/vcs-cvs topic needs to be rebuilt, merging this instead of having its
164
+own copy of "fast-import: Add support for importing commit notes".
165
166
* db/foreign-scm (Tue Mar 24 23:04:12 2009 -0400) 3 commits
167
- Add option for using a foreign VCS
168
- Document details of transport function APIs
169
- Allow late reporting of fetched hashes
170
171
-I have a feeling that the recent transport-shim series from the same
172
-author could supersede this one.
173
-
174
-* hv/cvsps-tests (Sun Apr 5 01:40:50 2009 -0700) 8 commits
175
- - t/t9600: remove exit after test_done
176
- - cvsimport: extend testcase about patchset order to contain
177
- branches
178
- - cvsimport: add test illustrating a bug in cvsps
179
- - Add a test of "git cvsimport"'s handling of tags and branches
180
- - Add some tests of git-cvsimport's handling of vendor branches
181
- - Test contents of entire cvsimported "master" tree contents
182
- - Use CVS's -f option if available (ignore user's ~/.cvsrc file)
183
- - Start a library for cvsimport-related tests
184
-
185
-----------------------------------------------------------------
186
-[Not actively cooking]
187
-
188
-* js/run-command-updates (Sat Jul 4 21:26:43 2009 +0200) 6 commits
189
- + receive-pack: remove unnecessary run_status report
190
- + run_command: report failure to execute the program, but optionally
191
- don't
192
- + run_command: encode deadly signal number in the return value
193
- + run_command: report system call errors instead of returning error
194
- codes
195
- + run_command: return exit code as positive value
196
- + MinGW: simplify waitpid() emulation macros
197
-
198
-Will merge after 1.6.4
199
-
171
* cc/sequencer-rebase-i (Fri Jun 26 23:08:46 2009 +0200) 4 commits
172
- rebase -i: use "git sequencer--helper --make-patch"
173
- sequencer: free memory used in "make_patch" function
174
- sequencer: add "make_patch" function to save a patch
175
- sequencer: add "builtin-sequencer--helper.c"
176
206
-* en/fast-export (Thu Jun 25 22:48:33 2009 -0600) 7 commits
207
- + fast-export: Document the fact that git-rev-list arguments are
208
- accepted
209
- + Add new fast-export testcases
210
- + fast-export: Add a --tag-of-filtered-object option for newly
211
- dangling tags
212
- + fast-export: Do parent rewriting to avoid dropping relevant
213
- commits
214
- + fast-export: Make sure we show actual ref names instead of
215
- "(null)"
216
- + fast-export: Omit tags that tag trees
217
- + fast-export: Set revs.topo_order before calling setup_revisions
218
-
219
-Shawn? Dscho?
220
-
221
-* jc/diff-whitespace-only-status (Sat May 23 01:15:35 2009 -0700) 2 commits
222
- + diff: Rename QUIET internal option to QUICK
223
- + diff: change semantics of "ignore whitespace" options
224
-
225
-Possibly merge during 1.6.5, or 1.7.0 since this is a semantics change.
226
-
227
-* sb/read-tree (Thu Jun 25 22:14:10 2009 -0700) 2 commits
228
- + read-tree: migrate to parse-options
229
- + read-tree: convert unhelpful usage()'s to helpful die()'s
177
+I do not know how this will interact with what Dscho has been doing.
178
231
-Will merge after 1.6.4
179
+* jc/mailinfo-remove-brackets (Wed Jul 15 15:31:12 2009 -0700) 1 commit
180
+ - mailinfo: -b option keeps [bracketed] strings that is not a
181
+ [PATCH] marker
182
233
-* ne/futz-upload-pack (Wed Jun 10 01:50:18 2009 +0200) 1 commit
234
- + Shift object enumeration out of upload-pack
183
+* jn/gitweb-blame (Sat Jul 25 00:44:10 2009 +0200) 10 commits
184
+ - gitweb: Create links leading to 'blame_incremental' using
185
+ JavaScript
186
+ - gitweb: Incremental blame (proof of concept)
187
+ - gitweb: Add optional "time to generate page" info in footer
188
+ - gitweb: Add -partial_query option to href() subroutine
189
+ - gitweb: Use light/dark for class names also in 'blame' view
190
+ - gitweb: Add author initials in 'blame' view, a la "git gui blame"
191
+ - gitweb: Mark commits with no "previous" in 'blame' view
192
+ - gitweb: Use "previous" header of git-blame -p in 'blame' view
193
+ - gitweb: Mark boundary commits in 'blame' view
194
+ - gitweb: Make .error style generic
195
236
-Will merge after 1.6.4
196
+There may have been updates during 1.6.4-rc period that I missed.
197
238
-* cc/replace (Wed May 27 07:14:09 2009 +0200) 14 commits
239
- + t6050: check pushing something based on a replaced commit
240
- + Documentation: add documentation for "git replace"
241
- + Add git-replace to .gitignore
242
- + builtin-replace: use "usage_msg_opt" to give better error messages
243
- + parse-options: add new function "usage_msg_opt"
244
- + builtin-replace: teach "git replace" to actually replace
245
- + Add new "git replace" command
246
- + environment: add global variable to disable replacement
247
- + mktag: call "check_sha1_signature" with the replacement sha1
248
- + replace_object: add a test case
249
- + object: call "check_sha1_signature" with the replacement sha1
250
- + sha1_file: add a "read_sha1_file_repl" function
251
- + replace_object: add mechanism to replace objects found in
252
- "refs/replace/"
253
- + refs: add a "for_each_replace_ref" function
198
+* tr/reset-checkout-patch (Tue Jul 28 23:20:11 2009 +0200) 5 commits
199
+ - Implement 'git stash save --patch'
200
+ - Implement 'git checkout --patch'
201
+ - Implement 'git reset --patch'
202
+ - builtin-add: refactor the meat of interactive_add()
203
+ - git-apply--interactive: Refactor patch mode code
204
255
-* jc/deny-delete-current-1.7.0 (Mon Feb 9 00:19:46 2009 -0800) 1 commit
256
- - receive-pack: default receive.denyDeleteCurrent to refuse
205
+* jc/log-tz (Tue Mar 3 00:45:37 2009 -0800) 1 commit
206
+ - Allow --date=local --date=other-format to work as expected
207
258
-* jc/refuse-push-to-current-1.7.0 (Wed Feb 11 02:28:03 2009 -0800) 1 commit
259
- - Refuse updating the current branch in a non-bare repository via
260
- push
208
+* pb/tracking (Thu Jul 16 16:26:15 2009 -0500) 7 commits
209
+ - branch.c: if remote is not config'd for branch, don't try delete
210
+ push config
211
+ - branch, checkout: introduce autosetuppush
212
+ - move deletion of merge configuration to branch.c
213
+ - remote: add per-remote autosetupmerge and autosetuprebase
214
+ configuration
215
+ - introduce a struct tracking_config
216
+ - branch: install_branch_config and struct tracking refactoring
217
+ - config: allow false and true values for branch.autosetuprebase
218
262
-These are for 1.7.0, but the messages when they trigger together may need
263
-to be rethought. Will be kept in 'next' during 1.6.5 cycle.
219
+This has been reverted from 'next' for now to give it a fresh start.
220
221
----------------------------------------------------------------
222
[Dropped]
223
268
-* ae/maint-mailinfo-rm-only-one-patch-marker (Mon Jun 29 11:55:51 2009 +0200) 1 commit
269
- - mailinfo: Remove only one set of square brackets
224
+* ar/maint-1.6.2-merge-recursive-d-f (Mon May 11 21:25:36 2009 +0200) 2 commits
225
+ . Fix for a merge where a branch has an F->D transition
226
+ . Add a reminder test case for a merge with F/D transition
227
271
-* lt/read-directory (Fri May 15 12:01:29 2009 -0700) 3 commits
272
- . Add initial support for pathname conversion to UTF-8
273
- . read_directory(): infrastructure for pathname character set
274
- conversion
275
- . Add 'fill_directory()' helper function for directory traversal
228
+The fix the author hinted iffy is dropped for now, but the test case is
229
+already in 'master' to remind us.
230
277
-It appears that we may want to settle with a MacOS X specific conversion,
278
-if somebody really cares enough.