{"thread":{"id":"30862","subject":"What's cooking in git.git (Jun 2012, #06; Thu, 21)","startedAt":"2012-06-21T22:53:14Z","lastAt":"2012-06-21T22:53:14Z","messageCount":1,"participants":["Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"194052","messageId":"7vk3z0qntx.fsf@alter.siamese.dyndns.org","threadId":"30862","inReplyTo":null,"subject":"What's cooking in git.git (Jun 2012, #06; Thu, 21)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2012-06-21T22:53:14Z","receivedAt":"2012-06-21T22:53:14Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Here are the topics that have been cooking.  Commits prefixed with '-' are\nonly in 'pu' (proposed updates) while commits prefixed with '+' are in 'next'.\n\nA brown-paper bag release 1.7.11.1 is out.\n\nYou can find the changes described here in the integration branches of the\nrepositories listed at\n\n    http://git-blame.blogspot.com/p/git-public-repositories.html\n\n--------------------------------------------------\n[Graduated to \"master\"]\n\n* jc/bundle-complete-notice (2012-06-04) 1 commit\n  (merged to 'next' on 2012-06-19 at b42227b)\n + tweak \"bundle verify\" of a complete history\n\nOriginally merged to 'next' on 2012-06-04.\n\nRunning \"git bundle verify\" on a bundle that records a complete\nhistory said \"it requires these 0 commits\".\n\n* jc/ls-files-i-dir (2012-06-05) 6 commits\n  (merged to 'next' on 2012-06-19 at 4a7aa99)\n + dir.c: make excluded() file scope static\n + unpack-trees.c: use path_excluded() in check_ok_to_remove()\n + builtin/add.c: use path_excluded()\n + path_excluded(): update API to less cache-entry centric\n + ls-files -i: micro-optimize path_excluded()\n + ls-files -i: pay attention to exclusion of leading paths\n\nOriginally merged to 'next' on 2012-06-08.\n\n\"git ls-files --exclude=t -i\" did not consider anything under t/\nas excluded, as it did not pay attention to exclusion of leading\npaths while walking the index.  Other two users of excluded() are\nalso updated.\n\n* jc/request-pull-match-tagname (2012-06-01) 1 commit\n  (merged to 'next' on 2012-06-19 at bb96d6c)\n + request-pull: really favor a matching tag\n\nOriginally merged to 'next' on 2012-06-05.\n\n\"git request-pull $url dev\" when the tip of \"dev\" branch was tagged\nwith \"ext4-for-linus\" used the contents from the tag in the output\nbut still asked the \"dev\" branch to be pulled, not the tag.\n\n* jk/clone-local (2012-05-30) 2 commits\n  (merged to 'next' on 2012-06-19 at a42bbcc)\n + clone: allow --no-local to turn off local optimizations\n + docs/clone: mention that --local may be ignored\n\nOriginally merged to 'next' on 2012-06-05.\n\n\"git clone --local $path\" started its life as an experiment to\noptionally use link/copy when cloning a repository on the disk, but\nwe didn't deprecate it after we made the option a no-op to always\nuse the optimization.\n\nThe command learns \"--no-local\" option to turn this off, as a more\nexplicit alternative over use of file:// URL.\n\n* jk/maint-t1304-setfacl (2012-06-07) 1 commit\n  (merged to 'next' on 2012-06-19 at 2449521)\n + t1304: improve setfacl prerequisite setup\n\nOriginally merged to 'next' on 2012-06-08.\n\nWorks around a false test failure caused by a bug in ecryptofs.\n\n* jk/version-string (2012-06-03) 3 commits\n  (merged to 'next' on 2012-06-19 at 12f8e07)\n + http: get default user-agent from git_user_agent\n + version: add git_user_agent function\n + move git_version_string into version.c\n (this branch is used by jk/version-string-dependency.)\n\nOriginally merged to 'next' on 2012-06-05.\n\nTeaches git native protocol agents to show software version over the\nwire.\n\n* vr/help-per-platform (2012-06-06) 1 commit\n  (merged to 'next' on 2012-06-19 at d9a08ba)\n + help: use HTML as the default help format on Windows\n\nOriginally merged to 'next' on 2012-06-08\n\nWe used to always default to \"man\" format even on platforms where\n\"man\" viewer is not widely available.\n\n--------------------------------------------------\n[Stalled]\n\n* db/vcs-svn (2012-06-01) 6 commits\n - vcs-svn: drop no-op reset methods\n - vcs-svn: fix signedness warnings\n - vcs-svn: prefer strstr over memmem\n - vcs-svn: prefer constcmp to prefixcmp\n - vcs-svn: simplify cleanup in apply_one_window()\n - vcs-svn: fix clang-analyzer error\n\nWaiting for Jonathan's clean-up offered earlier.\n\n* vr/use-our-perl-in-tests (2012-06-12) 3 commits\n - t/README: add a bit more Don'ts\n - tests: enclose $PERL_PATH in duoble quotes\n - t: Replace 'perl' by $PERL_PATH\n\nNeeds more work.\n\nThere are still unconverted use of bare 'perl' remaining in the test\nscripts, the second patch needs its title typofixed, and PERL_PATH\nneeds to be exported to the environment from test-lib.sh.\n\n* jc/apply-3way (2012-06-13) 19 commits\n - apply --3way: tests\n - apply: document --3way option\n - apply: allow rerere() upon --3way results\n - apply: register conflicted stages to the index\n - apply: --3way with add/add conflict\n - apply: move verify_index_match() higher\n - apply: plug the three-way merge logic in\n - apply: fall back on three-way merge\n - apply: accept -3/--3way command line option\n - apply: move \"already exists\" logic to check_to_create()\n - apply: move check_to_create_blob() closer to its sole caller\n - apply: further split load_preimage()\n - apply: refactor \"previous patch\" logic\n - apply: split load_preimage() helper function out\n - apply: factor out checkout_target() helper function\n - apply: refactor read_file_or_gitlink()\n - apply: clear_image() clears things a bit more\n - apply: a bit more comments on PATH_TO_BE_DELETED\n - apply: fix an incomplete comment in check_patch()\n\n\"git apply\" learns to wiggle the base version and perform three-way merge\nwhen a patch does not exactly apply to the version you have.\n\nWaiting for comments.\n\n* nl/http-proxy-more (2012-05-11) 2 commits\n - http: rename HTTP_REAUTH to HTTP_AUTH_RETRY\n - http: Avoid limit of retrying request only twice\n\nI queued only the later two patches from this series, even though they do\nnot make much sense without the first one that seems to need a bit more\nwork, so that we won't forget.\n\nWill discard without prejudice, unless rerolled.\n\n* jk/no-op-push-message (2012-05-30) 1 commit\n - improve no-op push output\n\nRewords the status message of \"git push\" that pushed only one ref\ndifferently from \"Everything up-to-date\", to give a bit more help to\npeople who get the message when their current branch is not pushed.\n\nI had an impression after the discussion thread that a redesign is\ncoming, but it hasn't happened yet.\n\nWill discard without prejudice, unless rerolled.\n\n* sg/bash-prompt (2012-05-09) 4 commits\n . completion: respect $GIT_DIR\n . completion: use __gitdir() in _git_log()\n - tests: add tests for the bash prompt functions in the completion script\n - tests: move code to run tests under bash into a helper library\n (this branch is tangled with fc/git-prompt-script.)\n\nThis is only the \"correction\" bits taken from the beginning of a\nlarger series that is to be rerolled.  The tip commit has been\ncherry-picked to fc/fc/git-prompt-script topic.\n\nWill discard without prejudice.\n\n* jc/maint-push-refs-all (2012-05-04) 2 commits\n - get_fetch_map(): tighten checks on dest refs\n - fetch/push: allow refs/*:refs/*\n\nAllows pushing and fetching refs/stash.\nThere still seem to be other bugs hiding (e.g. try pushing twice).\n\nNot ready.\n\n* jc/run-hook-env-1 (2012-03-11) 1 commit\n . run_hook(): enhance the interface to pass arbitrary environment\n\nUpdates run_hook() API to be much less specific to \"commit\".  It would\nonly be useful if people start doing more interesting things with hooks.\n\nWill discard.\n\n* jc/split-blob (2012-04-03) 6 commits\n - chunked-object: streaming checkout\n - chunked-object: fallback checkout codepaths\n - bulk-checkin: support chunked-object encoding\n - bulk-checkin: allow the same data to be multiply hashed\n - new representation types in the packstream\n - packfile: use varint functions\n\nNot ready.\n\nI finished the streaming checkout codepath, but as explained in\n127b177 (bulk-checkin: support chunked-object encoding, 2011-11-30),\nthese are still early steps of a long and painful journey. At least\npack-objects and fsck need to learn the new encoding for the series\nto be usable locally, and then index-pack/unpack-objects needs to\nlearn it to be used remotely.\n\nGiven that I heard a lot of noise that people want large files, and\nthat I was asked by somebody at GitTogether'11 privately for an\nadvice on how to pay developers (not me) to help adding necessary\nsupport, I am somewhat dissapointed that the original patch series\nthat was sent almost two months ago still remains here without much\ncomments and updates from the developer community. I even made the\ninterface to the logic that decides where to split chunks easily\nreplaceable, and I deliberately made the logic in the original patch\nextremely stupid to entice others, especially the \"bup\" fanboys, to\ncome up with a better logic, thinking that giving people an easy\ntarget to shoot for, they may be encouraged to help out. The plan is\nnot working :-(.\n\n--------------------------------------------------\n[Cooking]\n\n* cn/cherry-pick-range-docs (2012-06-15) 2 commits\n  (merged to 'next' on 2012-06-21 at 5cf7f97)\n + git-cherry-pick.txt: clarify the use of revision range notation\n + Documentation: --no-walk is no-op if range is specified\n\nThe command line argument of \"git cherry-pick maint master..next\" is\njust an ordinary revision range, which is unintuitive and at least\ndeserves documentation.\n\nWill merge to 'master'.\n\n* jc/sha1-name-more (2012-06-21) 9 commits\n - sha1_name.c: get_describe_name() by definition groks only commits\n - sha1_name.c: teach get_short_sha1() a commit-only option\n - sha1_name.c: allow get_short_sha1() to take other flags\n - sha1_name.c: restructure disambiguation of short names\n - sha1_name.c: correct misnamed \"canonical\" and \"res\"\n - sha1_name.c: refactor find_short_packed_object()\n - sha1_name.c: rename \"now\" to \"current\"\n - sha1_name.c: clarify what \"fake\" is for in find_short_object_filename()\n - sha1_name.c: indentation fix\n\nTeaches the object name parser that a \"git describe\" output is\nalways a commit object, to prolong the lifetime of abbreviated\nobject name in it.\n\n* jk/version-string-dependency (2012-06-20) 11 commits\n - Makefile: move GIT-VERSION-FILE dependencies closer to use\n - Makefile: build instaweb similar to other scripts\n - Makefile: update scripts when build-time parameters change\n - Makefile: do not replace @@GIT_VERSION@@ in shell scripts\n - Makefile: split prefix flags from GIT-CFLAGS\n - Makefile: split GIT_USER_AGENT from GIT-CFLAGS\n - Makefile: do not replace @@GIT_USER_AGENT@@ in scripts\n - Makefile: apply dependencies consistently to sparse/asm targets\n - Makefile: do not have git.o depend on common-cmds.h\n - Makefile: fold MISC_H into LIB_H\n - Makefile: sort LIB_H list\n\nWill hold in 'pu' to give Peff and Jonathan to work out improvements\nfor a week or so.\n\n* jn/perl-makemaker-leading-paths (2012-06-15) 1 commit\n - perl/Makefile: move \"mkdir -p\" to module installation loop for maintainability\n\nWill wait for a few days to see if somebody comes up with a more\nconcise and cleaner way to do this, but otherwise this looked good.\n\n* mm/verify-filename-fix (2012-06-18) 2 commits\n  (merged to 'next' on 2012-06-21 at d03dace)\n + verify_filename(): ask the caller to chose the kind of diagnosis\n + sha1_name: do not trigger detailed diagnosis for file arguments\n\n\"git diff COPYING HEAD:COPYING\" gave a nonsense error message that\nclaimed that the treeish HEAD did not have COPYING in it.\n\nWill merge to 'master'.\n\n* tr/maint-show-walk (2012-06-19) 2 commits\n - show: fix \"range implies walking\"\n - Demonstrate git-show is broken with ranges\n\nFixes \"git show\"'s auto-walking behaviour, and make it behave just\nlike \"git log\" does when it walks.\n\nNote that this is different from Thomas's patch.\n\n* fc/git-prompt-script (2012-06-19) 7 commits\n - completion: respect $GIT_DIR\n - completion: warn people about duplicated function\n - completion: split __git_ps1 into a separate script\n - completion: remove executable mode\n - Merge branch 'fc/git-complete-helper' into fc/git-prompt-script\n - tests: add tests for the bash prompt functions in the completion script\n - tests: move code to run tests under bash into a helper library\n (this branch is tangled with sg/bash-prompt.)\n\nSplits a rather heavy-ish \"git completion\" script out and creates a\nseparate \"git prompting\" script, to help lazy-autoloading of the\ncompletion part while making prompting part always available.\n\nWill merge to 'next'.\n\n* lm/git-blame-el (2012-06-14) 3 commits\n  (merged to 'next' on 2012-06-21 at 6514487)\n + git-blame.el: Do not use bare 0 to mean (point-min)\n + git-blame.el: Use with-current-buffer where appropriate\n + git-blame.el: Do not use goto-line in lisp code\n\nWill merge to 'master'.\n\n* lp/no-cmd-http-fetch (2012-06-15) 1 commit\n  (merged to 'next' on 2012-06-21 at 242a10e)\n + builtin.h: remove unused cmd_<foo> declarations\n\nWill merge to 'master'.\n\n* jk/diff-no-index-pager (2012-06-15) 2 commits\n  (merged to 'next' on 2012-06-21 at e2a2562)\n + do not run pager with diff --no-index --quiet\n + fix pager.diff with diff --no-index\n\n\"git diff --no-index\" did not work with pagers correctly.\n\nWill merge to 'master'.\n\n* nd/i18n-branch-lego (2012-06-07) 1 commit\n  (merged to 'next' on 2012-06-21 at 0cb53fc)\n + Remove i18n legos in notifying new branch tracking setup\n\nRestructure the way message strings are created, in preparation for\nmarking them for i18n.\n\nWill merge to 'master'.\n\n* nd/i18n-misc (2012-06-07) 3 commits\n  (merged to 'next' on 2012-06-21 at 0a82040)\n + rerere: remove i18n legos in result message\n + notes-merge: remove i18n legos in merge result message\n + reflog: remove i18n legos in pruning message\n\nRestructure the way message strings are created, in preparation for\nmarking them for i18n.\n\nWill merge to 'master'.\n\n* rr/doc-commit (2012-06-08) 1 commit\n  (merged to 'next' on 2012-06-21 at af8301c)\n + commit: document a couple of options\n\nWill merge to 'master'.\n\n* hv/remote-end-hung-up (2012-06-19) 1 commit\n - remove the impression of unexpectedness when access is denied\n\nWill merge to 'next'.\n\n* hv/submodule-checkout-nuke-submodules (2012-06-11) 1 commit\n - update-index: allow overwriting existing submodule index entries\n\nWill merge to 'next'.\n\n* jc/rev-list-simplify-merges-first-parent (2012-06-13) 3 commits\n - revision: ignore side parents while running simplify-merges\n - revision: note the lack of free() in simplify_merges()\n - revision: \"simplify\" options imply topo-order sort\n\nI need to send this out to the list for re-review.\n\n* jc/ustar-checksum-is-unsigned (2012-06-13) 1 commit\n  (merged to 'next' on 2012-06-21 at bb8e2b0)\n + archive: ustar header checksum is computed unsigned\n\n\"git archive\" incorrectly computed the header checksum; the symptom\nwas observed only when using pathnames with hi-bit set.\n\nWill merge to 'master'.\n\n* rs/git-blame-mapcar-mapc (2012-06-10) 1 commit\n  (merged to 'next' on 2012-06-21 at 71a3b36)\n + git-blame.el: use mapc instead of mapcar\n\nWill merge to 'master'.\n\n* rs/ipv6-ssh-url (2012-06-13) 1 commit\n  (merged to 'next' on 2012-06-21 at d0116a8)\n + git: Wrong parsing of ssh urls with IPv6 literals ignores port\n\nWill merge to 'master'.\n\nssh:// URLs to IPv6 hosts with custom port number were parsed\nincorrectly.\n\n* nd/exclude-workaround-top-heavy (2012-06-07) 3 commits\n - exclude: do strcmp as much as possible before fnmatch\n - dir.c: get rid of the wildcard symbol set in no_wildcard()\n - Unindent excluded_from_list()\n\nAttempts to optimize matching with an exclude pattern with a deep\ndirectory hierarchy by taking the part that specifies leading path\nwithout wildcard literally.\n\nWill merge to 'next'.\n\n* lk/more-helpful-status-hints (2012-06-14) 4 commits\n - status: better advices when splitting a commit (during rebase -i)\n - status: don't suggest \"git rm\" or \"git add\" if not appropriate\n - t7512-status-help.sh: better advices for git status\n - wt-status.*: better advices for git status added\n\nWill merge to 'next'.\n\n* jk/no-more-pre-exec-callback (2012-06-05) 1 commit\n - pager: drop \"wait for output to run less\" hack\n\nOn hold for 6 months until ancient \"less\" goes extinct.\n\n* lk/rebase-i-x (2012-06-13) 1 commit\n - rebase -i: teach \"--exec <cmd>\"\n\nAdds -x <cmd> to \"rebase -i\" to insert \"exec <cmd>\" after each\ncommit in the resulting history.\n\nWill merge to 'next'.\n\n* nd/stream-pack-objects (2012-05-29) 1 commit\n - pack-objects: use streaming interface for reading large loose blobs\n\nWill merge to 'next'.\n\n* jk/no-more-asciidoc7 (2012-05-30) 2 commits\n  (merged to 'next' on 2012-06-19 at a36b498)\n + docs: drop antique comment from Makefile\n + docs: drop asciidoc7compatible flag\n\nOriginally merged to 'next' on 2012-06-05.\n\nWe no longer use AsciiDoc7 syntax in our documentation and favor a\nmore modern style.\n\nWill merge to 'master'.\n\n* nd/stream-index-pack (2012-05-24) 4 commits\n - index-pack: use streaming interface for collision test on large blobs\n - index-pack: factor out unpack core from get_data_from_pack\n - index-pack: use streaming interface on large blobs (most of the time)\n - index-pack: hash non-delta objects while reading from stream\n\nUse streaming API to read from the object store to avoid having to hold\na large blob object in-core while running index-pack.\n\nWill merge to 'next'.\n\n* js/submodule-relative (2012-06-14) 5 commits\n - t7400: avoid path mangling issues\n - submodule: fix handling of superproject origin URLs like foo, ./foo and ./foo/bar\n - submodule: fix sync handling of some relative superproject origin URLs\n - submodule: document failure to handle relative superproject origin URLs\n - submodule: additional regression tests for relative URLs\n\nMakes \"git submodule\" deal with nested submodule structure where a\nmodule is contained within a module whose origin is specified as a\nrelative URL to its superproject's origin.\n\nWill merge to 'next'.\n\n* mm/push-default-switch-warning (2012-06-20) 1 commit\n - push: start warning upcoming default change for push.default\n\nWill merge to 'next'.\n\nHopwefully we can have a solidly tested series early in 1.7.12 or\n1.7.13 at the latest.\n\n--------------------------------------------------\n[Discarded]\n\n* cb/daemon-test-race-fix (2012-04-27) 2 commits\n  (merged to 'next' on 2012-04-27 at 84bbcf8)\n + Revert \"git-daemon wrapper to wait until daemon is ready\"\n  (merged to 'next' on 2012-04-24 at d5c30be)\n + git-daemon wrapper to wait until daemon is ready\n\nReverted from 'next' to replace it with js/daemon-test-race-fix.\n\n* jc/merge-annotated-tag (2012-06-05) 2 commits\n . merge: allow fast-forwarding to an annotated but unsigned tag\n . merge: separte the logic to check for a signed tag\n\n\"git merge anno\" created a merge commit even when anno is an\nunsigned annotated tag that points at a commit that can be fast\nforwarded to; this came from a laziness of the implementation of\nmerging of signed tags in 1.7.9.  People may have different opinion\non making signed and unsigned annotated tag behave differently, but\nI tend to agree that it is probably not a good idea.\n"}]}