What's cooking (2015/05 #01)

Junio C Hamano committed May 4, 2015 at 15:23 UTC e21f8040382dcaf20526f7a0c5391b0ad38dab0a
1 file changed +178 -92
whats-cooking.txt
+178 -92
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Apr 2015, #05; Thu, 30)
3 +Subject: What's cooking in git.git (May 2015, #01; Mon, 4)
4 X-master-at: 3d4a3ffe64162b45ae7c991fc60623ecb4678cfd
5 X-next-at: 7a0482398323b9bd8dbb64ab9010e63a95b81bce
6
7 -What's cooking in git.git (Apr 2015, #05; Thu, 30)
7 +What's cooking in git.git (May 2015, #01; Mon, 4)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -20,91 +20,102 @@ of the repositories listed at
20
21 http://git-blame.blogspot.com/p/git-public-repositories.html
22
23 ---------------------------------------------------
24 -[Graduated to "master"]
25 -
26 -* mg/show-notes-doc (2015-04-17) 1 commit
27 - (merged to 'next' on 2015-04-20 at 2e93969)
28 - + rev-list-options.txt: complete sentence about notes matching
29 -
30 - Documentation fix.
31 -
32 -
33 -* mg/status-v-v (2015-04-23) 1 commit
34 - (merged to 'next' on 2015-04-25 at cbcaca4)
35 - + status: document the -v/--verbose option
36 -
37 - Documentation fix.
38 -
39 -
40 -* nd/versioncmp-prereleases (2015-04-23) 1 commit
41 - (merged to 'next' on 2015-04-25 at f824d7f)
42 - + git tag: mention versionsort.prereleaseSuffix in manpage
43 -
44 - Documentation fix.
45 -
23 --------------------------------------------------
24 [New Topics]
25
49 -* jk/rebase-quiet-noop (2015-04-28) 1 commit
50 - - rebase: silence "git checkout" for noop rebase
51 -
52 - "git rebase --quiet" was not quite quiet when there is nothing to
53 - do.
26 +* mh/ref-directory-file (2015-05-03) 18 commits
27 + - reflog_expire(): integrate lock_ref_sha1_basic() errors into ours
28 + - ref_transaction_commit(): delete extra "the" from error message
29 + - ref_transaction_commit(): provide better error messages
30 + - rename_ref(): integrate lock_ref_sha1_basic() errors into ours
31 + - lock_ref_sha1_basic(): improve diagnostics for D/F conflicts
32 + - lock_ref_sha1_basic(): report errors via a "struct strbuf *err"
33 + - verify_refname_available(): report errors via a "struct strbuf *err"
34 + - verify_refname_available(): rename function
35 + - refs: check for D/F conflicts among refs processed in a transaction
36 + - ref_transaction_commit(): use a string_list for detecting duplicates
37 + - is_refname_available(): use dirname in first loop
38 + - struct nonmatching_ref_data: store a refname instead of a ref_entry
39 + - report_refname_conflict(): inline function
40 + - entry_matches(): inline function
41 + - is_refname_available(): convert local variable "dirname" to strbuf
42 + - is_refname_available(): avoid shadowing "dir" variable
43 + - is_refname_available(): explain the reason for an early exit
44 + - t1404: new tests of D/F conflicts within ref transactions
45 + (this branch uses mh/ref-lock-avoid-running-out-of-fds.)
46 +
47 + Somehow this does not seem to pass its own test.
48 +
49 +
50 +* nd/dwim-wildcards-as-pathspecs (2015-05-03) 1 commit
51 + - pathspec: avoid the need of "--" when wildcard is used
52 +
53 + A heuristic to help the "git <cmd> <revs> <pathspec>" command line
54 + convention to catch mistyped paths is to make sure all the non-rev
55 + parameters in the later part of the command line are names of the
56 + files in the working tree, but that means "git grep $str -- \*.c"
57 + must always be disambiguated with "--", because nobody sane will
58 + create a file whose name literally is asterisk-dot-see. Loosen the
59 + heuristic to declare that with a wildcard string the user likely
60 + meant to give us a pathspec.
61
62 Will merge to 'next'.
63
64
58 -* ld/p4-case-fold (2015-04-28) 1 commit
59 - - git-p4: add failing tests for case-folding p4d
65 +* pt/pull-tests (2015-05-03) 7 commits
66 + - t5521: test --dry-run does not make any changes
67 + - t5520: test --rebase failure on unborn branch with index
68 + - t5520: test --rebase with multiple branches
69 + - t5520: test work tree fast-forward when fetch updates head
70 + - t5520: test for failure if index has unresolved entries
71 + - t5520: implement tests for no merge candidates cases
72 + - t5520: test pulling multiple branches into an empty repository
73 +
74 + Add more test coverage to "git pull". This conflicts slightly with
75 + a new test jc/merge topic adds, but resolution is fairly trivial.
76
77 Will merge to 'next'.
78
79
64 -* va/fix-git-p4-tests (2015-04-28) 1 commit
65 - - git-p4: t9814: prevent --chain-lint failure
80 +* sg/complete-decorate-full-not-long (2015-05-03) 1 commit
81 + - completion: fix and update 'git log --decorate=' options
82 +
83 + The completion for "log --decorate=" parameter value was incorrect.
84
85 Will merge to 'next'.
86
87
70 -* jk/filter-branch-use-of-sed-on-incomplete-line (2015-04-29) 1 commit
71 - - filter-branch: avoid passing commit message through sed
72 -
73 - "filter-branch" was broken by some "sed" implementations that
74 - corrupt commit log message that ends with an incomplete line.
75 - Work it around by avoiding to use "sed".
88 +* sg/completion-no-redundant-all-command-list (2015-05-03) 1 commit
89 + - completion: remove redundant __git_compute_all_commands() call
90
91 Will merge to 'next'.
92
93
80 -* ph/rebase-i-redo (2015-04-29) 1 commit
81 - - rebase -i: redo tasks that die during cherry-pick
94 +* jc/hash-object (2015-05-04) 4 commits
95 + - write_sha1_file(): do not use a separate sha1[] array
96 + - t1007: add hash-object --literally tests
97 + - write_sha1_file_prepare: fix buffer overrun with extra-long object type
98 + - git-hash-object.txt: document --literally option
99
83 - "git rebase -i" moved the "current" command from "todo" to "done" a
84 - bit too prematurely, losing a step when a "pick" did not even start.
100 + "hash-object --literally" introduced in v2.2 days was not prepared
101 + to take a really long object type name.
102
103 Will merge to 'next'.
104
105
89 -* ep/do-not-feed-a-pointer-to-array-size (2015-04-30) 2 commits
90 - - SQUASH???
91 - - git-compat-util.h: implement a different ARRAY_SIZE macro for for safely deriving the size of array
106 +* jn/clean-use-error-not-fprintf-on-stderr (2015-05-04) 1 commit
107 + - config: use error() instead of fprintf(stderr, ...)
108
93 - Catch programmer mistake to feed a pointer not an array to
94 - ARRAY_SIZE() macro, by using a couple of GCC extensions.
109 + Some error messages in "git config" were emitted without calling
110 + the usual error() facility.
111
112 + Will merge to 'next'.
113
97 -* tb/blame-resurrect-convert-to-git (2015-04-30) 1 commit
98 - - blame: CRLF in the working tree and LF in the repo
114
100 - Some time ago, "git blame" (incorrectly) lost the convert_to_git()
101 - call when synthesizing a fake "tip" commit that represents the
102 - state in the working tree, which broke folks who record the history
103 - with LF line ending to make their project portabile across
104 - platforms while terminating lines in their working tree files with
105 - CRLF for their platform.
115 +* jc/clone-bundle (2015-04-30) 1 commit
116 + - repack: optionally create a clone.bundle
117
107 - Will merge to 'next'.
118 + Still an early WIP
119
120 --------------------------------------------------
121 [Stalled]
@@ -150,21 +161,6 @@ of the repositories listed at
161 with updated log message ($gmane/268061).
162
163
153 -* jk/at-push-sha1 (2015-03-31) 6 commits
154 - - sha1_name: implement @{push} shorthand
155 - - sha1_name: refactor upstream_mark
156 - - remote.c: provide per-branch pushremote name
157 - - remote.c: hoist branch.*.remote lookup out of remote_get_1
158 - - remote.c: drop "remote" pointer from "struct branch"
159 - - remote.c: drop default_remote_name variable
160 -
161 - Introduce <branch>@{push} short-hand to denote the remote-tracking
162 - branch that tracks the branch at the remote the <branch> would be
163 - pushed to.
164 -
165 - Will be rerolled ($gmane/268040).
166 -
167 -
164 * pt/xdg-config-path (2015-04-12) 7 commits
165 - path.c: remove home_config_paths()
166 - git-config: replace use of home_config_paths()
@@ -394,6 +390,90 @@ of the repositories listed at
390 --------------------------------------------------
391 [Cooking]
392
393 +* jk/at-push-sha1 (2015-05-03) 12 commits
394 + - for-each-ref: accept "%(push)" format
395 + - for-each-ref: use skip_prefix instead of starts_with
396 + - sha1_name: implement @{push} shorthand
397 + - sha1_name: refactor interpret_upstream_mark
398 + - sha1_name: refactor upstream_mark
399 + - remote.c: add branch_get_push
400 + - remote.c: report specific errors from branch_get_upstream
401 + - remote.c: introduce branch_get_upstream helper
402 + - remote.c: provide per-branch pushremote name
403 + - remote.c: hoist branch.*.remote lookup out of remote_get_1
404 + - remote.c: drop "remote" pointer from "struct branch"
405 + - remote.c: drop default_remote_name variable
406 +
407 + Introduce <branch>@{push} short-hand to denote the remote-tracking
408 + branch that tracks the branch at the remote the <branch> would be
409 + pushed to.
410 +
411 + Rerolled (not reviewed yet).
412 +
413 +
414 +* jk/rebase-quiet-noop (2015-04-28) 1 commit
415 + - rebase: silence "git checkout" for noop rebase
416 +
417 + "git rebase --quiet" was not quite quiet when there is nothing to
418 + do.
419 +
420 + Will merge to 'next'.
421 +
422 +
423 +* ld/p4-case-fold (2015-04-28) 1 commit
424 + - git-p4: add failing tests for case-folding p4d
425 +
426 + Will merge to 'next'.
427 +
428 +
429 +* va/fix-git-p4-tests (2015-04-28) 1 commit
430 + - git-p4: t9814: prevent --chain-lint failure
431 +
432 + Will merge to 'next'.
433 +
434 +
435 +* jk/filter-branch-use-of-sed-on-incomplete-line (2015-04-29) 1 commit
436 + - filter-branch: avoid passing commit message through sed
437 +
438 + "filter-branch" was broken by some "sed" implementations that
439 + corrupt commit log message that ends with an incomplete line.
440 + Work it around by avoiding to use "sed".
441 +
442 + Will merge to 'next'.
443 +
444 +
445 +* ph/rebase-i-redo (2015-04-29) 1 commit
446 + - rebase -i: redo tasks that die during cherry-pick
447 +
448 + "git rebase -i" moved the "current" command from "todo" to "done" a
449 + bit too prematurely, losing a step when a "pick" did not even start.
450 +
451 + Will merge to 'next'.
452 +
453 +
454 +* ep/do-not-feed-a-pointer-to-array-size (2015-04-30) 2 commits
455 + - SQUASH???
456 + - git-compat-util.h: implement a different ARRAY_SIZE macro for for safely deriving the size of array
457 +
458 + Catch programmer mistake to feed a pointer not an array to
459 + ARRAY_SIZE() macro, by using a couple of GCC extensions.
460 +
461 + With the fix-up, will merge to 'next'.
462 +
463 +
464 +* tb/blame-resurrect-convert-to-git (2015-05-03) 1 commit
465 + - blame: CRLF in the working tree and LF in the repo
466 +
467 + Some time ago, "git blame" (incorrectly) lost the convert_to_git()
468 + call when synthesizing a fake "tip" commit that represents the
469 + state in the working tree, which broke folks who record the history
470 + with LF line ending to make their project portabile across
471 + platforms while terminating lines in their working tree files with
472 + CRLF for their platform.
473 +
474 + Will merge to 'next'.
475 +
476 +
477 * jc/epochtime-wo-tz (2015-04-15) 2 commits
478 (merged to 'next' on 2015-04-21 at b926f72)
479 + parse_date_basic(): let the system handle DST conversion
@@ -618,6 +698,8 @@ of the repositories listed at
698 implementation of "git pull" script; the old style syntax can now
699 be deprecated.
700
701 + Will merge to 'next'.
702 +
703
704 * jc/merge-drop-old-syntax (2015-04-29) 1 commit
705 - merge: drop 'git merge <message> HEAD <commit>' syntax
@@ -626,6 +708,8 @@ of the repositories listed at
708 Stop supporting "git merge <messsage> HEAD <commit>" syntax that
709 has been deprecated since October 2007.
710
711 + Will merge to 'next'.
712 +
713
714 * jk/test-chain-lint (2015-04-28) 2 commits
715 - test-lib: turn on GIT_TEST_CHAIN_LINT by default
@@ -643,7 +727,7 @@ of the repositories listed at
727 - refs.c: remove lock_fd from struct ref_lock
728 - t7004: rename ULIMIT test prerequisite to ULIMIT_STACK_SIZE
729 - update-ref: test handling large transactions properly
646 - (this branch is tangled with sb/ref-lock-avoid-running-out-of-fds.)
730 + (this branch is used by mh/ref-directory-file.)
731
732 "git update-ref --stdin" was converted to be "transactional" some
733 time ago, but the ref transaction machinery was not prepared to
@@ -652,8 +736,10 @@ of the repositories listed at
736 limit. Fix the ref_transaction_commit() code not to keep the file
737 descriptors open unnecessarily.
738
655 - We would probably want to apply the fix to older codebase, but this
656 - fix is unfortunately done to apply only on v2.4.x track.
739 + We would want to apply the fix to older codebase, but this fix is
740 + unfortunately done to apply only on v2.4.x track.
741 +
742 + Expecting a rebase to older codebase.
743
744
745 * bc/connect-plink (2015-04-28) 3 commits
@@ -685,13 +771,11 @@ of the repositories listed at
771 Will merge to 'next'.
772
773
688 -* ah/usage-strings (2015-04-02) 2 commits
774 +* ah/usage-strings (2015-05-03) 2 commits
775 - branch: fix funny-sounding error message
690 - - standardize usage strings that were missed the first time
691 -
692 - A few usage string updates.
776 + - blame, log: format usage strings similarly to those in documentation
777
694 - Will merge to 'next'.
778 + A few usage string updates. The tip one still needs work.
779
780
781 * jk/reading-packed-refs (2015-04-16) 9 commits
@@ -713,18 +797,21 @@ of the repositories listed at
797 Will merge to 'master' in the second batch of post v2.4 cycle.
798
799
716 -* kn/cat-file-literally (2015-04-15) 5 commits
717 - - SQUASH???
718 - - t1006: add tests for git cat-file --literally
719 - - cat-file: add documentation for '--literally' option.
720 - - cat-file: teach cat-file a '--literally' option
721 - - sha1_file.c: support reading from a loose object of unknown type
800 +* kn/cat-file-literally (2015-05-04) 5 commits
801 + - fixup! sha1_file: support reading from a loose object of unknown type
802 + - t1006: add tests for git cat-file --allow-unknown-type
803 + - cat-file: teach cat-file a '--allow-unknown-type' option
804 + - cat-file: make the options mutually exclusive
805 + - sha1_file: support reading from a loose object of unknown type
806
723 - Add the "--literally" option to "cat-file" to allow inspecting
724 - loose objects of an experimental or a broken type.
807 + Add the "--allow-unknown-type" option to "cat-file" to allow
808 + inspecting loose objects of an experimental or a broken type.
809
726 - This is v8 $gmane/267213; v9 was posted but it will still needs reroll.
727 - Waiting for reroll.
810 + This is v10 $gmane/267960; I think with fixup! squashed in the
811 + series is in a good shape (the test may fail without Eric's fix
812 + to "hash-object --literally" elsewhere, though).
813 +
814 + Will merge to 'next'.
815
816
817 * ld/p4-filetype-detection (2015-04-04) 3 commits
@@ -964,7 +1051,6 @@ of the repositories listed at
1051 - refs.c: remove lock_fd from struct ref_lock
1052 - t7004: rename ULIMIT test prerequisite to ULIMIT_STACK_SIZE
1053 - update-ref: test handling large transactions properly
967 - (this branch is tangled with mh/ref-lock-avoid-running-out-of-fds.)
1054
1055
1056 * jc/merge-deprecate-old-syntax (2015-03-26) 1 commit