What's cooking (2009/07 #03)

This commit is contained in:
Junio C Hamano
2009-07-29 14:11:16 -07:00
parent edeae1fbd6
commit a1e0616406

View File

@@ -1,189 +1,34 @@
To: git@vger.kernel.org
Subject: What's cooking in git.git (Jul 2009, #02; Sun, 26)
X-master-at: d8f7be2ebcb7e3ec40269080a9ab9a28bc06ba17
X-next-at: 2b05f9bd0a9944bbaab9f24d305932a57e4735d4
Subject: What's cooking in git.git (Jul 2009, #03; Wed, 29)
X-master-at: e6580020057afd207b7cfb9c96905f99e13cfe4d
X-next-at: 4719968c98d7ad8352bb14916c65c094842a980d
What's cooking in git.git (Jul 2009, #02; Sun, 26)
What's cooking in git.git (Jul 2009, #03; Wed, 29)
--------------------------------------------------
These topics in 'next' (ones prefixed with '+') and 'pu' (ones prefixed
with '.') will not be in 1.6.4 final, and are subject to be rewound once
it happens.
Here are the topics that have been cooking. Commits prefixed with '-' are
only in 'pu' while commits prefixed with '+' are in 'next'. The ones
marked with '.' do not appear in any of the branches, but I am still
holding onto them.
We have quite a few solid topics in 'next', so hopefully the next cycle
would be shorter than usual. I'd propose to call it 1.6.5, and then make
the one after that 1.7.0, which means that during the 1.6.5 cycle, 'next'
will have the two incompatible "push" (actually, receive-pack) changes
hitherto kept on hold in 'pu'.
In preparation for rewinding 'next' after a major release, one topic was
reverted and kicked back to 'pu' to give it a fresh start.
After the 1.6.5 cycle, the next release will be 1.7.0, and we will push
out the planned "push safety" change. 1.7.0 would be a good time to
introduce "justifiable" changes that are not strictly backward compatible.
During 1.6.5 cycle, 'next' will hold topics meant for 1.6.5 and 1.7.0.
I've already merged the "diff --exit-code --ignore-whitespace" change and
"push safety" change.
I'll rewind 'next' sometime this weekend.
----------------------------------------------------------------
[New Topics]
[In 'next']
* jk/show-tag (Sat Jul 18 06:14:37 2009 -0400) 2 commits
+ show: add space between multiple items
+ show: suppress extra newline when showing annotated tag
Didn't look bad at all, but is not pressing either.
* sb/parse-options (Tue Jul 7 22:15:41 2009 -0700) 4 commits
+ prune-packed: migrate to parse-options
+ verify-pack: migrate to parse-options
+ verify-tag: migrate to parse-options
+ write-tree: migrate to parse-options
* mk/grep-max-depth (Wed Jul 22 19:52:15 2009 +0200) 1 commit
+ grep: Add --max-depth option.
* jn/gitweb-blame (Sat Jul 25 00:44:10 2009 +0200) 10 commits
- gitweb: Create links leading to 'blame_incremental' using
JavaScript
- gitweb: Incremental blame (proof of concept)
- gitweb: Add optional "time to generate page" info in footer
- gitweb: Add -partial_query option to href() subroutine
- gitweb: Use light/dark for class names also in 'blame' view
- gitweb: Add author initials in 'blame' view, a la "git gui blame"
- gitweb: Mark commits with no "previous" in 'blame' view
- gitweb: Use "previous" header of git-blame -p in 'blame' view
- gitweb: Mark boundary commits in 'blame' view
- gitweb: Make .error style generic
Still in flux/rfc.
* ns/init-mkdir (Sat Jul 25 06:59:28 2009 +0900) 1 commit
+ git init: optionally allow a directory argument
Didn't look bad, but is not pressing either.
* jc/apply-epoch-patch (Fri Jul 10 18:38:08 2009 -0700) 1 commit
+ apply: notice creation/removal patches produced by GNU diff
* sb/pull-rebase (Sun Jul 19 09:45:16 2009 +0200) 2 commits
+ pull: support rebased upstream + fetch + pull --rebase
+ t5520-pull: Test for rebased upstream + fetch + pull --rebase
* db/transport-shim (Sat Jul 25 13:51:40 2009 -0400) 3 commits
- git-http-fetch: not a builtin
- Use an external program to implement fetching with curl
- Add support for external programs for handling native fetches
Interesting as a concept. I saw its ls-remote segfault on me, though.
Hopefully will mature by 1.6.5 final.
* pb/tracking (Thu Jul 16 16:26:15 2009 -0500) 7 commits
+ branch.c: if remote is not config'd for branch, don't try delete
push config
+ branch, checkout: introduce autosetuppush
+ move deletion of merge configuration to branch.c
+ remote: add per-remote autosetupmerge and autosetuprebase
configuration
+ introduce a struct tracking_config
+ branch: install_branch_config and struct tracking refactoring
+ config: allow false and true values for branch.autosetuprebase
After some discussion, I suspect we may want to rewind this out of 'next'
and start over with a fresh design.
* mk/init-db-parse-options (Sun Jul 12 12:24:32 2009 +0200) 1 commit
+ init-db: migrate to parse-options
* tr/reset-checkout-patch (Sat Jul 25 23:29:34 2009 +0200) 5 commits
- Implement 'git stash save --patch'
- Implement 'git checkout --patch'
- Implement 'git reset --patch'
- builtin-add: refactor the meat of interactive_add()
- git-apply--interactive: Refactor patch mode code
Still in flux/rfc.
----------------------------------------------------------------
[Stalled and may need help and prodding to go forward]
* gp/maint-rebase-p-onto (Wed Jul 22 12:38:58 2009 -0400) 1 commit
. Fix rebase -p --onto
I'd say we should take this even if it means Dscho needs his rebase -p
rewrite. It is not very pressing, so perhaps do so immediately after
1.6.4 final.
* jh/notes (Sat May 16 13:44:17 2009 +0200) 5 commits
- Teach "-m <msg>" and "-F <file>" to "git notes edit"
- Add an expensive test for git-notes
- Speed up git notes lookup
- Add a script to edit/inspect notes
- Introduce commit notes
Dscho asked about the performance implications of this; I do not think I
saw any progress on that yet...
Will drop after 1.6.4 unless any further progress is seen.
* ar/maint-1.6.2-merge-recursive-d-f (Mon May 11 21:25:36 2009 +0200) 2 commits
- Fix for a merge where a branch has an F->D transition
- Add a reminder test case for a merge with F/D transition
Although the reported breakage is covered with the patch, Alex feels the
solution unsatisfactory. Cleaning up D/F conflict handling in merge-recursive
may be long overdue but seems to be a hard problem.
* ps/blame (Thu Mar 12 21:30:03 2009 +1100) 1 commit
- blame.c: start libifying the blame infrastructure
A few minor point remains in this initial one.
Will drop after 1.6.4 unless any further progress is seen.
* jc/log-tz (Tue Mar 3 00:45:37 2009 -0800) 1 commit
- Allow --date=local --date=other-format to work as expected
The one I posted had a few corner-case bugs that was caught with the test
suite; this one has them fixed. People did not like the UI so it is kept
out of 'next'
Will drop after 1.6.4 unless any further progress is seen.
* jc/merge-convert (Mon Jan 26 16:45:01 2009 -0800) 1 commit
- git-merge-file: allow converting the results for the work tree
This is a feature waiting for a user.
We did not give scripted Porcelains a way to say "this temporary file I am
using for merging is for this path, so use the core.autocrlf and attributes
rules for that final path". Instead, merge-file simply wrote out the
data in the canonical repository representation.
rerere has the same issue, but it is a lot worse. It reads the three
files (preimage, postimage and thisimage) from the work tree in the work
tree representation, merges them without converting them to the canonical
representation first but inserts the conflict markers with the canonical
representation and writes the resulting mess out. It needs to be fixed to
read with convert_to_git(), merge them while they are still in the
canonical representation and possibly add conflict markers, and then write
the results out after convert_to_working_tree(). It also needs to write
in binary mode as well.
Will drop after 1.6.4 unless any further progress is seen.
* db/foreign-scm (Tue Mar 24 23:04:12 2009 -0400) 3 commits
- Add option for using a foreign VCS
- Document details of transport function APIs
- Allow late reporting of fetched hashes
I have a feeling that the recent transport-shim series from the same
author could supersede this one.
* hv/cvsps-tests (Sun Apr 5 01:40:50 2009 -0700) 8 commits
- t/t9600: remove exit after test_done
- cvsimport: extend testcase about patchset order to contain
branches
- cvsimport: add test illustrating a bug in cvsps
- Add a test of "git cvsimport"'s handling of tags and branches
- Add some tests of git-cvsimport's handling of vendor branches
- Test contents of entire cvsimported "master" tree contents
- Use CVS's -f option if available (ignore user's ~/.cvsrc file)
- Start a library for cvsimport-related tests
----------------------------------------------------------------
[Not actively cooking]
* ne/futz-upload-pack (Wed Jun 10 01:50:18 2009 +0200) 1 commit
+ Shift object enumeration out of upload-pack
* js/run-command-updates (Sat Jul 4 21:26:43 2009 +0200) 6 commits
+ receive-pack: remove unnecessary run_status report
@@ -195,45 +40,40 @@ author could supersede this one.
+ run_command: return exit code as positive value
+ MinGW: simplify waitpid() emulation macros
Will merge after 1.6.4
* sb/maint-pull-rebase (Sun Jul 19 09:45:16 2009 +0200) 2 commits
+ pull: support rebased upstream + fetch + pull --rebase
+ t5520-pull: Test for rebased upstream + fetch + pull --rebase
* cc/sequencer-rebase-i (Fri Jun 26 23:08:46 2009 +0200) 4 commits
- rebase -i: use "git sequencer--helper --make-patch"
- sequencer: free memory used in "make_patch" function
- sequencer: add "make_patch" function to save a patch
- sequencer: add "builtin-sequencer--helper.c"
* en/fast-export (Thu Jun 25 22:48:33 2009 -0600) 7 commits
+ fast-export: Document the fact that git-rev-list arguments are
accepted
+ Add new fast-export testcases
+ fast-export: Add a --tag-of-filtered-object option for newly
dangling tags
+ fast-export: Do parent rewriting to avoid dropping relevant
commits
+ fast-export: Make sure we show actual ref names instead of
"(null)"
+ fast-export: Omit tags that tag trees
+ fast-export: Set revs.topo_order before calling setup_revisions
Shawn? Dscho?
* jc/diff-whitespace-only-status (Sat May 23 01:15:35 2009 -0700) 2 commits
* jc/1.7.0-diff-whitespace-only-status (Sat May 23 01:15:35 2009 -0700) 2 commits
+ diff: Rename QUIET internal option to QUICK
+ diff: change semantics of "ignore whitespace" options
Possibly merge during 1.6.5, or 1.7.0 since this is a semantics change.
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 (Mon Feb 9 00:19:46 2009 -0800) 2 commits
+ Refuse deleting the current branch via push
+ Refuse updating the current branch in a non-bare repository via
push
This is old 'jc/deny-delete-current-1.7.0' and 'jc/1.7.0-push-safety'
topics redone.
* sb/read-tree (Thu Jun 25 22:14:10 2009 -0700) 2 commits
+ read-tree: migrate to parse-options
+ read-tree: convert unhelpful usage()'s to helpful die()'s
Will merge after 1.6.4
* sb/parse-options (Tue Jul 7 22:15:41 2009 -0700) 4 commits
+ prune-packed: migrate to parse-options
+ verify-pack: migrate to parse-options
+ verify-tag: migrate to parse-options
+ write-tree: migrate to parse-options
* ne/futz-upload-pack (Wed Jun 10 01:50:18 2009 +0200) 1 commit
+ Shift object enumeration out of upload-pack
Parse-options migration; should be in 'master' soonish.
Will merge after 1.6.4
* mk/grep-max-depth (Wed Jul 22 19:52:15 2009 +0200) 1 commit
+ grep: Add --max-depth option.
* cc/replace (Wed May 27 07:14:09 2009 +0200) 14 commits
+ t6050: check pushing something based on a replaced commit
@@ -252,27 +92,139 @@ Will merge after 1.6.4
"refs/replace/"
+ refs: add a "for_each_replace_ref" function
* jc/deny-delete-current-1.7.0 (Mon Feb 9 00:19:46 2009 -0800) 1 commit
- receive-pack: default receive.denyDeleteCurrent to refuse
Does not seem to hurt normal operation without "replace". The basic idea
should be easier and safer to use than the graft mechanism. I haven't
tried the replacement myself, though.
* jc/refuse-push-to-current-1.7.0 (Wed Feb 11 02:28:03 2009 -0800) 1 commit
- Refuse updating the current branch in a non-bare repository via
push
* ns/init-mkdir (Sat Jul 25 06:59:28 2009 +0900) 1 commit
+ git init: optionally allow a directory argument
These are for 1.7.0, but the messages when they trigger together may need
to be rethought. Will be kept in 'next' during 1.6.5 cycle.
Straightforward usability change. Should be in 'master' soonish.
* mk/init-db-parse-options (Sun Jul 12 12:24:32 2009 +0200) 1 commit
+ init-db: migrate to parse-options
* jk/maint-show-tag (Sat Jul 18 06:14:37 2009 -0400) 2 commits
+ show: add space between multiple items
+ show: suppress extra newline when showing annotated tag
* jc/apply-epoch-patch (Fri Jul 10 18:38:08 2009 -0700) 1 commit
+ apply: notice creation/removal patches produced by GNU diff
Better acceptance of some "GNU patch" output to create or remove files.
----------------------------------------------------------------
[In 'pu']
* jp/symlink-dirs (Sun Jun 14 15:08:28 2009 +0200) 2 commits
- lstat_cache: guard against full match of length of 'name'
parameter
- Demonstrate bugs when a directory is replaced with a symlink
James's test scripts to expose corner case bugs in the merge and branch
switching machinery.
* jh/vcs-cvs (Mon Jul 27 03:04:17 2009 +0200) 15 commits
- Introduce a 'marks <filename>' feature to the foreign transport
code
- Teach foreign transport code to perform the "capabilities" command
- Preliminary clarifications to git-vcs documentation
- fast-import: Add support for importing commit notes
- Add a transport implementation using git-vcs-* helpers
- Allow programs to not depend on remotes having urls
- Use a function to determine whether a remote is valid
- Add specification of git-vcs-* helper programs
- Merge branch 'db/transport-shim' into jh/vcs-cvs
- git-http-fetch: not a builtin
- Use an external program to implement fetching with curl
- Add support for external programs for handling native fetches
- Add option for using a foreign VCS
- Document details of transport function APIs
- Allow late reporting of fetched hashes
With its 6th patch replaced to keep the pathname syntax of the fast-import
language, but without the commits near the tip of the old series.
* db/transport-shim (Tue Jul 28 02:08:53 2009 -0400) 3 commits
- git-http-fetch: not a builtin
- Use an external program to implement fetching with curl
- Add support for external programs for handling native fetches
* jh/notes (Wed Jul 29 04:25:26 2009 +0200) 8 commits
- t3302-notes-index-expensive: Speed up create_repo()
- fast-import: Add support for importing commit notes
- First draft of notes tree parser with support for fanout subtrees
- Teach "-m <msg>" and "-F <file>" to "git notes edit"
- Add an expensive test for git-notes
- Speed up git notes lookup
- Add a script to edit/inspect notes
- Introduce commit notes
jh/vcs-cvs topic needs to be rebuilt, merging this instead of having its
own copy of "fast-import: Add support for importing commit notes".
* db/foreign-scm (Tue Mar 24 23:04:12 2009 -0400) 3 commits
- Add option for using a foreign VCS
- Document details of transport function APIs
- Allow late reporting of fetched hashes
* cc/sequencer-rebase-i (Fri Jun 26 23:08:46 2009 +0200) 4 commits
- rebase -i: use "git sequencer--helper --make-patch"
- sequencer: free memory used in "make_patch" function
- sequencer: add "make_patch" function to save a patch
- sequencer: add "builtin-sequencer--helper.c"
I do not know how this will interact with what Dscho has been doing.
* jc/mailinfo-remove-brackets (Wed Jul 15 15:31:12 2009 -0700) 1 commit
- mailinfo: -b option keeps [bracketed] strings that is not a
[PATCH] marker
* jn/gitweb-blame (Sat Jul 25 00:44:10 2009 +0200) 10 commits
- gitweb: Create links leading to 'blame_incremental' using
JavaScript
- gitweb: Incremental blame (proof of concept)
- gitweb: Add optional "time to generate page" info in footer
- gitweb: Add -partial_query option to href() subroutine
- gitweb: Use light/dark for class names also in 'blame' view
- gitweb: Add author initials in 'blame' view, a la "git gui blame"
- gitweb: Mark commits with no "previous" in 'blame' view
- gitweb: Use "previous" header of git-blame -p in 'blame' view
- gitweb: Mark boundary commits in 'blame' view
- gitweb: Make .error style generic
There may have been updates during 1.6.4-rc period that I missed.
* tr/reset-checkout-patch (Tue Jul 28 23:20:11 2009 +0200) 5 commits
- Implement 'git stash save --patch'
- Implement 'git checkout --patch'
- Implement 'git reset --patch'
- builtin-add: refactor the meat of interactive_add()
- git-apply--interactive: Refactor patch mode code
* jc/log-tz (Tue Mar 3 00:45:37 2009 -0800) 1 commit
- Allow --date=local --date=other-format to work as expected
* pb/tracking (Thu Jul 16 16:26:15 2009 -0500) 7 commits
- branch.c: if remote is not config'd for branch, don't try delete
push config
- branch, checkout: introduce autosetuppush
- move deletion of merge configuration to branch.c
- remote: add per-remote autosetupmerge and autosetuprebase
configuration
- introduce a struct tracking_config
- branch: install_branch_config and struct tracking refactoring
- config: allow false and true values for branch.autosetuprebase
This has been reverted from 'next' for now to give it a fresh start.
----------------------------------------------------------------
[Dropped]
* ae/maint-mailinfo-rm-only-one-patch-marker (Mon Jun 29 11:55:51 2009 +0200) 1 commit
- mailinfo: Remove only one set of square brackets
* ar/maint-1.6.2-merge-recursive-d-f (Mon May 11 21:25:36 2009 +0200) 2 commits
. Fix for a merge where a branch has an F->D transition
. Add a reminder test case for a merge with F/D transition
* lt/read-directory (Fri May 15 12:01:29 2009 -0700) 3 commits
. Add initial support for pathname conversion to UTF-8
. read_directory(): infrastructure for pathname character set
conversion
. Add 'fill_directory()' helper function for directory traversal
The fix the author hinted iffy is dropped for now, but the test case is
already in 'master' to remind us.
It appears that we may want to settle with a MacOS X specific conversion,
if somebody really cares enough.