What's cooking
Junio C Hamano committed
Aug 30, 2009 at 23:58 UTC
372da4fac434ccef435bd65eb7834bf691178646
1 file changed
+407
whats/cooking/2009/08/06.txt
new
+407
@@ -0,0 +1,407 @@
1
+To: git@vger.kernel.org
2
+Subject: What's cooking in git.git (Aug 2009, #06; Sun, 30)
3
+X-master-at: f324cb50be3d88c6fb6123c85da749695a749f60
4
+X-next-at: 5fc6248250e68c3b723efb9b868d8fc27499065a
5
+
6
+What's cooking in git.git (Aug 2009, #06; Sun, 30)
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 integration branches, but I am
12
+still holding onto them.
13
+
14
+After the 1.6.5 cycle, the next release will be 1.7.0, and we will push
15
+out the planned "push safety" change. 1.7.0 would be a good time to
16
+introduce "justifiable" changes that are not strictly backward compatible.
17
+
18
+During 1.6.5 cycle, 'next' will hold topics meant for 1.6.5 and 1.7.0.
19
+
20
+--------------------------------------------------
21
+[Graduated to "master"]
22
+
23
+* wl/insta-mongoose (2009-08-21) 1 commit
24
+ (merged to 'next' on 2009-08-25 at da1d566)
25
+ + Add support for the Mongoose web server.
26
+
27
+* as/maint-graph-interesting-fix (2009-08-21) 2 commits.
28
+ (merged to 'next' on 2009-08-25 at 9d5e215)
29
+ + Add tests for rev-list --graph with options that simplify history
30
+ + graph API: fix bug in graph_is_interesting()
31
+
32
+* jc/maint-unpack-objects-strict (2009-08-13) 1 commit.
33
+ (merged to 'next' on 2009-08-23 at 38eb750)
34
+ + Fix "unpack-objects --strict"
35
+
36
+* jh/submodule-foreach (2009-08-20) 9 commits
37
+ (merged to 'next' on 2009-08-20 at 671bea4)
38
+ + git clone: Add --recursive to automatically checkout (nested) submodules
39
+ + t7407: Use 'rev-parse --short' rather than bash's substring expansion notation
40
+ (merged to 'next' on 2009-08-18 at f4a881d)
41
+ + git submodule status: Add --recursive to recurse into nested submodules
42
+ + git submodule update: Introduce --recursive to update nested submodules
43
+ + git submodule foreach: Add --recursive to recurse into nested submodules
44
+ + git submodule foreach: test access to submodule name as '$name'
45
+ + Add selftest for 'git submodule foreach'
46
+ + git submodule: Cleanup usage string and add option parsing to cmd_foreach()
47
+ + git submodule foreach: Provide access to submodule name, as '$name'
48
+
49
+* lt/block-sha1 (2009-08-17) 4 commits
50
+ (merged to 'next' on 2009-08-18 at 67a1ce8)
51
+ + remove ARM and Mozilla SHA1 implementations
52
+ + block-sha1: guard gcc extensions with __GNUC__
53
+ + make sure byte swapping is optimal for git
54
+ + block-sha1: make the size member first in the context struct
55
+
56
+* np/maint-1.6.3-deepen (2009-08-24) 1 commit.
57
+ (merged to 'next' on 2009-08-25 at 8e383d4)
58
+ + fix simple deepening of a repo
59
+
60
+* jk/maint-1.6.3-checkout-unborn (2009-08-24) 1 commit.
61
+ (merged to 'next' on 2009-08-25 at 5f29625)
62
+ + checkout: do not imply "-f" on unborn branches
63
+
64
+* mm/reset-report (2009-08-21) 2 commits
65
+ (merged to 'next' on 2009-08-25 at f2a4424)
66
+ + reset: make the reminder output consistent with "checkout"
67
+ + Rename REFRESH_SAY_CHANGED to REFRESH_IN_PORCELAIN.
68
+
69
+* jc/shortstatus (2009-08-15) 11 commits
70
+ (merged to 'next' on 2009-08-15 at 7e40766)
71
+ + git commit --dry-run -v: show diff in color when asked
72
+ + Documentation/git-commit.txt: describe --dry-run
73
+ (merged to 'next' on 2009-08-12 at 53bda17)
74
+ + wt-status: collect untracked files in a separate "collect" phase
75
+ + Make git_status_config() file scope static to builtin-commit.c
76
+ + wt-status: move wt_status_colors[] into wt_status structure
77
+ + wt-status: move many global settings to wt_status structure
78
+ + commit: --dry-run
79
+ (merged to 'next' on 2009-08-06 at fe8cb94)
80
+ + status: show worktree status of conflicted paths separately
81
+ + wt-status.c: rework the way changes to the index and work tree are summarized
82
+ + diff-index: keep the original index intact
83
+ + diff-index: report unmerged new entries
84
+ (this branch is used by jc/1.7.0-status.)
85
+
86
+--------------------------------------------------
87
+[New Topics]
88
+
89
+* jc/upload-pack-hook (2009-08-28) 2 commits
90
+ - upload-pack: feed "kind [clone|fetch]" to post-upload-pack hook
91
+ - upload-pack: add a trigger for post-upload-pack hook
92
+
93
+I do not know if the distinction between fetching some but not all refs
94
+and fetching full set of refs into an empty repository is something worth
95
+making, so in that sense the tip commit is somewhat iffy.
96
+
97
+One reason this series makes me somewhat uneasy is that Tom, the original
98
+starter of the discussion went dark after sending a proposed patch. Maybe
99
+he has been too busy, but I have been hoping that GitHub as a stakeholder
100
+has somebody who monitors the list when he is not available.
101
+
102
+Does anybody from GitHub have any input? Is there something that needs to
103
+be improved to fill GitHub's needs? Does GitHub want to stick to its own
104
+fork, and were all these discussions for improvements unwanted?
105
+
106
+* jk/clone-b (2009-08-26) 1 commit
107
+ (merged to 'next' on 2009-08-30 at 10a68d1)
108
+ + clone: add --branch option to select a different HEAD
109
+
110
+* pk/import-dirs (2009-08-24) 1 commit
111
+ - Add script for importing bits-and-pieces to Git.
112
+
113
+This version makes me suspect that the author might regret the choice of
114
+the import format that does not allow escaping of paths, nor does not
115
+allow leading blanks for readability without changing semantics, both of
116
+which make it somewhat limiting and error prone. These issues will be
117
+hard to rectify without breaking the backward compatibility, for a tool
118
+that could otherwise turn out to be useful.
119
+
120
+As a contrib/ material, I probably shouldn't be too worried about these
121
+issues, but I am keeping this out of 'next' for now, just in case the
122
+author chooses to polish the usability of the tool for general audience.
123
+
124
+It is a different story if the submission was just throwing out a one-time
125
+hack in the open in the hope that some other people might find it useful,
126
+but without any intention of maintaining it. But then I do not have a
127
+strong reason to keep this in my tree, either. The mailing list archive
128
+is a more suitable storage media for such a patch.
129
+
130
+--------------------------------------------------
131
+[Stalled]
132
+
133
+* jh/notes (2009-08-27) 12 commits.
134
+ - Add '%N'-format for pretty-printing commit notes
135
+ - Add flags to get_commit_notes() to control the format of the note string
136
+ - notes.c: Implement simple memory pooling of leaf nodes
137
+ - Selftests verifying semantics when loading notes trees with various fanouts
138
+ - Teach the notes lookup code to parse notes trees with various fanout schemes
139
+ - t3302-notes-index-expensive: Speed up create_repo()
140
+ - fast-import: Add support for importing commit notes
141
+ - Teach "-m <msg>" and "-F <file>" to "git notes edit"
142
+ - Add an expensive test for git-notes
143
+ - Speed up git notes lookup
144
+ - Add a script to edit/inspect notes
145
+ - Introduce commit notes
146
+
147
+I heard the cvs-helper series depends on this one. It seems that the
148
+fan-out strategy is being rethought?
149
+
150
+* js/stash-dwim (2009-07-27) 1 commit.
151
+ (merged to 'next' on 2009-08-16 at 67896c4)
152
+ + Make 'git stash -k' a short form for 'git stash save --keep-index'
153
+ (this branch is used by tr/reset-checkout-patch.)
154
+
155
+* tr/reset-checkout-patch (2009-08-27) 9 commits.
156
+ (merged to 'next' on 2009-08-27 at d314281)
157
+ + Make test case number unique
158
+ (merged to 'next' on 2009-08-18 at e465bb3)
159
+ + tests: disable interactive hunk selection tests if perl is not available
160
+ (merged to 'next' on 2009-08-16 at 67896c4)
161
+ + DWIM 'git stash save -p' for 'git stash -p'
162
+ + Implement 'git stash save --patch'
163
+ + Implement 'git checkout --patch'
164
+ + Implement 'git reset --patch'
165
+ + builtin-add: refactor the meat of interactive_add()
166
+ + Add a small patch-mode testing library
167
+ + git-apply--interactive: Refactor patch mode code
168
+ (this branch uses js/stash-dwim.)
169
+
170
+There was a discussion on better DWIMmery for the above two topics to (1)
171
+forbid "git stash save --anything-with-dash" and (2) redirect with any
172
+option "git stash --opt" to "git stash save --opt", to keep it flexible
173
+and safe at the same time. I think it is a sane thing to do, but nothing
174
+has happened lately.
175
+
176
+* db/vcs-helper (2009-08-09) 17 commits
177
+ - Allow helpers to request marks for fast-import
178
+ - Allow helpers to report in "list" command that the ref is unchanged
179
+ - Add support for "import" helper command
180
+ - transport-helper_init(): fix a memory leak in error path
181
+ - Add a config option for remotes to specify a foreign vcs
182
+ - Allow programs to not depend on remotes having urls
183
+ - Allow fetch to modify refs
184
+ - Use a function to determine whether a remote is valid
185
+ - Use a clearer style to issue commands to remote helpers
186
+ (merged to 'next' on 2009-08-07 at f3533ba)
187
+ + Makefile: install hardlinks for git-remote-<scheme> supported by libcurl if possible
188
+ + Makefile: do not link three copies of git-remote-* programs
189
+ + Makefile: git-http-fetch does not need expat
190
+ (merged to 'next' on 2009-08-06 at 15da79d)
191
+ + http-fetch: Fix Makefile dependancies
192
+ + Add transport native helper executables to .gitignore
193
+ (merged to 'next' on 2009-08-05 at 33d491e)
194
+ + git-http-fetch: not a builtin
195
+ + Use an external program to implement fetching with curl
196
+ + Add support for external programs for handling native fetches
197
+ (this branch is used by jh/cvs-helper.)
198
+
199
+We had a few messages on what the list consensus was with this series. My
200
+impression, after going back to the archive, is that there wasn't.
201
+
202
+* jn/gitweb-blame (2009-08-06) 3 commits
203
+ - gitweb: Create links leading to 'blame_incremental' using JavaScript
204
+ - gitweb: Incremental blame (WIP)
205
+ - gitweb: Add optional "time to generate page" info in footer
206
+
207
+Ajax-y blame WIP
208
+
209
+--------------------------------------------------
210
+[Cooking]
211
+
212
+* je/send-email-no-subject (2009-08-05) 1 commit
213
+ (merged to 'next' on 2009-08-30 at b6455c2)
214
+ + send-email: confirm on empty mail subjects
215
+
216
+The existing tests to covers the positive case (i.e. as long as the user
217
+says "yes" to the "do you really want to send this message that lacks
218
+subject", the message is sent) of this feature, but the feature itself
219
+needs its own test to verify the negative case (i.e. does it correctly
220
+stop if the user says "no"?)
221
+
222
+* lt/approxidate (2009-08-30) 6 commits
223
+ (merged to 'next' on 2009-08-30 at e016e3d)
224
+ + fix approxidate parsing of relative months and years
225
+ + tests: add date printing and parsing tests
226
+ + refactor test-date interface
227
+ + Add date formatting and parsing functions relative to a given time
228
+ (merged to 'next' on 2009-08-26 at 62853f9)
229
+ + Further 'approxidate' improvements
230
+ + Improve on 'approxidate'
231
+
232
+Fixes a few "reasonably formatted but thus-far misparsed" date strings.
233
+With tests by Peff, this should be ready for -rc0.
234
+
235
+* mr/gitweb-snapshot (2009-08-25) 3 commits
236
+ (merged to 'next' on 2009-08-30 at e4edd0b)
237
+ + gitweb: add t9501 tests for checking HTTP status codes
238
+ + gitweb: split test suite into library and tests
239
+ + gitweb: improve snapshot error handling
240
+
241
+* jc/mailinfo-scissors (2009-08-26) 5 commits
242
+ (merged to 'next' on 2009-08-30 at 5fc6248)
243
+ + mailinfo.scissors: new configuration
244
+ + am/mailinfo: Disable scissors processing by default
245
+ + Documentation: describe the scissors mark support of "git am"
246
+ + Teach mailinfo to ignore everything before -- >8 -- mark
247
+ + builtin-mailinfo.c: fix confusing internal API to mailinfo()
248
+
249
+I didn't pick up the patch to simplify the definition of scissors. I do
250
+not have strong opinion on it either way, but the list would hopefully
251
+decide it before too long.
252
+
253
+* tf/diff-whitespace-incomplete-line (2009-08-23) 2 commits.
254
+ (merged to 'next' on 2009-08-26 at 4fc7784)
255
+ + xutils: Fix xdl_recmatch() on incomplete lines
256
+ + xutils: Fix hashing an incomplete line with whitespaces at the end
257
+
258
+Will merge.
259
+
260
+* cc/sequencer-rebase-i (2009-08-28) 15 commits
261
+ - rebase -i: use "git sequencer--helper --cherry-pick"
262
+ - sequencer: add "--cherry-pick" option to "git sequencer--helper"
263
+ - sequencer: add "do_commit()" and related functions working on "next_commit"
264
+ - pick: libify "pick_help_msg()"
265
+ - revert: libify cherry-pick and revert functionnality
266
+ - rebase -i: use "git sequencer--helper --fast-forward"
267
+ - sequencer: let "git sequencer--helper" callers set "allow_dirty"
268
+ - sequencer: add "--fast-forward" option to "git sequencer--helper"
269
+ - sequencer: add "do_fast_forward()" to perform a fast forward
270
+ - rebase -i: use "git sequencer--helper --reset-hard"
271
+ - sequencer: add "--reset-hard" option to "git sequencer--helper"
272
+ - sequencer: add "reset_almost_hard()" and related functions
273
+ - rebase -i: use "git sequencer--helper --make-patch"
274
+ - sequencer: add "make_patch" function to save a patch
275
+ - sequencer: add "builtin-sequencer--helper.c"
276
+
277
+Migrating "rebase -i" bit by bit to C.
278
+
279
+* jh/cvs-helper (2009-08-18) 7 commits
280
+ - More fixes to the git-remote-cvs installation procedure
281
+ - Fix the Makefile-generated path to the git_remote_cvs package in git-remote-cvs
282
+ - Add simple selftests of git-remote-cvs functionality
283
+ - git-remote-cvs: Remote helper program for CVS repositories
284
+ - 2/2: Add Python support library for CVS remote helper
285
+ - 1/2: Add Python support library for CVS remote helper
286
+ - Basic build infrastructure for Python scripts
287
+ (this branch uses db/vcs-helper.)
288
+
289
+Builds on db/vcs-helper (which is stalled, so this cannot move further at
290
+the moment). There is a re-roll planned, so I did not pick up test fixes
291
+from Brandon myself.
292
+
293
+* sr/gfi-options (2009-08-27) 6 commits
294
+ - fast-import: test the new option command
295
+ - fast-import: add option command
296
+ - fast-import: test the new feature command
297
+ - fast-import: add feature command
298
+ - fast-import: put marks reading in it's own function
299
+ - fast-import: put option parsing code in separate functions
300
+
301
+Re-rolled, based on an off-list discussion I was/am not aware of.
302
+Looked ready for 'next'.
303
+
304
+* nd/sparse (2009-08-20) 19 commits
305
+ - sparse checkout: inhibit empty worktree
306
+ - Add tests for sparse checkout
307
+ - read-tree: add --no-sparse-checkout to disable sparse checkout support
308
+ - unpack-trees(): ignore worktree check outside checkout area
309
+ - unpack_trees(): apply $GIT_DIR/info/sparse-checkout to the final index
310
+ - unpack-trees(): "enable" sparse checkout and load $GIT_DIR/info/sparse-checkout
311
+ - unpack-trees.c: generalize verify_* functions
312
+ - unpack-trees(): add CE_WT_REMOVE to remove on worktree alone
313
+ - Introduce "sparse checkout"
314
+ - dir.c: export excluded_1() and add_excludes_from_file_1()
315
+ - excluded_1(): support exclude files in index
316
+ - unpack-trees(): carry skip-worktree bit over in merged_entry()
317
+ - Read .gitignore from index if it is skip-worktree
318
+ - Avoid writing to buffer in add_excludes_from_file_1()
319
+ - Teach Git to respect skip-worktree bit (writing part)
320
+ - Teach Git to respect skip-worktree bit (reading part)
321
+ - Introduce "skip-worktree" bit in index, teach Git to get/set this bit
322
+ - Add test-index-version
323
+ - update-index: refactor mark_valid() in preparation for new options
324
+
325
+--------------------------------------------------
326
+[For 1.7.0]
327
+
328
+* jc/1.7.0-status (2009-08-15) 3 commits
329
+ (merged to 'next' on 2009-08-22 at b3507bb)
330
+ + git status: not "commit --dry-run" anymore
331
+ + git stat -s: short status output
332
+ + git stat: the beginning of "status that is not a dry-run of commit"
333
+
334
+With this, "git status" is no longer "git commit --preview".
335
+
336
+* jc/1.7.0-send-email-no-thread-default (2009-08-22) 1 commit
337
+ (merged to 'next' on 2009-08-22 at 5106de8)
338
+ + send-email: make --no-chain-reply-to the default
339
+
340
+* jc/1.7.0-diff-whitespace-only-status (2009-08-30) 4 commits.
341
+ (merged to 'next' on 2009-08-30 at 0623572)
342
+ + diff.c: fix typoes in comments
343
+ (merged to 'next' on 2009-08-27 at 81fb2bd)
344
+ + Make test case number unique
345
+ (merged to 'next' on 2009-08-02 at 9c08420)
346
+ + diff: Rename QUIET internal option to QUICK
347
+ + diff: change semantics of "ignore whitespace" options
348
+
349
+This changes exit code from "git diff --ignore-whitespace" and friends
350
+when there is no actual output. It is a backward incompatible change, but
351
+we could argue that it is a bugfix.
352
+
353
+* jc/1.7.0-push-safety (2009-02-09) 2 commits
354
+ (merged to 'next' on 2009-08-02 at 38b82fe)
355
+ + Refuse deleting the current branch via push
356
+ + Refuse updating the current branch in a non-bare repository via push
357
+
358
+--------------------------------------------------
359
+[I have been too busy to purge these]
360
+
361
+* jc/log-tz (2009-03-03) 1 commit.
362
+ - Allow --date=local --date=other-format to work as expected
363
+
364
+Maybe some people care about this. I dunno.
365
+
366
+* jc/mailinfo-remove-brackets (2009-07-15) 1 commit.
367
+ - mailinfo: -b option keeps [bracketed] strings that is not a [PATCH] marker
368
+
369
+Maybe some people care about this. I dunno.
370
+
371
+* ar/maint-1.6.2-merge-recursive-d-f (2009-05-11) 2 commits.
372
+ . Fix for a merge where a branch has an F->D transition
373
+ . Add a reminder test case for a merge with F/D transition
374
+
375
+* jc/merge-convert (2009-01-26) 1 commit.
376
+ . git-merge-file: allow converting the results for the work tree
377
+
378
+* lt/read-directory (2009-05-15) 3 commits.
379
+ . Add initial support for pathname conversion to UTF-8
380
+ . read_directory(): infrastructure for pathname character set conversion
381
+ . Add 'fill_directory()' helper function for directory traversal
382
+
383
+* ps/blame (2009-03-12) 1 commit.
384
+ . blame.c: start libifying the blame infrastructure
385
+
386
+* pb/tracking (2009-07-16) 7 commits.
387
+ . branch.c: if remote is not config'd for branch, don't try delete push config
388
+ . branch, checkout: introduce autosetuppush
389
+ . move deletion of merge configuration to branch.c
390
+ . remote: add per-remote autosetupmerge and autosetuprebase configuration
391
+ . introduce a struct tracking_config
392
+ . branch: install_branch_config and struct tracking refactoring
393
+ . config: allow false and true values for branch.autosetuprebase
394
+
395
+Has been ejected from 'pu' for some time, expecting a reroll.
396
+
397
+* ne/rev-cache (2009-08-21) 6 commits
398
+ . support for path name caching in rev-cache
399
+ . full integration of rev-cache into git, completed test suite
400
+ . administrative functions for rev-cache, start of integration into git
401
+ . support for non-commit object caching in rev-cache
402
+ . basic revision cache system, no integration or features
403
+ . man page and technical discussion for rev-cache
404
+
405
+Updated but seems to break upload-pack tests when merged to 'pu'; given
406
+what this series touches, breakages in that area are expected.
407
+May discard if a working reroll comes, to give it a fresh start.