What's cooking (2013/05 #04)

Junio C Hamano committed May 15, 2013 at 16:37 UTC 764fdd9904229610524c6ba9a55b4e0ba620469b
1 file changed +274 -104
whats-cooking.txt
+274 -104
@@ -1,119 +1,204 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (May 2013, #03; Thu, 9)
4 -X-master-at: b387c77b12953d543bf5efc3825b5be26d753f9c
5 -X-next-at: 747d353d98dc660fb24ce70ad72ad9d9553c40ae
3 +Subject: What's cooking in git.git (May 2013, #04; Wed, 15)
4 +X-master-at: 0c2b1cf812be6e7e35bed0844b37e412cd232b6b
5 +X-next-at: 2fb82f5641542fc2b7c7ba84210b67d8255297c8
6
7 -What's cooking in git.git (May 2013, #03; Thu, 9)
7 +What's cooking in git.git (May 2013, #04; Wed, 15)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
11 '-' are only in 'pu' (proposed updates) while commits prefixed with
12 '+' are in 'next'.
13
14 -I'll tag 1.8.3-rc2 by the end of the week, and hopefully we can have
15 -a solid final release late next week. One embarrassing regression
16 -was found and had to be fixed today.
14 +We are past -rc2 and haven't seen any regression reported since the
15 +feature freeze started, which may be a good sign (the coming release
16 +is perfect) or a bad sign (nobody is testing). We'll see soon when
17 +we tag the 1.8.3 final sometime next week. We may see subsystem
18 +(git-svn? gitk? git-gui?) and l10n updates before that happens.
19
20 You can find the changes described here in the integration branches
21 of the repositories listed at
22
23 http://git-blame.blogspot.com/p/git-public-repositories.html
24
23 ---------------------------------------------------
24 -[Graduated to "master"]
25 -
26 -* fc/sha1-name-at-home (2013-05-07) 14 commits
27 - - sha1_name: compare variable with constant, not constant with variable
28 - - Add new @ shortcut for HEAD
29 - - sha1_name: refactor reinterpret()
30 - - sha1_name: check @{-N} errors sooner
31 - - sha1_name: reorganize get_sha1_basic()
32 - - sha1_name: don't waste cycles in the @-parsing loop
33 - - sha1_name: remove unnecessary braces
34 - - sha1_name: remove no-op
35 - - tests: at-combinations: @{N} versus HEAD@{N}
36 - - tests: at-combinations: increase coverage
37 - - tests: at-combinations: improve nonsense()
38 - - SQUASH??? style fixups
39 - - tests: at-combinations: check ref names directly
40 - - tests: at-combinations: simplify setup
41 -
25 --------------------------------------------------
26 [New Topics]
27
45 -* jh/shorten-refname (2013-05-07) 4 commits
46 - - t1514: refname shortening is done after dereferencing symbolic refs
47 - - shorten_unambiguous_ref(): Fix shortening refs/remotes/origin/HEAD to origin
48 - - t1514: Demonstrate failure to correctly shorten "refs/remotes/origin/HEAD"
49 - - t1514: Add tests of shortening refnames in strict/loose mode
50 -
51 - When remotes/origin/HEAD is not a symbolic ref, "rev-parse
52 - --abbrev-ref remotes/origin/HEAD" ought to show "origin", not
53 - "origin/HEAD", which is fixed with this series (if it is a symbolic
54 - ref that points at remotes/origin/something, then it should show
55 - "origin/something" and it already does).
56 -
28 +* dw/asciidoc-sources-are-dot-txt-files (2013-05-10) 1 commit
29 + - CodingGuidelines: Documentation/*.txt are the sources
30 +
31 +
32 +* fc/doc-style (2013-05-09) 2 commits
33 + - SQUASH??? more consistently update docs
34 + - documentation: trivial style cleanups
35 +
36 +
37 +* da/darwin (2013-05-15) 3 commits
38 + - imap-send: eliminate HMAC deprecation warnings on Mac OS X
39 + - cache.h: eliminate SHA-1 deprecation warnings on Mac OS X
40 + - Makefile: fix default regex settings on Darwin
41 +
42 + Waiting for polishing discussion to finish.
43 +
44 +
45 +* fc/macos-x-clipped-write (2013-05-10) 2 commits
46 + - SQUASH???
47 + - compate/clipped-write.c: large write(2) fails on Mac OS X/XNU
48 +
49 + The tip needs to be squashed, as it was reported to have tested OK.
50 +
51 +
52 +* fc/remote-hg (2013-05-15) 39 commits
53 + - remote-hg: remove files before modifications
54 + - remote-hg: improve lightweight tag author
55 + - remote-hg: use remote 'default' not local one
56 + - remote-hg: improve branch listing
57 + - remote-hg: simplify branch_tip()
58 + - remote-hg: check diverged bookmarks
59 + - remote-hg: pass around revision refs
60 + - remote-hg: implement custom checkheads()
61 + - remote-hg: implement custom push()
62 + - remote-hg: only update necessary revisions
63 + - remote-hg: force remote bookmark push selectively
64 + - remote-hg: reorganize bookmark handling
65 + - remote-hg: add test for failed double push
66 + - remote-hg: add test for big push
67 + - remote-hg: add test for new bookmark special
68 + - remote-hg: add test for bookmark diverge
69 + - remote-hg: add test for diverged push
70 + - remote-hg: add test to push new bookmark
71 + - remote-hg: add remote tests
72 + - remote-hg: add check_bookmark() test helper
73 + - remote-bzr: simplify test checks
74 + - remote-hg: always point HEAD to master
75 + - remote-hg: improve progress calculation
76 + - remote-hg: trivial cleanups
77 + - remote-hg: ensure remote rebasing works
78 + - remote-hg: upgrade version 1 marks
79 + - remote-hg: switch from revisions to SHA-1 noteids
80 + - remote-hg: add version checks to the marks
81 + - remote-hg: improve node traversing
82 + - remote-hg: shuffle some code
83 + - remote-hg: use a shared repository store
84 + - remote-hg: load all extensions
85 + - remote-hg: test: simplify previous branch checkout
86 + - remote-helpers: test: simplify remote URLs
87 + - remote-helpers: tests: general improvements
88 + - remote-helpers: test: cleanup style
89 + - remote-helpers: test: cleanup white-spaces
90 + - remote-hg: trivial reorganization
91 + - remote-hg: test: be a little more quiet
92 +
93 + Probably will be one of the early topics to graduate post 1.8.3.
94 +
95 +
96 +* hv/config-from-blob (2013-05-12) 5 commits
97 + - do not die when error in config parsing of buf occurs
98 + - teach config --blob option to parse config from database
99 + - config: make parsing stack struct independent from actual data source
100 + - config: drop cf validity check in get_next_char()
101 + - config: factor out config file stack management
102 +
103 +
104 +* jc/t5551-posix-sed-bre (2013-05-12) 1 commit
105 + - t5551: do not use unportable sed '\+'
106 +
107 + Not a regression fix and not urgent.
108 +
109 +
110 +* jk/fetch-always-update-tracking (2013-05-12) 4 commits
111 + - fetch: opportunistically update tracking refs
112 + - refactor "ref->merge" flag
113 + - fetch/pull doc: untangle meaning of bare <ref>
114 + - t5510: start tracking-ref tests from a known state
115 +
116 + "git fetch origin master" unlike "git fetch origin" or "git fetch"
117 + does not update "refs/remotes/origin/master" and it was an early
118 + design decision to keep the update of remote tracking branches
119 + predictable, but in practice it turns out that people find it more
120 + convenient to opportunisticly update them whenever we have a
121 + chance, and we have been updating them when we run "git push" which
122 + already breaks the original "predictability" anyway.
123 +
124 +
125 +* nd/clone-connectivity-shortcut (2013-05-11) 4 commits
126 + - clone: open a shortcut for connectivity check
127 + - index-pack: remove dead code (it should never happen)
128 + - fetch-pack: prepare updated shallow file before fetching the pack
129 + - clone: let the user know when check_everything_connected is run
130 +
131 +
132 +* rr/rebase-autostash (2013-05-12) 7 commits
133 + - rebase: implement --[no-]autostash and rebase.autostash
134 + - rebase --merge: return control to caller, for housekeeping
135 + - rebase -i: return control to caller, for housekeeping
136 + - am: return control to caller, for housekeeping
137 + - rebase: prepare to do generic housekeeping
138 + - rebase -i: don't error out if $state_dir already exists
139 + - am: tighten a conditional that checks for $dotest
140 +
141 +
142 +* kb/ancestry-path-threedots (2013-05-13) 1 commit
143 + - t6019: demonstrate --ancestry-path A...B breakage
144 + (this branch is used by kb/full-history-compute-treesame-carefully-2.)
145 +
146 +
147 +* kb/full-history-compute-treesame-carefully-2 (2013-05-13) 11 commits
148 + - revision.c: treat A...B merge bases as if manually specified
149 + - revision.c: discount side branches when computing TREESAME
150 + - simplify-merges: drop merge from irrelevant side branch
151 + - simplify-merges: never remove all TREESAME parents
152 + - t6012: update test for tweaked full-history traversal
153 + - revision.c: Make --full-history consider more merges
154 + - rev-list-options.txt: correct TREESAME for P
155 + - t6111: allow checking the parents as well
156 + - t6111: new TREESAME test set
157 + - t6019: test file dropped in -s ours merge
158 + - decorate.c: compact table when growing
159 + (this branch uses kb/ancestry-path-threedots.)
160
58 -* nd/clone-local-with-colon (2013-05-07) 1 commit
59 - - clone: allow cloning local paths with colons in them
161 + Major update to a very core part of the system to improve culling
162 + of irrelevant parents while traversing a mergy history.
163
61 - "git clone foo/bar:baz" cannot be a request to clone from a remote
62 - over git-over-ssh specified in the scp style. Detect this case and
63 - clone from a local repository at "foo/bar:baz".
164 + Will not be a 1.8.3 material, but is an important topic.
165
166
66 -* nd/warn-ambiguous-object-name (2013-05-07) 1 commit
67 - - get_sha1: improve ambiguity warning regarding SHA-1 and ref names
167 +* jc/strbuf-branchname-fix (2013-05-15) 1 commit
168 + - strbuf_branchname(): do not double-expand @{-1}~22
169
69 - "git cmd <name>", when <name> happens to be a 40-hex string,
70 - directly uses the 40-hex string as an object name, even if a ref
71 - "refs/<some hierarchy>/<name>" exists. This disambiguation order
72 - is unlikely to change, but we should warn about the ambiguity just
73 - like we warn when more than one refs/ hierachies share the same
74 - name.
170 + "git merge @{-1}~22" was rewritten to "git merge frotz@{1}~22"
171 + incorrectly when your previous branch was "frotz" (it should be
172 + rewritten to "git merge frotz~22" instead).
173
76 - The message needs to be fixed up, as this is not "refname is
77 - ambiguous".
174
175 +* mk/combine-diff-context-horizon-fix (2013-05-15) 1 commit
176 + - combine-diff.c: Fix output when changes are exactly 3 lines apart
177
80 -* fc/zsh-leftover-bits (2013-05-08) 2 commits
81 - - completion: synchronize zsh wrapper
82 - - completion: cleanup zsh wrapper
178 + "git diff -c -p" was not showing a deleted line from a hunk when
179 + another hunk immediately begins where the earlier one ends.
180
181
85 -* rs/empty-archive (2013-05-09) 2 commits
86 - - t5004: resurrect original empty tar archive test
87 - - t5004: avoid using tar for checking emptiness of archive
182 +* mm/color-auto-default (2013-05-15) 2 commits
183 + - make color.ui default to 'auto'
184 + - config: refactor management of color.ui's default value
185
89 - Fixes tests added in 1.8.2 era that are broken on BSDs,
90 - but it is not all that urgent.
186 + Flip the default for color.ui to 'auto', which is what many
187 + tutorials recommend new users to do.
188
189
93 -* vv/help-unknown-ref (2013-05-08) 2 commits
94 - - merge: use help_unknown_ref()
95 - - help: add help_unknown_ref()
190 +* tr/coverage (2013-05-13) 4 commits
191 + - coverage: build coverage-untested-functions by default
192 + - coverage: set DEFAULT_TEST_TARGET to avoid using prove
193 + - coverage: do not delete .gcno files before building
194 + - coverage: split build target into compile and test
195
97 - Detect "git merge foo" that might have meant "git merge origin/foo"
98 - and give an error message that is more specific than "foo is not
99 - something we can merge".
196 + Update the test coverage support that was left to bitrot for some
197 + time.
198
199 --------------------------------------------------
200 [Stalled]
201
104 -* mg/more-textconv (2013-04-23) 7 commits
105 - - git grep: honor textconv by default
106 - - grep: honor --textconv for the case rev:path
107 - - grep: allow to use textconv filters
108 - - t7008: demonstrate behavior of grep with textconv
109 - - cat-file: do not die on --textconv without textconv filters
110 - - show: honor --textconv for blobs
111 - - t4030: demonstrate behavior of show with textconv
112 -
113 - Rerolled. I am not sure if I like "show <blob>" and "grep" that use
114 - textconv by default, though.
115 -
116 -
202 * mh/multimail (2013-04-21) 1 commit
203 - git-multimail: a replacement for post-receive-email
204
@@ -165,6 +250,77 @@ of the repositories listed at
250 --------------------------------------------------
251 [Cooking]
252
253 +* mg/more-textconv (2013-05-10) 7 commits
254 + - grep: honor --textconv for the case rev:path
255 + - grep: allow to use textconv filters
256 + - t7008: demonstrate behavior of grep with textconv
257 + - cat-file: do not die on --textconv without textconv filters
258 + - show: honor --textconv for blobs
259 + - diff_opt: track whether flags have been set explicitly
260 + - t4030: demonstrate behavior of show with textconv
261 +
262 + Looked reasonable, I think. Comments?
263 +
264 +
265 +* jh/shorten-refname (2013-05-07) 4 commits
266 + - t1514: refname shortening is done after dereferencing symbolic refs
267 + - shorten_unambiguous_ref(): Fix shortening refs/remotes/origin/HEAD to origin
268 + - t1514: Demonstrate failure to correctly shorten "refs/remotes/origin/HEAD"
269 + - t1514: Add tests of shortening refnames in strict/loose mode
270 +
271 + When remotes/origin/HEAD is not a symbolic ref, "rev-parse
272 + --abbrev-ref remotes/origin/HEAD" ought to show "origin", not
273 + "origin/HEAD", which is fixed with this series (if it is a symbolic
274 + ref that points at remotes/origin/something, then it should show
275 + "origin/something" and it already does).
276 +
277 + I think this is being rerolled using strbuf_expand().
278 +
279 +
280 +* nd/clone-local-with-colon (2013-05-07) 1 commit
281 + - clone: allow cloning local paths with colons in them
282 +
283 + "git clone foo/bar:baz" cannot be a request to clone from a remote
284 + over git-over-ssh specified in the scp style. Detect this case and
285 + clone from a local repository at "foo/bar:baz".
286 +
287 +
288 +* nd/warn-ambiguous-object-name (2013-05-07) 1 commit
289 + - get_sha1: improve ambiguity warning regarding SHA-1 and ref names
290 +
291 + "git cmd <name>", when <name> happens to be a 40-hex string,
292 + directly uses the 40-hex string as an object name, even if a ref
293 + "refs/<some hierarchy>/<name>" exists. This disambiguation order
294 + is unlikely to change, but we should warn about the ambiguity just
295 + like we warn when more than one refs/ hierachies share the same
296 + name.
297 +
298 + The message needs to be fixed up, as this is not "refname is
299 + ambiguous".
300 +
301 +
302 +* fc/zsh-leftover-bits (2013-05-08) 2 commits
303 + - completion: synchronize zsh wrapper
304 + - completion: cleanup zsh wrapper
305 +
306 +
307 +* rs/empty-archive (2013-05-09) 2 commits
308 + - t5004: resurrect original empty tar archive test
309 + - t5004: avoid using tar for checking emptiness of archive
310 +
311 + Fixes tests added in 1.8.2 era that are broken on BSDs,
312 + but it is not all that urgent.
313 +
314 +
315 +* vv/help-unknown-ref (2013-05-08) 2 commits
316 + - merge: use help_unknown_ref()
317 + - help: add help_unknown_ref()
318 +
319 + Detect "git merge foo" that might have meant "git merge origin/foo"
320 + and give an error message that is more specific than "foo is not
321 + something we can merge".
322 +
323 +
324 * fc/fast-export-persistent-marks (2013-05-07) 3 commits
325 - fast-{import,export}: use get_sha1_hex() to read from marks file
326 - fast-export: don't parse commits while reading marks file
@@ -278,12 +434,24 @@ of the repositories listed at
434 Will cook in 'next'.
435
436
281 -* js/transport-helper-error-reporting-fix (2013-04-28) 3 commits
437 +* js/transport-helper-error-reporting-fix (2013-04-28) 13 commits
438 (merged to 'next' on 2013-04-29 at 8cc4bb8)
439 + git-remote-testgit: build it to run under $SHELL_PATH
440 + git-remote-testgit: further remove some bashisms
441 + git-remote-testgit: avoid process substitution
286 - (this branch uses fc/transport-helper-error-reporting.)
442 + (merged to 'next' on 2013-04-25 at 3358f1a)
443 + + t5801: "VAR=VAL shell_func args" is forbidden
444 + (merged to 'next' on 2013-04-22 at 5ba6467)
445 + + transport-helper: update remote helper namespace
446 + + transport-helper: trivial code shuffle
447 + + transport-helper: warn when refspec is not used
448 + + transport-helper: clarify pushing without refspecs
449 + + transport-helper: update refspec documentation
450 + + transport-helper: clarify *:* refspec
451 + + transport-helper: improve push messages
452 + + transport-helper: mention helper name when it dies
453 + + transport-helper: report errors properly
454 + (this branch is tangled with fc/transport-helper-error-reporting.)
455
456 Finishing touches to fc/transport-helper-error-reporting topic.
457 Will cook in 'next'.
@@ -298,25 +466,6 @@ of the repositories listed at
466 Will cook in 'next'.
467
468
301 -* kb/full-history-compute-treesame-carefully (2013-05-06) 11 commits
302 - - revision.c: treat A...B merge bases as if manually specified
303 - - revision.c: discount side branches when computing TREESAME
304 - - simplify-merges: drop merge from irrelevant side branch
305 - - simplify-merges: never remove all TREESAME parents
306 - - t6012: update test for tweaked full-history traversal
307 - - revision.c: Make --full-history consider more merges
308 - - rev-list-options.txt: correct TREESAME for P
309 - - t6111: allow checking the parents as well
310 - - t6111: new TREESAME test set
311 - - t6019: test file dropped in -s ours merge
312 - - decorate.c: compact table when growing
313 -
314 - Major update to a very core part of the system to improve culling
315 - of irrelevant parents while traversing a mergy history.
316 -
317 - Will not be a 1.8.3 material, but is an important topic.
318 -
319 -
469 * jh/checkout-auto-tracking (2013-04-21) 8 commits
470 (merged to 'next' on 2013-04-22 at 2356700)
471 + glossary: Update and rephrase the definition of a remote-tracking branch
@@ -414,7 +563,10 @@ of the repositories listed at
563 Will cook in 'next'.
564
565
417 -* fc/transport-helper-error-reporting (2013-04-25) 10 commits
566 +* fc/transport-helper-error-reporting (2013-05-10) 12 commits
567 + (merged to 'next' on 2013-05-10 at 2a9af4b)
568 + + transport-helper: fix remote helper namespace regression
569 + + test: remote-helper: add missing and
570 (merged to 'next' on 2013-04-25 at 3358f1a)
571 + t5801: "VAR=VAL shell_func args" is forbidden
572 (merged to 'next' on 2013-04-22 at 5ba6467)
@@ -427,12 +579,12 @@ of the repositories listed at
579 + transport-helper: improve push messages
580 + transport-helper: mention helper name when it dies
581 + transport-helper: report errors properly
430 - (this branch is used by js/transport-helper-error-reporting-fix.)
582 + (this branch is tangled with js/transport-helper-error-reporting-fix.)
583
584 Update transport helper to report errors and maintain ref hierarchy
585 used to keep track of remote helper state better.
586
435 - Will cook in 'next', but may be 1.8.3 material depending on how things go.
587 + Will cook in 'next'.
588
589
590 * jk/submodule-subdirectory-ok (2013-04-24) 3 commits
@@ -564,3 +716,21 @@ of the repositories listed at
716 aka "--no-ignore-removal".
717
718 Will cook in 'next' until Git 2.0.
719 +
720 +--------------------------------------------------
721 +[Discarded]
722 +
723 +* kb/full-history-compute-treesame-carefully (2013-05-06) 11 commits
724 + . revision.c: treat A...B merge bases as if manually specified
725 + . revision.c: discount side branches when computing TREESAME
726 + . simplify-merges: drop merge from irrelevant side branch
727 + . simplify-merges: never remove all TREESAME parents
728 + . t6012: update test for tweaked full-history traversal
729 + . revision.c: Make --full-history consider more merges
730 + . rev-list-options.txt: correct TREESAME for P
731 + . t6111: allow checking the parents as well
732 + . t6111: new TREESAME test set
733 + . t6019: test file dropped in -s ours merge
734 + . decorate.c: compact table when growing
735 +
736 + Superseded by kb/full-history-compute-treesame-carefully-2