What's in/cooking updates
Junio C Hamano committed
Aug 23, 2008 at 20:38 UTC
5a3521008e2e54238ebfb9904c1bc69a5fda9148
2 files changed
+520
whats/cooking/2008/08/07.txt
new
+396
@@ -0,0 +1,396 @@
1
+Subject: What's cooking in git.git (Aug 2008, #07; Sat, 23)
2
+X-master-at: d6096f17d2d5d9ccb453aabf8edc6ee238b166fc
3
+X-next-at: d789cd45cd80390e3cf86de6c43600007d4b59ac
4
+
5
+What's cooking in git.git (Aug 2008, #07; Sat, 23)
6
+--------------------------------------------------
7
+
8
+Here are the topics that have been cooking. Commits prefixed
9
+with '-' are only in 'pu' while commits prefixed with '+' are
10
+in 'next'.
11
+
12
+The topics list the commits in reverse chronological order. The topics
13
+meant to be merged to the maintenance series have "maint-" in their names.
14
+
15
+Here is a list of issues/topics we saw on the mailing list but haven't
16
+resulted in anything queuable in 'pu' yet. They need further work by
17
+interested parties:
18
+
19
+ * Windows relocatable install
20
+
21
+ Steffen Prohaska ($gmane/92605), Johannes Sixt.
22
+
23
+ * Haiku port
24
+
25
+ Andreas Färber ($gmane/92582)
26
+
27
+ * ksh "trap foo EXIT" triggers on function return, loses exit status
28
+
29
+ Brandon Casey ($gmane/92873)
30
+
31
+ * document webdav debugging tip with davfs2
32
+
33
+ Giovanni Funchal ($gmane/92745)
34
+
35
+ * update "rebase -i" documentation with examples
36
+
37
+ Eric Hanchrow ($gmane/92669)
38
+
39
+ * pre-push hook
40
+
41
+ Scott Chacon ($gmane/92900, $gmane/92936)
42
+
43
+ * "git commit --author=nickname" expanding nickname from somewhere
44
+
45
+ Michael J Gruber ($gmane/93274)
46
+
47
+ * Handling (possibly $HOME-) relative paths in config files
48
+
49
+ Karl Chen ($gmane/93250)
50
+
51
+ * "submodule sync"
52
+
53
+ David Aguilar ($gmane/93265)
54
+
55
+ * "rev-list --bisect --first-parent"
56
+
57
+ Avery Pennarun, me ($gmane/93420)
58
+
59
+ * "apply --include"
60
+
61
+ Joe Perches ($gmane/93505)
62
+
63
+----------------------------------------------------------------
64
+[New Topics]
65
+
66
+* bd/blame (Thu Aug 21 18:22:01 2008 -0500) 5 commits
67
+ . Use xdiff caching to improve git blame performance
68
+ . Allow xdiff machinery to cache hash results for a file
69
+ . Always initialize xpparam_t to 0
70
+ . Bypass textual patch generation and parsing in git blame
71
+ . Allow alternate "low-level" emit function from xdl_diff
72
+
73
+Réne had a good comments on how the callback is structured.
74
+
75
+* jc/maint-name-hash-clear (Sat Aug 23 13:05:10 2008 -0700) 1 commit
76
+ - discard_cache: reset lazy name_hash bit
77
+
78
+I spotted this by accident while working on something unrelated.
79
+
80
+When a program calls discard_cache() to read the index again, we do not
81
+properly re-initialize the name_hash structure that is used by the case
82
+insensitivitly logic. This _might_ improve issues people may be having on
83
+case insensitive filesystems. I dunno.
84
+
85
+* mv/maint-merge-fix (Sat Aug 23 12:56:57 2008 -0700) 1 commit
86
+ + merge: fix numerus bugs around "trivial merge" area
87
+
88
+* ml/submodule (Thu Aug 21 19:54:01 2008 -0400) 2 commits
89
+ + git-submodule.sh - Remove trailing / from URL if found
90
+ + git-submodule.sh - Remove trailing / from URL if found
91
+
92
+Soon to be in 'master', I guess.
93
+
94
+* np/verify-pack (Fri Aug 22 15:45:53 2008 -0400) 1 commit
95
+ + discard revindex data when pack list changes
96
+
97
+* jc/add-ita (Thu Aug 21 01:44:53 2008 -0700) 3 commits
98
+ - git-add --intent-to-add (-N)
99
+ - cached_object: learn empty blob
100
+ - sha1_object_info(): pay attention to cached objects
101
+
102
+Teaches "git add" to record only the intent to add a path later.
103
+I think this is better done without the hardcoded empty blob object.
104
+
105
+----------------------------------------------------------------
106
+[Stalled -- Needs Action to Proceed (or to be dropped)]
107
+
108
+* sb/daemon (Thu Aug 14 20:02:20 2008 +0200) 4 commits
109
+ - git-daemon: rewrite kindergarden, new option --max-connections
110
+ - git-daemon: Simplify dead-children reaping logic
111
+ - git-daemon: use LOG_PID, simplify logging code
112
+ - git-daemon: call logerror() instead of error()
113
+
114
+Can somebody who actually runs the daemon standalone comment on this one?
115
+
116
+* jc/cc-ld-dynpath (Sat Aug 16 15:01:23 2008 +0200) 2 commits
117
+ - configure: auto detect dynamic library path switches
118
+ - Makefile: Allow CC_LD_DYNPATH to be overriden
119
+
120
+Needs success reports from people who do use user-defined dynamic library
121
+path when they build their "git" before this series can go anywhere.
122
+
123
+* lt/time-reject-fractional-seconds (Sat Aug 16 21:25:40 2008 -0700) 1 commit
124
+ - date/time: do not get confused by fractional seconds
125
+
126
+Linus hints further enhancements as "the right way", so let's see if
127
+somebody else steps up and tries it before merging this to 'next'.
128
+
129
+* sp/smart-http (Sun Aug 3 00:25:17 2008 -0700) 2 commits
130
+ - [do not merge -- original version] Add Git-aware CGI for Git-aware
131
+ smart HTTP transport
132
+ - Add backdoor options to receive-pack for use in Git-aware CGI
133
+
134
+The "magic" detection protocol was revised to use POST to info/refs; the
135
+top one queued is from before that discussion.
136
+
137
+----------------------------------------------------------------
138
+[Actively Cooking]
139
+
140
+* cc/bisect (Fri Aug 22 05:52:29 2008 +0200) 2 commits
141
+ - bisect: only check merge bases when needed
142
+ - bisect: test merge base if good rev is not an ancestor of bad rev
143
+
144
+* mv/merge-recursive (Tue Aug 12 22:14:00 2008 +0200) 3 commits
145
+ . Make builtin-revert.c use merge_recursive_generic()
146
+ . merge-recursive.c: Add more generic merge_recursive_generic()
147
+ . Split out merge_recursive() to merge-recursive.c
148
+
149
+Miklos will be working on updates based on comments.
150
+
151
+* lw/gitweb (Mon Aug 18 21:39:49 2008 +0200) 3 commits
152
+ . gitweb: use new Git::Repo API, and add optional caching
153
+ . add new Perl API: Git::Repo, Git::Commit, Git::Tag, and
154
+ Git::RepoRoot
155
+ . gitweb: add test suite with Test::WWW::Mechanize::CGI
156
+
157
+Tentatively dropped as its tests do not seem to pass and I have no time to
158
+look at them.
159
+
160
+* jc/diff-prefix (Mon Aug 18 20:08:09 2008 -0700) 1 commit
161
+ - diff: vary default prefix depending on what are compared
162
+
163
+As some people may have noticed, I've been running with this one when
164
+sending out "How about this" patches to the discussion threads.
165
+
166
+* sp/missing-thin-base (Tue Aug 12 11:31:06 2008 -0700) 1 commit
167
+ + pack-objects: Allow missing base objects when creating thin packs
168
+
169
+* tr/filter-branch (Tue Aug 12 10:45:59 2008 +0200) 3 commits
170
+ + filter-branch: use --simplify-merges
171
+ + filter-branch: fix ref rewriting with --subdirectory-filter
172
+ + filter-branch: Extend test to show rewriting bug
173
+
174
+Fixes a longstanding filter branch bug. Success stories?
175
+
176
+* jc/post-simplify (Fri Aug 15 01:34:51 2008 -0700) 8 commits
177
+ - revision --simplify-merges: incremental simplification
178
+ - revision --simplify-merges: prepare for incremental simplification
179
+ - revision --simplify-merges: make it a no-op without pathspec
180
+ + revision --simplify-merges: do not leave commits unprocessed
181
+ + revision --simplify-merges: use decoration instead of commit->util
182
+ field
183
+ + Topo-sort before --simplify-merges
184
+ + revision traversal: show full history with merge simplification
185
+ + revision.c: whitespace fix
186
+
187
+"log --full-history" is with too much clutter, "log" itself is too cleverer
188
+than some people, and here is the middle level of merge simplification.
189
+
190
+I started making this incremental but the progress is not so great.
191
+
192
+* tr/rev-list-docs (Tue Aug 12 01:55:37 2008 +0200) 1 commit
193
+ + Documentation: rev-list-options: move --simplify-merges
194
+ documentation
195
+
196
+----------------------------------------------------------------
197
+[Will merge to master soon]
198
+
199
+* jc/no-slim-shell (Tue Aug 19 18:05:43 2008 -0700) 2 commits
200
+ + Build-in "git-shell"
201
+ + shell: do not play duplicated definition games to shrink the
202
+ executable
203
+
204
+* mv/merge-custom (Sat Aug 23 19:23:22 2008 -0700) 9 commits
205
+ + t7606: fix custom merge test
206
+ + Fix "git-merge -s bogo" help text
207
+ + Update .gitignore to ignore git-help
208
+ + Builtin git-help.
209
+ + builtin-help: always load_command_list() in cmd_help()
210
+ + Add a second testcase for handling invalid strategies in git-merge
211
+ + Add a new test for using a custom merge strategy
212
+ + builtin-merge: allow using a custom strategy
213
+ + builtin-help: make some internal functions available to other
214
+ builtins
215
+
216
+The one at the tip fixes a test that assumed git-merge has a broken
217
+"trivial merge" implementation.
218
+
219
+* jc/add-addremove (Tue Jul 22 22:30:40 2008 -0700) 2 commits
220
+ + builtin-add.c: optimize -A option and "git add ."
221
+ + builtin-add.c: restructure the code for maintainability
222
+
223
+* am/cherry-pick-rerere (Sun Aug 10 17:18:55 2008 +0530) 1 commit
224
+ + Make cherry-pick use rerere for conflict resolution.
225
+
226
+----------------------------------------------------------------
227
+[On Hold]
228
+
229
+* jc/stripspace (Sun Mar 9 00:30:35 2008 -0800) 6 commits
230
+ - git-am --forge: add Signed-off-by: line for the author
231
+ - git-am: clean-up Signed-off-by: lines
232
+ - stripspace: add --log-clean option to clean up signed-off-by:
233
+ lines
234
+ - stripspace: use parse_options()
235
+ - Add "git am -s" test
236
+ - git-am: refactor code to add signed-off-by line for the committer
237
+
238
+* jc/send-pack-tell-me-more (Thu Mar 20 00:44:11 2008 -0700) 1 commit
239
+ - "git push": tellme-more protocol extension
240
+
241
+* jc/merge-whitespace (Sun Feb 24 23:29:36 2008 -0800) 1 commit
242
+ - WIP: start teaching the --whitespace=fix to merge machinery
243
+
244
+* jc/blame (Wed Jun 4 22:58:40 2008 -0700) 2 commits
245
+ - blame: show "previous" information in --porcelain/--incremental
246
+ format
247
+ - git-blame: refactor code to emit "porcelain format" output
248
+
249
+* sg/merge-options (Sun Apr 6 03:23:47 2008 +0200) 1 commit
250
+ + merge: remove deprecated summary and diffstat options and config
251
+ variables
252
+
253
+This was previously in "will be in master soon" category, but it turns out
254
+that the synonyms to the ones this one deletes are fairly new invention
255
+that happend in 1.5.6 timeframe, and we cannot do this just yet. Perhaps
256
+in 1.7.0.
257
+
258
+* jc/dashless (Wed Jun 25 15:55:11 2008 -0700) 1 commit
259
+ - Make clients ask for "git program" over ssh and local transport
260
+
261
+This is the "botched" one. Will be resurrected during 1.7.0 or 1.8.0
262
+timeframe.
263
+
264
+* jk/renamelimit (Sat May 3 13:58:42 2008 -0700) 1 commit
265
+ - diff: enable "too large a rename" warning when -M/-C is explicitly
266
+ asked for
267
+
268
+This would be the right thing to do for command line use, but gitk will be
269
+hit due to tcl/tk's limitation, so I am holding this back for now.
270
+
271
+----------------------------------------------------------------
272
+[Graduated to "master"]
273
+
274
+* ml/submodule-foreach (Sun Aug 10 19:10:04 2008 -0400) 1 commit
275
+ + git-submodule - Add 'foreach' subcommand
276
+
277
+* pm/log-exit-code (Mon Aug 11 08:46:25 2008 +0200) 2 commits
278
+ + Teach git log --exit-code to return an appropriate exit code
279
+ + Teach git log --check to return an appropriate exit code
280
+
281
+* sb/commit-tree-minileak (Tue Aug 12 00:35:11 2008 +0200) 1 commit
282
+ + Fix commit_tree() buffer leak
283
+
284
+* pb/reflog-dwim (Sun Aug 10 22:22:21 2008 +0200) 1 commit
285
+ + builtin-reflog: Allow reflog expire to name partial ref
286
+
287
+* jc/add-stop-at-symlink (Mon Aug 4 00:52:37 2008 -0700) 2 commits
288
+ + add: refuse to add working tree items beyond symlinks
289
+ + update-index: refuse to add working tree items beyond symlinks
290
+
291
+Fix for a longstanding bug that allows "git add" and "git update-index" to
292
+add a path "a/b" to the index when "a" is a symbolic link. We would need
293
+a similar fix for the case where "a" is a submodule.
294
+
295
+* kh/diff-tree (Sun Aug 10 18:13:04 2008 +0200) 4 commits
296
+ + Add test for diff-tree --stdin with two trees
297
+ + Teach git diff-tree --stdin to diff trees
298
+ + diff-tree: Note that the commit ID is printed with --stdin
299
+ + Refactoring: Split up diff_tree_stdin
300
+
301
+* mg/count-objects (Fri Aug 15 00:20:20 2008 -0400) 1 commit
302
+ + count-objects: Add total pack size to verbose output
303
+
304
+This one is without the human readable bits.
305
+
306
+* mz/push-verbose (Sat Aug 16 19:58:32 2008 +0200) 1 commit
307
+ + Make push more verbose about illegal combination of options
308
+
309
+* jc/index-extended-flags (Sat Aug 16 23:02:08 2008 -0700) 1 commit
310
+ + index: future proof for "extended" index entries
311
+
312
+* cc/merge-base-many (Sun Jul 27 13:47:22 2008 -0700) 4 commits
313
+ + git-merge-octopus: use (merge-base A (merge B C D E...)) for
314
+ stepwise merge
315
+ + merge-base-many: add trivial tests based on the documentation
316
+ + documentation: merge-base: explain "git merge-base" with more than
317
+ 2 args
318
+ + merge-base: teach "git merge-base" to drive underlying
319
+ merge_bases_many()
320
+
321
+* js/parallel-test (Mon Aug 18 12:25:40 2008 -0400) 4 commits
322
+ + Update t/.gitignore to ignore all trash directories
323
+ + Enable parallel tests
324
+ + tests: Clarify dependencies between tests, 'aggregate-results' and
325
+ 'clean'
326
+ + t9700: remove useless check
327
+
328
+* jc/test-deeper (Fri Aug 8 02:26:28 2008 -0700) 1 commit
329
+ + tests: use $TEST_DIRECTORY to refer to the t/ directory
330
+
331
+This does not actually move "t/test directory" any deeper, but fixes test
332
+scripts that assume they run immediately below "t/" to use TEST_DIRECTORY
333
+variable.
334
+
335
+* js/mingw-stat (Mon Aug 18 22:01:06 2008 +0200) 2 commits
336
+ + Revert "Windows: Use a customized struct stat that also has the
337
+ st_blocks member."
338
+ + compat: introduce on_disk_bytes()
339
+
340
+This gets rid of use of st_blocks member (which is XSI but not POSIX
341
+proper), which was originally prompted by recent Haiku port but it turns
342
+out MinGW has the same issue as well. Queued on 'pu' just to have a
343
+chance to make sure I munged the version j6t sent me correctly before
344
+merging it upwards.
345
+
346
+* js/checkout-dwim-local (Sat Aug 9 16:00:12 2008 +0200) 1 commit
347
+ + checkout --track: make up a sensible branch name if '-b' was
348
+ omitted
349
+
350
+Alex has update to dwim "checkout --track remotes/origin/hack" as well.
351
+
352
+* bd/diff-strbuf (Wed Aug 13 23:18:22 2008 -0700) 3 commits
353
+ + xdiff-interface: hide the whole "xdiff_emit_state" business from
354
+ the caller
355
+ + Use strbuf for struct xdiff_emit_state's remainder
356
+ + Make xdi_diff_outf interface for running xdiff_outf diffs
357
+
358
+Gives measurable performance improvement to textual diff generation. For
359
+improving "blame" performance, it might be more effective to hook directly
360
+to lower level of xdiff machinery so that we do not even have to generate
361
+patch only to discard after reading "@@ -l,k +m,n @@" lines, but that
362
+would be a separate topic.
363
+
364
+* dp/hash-literally (Sun Aug 3 18:36:22 2008 +0400) 6 commits
365
+ + add --no-filters option to git hash-object
366
+ + add --path option to git hash-object
367
+ + use parse_options() in git hash-object
368
+ + correct usage help string for git-hash-object
369
+ + correct argument checking test for git hash-object
370
+ + teach index_fd to work with pipes
371
+
372
+Gives a bit more flexibility to hash-objects by allowing us to lie about
373
+the path the contents comes from.
374
+
375
+* rs/imap (Wed Jul 9 22:29:02 2008 +0100) 5 commits
376
+ + Documentation: Improve documentation for git-imap-send(1)
377
+ + imap-send.c: more style fixes
378
+ + imap-send.c: style fixes
379
+ + git-imap-send: Support SSL
380
+ + git-imap-send: Allow the program to be run from subdirectories of
381
+ a git tree
382
+
383
+Some people seem to prefer having this feature available also with gnutls.
384
+Such an enhancement can be done in-tree on top of this series if they are
385
+so inclined.
386
+
387
+* jk/pager-swap (Tue Jul 22 03:14:12 2008 -0400) 2 commits
388
+ + spawn pager via run_command interface
389
+ + run-command: add pre-exec callback
390
+
391
+This changes the parent-child relationship between the pager and the git
392
+process. We used to make pager the parent which meant that the exit
393
+status from git is lost from the caller.
394
+
395
+* ph/enable-threaded (Mon Jul 21 11:23:43 2008 +0200) 1 commit
396
+ + Enable threaded delta search on *BSD and Linux.
whats/in/2008/08/06.txt
new
+124
@@ -0,0 +1,124 @@
1
+Subject: What's in git.git (Aug 2008, #06; Sat, 23)
2
+X-maint-at: 913e0e99b6a6e63af6a062622a1f94bd78fd8052
3
+X-master-at: d6096f17d2d5d9ccb453aabf8edc6ee238b166fc
4
+X-maint-was: 9b99e641c11044dba661f574f9098d362a3f0ef8
5
+X-master-was: ea3594e04184475226109a21e71c539ff5f139fd
6
+
7
+What's in git.git (Aug 2008, #06; Sat, 23)
8
+
9
+ maint 913e0e9 (unpack_trees(): protect the handcrafted in-core index from read_cache())
10
+ master d6096f1 (Merge branch 'maint')
11
+------------------------------------------------------------------------
12
+
13
+There are a few fix-up that just have started cooking in 'next/pu'; they
14
+eventually should be merged to 'maint', but not yet.
15
+
16
+There are quite a few topics graduated to 'master'.
17
+
18
+* The 'maint' branch has these fixes since the last announcement.
19
+
20
+Brandon Casey (2):
21
+ revision.h: make show_early_output an extern which is defined in
22
+ revision.c
23
+ compat/snprintf.c: handle snprintf's that always return the # chars
24
+ transmitted
25
+
26
+Eric Raible (1):
27
+ Completion: add missing '=' for 'diff --diff-filter'
28
+
29
+Eric Wong (1):
30
+ git-svn: fix dcommit to urls with embedded usernames
31
+
32
+Junio C Hamano (1):
33
+ unpack_trees(): protect the handcrafted in-core index from read_cache()
34
+
35
+Miklos Vajna (1):
36
+ Fix 'git help help'
37
+
38
+Tor Arvid Lund (1):
39
+ git-p4: Fix one-liner in p4_write_pipe function.
40
+
41
+
42
+* The 'master' branch has these since the last announcement
43
+ in addition to the above.
44
+
45
+Alex Riesen (1):
46
+ Extend "checkout --track" DWIM to support more cases
47
+
48
+Brandon Casey (1):
49
+ remote.c: add a function for deleting a refspec array and use it (twice)
50
+
51
+Christian Couder (1):
52
+ merge-base: teach "git merge-base" to drive underlying merge_bases_many()
53
+
54
+Dan Hensgen (1):
55
+ git-merge documentation: more details about resolving conflicts
56
+
57
+David Aguilar (1):
58
+ git-submodule: replace duplicated code with a module_list function
59
+
60
+Johan Herland (1):
61
+ Teach "git diff -p" HTML funcname patterns
62
+
63
+Johannes Schindelin (4):
64
+ t9700: remove useless check
65
+ tests: Clarify dependencies between tests, 'aggregate-results' and
66
+ 'clean'
67
+ Enable parallel tests
68
+ test-lib: do not remove trash_directory if called with --debug
69
+
70
+Johannes Sixt (1):
71
+ filter-branch: Grok special characters in tag names
72
+
73
+Jonathan del Strother (1):
74
+ Revert "Convert output messages in merge-recursive to past tense."
75
+
76
+Junio C Hamano (8):
77
+ documentation: merge-base: explain "git merge-base" with more than 2 args
78
+ merge-base-many: add trivial tests based on the documentation
79
+ git-merge-octopus: use (merge-base A (merge B C D E...)) for stepwise
80
+ merge
81
+ update-index: refuse to add working tree items beyond symlinks
82
+ add: refuse to add working tree items beyond symlinks
83
+ index: future proof for "extended" index entries
84
+ tests: use $TEST_DIRECTORY to refer to the t/ directory
85
+ templates/Makefile: install is unnecessary, just use mkdir -p
86
+
87
+Karl Hasselström (4):
88
+ Refactoring: Split up diff_tree_stdin
89
+ diff-tree: Note that the commit ID is printed with --stdin
90
+ Teach git diff-tree --stdin to diff trees
91
+ Add test for diff-tree --stdin with two trees
92
+
93
+Kirill Smelkov (1):
94
+ Teach "git diff -p" Python funcname patterns
95
+
96
+Marcus Griep (2):
97
+ count-objects: Add total pack size to verbose output
98
+ Update t/.gitignore to ignore all trash directories
99
+
100
+Marek Zawirski (1):
101
+ Make push more verbose about illegal combination of options
102
+
103
+Mark Levedahl (1):
104
+ git-submodule - Add 'foreach' subcommand
105
+
106
+Neil Roberts (1):
107
+ config.mak.in: Pass on LDFLAGS from configure
108
+
109
+Paolo Bonzini (1):
110
+ provide more errors for the "merge into empty head" case
111
+
112
+Peter Valdemar Mørch (2):
113
+ Teach git log --check to return an appropriate exit code
114
+ Teach git log --exit-code to return an appropriate exit code
115
+
116
+Pieter de Bie (1):
117
+ builtin-reflog: Allow reflog expire to name partial ref
118
+
119
+Shawn O. Pearce (1):
120
+ Make reflog query '@{1219188291}' act as '@{2008.8.19.16:24:51.-0700}'
121
+
122
+Stephan Beyer (1):
123
+ Fix commit_tree() buffer leak
124
+