What's cooking (2012/07 #04)

This commit is contained in:
Junio C Hamano
2012-07-13 16:33:43 -07:00
parent dbf298f6ff
commit f913e9982d

View File

@@ -1,64 +1,167 @@
To: git@vger.kernel.org
Subject: What's cooking in git.git (Jul 2012, #03; Wed, 11)
X-master-at: 2b533592900ecebeb69e2dd1b70744433700ff2d
X-next-at: 03fbcf6d885017d6d49b32c4b9a7f578ebd6d0de
Subject: What's cooking in git.git (Jul 2012, #04; Fri, 13)
X-master-at: 48c42ff66244f754cc02d9bcca0962c791c7d57e
X-next-at: 534e6fe3169c23d847bc59311217dedfc6669bc1
What's cooking in git.git (Jul 2012, #03; Wed, 11)
What's cooking in git.git (Jul 2012, #04; Fri, 13)
--------------------------------------------------
Here are the topics that have been cooking. Commits prefixed with '-' are
only in 'pu' (proposed updates) while commits prefixed with '+' are in 'next'.
Many topics in flight are now in 'next' and all of them look more or
less done (knock wood). Many fixes that are already in 'master' are
now merged down to the 'maint' branch and 1.7.11.2 has been tagged.
The sixth batch of topics are now in 'master'.
You can find the changes described here in the integration branches of the
repositories listed at
http://git-blame.blogspot.com/p/git-public-repositories.html
--------------------------------------------------
[Graduated to "master"]
* jc/refactor-diff-stdin (2012-06-28) 3 commits
(merged to 'next' on 2012-07-09 at ef407ee)
+ diff-index.c: "git diff" has no need to read blob from the standard input
+ diff-index.c: unify handling of command line paths
+ diff-index.c: do not pretend paths are pathspecs
Due to the way "git diff --no-index" is bolted onto by touching the
low level code that is shared with the rest of the "git diff" code,
even though it has to work in a very different way, any comparison
that involves a file "-" at the root level incorrectly tried to read
from the standard input. This cleans up the no-index codepath
further to remove code that reads from the standard input from the
core side, which is never necessary when git is running its usual
diff operation.
* jn/vcs-svn (2012-07-05) 12 commits
(merged to 'next' on 2012-07-09 at 1d97a8f)
+ vcs-svn: allow 64-bit Prop-Content-Length
+ vcs-svn: suppress a signed/unsigned comparison warning
+ vcs-svn: suppress a signed/unsigned comparison warning
+ vcs-svn: suppress signed/unsigned comparison warnings
+ vcs-svn: use strstr instead of memmem
+ vcs-svn: use constcmp instead of prefixcmp
+ vcs-svn: simplify cleanup in apply_one_window
+ vcs-svn: avoid self-assignment in dummy initialization of pre_off
+ vcs-svn: drop no-op reset methods
+ vcs-svn: suppress -Wtype-limits warning
+ vcs-svn: allow import of > 4GiB files
+ vcs-svn: rename check_overflow and its arguments for clarity
Reroll of db/vcs-svn.
* mm/mediawiki-file-attachments (2012-07-04) 6 commits
(merged to 'next' on 2012-07-09 at 4b85fa2)
+ git-remote-mediawiki: improve support for non-English Wikis
(merged to 'next' on 2012-07-03 at 90f2f45)
+ git-remote-mediawiki: import "File:" attachments
+ git-remote-mediawiki: split get_mw_pages into smaller functions
+ git-remote-mediawiki: send "File:" attachments to a remote wiki
+ git-remote-mediawiki: don't "use encoding 'utf8';"
+ git-remote-mediawiki: don't compute the diff when getting commit message
(this branch is used by mm/mediawiki-tests.)
"mediawiki" remote helper (in contrib/) learned to handle file
attachments.
* mm/mediawiki-tests (2012-07-06) 12 commits
(merged to 'next' on 2012-07-09 at 4d874e8)
+ git-remote-mediawiki: be more defensive when requests fail
+ git-remote-mediawiki: more efficient 'pull' in the best case
+ git-remote-mediawiki: extract revision-importing loop to a function
+ git-remote-mediawiki: refactor loop over revision ids
+ git-remote-mediawiki: change return type of get_mw_pages
+ git-remote-mediawiki (t9363): test 'File:' import and export
+ git-remote-mediawiki: support for uploading file in test environment
+ git-remote-mediawiki (t9362): test git-remote-mediawiki with UTF8 characters
+ git-remote-mediawiki (t9361): test git-remote-mediawiki pull and push
+ git-remote-mediawiki (t9360): test git-remote-mediawiki clone
+ git-remote-mediawiki: test environment of git-remote-mediawiki
+ git-remote-mediawiki: scripts to install, delete and clear a MediaWiki
(this branch uses mm/mediawiki-file-attachments.)
* mz/rebase-no-mbox (2012-06-26) 4 commits
(merged to 'next' on 2012-07-03 at 5bf5c12)
+ am: don't call mailinfo if $rebasing
+ am --rebasing: get patch body from commit, not from mailbox
+ rebase --root: print usage on too many args
+ rebase: don't source git-sh-setup twice
Teach "am --rebasing" codepath to grab authorship, log message and
the patch text directly out of existing commits. This will help
rebasing commits that have confusing "diff" output in their log
messages.
* tb/sanitize-decomposed-utf-8-pathname (2012-07-08) 1 commit
(merged to 'next' on 2012-07-09 at 61b12c2)
+ git on Mac OS and precomposed unicode
Teaches git to normalize pathnames read from readdir(3) and all
arguments from the command line into precomposed UTF-8 (assuming
that they come as decomposed UTF-8) to work around issues on Mac OS.
I think there still are other places that need conversion
(e.g. paths that are read from stdin for some commands), but this
should be a good first step in the right direction.
* tg/ce-namelen (2012-07-08) 1 commit
(merged to 'next' on 2012-07-10 at 87755d8)
+ Replace strlen() with ce_namelen()
Trivially correct clean-up and micro optimization.
* tr/maint-show-walk (2012-06-19) 2 commits
(merged to 'next' on 2012-07-09 at c8e0e06)
+ show: fix "range implies walking"
+ Demonstrate git-show is broken with ranges
Fixes "git show"'s auto-walking behaviour, and make it behave just
like "git log" does when it walks.
Note that this is different from Thomas's patch.
--------------------------------------------------
[New Topics]
* jc/maint-filter-branch-epoch-date (2012-07-09) 1 commit
(merged to 'next' on 2012-07-10 at f9774ca)
+ filter-branch: do not forget the '@' prefix to force git-timestamp
* as/t4012-style-updates (2012-07-12) 7 commits
- t4012: use 'printf' instead of 'dd' to generate a binary file
- t4012: Re-indent test snippets
- t4012: Make --shortstat test more robust
- t4012: Break up pipe into serial redirections
- t4012: Actually quote the sed script
- t4012: Unquote git command fragment in test title
- t4012: modernize style for quoting
In 1.7.9 era, we taught "git rebase" about the raw timestamp format
but we did not teach the same trick to "filter-branch", which rolled
a similar logic on its own.
Should I wait for a reroll???
* jk/maint-commit-amend-only-no-paths (2012-07-10) 1 commit
(merged to 'next' on 2012-07-10 at 1c650c2)
+ commit: fix "--amend --only" with no pathspec
* jl/maint-1.7.10-recurse-submodules-with-symlink (2012-07-12) 1 commit
- submodules: don't stumble over symbolic links when cloning recursively
"git commit --amend --only --" was meant to allow "Clever" people to
rewrite the commit message without making any change even when they
have already changes for the next commit added to their index, but
it never worked as advertised since it was introduced in 1.3.0 era.
When "git submodule add" clones a submodule repository, it can get
confused where to store the resulting submodule repository in the
superproject's .git/ directory when there is a symbolic link in the
path to the current directory.
* jk/index-pack-streaming-fix (2012-07-10) 1 commit
- index-pack: loop while inflating objects in unpack_data
* mm/config-xdg (2012-07-12) 2 commits
- fixup! config: fix several access(NULL) calls
- config: fix several access(NULL) calls
This needs to go to 'master' soonish.
Either we do the stupid literal conversion (shown in fixup!), or the
reason why we special case missing HOME needs to be better explained.
* mb/remote-default-nn-origin (2012-07-11) 6 commits
- Teach get_default_remote to respect remote.default.
- Test that plain "git fetch" uses remote.default when on a detached HEAD.
- Teach clone to set remote.default.
- Teach "git remote" about remote.default.
- Teach remote.c about the remote.default configuration setting.
- Rename remote.c's default_remote_name static variables.
* jk/revision-walk-stop-at-max-count (2012-07-13) 1 commit
- revision: avoid work after --max-count is reached
* tg/ce-namelen-field (2012-07-11) 2 commits
- Strip namelen out of ce_flags into a ce_namelen field
- Merge branch 'tg/maint-cache-name-compare' into tg/ce-namelen-field
(this branch uses tg/maint-cache-name-compare.)
"git log -n 1 -- rarely-touched-path" was spending unnecessary
cycles after showing the first change to find the next one, only to
discard it.
* tg/maint-cache-name-compare (2012-07-11) 1 commit
- cache_name_compare(): do not truncate while comparing paths
(this branch is used by tg/ce-namelen-field.)
* pg/maint-1.7.9-am-where-is-patch (2012-07-13) 1 commit
- am: indicate where a failed patch is to be found
When "git am" failed, old timers knew to check .git/rebase-apply/patch
to see what went wrong, but we never told the users about it.
--------------------------------------------------
[Stalled]
@@ -105,6 +208,64 @@ not working :-(.
--------------------------------------------------
[Cooking]
* jc/maint-filter-branch-epoch-date (2012-07-12) 3 commits
(merged to 'next' on 2012-07-13 at d144342)
+ t7003: add test to filter a branch with a commit at epoch
+ date.c: Fix off by one error in object-header date parsing
(merged to 'next' on 2012-07-10 at f9774ca)
+ filter-branch: do not forget the '@' prefix to force git-timestamp
In 1.7.9 era, we taught "git rebase" about the raw timestamp format
but we did not teach the same trick to "filter-branch", which rolled
a similar logic on its own.
* jk/maint-commit-amend-only-no-paths (2012-07-10) 1 commit
(merged to 'next' on 2012-07-10 at 1c650c2)
+ commit: fix "--amend --only" with no pathspec
"git commit --amend --only --" was meant to allow "Clever" people to
rewrite the commit message without making any change even when they
have already changes for the next commit added to their index, but
it never worked as advertised since it was introduced in 1.3.0 era.
* jk/index-pack-streaming-fix (2012-07-10) 1 commit
- index-pack: loop while inflating objects in unpack_data
The streaming index-pack introduced in 1.7.11 had a data corruption
bug, and this should fix it.
Will merge to 'next'.
* mb/remote-default-nn-origin (2012-07-11) 6 commits
- Teach get_default_remote to respect remote.default.
- Test that plain "git fetch" uses remote.default when on a detached HEAD.
- Teach clone to set remote.default.
- Teach "git remote" about remote.default.
- Teach remote.c about the remote.default configuration setting.
- Rename remote.c's default_remote_name static variables.
When the user does not specify what remote to interact with, we
often attempt to use 'origin'. This can now be customized via a
configuration variable.
* tg/ce-namelen-field (2012-07-11) 2 commits
- Strip namelen out of ce_flags into a ce_namelen field
- Merge branch 'tg/maint-cache-name-compare' into tg/ce-namelen-field
(this branch uses tg/maint-cache-name-compare.)
Split lower bits of ce_flags field and creates a new ce_namelen
field in the in-core index structure.
* tg/maint-cache-name-compare (2012-07-11) 1 commit
- cache_name_compare(): do not truncate while comparing paths
(this branch is used by tg/ce-namelen-field.)
Even though the index can record pathnames longer than 1<<12 bytes,
in some places we were not comparing them in full, potentially
replacing index entries instead of adding.
Will merge to 'next', and then later down to older maintenance releases.
* jc/apply-3way (2012-07-09) 19 commits
(merged to 'next' on 2012-07-10 at fb5c872)
+ apply: tests for the --3way option
@@ -134,18 +295,20 @@ when a patch does not exactly apply to the version you have.
- rm: remove submodules from the index and the .gitmodules file
- rm: don't fail when removing populated submodules
Expecting a reroll.
* mh/maint-revisions-doc (2012-07-05) 2 commits
- Document rev^! and rev^@ as revision specifiers
- Make <refname> documentation more consistent.
The tip one will be rerolled.
Expecting a reroll of the tip one.
* nk/maint-gitweb-log-by-lines (2012-07-05) 3 commits
- gitweb: Add support to Link: tag
- gitweb: Handle other types of tag in git_print_log
- gitweb: Cleanup git_print_log()
Is the use of esc_html() in the tip one correct?
Needs to be eyeballed for the correctness of the esc_html() in the tip one.
* pw/git-p4-jobs (2012-07-05) 3 commits
(merged to 'next' on 2012-07-10 at c6ef8f9)
@@ -156,11 +319,11 @@ Is the use of esc_html() in the tip one correct?
Teach "git p4" to notice "Jobs:" in the log message and relay it to
Perforce to trigger its "jobs" support.
* pw/git-p4-move (2012-07-05) 2 commits
* pw/git-p4-move (2012-07-12) 2 commits
- git p4: add support for 'p4 move' in P4Submit
- git p4: refactor diffOpts calculation
Will be rerolled.
Will merge to 'next'.
* ar/clone-honor-umask-at-top (2012-07-09) 3 commits
(merged to 'next' on 2012-07-10 at 680bc22)
@@ -172,57 +335,12 @@ A handful of files and directories we create had tighter than
necessary permission bits when the user wanted to have group
writability (e.g. by setting "umask 002").
* jn/vcs-svn (2012-07-05) 12 commits
(merged to 'next' on 2012-07-09 at 1d97a8f)
+ vcs-svn: allow 64-bit Prop-Content-Length
+ vcs-svn: suppress a signed/unsigned comparison warning
+ vcs-svn: suppress a signed/unsigned comparison warning
+ vcs-svn: suppress signed/unsigned comparison warnings
+ vcs-svn: use strstr instead of memmem
+ vcs-svn: use constcmp instead of prefixcmp
+ vcs-svn: simplify cleanup in apply_one_window
+ vcs-svn: avoid self-assignment in dummy initialization of pre_off
+ vcs-svn: drop no-op reset methods
+ vcs-svn: suppress -Wtype-limits warning
+ vcs-svn: allow import of > 4GiB files
+ vcs-svn: rename check_overflow and its arguments for clarity
Reroll of db/vcs-svn.
Will merge to 'master'.
* mm/mediawiki-tests (2012-07-06) 12 commits
(merged to 'next' on 2012-07-09 at 4d874e8)
+ git-remote-mediawiki: be more defensive when requests fail
+ git-remote-mediawiki: more efficient 'pull' in the best case
+ git-remote-mediawiki: extract revision-importing loop to a function
+ git-remote-mediawiki: refactor loop over revision ids
+ git-remote-mediawiki: change return type of get_mw_pages
+ git-remote-mediawiki (t9363): test 'File:' import and export
+ git-remote-mediawiki: support for uploading file in test environment
+ git-remote-mediawiki (t9362): test git-remote-mediawiki with UTF8 characters
+ git-remote-mediawiki (t9361): test git-remote-mediawiki pull and push
+ git-remote-mediawiki (t9360): test git-remote-mediawiki clone
+ git-remote-mediawiki: test environment of git-remote-mediawiki
+ git-remote-mediawiki: scripts to install, delete and clear a MediaWiki
(this branch uses mm/mediawiki-file-attachments.)
Will merge to 'master'.
* ph/stash-rerere (2012-07-08) 2 commits
- stash: invoke rerere in case of conflict
- test: git-stash conflict sets up rerere
Will be rerolled but is going in the right direction.
* tg/ce-namelen (2012-07-08) 1 commit
(merged to 'next' on 2012-07-10 at 87755d8)
+ Replace strlen() with ce_namelen()
Trivially correct clean-up and micro optimization.
Will merge to 'master'.
* jn/makefile-cleanup (2012-07-09) 14 commits
(merged to 'next' on 2012-07-10 at f55e6a1)
+ Makefile: document ground rules for target-specific dependencies
@@ -257,20 +375,6 @@ The error message from "git push $there :bogo" mentioned we tried
and failed to guess what ref is being deleted based on the LHS of
the refspec, which we don't.
* tb/sanitize-decomposed-utf-8-pathname (2012-07-08) 1 commit
(merged to 'next' on 2012-07-09 at 61b12c2)
+ git on Mac OS and precomposed unicode
Teaches git to normalize pathnames read from readdir(3) and all
arguments from the command line into precomposed UTF-8 (assuming
that they come as decomposed UTF-8) to work around issues on Mac OS.
I think there still are other places that need conversion
(e.g. paths that are read from stdin for some commands), but this
should be a good first step in the right direction.
Will merge to 'master'.
* cw/rebase-i-root (2012-07-05) 3 commits
(merged to 'next' on 2012-07-05 at aeb4c56)
+ t3404: make test 57 work with dash and others
@@ -281,53 +385,6 @@ Will merge to 'master'.
"git rebase [-i] --root $tip" can now be used to rewrite all the
history down to the root.
* mm/mediawiki-file-attachments (2012-07-04) 6 commits
(merged to 'next' on 2012-07-09 at 4b85fa2)
+ git-remote-mediawiki: improve support for non-English Wikis
(merged to 'next' on 2012-07-03 at 90f2f45)
+ git-remote-mediawiki: import "File:" attachments
+ git-remote-mediawiki: split get_mw_pages into smaller functions
+ git-remote-mediawiki: send "File:" attachments to a remote wiki
+ git-remote-mediawiki: don't "use encoding 'utf8';"
+ git-remote-mediawiki: don't compute the diff when getting commit message
(this branch is used by mm/mediawiki-tests.)
"mediawiki" remote helper (in contrib/) learned to handle file
attachments.
Will merge to 'master'.
* mz/rebase-no-mbox (2012-06-26) 4 commits
(merged to 'next' on 2012-07-03 at 5bf5c12)
+ am: don't call mailinfo if $rebasing
+ am --rebasing: get patch body from commit, not from mailbox
+ rebase --root: print usage on too many args
+ rebase: don't source git-sh-setup twice
Teach "am --rebasing" codepath to grab authorship, log message and
the patch text directly out of existing commits. This will help
rebasing commits that have confusing "diff" output in their log
messages.
Will merge to 'master'.
* jc/refactor-diff-stdin (2012-06-28) 3 commits
(merged to 'next' on 2012-07-09 at ef407ee)
+ diff-index.c: "git diff" has no need to read blob from the standard input
+ diff-index.c: unify handling of command line paths
+ diff-index.c: do not pretend paths are pathspecs
Due to the way "git diff --no-index" is bolted onto by touching the
low level code that is shared with the rest of the "git diff" code,
even though it has to work in a very different way, any comparison
that involves a file "-" at the root level incorrectly tried to read
from the standard input. This cleans up the no-index codepath
further to remove code that reads from the standard input from the
core side, which is never necessary when git is running its usual
diff operation.
Will merge to 'master', and later down to older maintenance releases.
* lt/commit-tree-guess-utf-8 (2012-06-28) 1 commit
- commit/commit-tree: correct latin1 to utf-8
@@ -350,7 +407,11 @@ one of its early operations.
Needs to be eyeballed by people who run tests with exotic options
like valgrind, --root=/dev/shm/somewhere, etc.
* jc/sha1-name-more (2012-07-09) 25 commits
* jc/sha1-name-more (2012-07-13) 27 commits
(merged to 'next' on 2012-07-13 at 534e6fe)
+ t1512: match the "other" object names
(merged to 'next' on 2012-07-11 at d30ef51)
+ t1512: ignore whitespaces in wc -l output
(merged to 'next' on 2012-07-10 at 669dd92)
+ rev-parse --disambiguate=<prefix>
+ rev-parse: A and B in "rev-parse A..B" refer to committish
@@ -383,18 +444,6 @@ is always a commit object, "A" in "git log A" must be a committish,
and "A" and "B" in "git log A...B" both must be committish, etc., to
prolong the lifetime of abbreviated object names.
* tr/maint-show-walk (2012-06-19) 2 commits
(merged to 'next' on 2012-07-09 at c8e0e06)
+ show: fix "range implies walking"
+ Demonstrate git-show is broken with ranges
Fixes "git show"'s auto-walking behaviour, and make it behave just
like "git log" does when it walks.
Note that this is different from Thomas's patch.
Will merge to 'master'.
* jk/no-more-pre-exec-callback (2012-06-05) 1 commit
- pager: drop "wait for output to run less" hack