From: Junio C Hamano Date: Mon, 16 Jul 2012 05:32:41 +0000 (-0700) Subject: What's cooking (2012/07 #05) X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0b30d5504a602ef409b9bf3873acba8abb24cf9c;p=thirdparty%2Fgit.git What's cooking (2012/07 #05) --- diff --git a/whats-cooking.txt b/whats-cooking.txt index 39dc426ff0..1f9312ed44 100644 --- a/whats-cooking.txt +++ b/whats-cooking.txt @@ -1,9 +1,9 @@ To: git@vger.kernel.org -Subject: What's cooking in git.git (Jul 2012, #04; Fri, 13) -X-master-at: 48c42ff66244f754cc02d9bcca0962c791c7d57e -X-next-at: 534e6fe3169c23d847bc59311217dedfc6669bc1 +Subject: What's cooking in git.git (Jul 2012, #05; Sun, 15) +X-master-at: 31c79549b85c6393be4f40432f5b86ebc097fc7e +X-next-at: fdb3850c586fd1eced5e0456ef599f9c0c9191d9 -What's cooking in git.git (Jul 2012, #04; Fri, 13) +What's cooking in git.git (Jul 2012, #05; Sun, 15) -------------------------------------------------- Here are the topics that have been cooking. Commits prefixed with '-' are @@ -17,151 +17,133 @@ repositories listed at http://git-blame.blogspot.com/p/git-public-repositories.html -------------------------------------------------- -[Graduated to "master"] +[New Topics] -* 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. +* sn/doc-typofix (2012-07-14) 1 commit + - doc: A few minor copy edits. -------------------------------------------------- -[New Topics] +[Graduated to "master"] -* 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 +* ar/clone-honor-umask-at-top (2012-07-09) 3 commits + (merged to 'next' on 2012-07-10 at 680bc22) + + add: create ADD_EDIT.patch with mode 0666 + + rerere: make rr-cache fanout directory honor umask + + Restore umasks influence on the permissions of work tree created by clone -Should I wait for a reroll??? +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"). -* jl/maint-1.7.10-recurse-submodules-with-symlink (2012-07-12) 1 commit - - submodules: don't stumble over symbolic links when cloning recursively +* cw/amend-commit-without-message (2012-07-09) 1 commit + (merged to 'next' on 2012-07-10 at e7c75d5) + + Allow edit of empty message with commit --amend -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. +"commit --amend" used to refuse amending a commit with an empty log +message, with or without "--allow-empty-message". -* mm/config-xdg (2012-07-12) 2 commits - - fixup! config: fix several access(NULL) calls - - config: fix several access(NULL) calls +* 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 + (merged to 'next' on 2012-07-03 at 231c0a4) + + Add tests for rebase -i --root without --onto + + rebase -i: support --root without --onto -Either we do the stupid literal conversion (shown in fixup!), or the -reason why we special case missing HOME needs to be better explained. +"git rebase [-i] --root $tip" can now be used to rewrite all the +history down to the root. -* jk/revision-walk-stop-at-max-count (2012-07-13) 1 commit - - revision: avoid work after --max-count is reached +* jc/apply-3way (2012-07-09) 19 commits + (merged to 'next' on 2012-07-10 at fb5c872) + + apply: tests for the --3way option + + apply: document --3way option + + apply: allow rerere() to work on --3way results + + apply: register conflicted stages to the index + + apply: --3way with add/add conflict + + apply: move verify_index_match() higher + + apply: plug the three-way merge logic in + + apply: fall back on three-way merge + + apply: accept -3/--3way command line option + + apply: move "already exists" logic to check_to_create() + + apply: move check_to_create_blob() closer to its sole caller + + apply: further split load_preimage() + + apply: refactor "previous patch" logic + + apply: split load_preimage() helper function out + + apply: factor out checkout_target() helper function + + apply: refactor read_file_or_gitlink() + + apply: clear_image() clears things a bit more + + apply: a bit more comments on PATH_TO_BE_DELETED + + apply: fix an incomplete comment in check_patch() -"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. +"git apply" learns to wiggle the base version and perform three-way merge +when a patch does not exactly apply to the version you have. -* pg/maint-1.7.9-am-where-is-patch (2012-07-13) 1 commit - - am: indicate where a failed patch is to be found +* jk/index-pack-streaming-fix (2012-07-10) 1 commit + (merged to 'next' on 2012-07-13 at c575338) + + index-pack: loop while inflating objects in unpack_data -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. +The streaming index-pack introduced in 1.7.11 had a data corruption +bug, and this should fix it. + +* 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/push-delete-ref-error-message (2012-07-03) 1 commit + (merged to 'next' on 2012-07-09 at 82c6bd2) + + push: don't guess at qualifying remote refs on deletion + +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. + +* 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 + + Makefile: move GIT-VERSION-FILE dependencies closer to use + + Makefile: build instaweb similar to other scripts + + Makefile: update scripts when build-time parameters change + + Makefile: do not replace @@GIT_VERSION@@ in shell scripts + + Makefile: split prefix flags from GIT-CFLAGS + + Makefile: be silent when only GIT_USER_AGENT changes + + Makefile: split GIT_USER_AGENT from GIT-CFLAGS + + Makefile: do not replace @@GIT_USER_AGENT@@ in scripts + + Makefile: apply dependencies consistently to sparse/asm targets + + Makefile: do not have git.o depend on common-cmds.h + + Makefile: fold XDIFF_H and VCSSVN_H into LIB_H + + Makefile: fold MISC_H into LIB_H + + Makefile: sort LIB_H list + +Tightens dependency rules to avoid unnecessary recompilation. + +* pw/git-p4-jobs (2012-07-05) 3 commits + (merged to 'next' on 2012-07-10 at c6ef8f9) + + git p4: notice Jobs lines in git commit messages + + git p4 test: refactor marshal_dump + + git p4: remove unused P4Submit interactive setting + +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-12) 2 commits + (merged to 'next' on 2012-07-13 at 648a8ad) + + git p4: add support for 'p4 move' in P4Submit + + git p4: refactor diffOpts calculation + +* tg/maint-cache-name-compare (2012-07-11) 1 commit + (merged to 'next' on 2012-07-13 at 0d07ddc) + + 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 down to older maintenance releases. -------------------------------------------------- [Stalled] @@ -208,6 +190,51 @@ not working :-(. -------------------------------------------------- [Cooking] +* 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 + +Expecting a reroll. + +* jl/maint-1.7.10-recurse-submodules-with-symlink (2012-07-12) 1 commit + - submodules: don't stumble over symbolic links when cloning recursively + +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. + +Will merge to 'next'. + +* mm/config-xdg (2012-07-12) 2 commits + - fixup! config: fix several access(NULL) calls + - config: fix several access(NULL) calls + +Either we do the stupid literal conversion (shown in fixup!), or the +reason why we special case missing HOME needs to be better explained. + +* jk/revision-walk-stop-at-max-count (2012-07-13) 1 commit + - revision: avoid work after --max-count is reached + +"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. + +Will merge to 'next'. + +* 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. + +Will merge to 'next'. + * 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 @@ -219,22 +246,7 @@ 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'. +Will merge to 'master'. * mb/remote-default-nn-origin (2012-07-11) 6 commits - Teach get_default_remote to respect remote.default. @@ -248,49 +260,17 @@ 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. +Expecting a reroll. +"The first remote becomes the default" bit is better done as a +separate step. + * 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 - + apply: document --3way option - + apply: allow rerere() to work on --3way results - + apply: register conflicted stages to the index - + apply: --3way with add/add conflict - + apply: move verify_index_match() higher - + apply: plug the three-way merge logic in - + apply: fall back on three-way merge - + apply: accept -3/--3way command line option - + apply: move "already exists" logic to check_to_create() - + apply: move check_to_create_blob() closer to its sole caller - + apply: further split load_preimage() - + apply: refactor "previous patch" logic - + apply: split load_preimage() helper function out - + apply: factor out checkout_target() helper function - + apply: refactor read_file_or_gitlink() - + apply: clear_image() clears things a bit more - + apply: a bit more comments on PATH_TO_BE_DELETED - + apply: fix an incomplete comment in check_patch() - -"git apply" learns to wiggle the base version and perform three-way merge -when a patch does not exactly apply to the version you have. - * jl/submodule-rm (2012-07-05) 2 commits - rm: remove submodules from the index and the .gitmodules file - rm: don't fail when removing populated submodules @@ -304,36 +284,15 @@ Expecting a reroll. 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() - -Needs to be eyeballed for the correctness of the esc_html() in the tip one. + (merged to 'next' on 2012-07-13 at 780e16a) + + gitweb: Add support to Link: tag + + gitweb: Handle other types of tag in git_print_log + + gitweb: Cleanup git_print_log() -* pw/git-p4-jobs (2012-07-05) 3 commits - (merged to 'next' on 2012-07-10 at c6ef8f9) - + git p4: notice Jobs lines in git commit messages - + git p4 test: refactor marshal_dump - + git p4: remove unused P4Submit interactive setting - -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-12) 2 commits - - git p4: add support for 'p4 move' in P4Submit - - git p4: refactor diffOpts calculation - -Will merge to 'next'. - -* ar/clone-honor-umask-at-top (2012-07-09) 3 commits - (merged to 'next' on 2012-07-10 at 680bc22) - + add: create ADD_EDIT.patch with mode 0666 - + rerere: make rr-cache fanout directory honor umask - + Restore umasks influence on the permissions of work tree created by clone +Teach gitweb to pay attention to various forms of credits that are +similar to "Signed-off-by:" lines. -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"). +Needs to be eyeballed for the correctness of the esc_html() in the tip one. * ph/stash-rerere (2012-07-08) 2 commits - stash: invoke rerere in case of conflict @@ -341,50 +300,6 @@ writability (e.g. by setting "umask 002"). Will be rerolled but is going in the right direction. -* 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 - + Makefile: move GIT-VERSION-FILE dependencies closer to use - + Makefile: build instaweb similar to other scripts - + Makefile: update scripts when build-time parameters change - + Makefile: do not replace @@GIT_VERSION@@ in shell scripts - + Makefile: split prefix flags from GIT-CFLAGS - + Makefile: be silent when only GIT_USER_AGENT changes - + Makefile: split GIT_USER_AGENT from GIT-CFLAGS - + Makefile: do not replace @@GIT_USER_AGENT@@ in scripts - + Makefile: apply dependencies consistently to sparse/asm targets - + Makefile: do not have git.o depend on common-cmds.h - + Makefile: fold XDIFF_H and VCSSVN_H into LIB_H - + Makefile: fold MISC_H into LIB_H - + Makefile: sort LIB_H list - -Tightens dependency rules to avoid unnecessary recompilation. - -* cw/amend-commit-without-message (2012-07-09) 1 commit - (merged to 'next' on 2012-07-10 at e7c75d5) - + Allow edit of empty message with commit --amend - -"commit --amend" used to refuse amending a commit with an empty log -message, with or without "--allow-empty-message". - -* jk/push-delete-ref-error-message (2012-07-03) 1 commit - (merged to 'next' on 2012-07-09 at 82c6bd2) - + push: don't guess at qualifying remote refs on deletion - -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. - -* 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 - (merged to 'next' on 2012-07-03 at 231c0a4) - + Add tests for rebase -i --root without --onto - + rebase -i: support --root without --onto - -"git rebase [-i] --root $tip" can now be used to rewrite all the -history down to the root. - * lt/commit-tree-guess-utf-8 (2012-06-28) 1 commit - commit/commit-tree: correct latin1 to utf-8 @@ -394,7 +309,7 @@ pass it through convert-from-latin1-to-utf8 and see if it makes sense" heuristics "git mailinfo" already uses. A draft from Linus received privately without a log message. -Hopefully it will be rerolled. +Expecting a reroll. * jc/test-lib-source-build-options-early (2012-06-24) 1 commit - test-lib: reorder and include GIT-BUILD-OPTIONS a lot earlier @@ -407,6 +322,8 @@ one of its early operations. Needs to be eyeballed by people who run tests with exotic options like valgrind, --root=/dev/shm/somewhere, etc. +Will merge to 'next'. + * jc/sha1-name-more (2012-07-13) 27 commits (merged to 'next' on 2012-07-13 at 534e6fe) + t1512: match the "other" object names @@ -444,6 +361,8 @@ 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. +Will merge to 'master'. + * jk/no-more-pre-exec-callback (2012-06-05) 1 commit - pager: drop "wait for output to run less" hack