Browse Source

What's cooking (2008/10 #01)

todo
Junio C Hamano 17 years ago
parent
commit
764dfde554
  1. 445
      whats-cooking.txt

445
whats-cooking.txt

@ -1,8 +1,8 @@ @@ -1,8 +1,8 @@
Subject: What's cooking in git.git (Sep 2008, #05; Mon, 29)
X-master-at: 9800c0df412869c7949935b61581b9361fc49bd1
X-next-at: 37dbc802cfed9d39ff15dfd333bdd2e74ca9f458
Subject: What's cooking in git.git (Oct 2008, #01; Mon, 06)
X-master-at: 276328ffb87cefdc515bee5f09916aea6e0244ed
X-next-at: 395ff9bd88b9cf14617c5e2f461878c4969726f3

What's cooking in git.git (Sep 2008, #05; Mon, 29)
What's cooking in git.git (Oct 2008, #01; Mon, 06)
--------------------------------------------------

Here are the topics that have been cooking. Commits prefixed
@ -12,203 +12,211 @@ in 'next'. @@ -12,203 +12,211 @@ in 'next'.
The topics list the commits in reverse chronological order. The topics
meant to be merged to the maintenance series have "maint-" in their names.

If I have dropped anything recently its not because I don't want
to apply it, it just slipped through the cracks. Please feel free
to give me a gentle prod (and a patch resend or a pointer to the
series on gmane). Thanks.
Topics aren't sorted by name; I have tried to cluster them together
to tell the story of how 'next' and 'pu' have evolved this past week.

----------------------------------------------------------------
[New Topics]

* gb/gitweb-pathinfo (Mon Sep 29 17:26:57 2008 +0200) 4 commits
- gitweb: generate parent..current URLs
- gitweb: parse parent..current syntax from pathinfo
- gitweb: generate project/action/hash URLs
- gitweb: parse project/action/hash_base:filename PATH_INFO
* sp/describe-docs (Tue Sep 30 11:55:16 2008 -0700) 1 commit
. docs: Improve the description of describe --tags

This series just came in today. I haven't had a chance to look at
it beyond stashing in `pu`.
I'm probably going to drop this topic if I can ever get around to
formally writing and posting sp/describe-lwtag for review.

* mw/sendemail (Mon Sep 29 12:41:06 2008 -0500) 8 commits
- send-email: signedoffcc -> signedoffbycc, but handle both
- Docs: send-email: Create logical groupings for man text
- Docs: send-email: Remove unnecessary config variable description
- Docs: send-email: --chain_reply_to -> --[no-]chain-reply-to
- send-email: change --no-validate to boolean --[no-]validate
- Docs: send-email: Man page option ordering
- Docs: send-email usage text much sexier
- Docs: send-email's usage text and man page mention same options
* sp/describe-lwtag (Tue Sep 30 12:03:41 2008 -0700) 1 commit
- [WIP] Change meaning of --tags and --all

This series has already gone through 3 iterations before I could
start to carry it in-tree. I haven't had a chance to read it yet
myself, so its sitting around in `pu` for futher review.
Modifies "git describe --tags" to allow matching against lightweight
tags even when an annotated tag is found in the history. Its not
in next because I haven't formally written a commit message and
posted the patch for discussion on the list.

* pb/gitweb (Thu Sep 25 18:48:48 2008 +0200) 2 commits
- gitweb: Sort the list of forks on the summary page by age
- gitweb: Clean-up sorting of project list
This is a fairly significant change in behavior. Its most certainly
1.6.1 material, but many argue the change is the _correct_ behavior
and the current behavior in 1.6.0 is buggy.

I forgot to look at this series today. I meant to review and try
to merge it to `next` before publishing. Will do that tomorrow.
* jk/diff-convfilter (Sun Oct 5 17:43:45 2008 -0400) 4 commits
- diff: add filter for converting binary to text
- diff: introduce diff.<driver>.binary
- diff: unify external diff and funcname parsing code
- t4012: use test_cmp instead of cmp

* ae/preservemerge (Tue Sep 23 22:58:20 2008 +0200) 3 commits
- git pull: Support --preserve-merges as a flag to rebase
- git rebase: Support non-interactive merge-preserving rebase
- Prepare for non-interactive merge-preserving rebase
A general cleanup on how diff drivers are implemented. Its still
missing documentation updates and tests but doesn't break anything
current as far as I can tell. It needs more review before it can
be slated for 'next'.

Andreas says there's some issues in here. I'm waiting for a respin
on the series before I look at it futher.
* pb/rename-rowin32 (Fri Oct 3 12:20:43 2008 +0200) 1 commit
- Do not rename read-only files during a push

* mg/verboseprune (Mon Sep 29 18:49:52 2008 +0200) 1 commit
- make prune report removed objects on -v
Supposedly fixes pack file renames on Windows, but it makes the
test suite fail on Linux. I haven't debugged why yet. Its very
likely we need a replacement patch before this can move forward.

Just came in today. Looks sane. I'll drop it onto `next` tomorrow.
* gb/formatpatch-autonbr (Thu Oct 2 16:55:39 2008 -0400) 1 commit
- format-patch: autonumber by default

----------------------------------------------------------------
[Graduated to "master"]

* mv/merge-recursive (Sat Sep 6 18:29:49 2008 +0200) 11 commits
+ builtin-merge: release the lockfile in try_merge_strategy()
+ merge-recursive: get rid of virtual_id
+ merge-recursive: move current_{file,directory}_set to struct
merge_options
+ merge-recursive: move the global obuf to struct merge_options
+ merge-recursive: get rid of the index_only global variable
+ merge-recursive: move call_depth to struct merge_options
+ cherry-pick/revert: make direct internal call to merge_tree()
+ builtin-merge: avoid run_command_v_opt() for recursive and subtree
+ merge-recursive: introduce merge_options
+ merge-recursive.c: Add more generic merge_recursive_generic()
+ Split out merge_recursive() to merge-recursive.c

(Tip at 4271666)

* ho/dirstat-by-file (Fri Sep 5 22:27:35 2008 +0300) 1 commit
+ diff --dirstat-by-file: count changed files, not lines

(Tip at fd33777)

* jc/safe-c-l-d (Tue Sep 2 14:10:15 2008 -0700) 1 commit
+ safe_create_leading_directories(): make it about "leading"
directories

(Tip at 5f0bdf5)

* jc/apply-include-exclude (Mon Aug 25 01:05:31 2008 -0700) 1 commit
+ git-apply:--include=pathspec

(Tip at 6ecb1ee)

* mv/commit-tree (Wed Sep 10 22:10:33 2008 +0200) 3 commits
+ t7603: add new testcases to ensure builtin-commit uses
reduce_heads()
+ builtin-commit: use commit_tree()
+ commit_tree(): add a new author parameter

(Tip at 7a172b0)

* pb/autocorrect-wrapper (Wed Sep 10 17:54:28 2008 +0200) 1 commit
+ git wrapper: also use aliases to correct mistyped commands

(Tip at 746c221)

* jc/better-conflict-resolution (Thu Sep 4 23:48:48 2008 +0200) 15 commits
+ Fix AsciiDoc errors in merge documentation
+ git-merge documentation: describe how conflict is presented
+ checkout --conflict=<style>: recreate merge in a non-default style
+ checkout -m: recreate merge when checking out of unmerged index
+ Merge branch 'jc/maint-checkout-fix' into 'jc/better-conflict-
resolution'
+ git-merge-recursive: learn to honor merge.conflictstyle
+ merge.conflictstyle: choose between "merge" and "diff3 -m" styles
+ rerere: understand "diff3 -m" style conflicts with the original
+ rerere.c: use symbolic constants to keep track of parsing states
+ xmerge.c: "diff3 -m" style clips merge reduction level to EAGER or
less
+ xmerge.c: minimum readability fixups
+ xdiff-merge: optionally show conflicts in "diff3 -m" style
+ xdl_fill_merge_buffer(): separate out a too deeply nested function
+ checkout --ours/--theirs: allow checking out one side of a
conflicting merge
+ checkout -f: allow ignoring unmerged paths when checking out of
the index

(Tip at 3407a7a)

* jc/alternate-push (Tue Sep 9 01:27:10 2008 -0700) 4 commits
+ push: receiver end advertises refs from alternate repositories
+ push: prepare sender to receive extended ref information from the
receiver
+ receive-pack: make it a builtin
+ is_directory(): a generic helper function

(Tip at d79796b)

* bc/master-diff-hunk-header-fix (Sat Sep 20 18:36:22 2008 -0700) 10 commits
+ Merge branch 'bc/maint-diff-hunk-header-fix' into bc/master-diff-
hunk-header-fix
+ diff hunk pattern: fix misconverted "\{" tex macro introducers
+ diff: fix "multiple regexp" semantics to find hunk header comment
+ diff: use extended regexp to find hunk headers
+ Merge branch 'bc/maint-diff-hunk-header-fix' into bc/master-diff-
hunk-header-fix
+ diff: use extended regexp to find hunk headers
+ Merge branch 'bc/maint-diff-hunk-header-fix' into bc/master-diff-
hunk-header-fix
+ diff.*.xfuncname which uses "extended" regex's for hunk header
selection
+ diff.c: associate a flag with each pattern and use it for
compiling regex
+ diff.c: return pattern entry pointer rather than just the hunk
header pattern

(Tip at 92bb978)

* am/status (Mon Sep 8 00:05:03 2008 +0200) 2 commits
+ wt-status: Teach how to discard changes in the working directory
+ wt-status: Split header generation into three functions

(Tip at 4d6e4c4)

* mg/maint-remote-fix (Mon Sep 22 10:57:51 2008 +0200) 1 commit
+ make "git remote" report multiple URLs

(Tip at 7d20e21)

* bc/maint-diff-hunk-header-fix (Sat Sep 20 15:30:12 2008 -0700) 5 commits
+ diff hunk pattern: fix misconverted "\{" tex macro introducers
+ diff: use extended regexp to find hunk headers
+ diff.*.xfuncname which uses "extended" regex's for hunk header
selection
+ diff.c: associate a flag with each pattern and use it for
compiling regex
+ diff.c: return pattern entry pointer rather than just the hunk
header pattern

(Tip at 96d1a8e)
Fails the test suite; some of the test vectors need to be updated
to account for the new default. Someone who cares about this
change should follow through on the test suite update, or this may
get dropped.

* sh/maint-intrebase (Wed Oct 1 01:11:07 2008 -0500) 1 commit
+ Fix interactive rebase on dropped commits.

This merged to next, then was reverted out this morning, due to
the introduction of the sh/maint-rebase3. Its dead and will be
dropped from the next "What's cooking" release notes.

* sh/maint-rebase3 (Sun Oct 5 23:26:52 2008 -0500) 1 commit
- rebase--interactive: fix parent rewriting for dropped commits

A replacement for sh/maint-intrebase. Its in pu because I have
gotten 3 different versions of this patch, two of them posted a
full 4 days after I merged the first version into next. I felt
burned by the patch author for not keeping up with my tree, so I'm
not merging the patch to next.

At this point its going to sit in pu until Junio comes back.
I think the topic needs a few more days to settle to see if the
patch author is going to submit any more revisions.

* ns/rebase-noverify (Mon Oct 6 14:14:29 2008 +0900) 1 commit
+ rebase --no-verify

This adds --no-verify to git rebase, to avoid the pre-rebase hook.
Lacks documentation but otherwise looks sound.

* mv/merge-noff (Fri Oct 3 14:04:47 2008 +0200) 1 commit
+ builtin-commit: use reduce_heads() only when appropriate

Fixes "git merge --no-ff --no-commit".

* dp/cywginstat (Tue Sep 30 17:53:47 2008 +0400) 3 commits
+ cygwin: Use native Win32 API for stat
+ mingw: move common functionality to win32.h
+ add have_git_dir() function

Performance improvement for Cygwin, bypassing the Cygwin stat
function and using one more like MinGW uses. Probably ready for
master on the next round. Several Cygwin users have given praise
to the series.

* js/objc-funchdr (Wed Oct 1 00:46:34 2008 +0100) 1 commit
+ Teach git diff about Objective-C syntax

Adds support for Objective-C function headers. I don't use
Objective-C so I can't comment on how good/bad the patterns are
for the language. Feedback (and improvements if necessary) from
Objective-C users would be appreciated.

* dm/svn-branch (Sat Oct 4 19:35:17 2008 -0700) 1 commit
+ Add git-svn branch to allow branch creation in SVN repositories

Adds "git svn branch" to build branches remotely in SVN.

Might be ready for master, it has an ACK from Eric. Slated into next
just because I wasn't sure if Junio merges such things immediately
into master or lets them cook for a bit.

* pb/gitweb (Fri Oct 3 07:41:25 2008 -0700) 7 commits
+ Merge branch 'pb/gitweb-tagcloud' into pb/gitweb
+ gitweb: Support for simple project search form
+ gitweb: Make the by_tag filter delve in forks as well
+ gitweb: Support for tag clouds
+ gitweb: Add support for extending the action bar with custom links
+ gitweb: Sort the list of forks on the summary page by age
+ gitweb: Clean-up sorting of project list

I may have been a bad interm maintainer here by shoving together
two different gitweb series from Pasky. Overall the combined set
looks ready to me.

* ph/parseopt (Thu Oct 2 14:59:20 2008 +0200) 3 commits
+ parse-opt: migrate builtin-merge-file.
+ parse-opt: migrate git-merge-base.
+ parse-opt: migrate fmt-merge-msg.

* rz/grepz (Wed Oct 1 18:11:15 2008 +0200) 1 commit
+ git grep: Add "-z/--null" option as in GNU's grep.

* mv/merge-refresh (Fri Oct 3 15:02:31 2008 +0200) 1 commit
+ builtin-merge: refresh the index before calling a strategy

* bc/xdiffnl (Wed Oct 1 14:28:26 2008 -0500) 1 commit
+ xdiff-interface.c: strip newline (and cr) from line before pattern
matching

* ae/preservemerge (Mon Sep 29 22:28:57 2008 +0200) 1 commit
+ rebase: Support preserving merges in non-interactive mode

These last five all look ready for master, but should cook longer
than just a few days.

----------------------------------------------------------------
[Old New Topics]

* nd/narrow (Sun Sep 14 20:07:59 2008 +0700) 9 commits
- grep: skip files that have not been checked out
* mw/sendemail (Sun Sep 28 07:51:21 2008 +0300) 10 commits
+ bash completion: Add --[no-]validate to "git send-email"
+ send-email: signedoffcc -> signedoffbycc, but handle both
+ Docs: send-email: Create logical groupings for man text
+ Docs: send-email: Create logical groupings for --help text
+ Docs: send-email: Remove unnecessary config variable description
+ Docs: send-email: --chain_reply_to -> --[no-]chain-reply-to
+ send-email: change --no-validate to boolean --[no-]validate
+ Docs: send-email: Man page option ordering
+ Docs: send-email usage text much sexier
+ Docs: send-email's usage text and man page mention same options

This series looks pretty good to me. It probably can merge to
master on the next "What's cooking" cycle.

----------------------------------------------------------------
[Dropped Topics]

* sg/merge-options (Sun Apr 6 03:23:47 2008 +0200) 1 commit
+ merge: remove deprecated summary and diffstat options and config
variables

This has been reverted from next and is being dropped. Its too
soon to remove a feature that was just added in 1.5.6 timeframe.
Perhaps in 1.7.0 this can be revisited.

----------------------------------------------------------------
[Stuck Topics]

* nd/narrow (Wed Oct 1 11:04:09 2008 +0700) 9 commits
- grep: skip files outside sparse checkout area
- checkout_entry(): CE_NO_CHECKOUT on checked out entries.
- Prevent diff machinery from examining worktree outside narrow
- Prevent diff machinery from examining worktree outside sparse
checkout
- Add tests for updating no-checkout entries in index
- ls-files: add --narrow-checkout option to "will checkout" entries
- ls-files: Add tests for --sparse and friends
- update-index: add --checkout/--no-checkout to update
CE_NO_CHECKOUT bit
- update-index: refactor mark_valid() in preparation for new options
- ls-files: add options to support sparse checkout
- Introduce CE_NO_CHECKOUT bit
- Extend index to save more flags

[jc: This is an early half of the earlier series (I haven't had
chance to look at the updated series yet), and should be replaced
with the updated one posted recently.]
Recently updated with a repost. I've been too swamped at day-job
to actively review the series. There has been some discussion on
list about it so its not stalled, but it needs more eyeballs.

I haven't touched this branch since I inherited it from Junio.
I'd appreciate a resend or a pointer to the updated series so I
can at least replace it.
* gb/gitweb-pathinfo (Thu Oct 2 02:10:34 2008 +0200) 6 commits
- gitweb: generate parent..current URLs
- gitweb: parse parent..current syntax from pathinfo
- gitweb: use_pathinfo filenames start with /
- gitweb: generate project/action/hash URLs
- gitweb: refactor input parameters parse/validation
- gitweb: parse project/action/hash_base:filename PATH_INFO

Still going through revisions on the git ML. Its great work and
is heading in the right direction. But the discussion and patch
generation rate is too high to merge the topic into next just yet.

So its waiting for a re-roll of the series once discussion settles
down and there is a final patch series available.

----------------------------------------------------------------
[Stalled -- Needs Action to Proceed (or to be dropped)]
@ -216,7 +224,8 @@ can at least replace it. @@ -216,7 +224,8 @@ can at least replace it.
* pb/submodule (Fri Sep 12 23:09:19 2008 +0200) 1 commit
- t7400: Add short "git submodule add" testsuite

[jc: Waiting for a reroll.]
Still waiting for a reroll. Should be dropped next week if we
don't get one during this coming week.

* bd/blame (Thu Aug 21 18:22:01 2008 -0500) 5 commits
- Use xdiff caching to improve git blame performance
@ -225,14 +234,14 @@ can at least replace it. @@ -225,14 +234,14 @@ can at least replace it.
- Bypass textual patch generation and parsing in git blame
- Allow alternate "low-level" emit function from xdl_diff

[jc: Réne had good comments on how the callback should be
structured.]
(jc: Réne had good comments on how the callback should be
structured.)

* kb/am-directory (Fri Aug 29 15:27:50 2008 -0700) 1 commit
- git-am: Pass the --directory option through to git-apply

[jc: I think this is still buggy and drops the option when am stops
with conflicts.]
(jc: I think this is still buggy and drops the option when am stops
with conflicts.)

All three of these are stalled. I'm not going to drop them just
yet, but Junio's comments still hold. If there's no action on
@ -245,11 +254,36 @@ these next week we may seem them drop off. @@ -245,11 +254,36 @@ these next week we may seem them drop off.
+ git-add --intent-to-add (-N)

Teaches "git add" to record only the intent to add a path later.
[jc: I rerolled this without the fake empty blob object.]
(jc: I rerolled this without the fake empty blob object.)

* mg/verboseprune (Mon Sep 29 18:49:52 2008 +0200) 1 commit
+ make prune report removed objects on -v

This is a pretty trivial new feature.

* pb/commit-where (Fri Oct 3 22:13:49 2008 -0400) 4 commits
+ tutorial: update output of git commit
+ reformat informational commit message
+ git commit: Reformat output somewhat
+ builtin-commit.c: show on which branch a commit was added

I think this topic is settled for now.

I'm inclined to merge this next week.
* jk/maint-soliconv (Fri Oct 3 02:39:36 2008 -0400) 1 commit
+ Makefile: do not set NEEDS_LIBICONV for Solaris 8

(Tip at 3942581)
* sg/maint-intrebase-msghook (Fri Oct 3 11:33:20 2008 +0200) 2 commits
+ rebase -i: remove leftover debugging
+ rebase -i: proper prepare-commit-msg hook argument when squashing

* bc/maint-stashref (Thu Oct 2 18:52:11 2008 -0500) 1 commit
+ git-stash.sh: fix flawed fix of invalid ref handling (commit
da65e7c1)

The latter three are ready for 'maint'. I felt burned by a bad
commit into made directly into maint earlier in the week so these
wound up getting queued into 'next' first, even though they are
certainly maint material.

----------------------------------------------------------------
[Actively Cooking]
@ -258,25 +292,15 @@ I'm inclined to merge this next week. @@ -258,25 +292,15 @@ I'm inclined to merge this next week.
+ Documentation: Refer to git-rebase(1) to warn against rewriting
+ Documentation: new upstream rebase recovery section in git-rebase

[jc: My impression from the last round of discusson on the third
(jc: My impression from the last round of discusson on the third
patch in this series (not queued here) was that as long as we
do not present it as "One True Workflow", the description was
a good starting point, possibly others to add other recommended
flows later.]
flows later.)

I haven't looked at this series yet. Based on Junios remarks above
I haven't looked at this series yet. Based on Junio's remarks above
I'm looking for more input on this series before it goes anywhere.

* pb/commit-where (Mon Sep 8 01:05:41 2008 +0200) 1 commit
+ builtin-commit.c: show on which branch a commit was added

[jc: Tentatively kicked back to "still cooking" status after
Jeff voiced his annoyance. I personally do not like making this
multi-line as Jeff suggested as an alternative (the message already
is too verbose to my taste).]

Agree with Junio. Hence its still here.

* lt/time-reject-fractional-seconds (Sat Aug 16 21:25:40 2008 -0700) 1 commit
+ date/time: do not get confused by fractional seconds

@ -292,7 +316,8 @@ has no notes on this branch and why it hasn't merged yet. @@ -292,7 +316,8 @@ has no notes on this branch and why it hasn't merged yet.
- revision --simplify-merges: incremental simplification
- revision --simplify-merges: prepare for incremental simplification

[jc: I started making this incremental but the progress is not so great.]
(jc: I started making this incremental but the progress is not
so great.)

* jc/stripspace (Sun Mar 9 00:30:35 2008 -0800) 6 commits
- git-am --forge: add Signed-off-by: line for the author
@ -303,39 +328,29 @@ has no notes on this branch and why it hasn't merged yet. @@ -303,39 +328,29 @@ has no notes on this branch and why it hasn't merged yet.
- Add "git am -s" test
- git-am: refactor code to add signed-off-by line for the committer

[jc: The one at second from the tip needs reworking.]
(jc: The one at second from the tip needs reworking.)

* jc/send-pack-tell-me-more (Thu Mar 20 00:44:11 2008 -0700) 1 commit
- "git push": tellme-more protocol extension

* jc/merge-whitespace (Sun Feb 24 23:29:36 2008 -0800) 1 commit
. WIP: start teaching the --whitespace=fix to merge machinery

This has a merge conflict with `next` and isn't even in pu right now.
This is a great idea, but IIRC its implementation has a deadlock
during communication between the peers. Someone needs to pick up
this topic and resolve the deadlock before it can continue.

* jc/blame (Wed Jun 4 22:58:40 2008 -0700) 2 commits
- blame: show "previous" information in --porcelain/--incremental
format
- git-blame: refactor code to emit "porcelain format" output

I should look at this in more detail. We may be able to merge it
to next soon-ish.

* sg/merge-options (Sun Apr 6 03:23:47 2008 +0200) 1 commit
+ merge: remove deprecated summary and diffstat options and config
variables
* jc/merge-whitespace (Sun Feb 24 23:29:36 2008 -0800) 1 commit
. WIP: start teaching the --whitespace=fix to merge machinery

[jc: This was previously in "will be in master soon" category,
but it turns out that the synonyms to the ones this one deletes
are fairly new invention that happend in 1.5.6 timeframe, and
we cannot do this just yet. Perhaps in 1.7.0, but with the loud
whining about moving git-foo out of $PATH we have been hearing,
it might not be a bad idea to drop this.]
This has a merge conflict with `next` and isn't even in pu right now.

* jk/renamelimit (Sat May 3 13:58:42 2008 -0700) 1 commit
- diff: enable "too large a rename" warning when -M/-C is explicitly
asked for

[jc: This would be the right thing to do for command line use,
(jc: This would be the right thing to do for command line use,
but gitk will be hit due to tcl/tk's limitation, so I am holding
this back for now.]
this back for now.)

Loading…
Cancel
Save