What's cooking (2012/01 #06)

Junio C Hamano committed Jan 27, 2012 at 13:42 UTC ddc6fff4d5dfb66cc57bd0f8b4616bb9a477d91e
1 file changed +176 -129
whats-cooking.txt
+176 -129
@@ -1,15 +1,17 @@
1 To: git@vger.kernel.org
2 -Subject: What's cooking in git.git (Jan 2012, #05; Mon, 23)
3 -X-master-at: 69204d0ab18d28d07ee2c8c9b50bbf5bd80343ab
4 -X-next-at: bee31c659a45b507c95fb5bc777eb04fad181b4d
2 +Subject: What's cooking in git.git (Jan 2012, #06; Fri, 27)
3 +X-master-at: 828ea97de486c1693d6e4f2c7347acb50235a85d
4 +X-next-at: db81badb8172f91f47582d00408dd94bbe9b4d93
5
6 -What's cooking in git.git (Jan 2012, #05; Mon, 23)
6 +What's cooking in git.git (Jan 2012, #06; Fri, 27)
7 --------------------------------------------------
8
9 Here are the topics that have been cooking. Commits prefixed with '-' are
10 only in 'pu' (proposed updates) while commits prefixed with '+' are in
11 'next'.
12
13 +Now 1.7.9 is out, the development cycle for 1.7.10 will start shortly.
14 +
15 Here are the repositories that have my integration branches:
16
17 With maint, master, next, pu, todo:
@@ -36,37 +38,169 @@ The preformatted documentation in HTML and man format are found in:
38 https://github.com/gitster/git-{htmldocs,manpages}.git/
39
40 --------------------------------------------------
39 -[Graduated to "master"]
41 +[New Topics]
42 +
43 +* jl/submodule-re-add (2012-01-24) 1 commit
44 + (merged to 'next' on 2012-01-26 at 482553e)
45 + + submodule add: fix breakage when re-adding a deep submodule
46
41 -* jc/pull-signed-tag-doc (2012-01-17) 1 commit
42 - + pulling signed tag: add howto document
47 +Low-impact fix to an old issue.
48 +Will merge early in the next cycle.
49
44 -* jk/credentials (2012-01-16) 4 commits
45 - (merged to 'next' on 2012-01-16 at 2810b82)
46 - + credential-cache: ignore "connection refused" errors
47 - (merged to 'next' on 2012-01-16 at 1c6c94a)
48 - + unix-socket: do not let close() or chdir() clobber errno during cleanup
49 - + credential-cache: report more daemon connection errors
50 - + unix-socket: handle long socket pathnames
50 +* jn/svn-fe (2012-01-27) 44 commits
51 + - vcs-svn/svndiff.c: squelch false "unused" warning from gcc
52 + - Merge branch 'svn-fe' of git://repo.or.cz/git/jrn into jn/svn-fe
53 + - vcs-svn: reset first_commit_done in fast_export_init
54 + - Merge branch 'db/text-delta' into svn-fe
55 + - vcs-svn: do not initialize report_buffer twice
56 + - Merge branch 'db/text-delta' into svn-fe
57 + - vcs-svn: avoid hangs from corrupt deltas
58 + - vcs-svn: guard against overflow when computing preimage length
59 + - Merge branch 'db/delta-applier' into db/text-delta
60 + - vcs-svn: implement text-delta handling
61 + - Merge branch 'db/delta-applier' into db/text-delta
62 + - Merge branch 'db/delta-applier' into svn-fe
63 + - vcs-svn: cap number of bytes read from sliding view
64 + - test-svn-fe: split off "test-svn-fe -d" into a separate function
65 + - vcs-svn: let deltas use data from preimage
66 + - vcs-svn: let deltas use data from postimage
67 + - vcs-svn: verify that deltas consume all inline data
68 + - vcs-svn: implement copyfrom_data delta instruction
69 + - vcs-svn: read instructions from deltas
70 + - vcs-svn: read inline data from deltas
71 + - vcs-svn: read the preimage when applying deltas
72 + - vcs-svn: parse svndiff0 window header
73 + - vcs-svn: skeleton of an svn delta parser
74 + - vcs-svn: make buffer_read_binary API more convenient
75 + - vcs-svn: learn to maintain a sliding view of a file
76 + - Makefile: list one vcs-svn/xdiff object or header per line
77 + - Merge branch 'db/svn-fe-code-purge' into svn-fe
78 + - vcs-svn: drop obj_pool
79 + - vcs-svn: drop treap
80 + - vcs-svn: drop string_pool
81 + - vcs-svn: pass paths through to fast-import
82 + - Merge branch 'db/strbufs-for-metadata' into db/svn-fe-code-purge
83 + - Merge branch 'db/length-as-hash' (early part) into db/svn-fe-code-purge
84 + - Merge branch 'db/vcs-svn-incremental' into svn-fe
85 + - vcs-svn: avoid using ls command twice
86 + - vcs-svn: use mark from previous import for parent commit
87 + - vcs-svn: handle filenames with dq correctly
88 + - vcs-svn: quote paths correctly for ls command
89 + - vcs-svn: eliminate repo_tree structure
90 + - vcs-svn: add a comment before each commit
91 + - vcs-svn: save marks for imported commits
92 + - vcs-svn: use higher mark numbers for blobs
93 + - vcs-svn: set up channel to read fast-import cat-blob response
94 + - Merge commit 'v1.7.5' into svn-fe
95
52 -Minor fix-ups to the new feature.
96 +Will merge early in the next cycle.
97
54 -* mh/maint-show-ref-doc (2012-01-13) 2 commits
55 - (merged to 'next' on 2012-01-16 at 8573f09)
56 - + git-show-ref doc: typeset regexp in fixed width font
57 - + git-show-ref: fix escaping in asciidoc source
98 +--------------------------------------------------
99 +[Stalled]
100
59 -* nd/pathspec-recursion-cleanup (2012-01-16) 2 commits
60 - (merged to 'next' on 2012-01-16 at 0189264)
61 - + diff-index: enable recursive pathspec matching in unpack_trees
62 - + Document limited recursion pathspec matching with wildcards
101 +* jc/advise-push-default (2011-12-18) 1 commit
102 + - push: hint to use push.default=upstream when appropriate
103
64 -* tr/maint-word-diff-incomplete-line (2012-01-12) 1 commit
65 - (merged to 'next' on 2012-01-16 at 58ddaaf)
66 - + word-diff: ignore '\ No newline at eof' marker
104 +Peff had a good suggestion outlining an updated code structure so that
105 +somebody new can try to dip his or her toes in the development. Any
106 +takers?
107 +
108 +Waiting for a reroll.
109 +
110 +* mh/ref-api-rest (2011-12-12) 35 commits
111 + . repack_without_ref(): call clear_packed_ref_cache()
112 + . read_packed_refs(): keep track of the directory being worked in
113 + . is_refname_available(): query only possibly-conflicting references
114 + . refs: read loose references lazily
115 + . read_loose_refs(): take a (ref_entry *) as argument
116 + . struct ref_dir: store a reference to the enclosing ref_cache
117 + . sort_ref_dir(): take (ref_entry *) instead of (ref_dir *)
118 + . do_for_each_ref_in_dir*(): take (ref_entry *) instead of (ref_dir *)
119 + . add_entry(): take (ref_entry *) instead of (ref_dir *)
120 + . search_ref_dir(): take (ref_entry *) instead of (ref_dir *)
121 + . find_containing_direntry(): use (ref_entry *) instead of (ref_dir *)
122 + . add_ref(): take (ref_entry *) instead of (ref_dir *)
123 + . read_packed_refs(): take (ref_entry *) instead of (ref_dir *)
124 + . find_ref(): take (ref_entry *) instead of (ref_dir *)
125 + . is_refname_available(): take (ref_entry *) instead of (ref_dir *)
126 + . get_loose_refs(): return (ref_entry *) instead of (ref_dir *)
127 + . get_packed_refs(): return (ref_entry *) instead of (ref_dir *)
128 + . refs: wrap top-level ref_dirs in ref_entries
129 + . get_ref_dir(): keep track of the current ref_dir
130 + . do_for_each_ref(): only iterate over the subtree that was requested
131 + . refs: sort ref_dirs lazily
132 + . sort_ref_dir(): do not sort if already sorted
133 + . refs: store references hierarchically
134 + . refs.c: rename ref_array -> ref_dir
135 + . struct ref_entry: nest the value part in a union
136 + . check_refname_component(): return 0 for zero-length components
137 + . free_ref_entry(): new function
138 + . refs.c: reorder definitions more logically
139 + . is_refname_available(): reimplement using do_for_each_ref_in_array()
140 + . names_conflict(): simplify implementation
141 + . names_conflict(): new function, extracted from is_refname_available()
142 + . repack_without_ref(): reimplement using do_for_each_ref_in_array()
143 + . do_for_each_ref_in_arrays(): new function
144 + . do_for_each_ref_in_array(): new function
145 + . do_for_each_ref(): correctly terminate while processesing extra_refs
146 +
147 +I had to remove this temporarily out of 'pu' as I didn't want to deal with
148 +merge conflicts with the mh/ref-clone-without-extra-refs topic that
149 +removes yet another caller of add_extra_ref() that this series touches.
150 +
151 +Will defer till the next cycle.
152 +
153 +* ss/git-svn-prompt-sans-terminal (2012-01-04) 3 commits
154 + - fixup! 15eaaf4
155 + - git-svn, perl/Git.pm: extend Git::prompt helper for querying users
156 + (merged to 'next' on 2012-01-05 at 954f125)
157 + + perl/Git.pm: "prompt" helper to honor GIT_ASKPASS and SSH_ASKPASS
158 +
159 +The bottom one has been replaced with a rewrite based on comments from
160 +Ævar. The second one needs more work, both in perl/Git.pm and prompt.c, to
161 +give precedence to tty over SSH_ASKPASS when terminal is available.
162 +
163 +Will defer till the next cycle.
164 +
165 +* nd/commit-ignore-i-t-a (2012-01-16) 2 commits
166 + - commit, write-tree: allow to ignore CE_INTENT_TO_ADD while writing trees
167 + - cache-tree: update API to take abitrary flags
168 +
169 +May want to consider this as fixing an earlier UI mistake, and not as a
170 +feature that devides the userbase.
171 +
172 +Will defer till the next cycle.
173
174 --------------------------------------------------
69 -[New Topics]
175 +[Cooking]
176 +
177 +* jc/split-blob (2012-01-24) 6 commits
178 + - chunked-object: streaming checkout
179 + - chunked-object: fallback checkout codepaths
180 + - bulk-checkin: support chunked-object encoding
181 + - bulk-checkin: allow the same data to be multiply hashed
182 + - new representation types in the packstream
183 + - varint-in-pack: refactor varint encoding/decoding
184 +
185 +Not ready.
186 +
187 +I finished the streaming checkout codepath, but as explained in 127b177
188 +(bulk-checkin: support chunked-object encoding, 2011-11-30), these are
189 +still early steps of a long and painful journey. At least pack-objects and
190 +fsck need to learn the new encoding for the series to be usable locally,
191 +and then index-pack/unpack-objects needs to learn it to be used remotely.
192 +
193 +Given that I heard a lot of noise that people want large files, and that I
194 +was asked by somebody at GitTogether'11 privately for an advice on how to
195 +pay developers (not me) to help adding necessary support, I am somewhat
196 +dissapointed that the original patch series that was sent almost two
197 +months ago still remains here without much comments and updates from the
198 +developer community. I even made the interface to the logic that decides
199 +where to split chunks easily replaceable, and I deliberately made the
200 +logic in the original patch extremely stupid to entice others, especially
201 +the "bup" fanboys, to come up with a better logic, thinking that giving
202 +people an easy target to shoot for, they may be encouraged to help
203 +out. The plan is not working :-(.
204
205 * jl/test-pause (2012-01-17) 1 commit
206 (merged to 'next' on 2012-01-20 at ee56335)
@@ -93,7 +227,9 @@ Will merge early in the next cycle.
227
228 Will merge early in the next cycle and deal with any fallout in 'master'.
229
96 -* ar/i18n-no-gettext (2012-01-23) 3 commits
230 +* ar/i18n-no-gettext (2012-01-27) 4 commits
231 + (merged to 'next' on 2012-01-27 at 0ecf258)
232 + + i18n: Do not force USE_GETTEXT_SCHEME=fallthrough on NO_GETTEXT
233 (merged to 'next' on 2012-01-23 at 694a94e)
234 + i18n: Make NO_GETTEXT imply fallthrough scheme in shell l10n
235 + add a Makefile switch to avoid gettext translation in shell scripts
@@ -128,14 +264,16 @@ Will merge early in the next cycle.
264
265 Will merge early in the next cycle.
266
131 -* va/git-p4-branch (2012-01-20) 3 commits
132 - - git-p4: Add test case for complex branch import
133 - - git-p4: Search for parent commit on branch creation
134 - - git-p4: Add checkpoint() task
267 +* va/git-p4-branch (2012-01-26) 4 commits
268 + (merged to 'next' on 2012-01-26 at e67c52a)
269 + + t9801: do not overuse test_must_fail
270 + + git-p4: Change p4 command invocation
271 + + git-p4: Add test case for complex branch import
272 + + git-p4: Search for parent commit on branch creation
273 (this branch uses ld/git-p4-branches-and-labels.)
274
137 -A handful of review comments seen.
138 -Expecting a re-roll.
275 +Rerolled and Acked.
276 +Will merge early in the next cycle.
277
278 * sp/smart-http-failure-to-push (2012-01-20) 1 commit
279 (merged to 'next' on 2012-01-20 at a892434)
@@ -158,99 +296,6 @@ Will merge early in the next cycle.
296 Looked reasonable.
297 Will merge early in the next cycle.
298
161 ---------------------------------------------------
162 -[Stalled]
163 -
164 -* jc/advise-push-default (2011-12-18) 1 commit
165 - - push: hint to use push.default=upstream when appropriate
166 -
167 -Peff had a good suggestion outlining an updated code structure so that
168 -somebody new can try to dip his or her toes in the development. Any
169 -takers?
170 -
171 -Waiting for a reroll.
172 -
173 -* jc/split-blob (2011-12-01) 6 commits
174 - . WIP (streaming chunked)
175 - - chunked-object: fallback checkout codepaths
176 - - bulk-checkin: support chunked-object encoding
177 - - bulk-checkin: allow the same data to be multiply hashed
178 - - new representation types in the packstream
179 - - varint-in-pack: refactor varint encoding/decoding
180 -
181 -Not ready.
182 -
183 -At least pack-objects and fsck need to learn the new encoding for the
184 -series to be usable locally, and then index-pack/unpack-objects needs to
185 -learn it to be used remotely.
186 -
187 -* mh/ref-api-rest (2011-12-12) 35 commits
188 - . repack_without_ref(): call clear_packed_ref_cache()
189 - . read_packed_refs(): keep track of the directory being worked in
190 - . is_refname_available(): query only possibly-conflicting references
191 - . refs: read loose references lazily
192 - . read_loose_refs(): take a (ref_entry *) as argument
193 - . struct ref_dir: store a reference to the enclosing ref_cache
194 - . sort_ref_dir(): take (ref_entry *) instead of (ref_dir *)
195 - . do_for_each_ref_in_dir*(): take (ref_entry *) instead of (ref_dir *)
196 - . add_entry(): take (ref_entry *) instead of (ref_dir *)
197 - . search_ref_dir(): take (ref_entry *) instead of (ref_dir *)
198 - . find_containing_direntry(): use (ref_entry *) instead of (ref_dir *)
199 - . add_ref(): take (ref_entry *) instead of (ref_dir *)
200 - . read_packed_refs(): take (ref_entry *) instead of (ref_dir *)
201 - . find_ref(): take (ref_entry *) instead of (ref_dir *)
202 - . is_refname_available(): take (ref_entry *) instead of (ref_dir *)
203 - . get_loose_refs(): return (ref_entry *) instead of (ref_dir *)
204 - . get_packed_refs(): return (ref_entry *) instead of (ref_dir *)
205 - . refs: wrap top-level ref_dirs in ref_entries
206 - . get_ref_dir(): keep track of the current ref_dir
207 - . do_for_each_ref(): only iterate over the subtree that was requested
208 - . refs: sort ref_dirs lazily
209 - . sort_ref_dir(): do not sort if already sorted
210 - . refs: store references hierarchically
211 - . refs.c: rename ref_array -> ref_dir
212 - . struct ref_entry: nest the value part in a union
213 - . check_refname_component(): return 0 for zero-length components
214 - . free_ref_entry(): new function
215 - . refs.c: reorder definitions more logically
216 - . is_refname_available(): reimplement using do_for_each_ref_in_array()
217 - . names_conflict(): simplify implementation
218 - . names_conflict(): new function, extracted from is_refname_available()
219 - . repack_without_ref(): reimplement using do_for_each_ref_in_array()
220 - . do_for_each_ref_in_arrays(): new function
221 - . do_for_each_ref_in_array(): new function
222 - . do_for_each_ref(): correctly terminate while processesing extra_refs
223 -
224 -I had to remove this temporarily out of 'pu' as I didn't want to deal with
225 -merge conflicts with the mh/ref-clone-without-extra-refs topic that
226 -removes yet another caller of add_extra_ref() that this series touches.
227 -
228 -Will defer till the next cycle.
229 -
230 -* ss/git-svn-prompt-sans-terminal (2012-01-04) 3 commits
231 - - fixup! 15eaaf4
232 - - git-svn, perl/Git.pm: extend Git::prompt helper for querying users
233 - (merged to 'next' on 2012-01-05 at 954f125)
234 - + perl/Git.pm: "prompt" helper to honor GIT_ASKPASS and SSH_ASKPASS
235 -
236 -The bottom one has been replaced with a rewrite based on comments from
237 -Ævar. The second one needs more work, both in perl/Git.pm and prompt.c, to
238 -give precedence to tty over SSH_ASKPASS when terminal is available.
239 -
240 -Will defer till the next cycle.
241 -
242 -* nd/commit-ignore-i-t-a (2012-01-16) 2 commits
243 - - commit, write-tree: allow to ignore CE_INTENT_TO_ADD while writing trees
244 - - cache-tree: update API to take abitrary flags
245 -
246 -May want to consider this as fixing an earlier UI mistake, and not as a
247 -feature that devides the userbase.
248 -
249 -Will defer till the next cycle.
250 -
251 ---------------------------------------------------
252 -[Cooking]
253 -
299 * jc/pull-signed-tag (2012-01-23) 1 commit
300 (merged to 'next' on 2012-01-23 at 4257553)
301 + merge: use editor by default in interactive sessions
@@ -333,7 +378,9 @@ Will merge early in the next cycle and deal with any fallout in 'master'.
378 Looked reasonable.
379 Will merge early in the next cycle.
380
336 -* nd/clone-detached (2012-01-23) 11 commits
381 +* nd/clone-detached (2012-01-24) 12 commits
382 + (merged to 'next' on 2012-01-26 at 7b0cc8a)
383 + + clone: fix up delay cloning conditions
384 (merged to 'next' on 2012-01-23 at bee31c6)
385 + push: do not let configured foreign-vcs permanently clobbered
386 (merged to 'next' on 2012-01-23 at 9cab64e)
@@ -349,7 +396,7 @@ Will merge early in the next cycle.
396 + t5601: add missing && cascade
397 (this branch uses nd/clone-single-branch.)
398
352 -Applied a band-aid to a corner-case regression.
399 +Applied two band-aids to a corner-case regression.
400 Will merge early in the next cycle and deal with any fallout in 'master'.
401
402 * nd/clone-single-branch (2012-01-08) 1 commit