What's cooking (2009/10 #02)

todo
Junio C Hamano 2009-10-11 20:16:47 -07:00
parent aa98bd2cb1
commit db171f2100
1 changed files with 161 additions and 148 deletions

View File

@ -1,9 +1,9 @@
To: git@vger.kernel.org
Subject: What's cooking in git.git (Oct 2009, #01; Wed, 07)
X-master-at: 8fd2cfa7accd6b8f877014bf3e4bf8547b8e0d2a
X-next-at: df7ac2094d6cd7280e3254a772061a64edac2d37
Subject: What's cooking in git.git (Oct 2009, #02; Sun, 11)
X-master-at: 78d553b7d7b269bb22ebd8b1198657c37484a3a0
X-next-at: 0ff2e96835a8890f86b5b69d8967d350fe89e9e8

What's cooking in git.git (Oct 2009, #01; Wed, 07)
What's cooking in git.git (Oct 2009, #02; Sun, 11)
--------------------------------------------------

Here are the topics that have been cooking. Commits prefixed with '-' are
@ -51,22 +51,16 @@ backward compatible. Currently planeed changes are:

http://thread.gmane.org/gmane.comp.version-control.git/119731/focus=119751

We are in pre-release feature freeze. 'next' will hold topics meant for
1.6.6 and 1.7.0.

Tonight's tip of 'master' is 1.6.5-rc3.
As a post-release ritual, I've rebuilt 'next' on top of 'master'.

--------------------------------------------------
[New Topics]
[Graduated to "master"]

* ch/am-header (2009-09-25) 2 commits
(merged to 'next' on 2009-09-25 at f86e197)
+ git-am: force egrep to use correct characters set
+ git-am: fixed patch_format detection according to RFC2822

* dk/blame-el (2009-09-29) 1 commit
- git-blame.el: Change how blame information is shown.

* ef/msvc-noreturn (2009-09-30) 2 commits
(merged to 'next' on 2009-10-07 at 66137a0)
+ add NORETURN_PTR for function pointers
@ -76,18 +70,6 @@ jk: This is the latest round and I think should be ready for at least
'next' (maybe even 'master' as it is really about the build and not about
functionality).

* ef/msys-imap (2009-10-03) 7 commits
- mingw: enable OpenSSL
- mingw: wrap SSL_set_(w|r)fd to call _get_osfhandle
- imap-send: provide fall-back random-source
- imap-send: build imap-send on Windows
- imap-send: fix compilation-error on Windows
- imap-send: use run-command API for tunneling
- imap-send: use separate read and write fds

jk: This is from an RFC which has generated some comments. He should be
posting another round soon. 'pu' at best.

* fc/mutt-alias (2009-09-30) 1 commit
(merged to 'next' on 2009-10-07 at df7ac20)
+ send-email: fix mutt regex for grouped aliases
@ -99,69 +81,41 @@ jk: Latest round that addressed comments. Ready for 'next' if not
(merged to 'next' on 2009-09-29 at 43d444a)
+ improve reflog date/number heuristic

* jn/gitweb-patch (2009-09-30) 1 commit
- gitweb: Do not show 'patch' link in 'commit' view for merges
--------------------------------------------------
[New Topics]

jk: After some comments with Jakub, I think the code is right but he
promised a re-roll with more in the commit message.
* jp/maint-send-email-fold (2009-10-08) 1 commit.
- git-send-email.perl: fold multiple entry "Cc:" and multiple single line "RCPT TO:"s

* mr/gitweb-snapshot (2009-09-26) 2 commits
- gitweb: append short hash ids to snapshot files
- gitweb: check given hash before trying to create snapshot
* ks/precompute-completion (2009-10-05) 1 commit.
- Speedup bash completion loading

jk: He posted a v5 of his series. I didn't look at it closely, but Jakub
ack'd it.
* pv/maint-add-p-no-exclude (2009-10-10) 1 commit.
(merged to 'next' on 2009-10-11 at 0ff2e96)
+ git-add--interactive: never skip files included in index

* mr/instaweb-cgid (2009-09-26) 1 commit
(merged to 'next' on 2009-09-29 at 3524604)
+ instaweb: support mod_cgid for apache2

* tf/doc-pt-br (2009-09-23) 1 commit
- Documentation: update pt-BR

The current AsciiDoc may barf on NOME and SINOPSE, as pt_BR language
definition is not widely distributed yet (it just hit the development
tree). Need to revert these headings (or change the length of the section
underlines to match the length of translated names).

* jc/pretty-lf (2009-10-04) 1 commit
- Pretty-format: %[+-]x to tweak inter-item newlines

I am not happy with this one yet. I am contemplating to introduce a new
syntax "%[magic(param)<anything>%]" to generalize expressions of this and
line wrapping features in an extensible way.

* js/log-rewrap (2008-11-10) 3 commits
. Add "%w" to pretty formats, which rewraps the commit message
- Add strbuf_add_wrapped_text() to utf8.[ch]
- print_wrapped_text(): allow hard newlines

... and the first two from this series will be useful to implement an
example magic "wrap", e.g. "%{wrap(i,j,w)%s%+b%]".

* jg/log-format-body-indent (2009-09-19) 1 commit
. git-log --format: Add %B tag with %B(x) option

I think we should redo this on top of the first two patches from
js/log-rewrap series; %B(x) is just a special case %B(x,x,0), no? If a
magic value 0 (or negative) given to wrap-width does not disable wrapping,
we probably should make it so. I merged this to 'pu' but then ejected it
because it seems to break at least t6006.

* bg/rebase-reword (2009-10-07) 1 commit
- Teach 'rebase -i' the command "reword"

* js/diff-verbose-submodule (2009-10-04) 1 commit
- Add the --submodule-summary option to the diff option family

Dscho sounded like he has some corrections after list comments, but I did
not pick up his interdiff in the middle.
* sp/smart-http (2009-10-08) 4 commits.
- Smart fetch and push over HTTP: server side
- Add smart-http options to upload-pack, receive-pack
- Git-aware CGI to provide dumb HTTP transport
- Document the HTTP transport protocol

--------------------------------------------------
[Stalled]

* je/send-email-no-subject (2009-08-05) 1 commit
(merged to 'next' on 2009-08-30 at b6455c2)
* sr/gfi-options (2009-09-06) 6 commits.
- fast-import: test the new option command
- fast-import: add option command
- fast-import: test the new feature command
- fast-import: add feature command
- fast-import: put marks reading in it's own function
- fast-import: put option parsing code in separate functions

Ejected from 'next' as fast-import folks still seem to be discussing with
how to proceed.

* je/send-email-no-subject (2009-08-05) 1 commit.
(merged to 'next' on 2009-10-11 at 1b99c56)
+ send-email: confirm on empty mail subjects

The existing tests cover the positive case (i.e. as long as the user says
@ -170,7 +124,7 @@ the message is sent) of this feature, but the feature itself needs its own
test to verify the negative case (i.e. does it correctly stop if the user
says "no"?)

* jh/cvs-helper (2009-08-18) 8 commits
* jh/cvs-helper (2009-08-18) 8 commits.
- More fixes to the git-remote-cvs installation procedure
- Fix the Makefile-generated path to the git_remote_cvs package in git-remote-cvs
- Add simple selftests of git-remote-cvs functionality
@ -183,22 +137,91 @@ says "no"?)

Builds on db/vcs-helper. There is a re-roll planned.

* ne/rev-cache (2009-09-07) 7 commits
- support for commit grafts, slight change to general mechanism
- support for path name caching in rev-cache
- full integration of rev-cache into git, completed test suite
- administrative functions for rev-cache, start of integration into git
- support for non-commit object caching in rev-cache
- basic revision cache system, no integration or features
- man page and technical discussion for rev-cache
* ne/rev-cache (2009-09-07) 7 commits.
. support for commit grafts, slight change to general mechanism
. support for path name caching in rev-cache
. full integration of rev-cache into git, completed test suite
. administrative functions for rev-cache, start of integration into git
. support for non-commit object caching in rev-cache
. basic revision cache system, no integration or features
. man page and technical discussion for rev-cache

I merged this to 'pu' but then ejected it because it seems to break at
least t6001.
This seems to break at least t6001 when merged to 'pu'.

--------------------------------------------------
[Cooking]

* jl/submodule-add-noname (2009-09-22) 1 commit
* dk/blame-el (2009-09-29) 1 commit.
- git-blame.el: Change how blame information is shown.

Soon in 'next'.

* ef/msys-imap (2009-10-09) 8 commits.
- MSVC: Enable OpenSSL, and translate -lcrypto
- mingw: enable OpenSSL
- mingw: wrap SSL_set_(w|r)fd to call _get_osfhandle
- imap-send: build imap-send on Windows
- imap-send: fix compilation-error on Windows
- imap-send: use run-command API for tunneling
- imap-send: use separate read and write fds
- imap-send: remove useless uid code

* jn/gitweb-patch (2009-10-09) 1 commit.
- gitweb: Do not show 'patch' link for merge commits

Soon in 'next'

* mr/gitweb-snapshot (2009-09-26) 2 commits.
- gitweb: append short hash ids to snapshot files
(merged to 'next' on 2009-10-11 at 22ba047)
+ gitweb: check given hash before trying to create snapshot

* mr/instaweb-cgid (2009-09-26) 1 commit.
(merged to 'next' on 2009-10-11 at 99bcfaf)
+ instaweb: support mod_cgid for apache2

* tf/doc-pt-br (2009-09-23) 1 commit.
- Documentation: update pt-BR

The current AsciiDoc may barf on NOME and SINOPSE, as pt_BR language
definition is not widely distributed yet (it just hit the development
tree). Need to revert these headings (or change the length of the section
underlines to match the length of translated names).

* jc/pretty-lf (2009-10-04) 1 commit.
- Pretty-format: %[+-]x to tweak inter-item newlines

I am not happy with this one yet. I am contemplating to introduce a new
syntax "%[magic(param)<anything>%]" to generalize expressions of this and
line wrapping features in an extensible way.

* js/log-rewrap (2008-11-10) 3 commits.
. Add "%w" to pretty formats, which rewraps the commit message
- Add strbuf_add_wrapped_text() to utf8.[ch]
- print_wrapped_text(): allow hard newlines
... and the first two from this series will be useful to implement an
example magic "wrap", e.g. "%[wrap(i,j,w)%s%+b%]".

* jg/log-format-body-indent (2009-09-19) 1 commit.
- git-log --format: Add %B tag with %B(x) option

I think we should redo this on top of the first two patches from
js/log-rewrap series; %B(x) is just a special case %B(x,x,0), no? If a
magic value 0 (or negative) given to wrap-width does not disable wrapping,
we probably should make it so.

* bg/rebase-reword (2009-10-07) 1 commit.
- Teach 'rebase -i' the command "reword"

Soon in 'next'

* js/diff-verbose-submodule (2009-10-04) 1 commit.
- Add the --submodule-summary option to the diff option family

Dscho sounded like he has some corrections after list comments, but I did
not pick up his interdiff in the middle.

* jl/submodule-add-noname (2009-09-22) 1 commit.
- git submodule add: make the <path> parameter optional

Dscho started an interesting discussion regarding the larger workflow in
@ -207,10 +230,11 @@ but at the same time it probably makes sense to also take the <path> and
infer the <repository> as Dscho suggested, probably in "git submodule
add", not in "git add" proper, at least initially.

* jc/fix-tree-walk (2009-09-14) 9 commits
* jc/fix-tree-walk (2009-09-14) 10 commits.
- read-tree --debug-unpack
- unpack-trees.c: look ahead in the index
- unpack-trees.c: prepare for looking ahead in the index
- Aggressive three-way merge: fix D/F case
- traverse_trees(): handle D/F conflict case sanely
- more D/F conflict tests
- tests: move convenience regexp to match object names to test-lib.sh
@ -224,30 +248,29 @@ sense to walk the index and drive the walker to return the entries from
trees to match entries from the index, but I ended up doing pretty much
what Linus outlined --- walk the trees, and have the index walker follow
it. It turned out that the index side also needed some hairy look-ahead,
and I am only half satisfied with the current status of the series.

To fix the resolve merge regression seen in t6035, git-merge-resolve needs
to be rewritten not to use the one-path-at-a-time "git merge-index".
This includes the fix to aggressive mode of three-way merge used by the
resolve strategy. I think the series is Ok for 'next'.

* jp/fetch-tag-match (2009-09-17) 1 commit
* jp/fetch-tag-match (2009-09-17) 1 commit.
- fetch: Speed up fetch by rewriting find_non_local_tags

I did not have much energy left while dealing with the "fix-tree-walk"
series, so I just queued this without reading nor thinking about it very
much. I personally liked my version that had far smaller number of lines
changed (which means I can be fairly certain that it did not introduce any
I just queued this without reading nor thinking about it very much. I
personally liked my version that had far smaller number of lines changed
(which means I can be fairly certain that it did not introduce any
regression), but perhaps the majorly rewritten logic this patch gives us
may be easier to follow and maintain. We'll see.
may be easier to follow and maintain.

* jc/maint-blank-at-eof (2009-09-15) 0 commits.
(this branch uses jc/maint-1.6.0-blank-at-eof.)

The series does not have a commit of its own but is a preparation for
merging the original jc/1.6.0-maint-blank-at-eof topic to 'maint' and then
'master'. It is a fix for longstanding bug and 1.6.5 will not contain
this topic.
'master'

* db/vcs-helper-rest (2009-09-03) 6 commits
Soon in 'next'

* db/vcs-helper-rest (2009-09-03) 6 commits.
- Allow helpers to report in "list" command that the ref is unchanged
- Add support for "import" helper command
- Add a config option for remotes to specify a foreign vcs
@ -257,13 +280,22 @@ this topic.
(this branch is used by jh/cvs-helper.)

This holds the remainder of the db/vcs-helper topic that has already
merged for 1.6.5.
merged in 1.6.5.

* jh/notes (2009-09-12) 13 commits
- Selftests verifying semantics when loading notes trees with various fanouts
* jh/notes (2009-10-09) 22 commits.
- fast-import: Proper notes tree manipulation using the notes API
- Refactor notes concatenation into a flexible interface for combining notes
- Notes API: Allow multiple concurrent notes trees with new struct notes_tree
- Notes API: for_each_note(): Traverse the entire notes tree with a callback
- Notes API: get_note(): Return the note annotating the given object
- Notes API: add_note(): Add note objects to the internal notes tree structure
- Notes API: init_notes(): Initialize the notes tree from the given notes ref
- Notes API: get_commit_notes() -> format_note() + remove the commit restriction
- Add selftests verifying concatenation of multiple notes for the same commit
- Refactor notes code to concatenate multiple notes annotating the same object
- Add selftests verifying that we can parse notes trees with various fanouts
- Teach the notes lookup code to parse notes trees with various fanout schemes
- notes.[ch] fixup: avoid old-style declaration
- Teach notes code to free its internal data structures on request.
- Teach notes code to free its internal data structures on request
- Add '%N'-format for pretty-printing commit notes
- Add flags to get_commit_notes() to control the format of the note string
- t3302-notes-index-expensive: Speed up create_repo()
@ -273,26 +305,21 @@ merged for 1.6.5.
- Speed up git notes lookup
- Add a script to edit/inspect notes
- Introduce commit notes
(this branch uses sr/gfi-options.)

Rerolled and queued.

* jn/gitweb-show-size (2009-09-07) 1 commit
* jn/gitweb-show-size (2009-09-07) 1 commit.
- gitweb: Add 'show-sizes' feature to show blob sizes in tree view

* lt/maint-traverse-trees-fix (2009-09-06) 1 commit.
. Prepare 'traverse_trees()' for D/F conflict lookahead

Ejected from 'pu' (see jc/fix-tree-walk above).
Soon in 'next'

* jc/maint-1.6.0-blank-at-eof (2009-09-14) 15 commits.
(merged to 'next' on 2009-09-15 at 9cbfa00)
(merged to 'next' on 2009-10-11 at 7f34fb3)
+ diff -B: colour whitespace errors
+ diff.c: emit_add_line() takes only the rest of the line
+ diff.c: split emit_line() from the first char and the rest of the line
+ diff.c: shuffling code around
+ diff --whitespace: fix blank lines at end
(merged to 'next' on 2009-09-07 at 165dc3c)
+ core.whitespace: split trailing-space into blank-at-{eol,eof}
+ diff --color: color blank-at-eof
+ diff --whitespace=warn/error: fix blank-at-eof check
@ -309,31 +336,17 @@ This is a fix for an ancient bug (or inconsistent set of features); the
topic is based on an ancient codebase and is designed to be merged
upwards. jc/maint-blank-at-eof serves that purpose.

Will not be in 1.6.5.

* jn/gitweb-blame (2009-09-01) 5 commits
* jn/gitweb-blame (2009-09-01) 5 commits.
- gitweb: Minify gitweb.js if JSMIN is defined
- gitweb: Create links leading to 'blame_incremental' using JavaScript
(merged to 'next' on 2009-09-07 at 3622199)
(merged to 'next' on 2009-10-11 at 73c4a83)
+ gitweb: Colorize 'blame_incremental' view during processing
+ gitweb: Incremental blame (using JavaScript)
+ gitweb: Add optional "time to generate page" info in footer

Ajax-y blame.

* sr/gfi-options (2009-09-06) 6 commits
(merged to 'next' on 2009-09-07 at 5f6b0ff)
+ fast-import: test the new option command
+ fast-import: add option command
+ fast-import: test the new feature command
+ fast-import: add feature command
+ fast-import: put marks reading in it's own function
+ fast-import: put option parsing code in separate functions
(this branch is used by jh/notes.)

Ping?

* nd/sparse (2009-08-20) 19 commits
* nd/sparse (2009-08-20) 19 commits.
- sparse checkout: inhibit empty worktree
- Add tests for sparse checkout
- read-tree: add --no-sparse-checkout to disable sparse checkout support
@ -357,9 +370,9 @@ Ping?
--------------------------------------------------
[For 1.7.0]

* jk/1.7.0-status (2009-09-05) 5 commits
* jk/1.7.0-status (2009-09-05) 5 commits.
- docs: note that status configuration affects only long format
(merged to 'next' on 2009-09-07 at 8a7c563)
(merged to 'next' on 2009-10-11 at 65c8513)
+ commit: support alternate status formats
+ status: add --porcelain output format
+ status: refactor format option parsing
@ -369,10 +382,9 @@ Ping?
Gives the --short output format to post 1.7.0 "git commit --dry-run" that
is similar to that of post 1.7.0 "git status".

* jc/1.7.0-status (2009-09-05) 4 commits
(merged to 'next' on 2009-09-06 at 19d4beb)
* jc/1.7.0-status (2009-09-05) 4 commits.
(merged to 'next' on 2009-10-11 at 9558627)
+ status: typo fix in usage
(merged to 'next' on 2009-08-22 at b3507bb)
+ git status: not "commit --dry-run" anymore
+ git stat -s: short status output
+ git stat: the beginning of "status that is not a dry-run of commit"
@ -380,16 +392,14 @@ is similar to that of post 1.7.0 "git status".

With this, "git status" is no longer "git commit --dry-run".

* jc/1.7.0-send-email-no-thread-default (2009-08-22) 1 commit
(merged to 'next' on 2009-08-22 at 5106de8)
* jc/1.7.0-send-email-no-thread-default (2009-08-22) 1 commit.
(merged to 'next' on 2009-10-11 at 043acdf)
+ send-email: make --no-chain-reply-to the default

* jc/1.7.0-diff-whitespace-only-status (2009-08-30) 4 commits.
(merged to 'next' on 2009-08-30 at 0623572)
(merged to 'next' on 2009-10-11 at 546c74d)
+ diff.c: fix typoes in comments
(merged to 'next' on 2009-08-27 at 81fb2bd)
+ Make test case number unique
(merged to 'next' on 2009-08-02 at 9c08420)
+ diff: Rename QUIET internal option to QUICK
+ diff: change semantics of "ignore whitespace" options

@ -397,8 +407,8 @@ This changes exit code from "git diff --ignore-whitespace" and friends
when there is no actual output. It is a backward incompatible change, but
we could argue that it is a bugfix.

* jc/1.7.0-push-safety (2009-02-09) 2 commits
(merged to 'next' on 2009-08-02 at 38b82fe)
* jc/1.7.0-push-safety (2009-02-09) 2 commits.
(merged to 'next' on 2009-10-11 at 81b8128)
+ Refuse deleting the current branch via push
+ Refuse updating the current branch in a non-bare repository via push

@ -420,13 +430,13 @@ Maybe some people care about this. I dunno.
. read_directory(): infrastructure for pathname character set conversion
. Add 'fill_directory()' helper function for directory traversal

* cc/reset-merge (2009-09-16) 4 commits
* cc/reset-merge (2009-09-16) 4 commits.
. reset: add test cases for "--merge-safe" option
. reset: add option "--merge-safe" to "git reset"
. reset: use "unpack_trees()" directly instead of "git read-tree"
. reset: add a few tests for "git reset --merge"

* cc/sequencer-rebase-i (2009-08-28) 15 commits
* cc/sequencer-rebase-i (2009-08-28) 15 commits.
. rebase -i: use "git sequencer--helper --cherry-pick"
. sequencer: add "--cherry-pick" option to "git sequencer--helper"
. sequencer: add "do_commit()" and related functions working on "next_commit"
@ -442,3 +452,6 @@ Maybe some people care about this. I dunno.
. rebase -i: use "git sequencer--helper --make-patch"
. sequencer: add "make_patch" function to save a patch
. sequencer: add "builtin-sequencer--helper.c"

* lt/maint-traverse-trees-fix (2009-09-06) 1 commit.
. Prepare 'traverse_trees()' for D/F conflict lookahead