{"thread":{"id":"29329","subject":"What's cooking in git.git (Jan 2012, #02; Mon, 9)","startedAt":"2012-01-10T00:50:30Z","lastAt":"2012-01-10T00:50:30Z","messageCount":1,"participants":["Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"182195","messageId":"7vzkdwbctl.fsf@alter.siamese.dyndns.org","threadId":"29329","inReplyTo":null,"subject":"What's cooking in git.git (Jan 2012, #02; Mon, 9)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2012-01-10T00:50:30Z","receivedAt":"2012-01-10T00:50:30Z","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\n'next'.\n\nHere are the repositories that have my integration branches:\n\nWith maint, master, next, pu, todo:\n\n        git://git.kernel.org/pub/scm/git/git.git\n        git://repo.or.cz/alt-git.git\n        https://code.google.com/p/git-core/\n        https://github.com/git/git\n\nWith only maint and master:\n\n        git://git.sourceforge.jp/gitroot/git-core/git.git\n        git://git-core.git.sourceforge.net/gitroot/git-core/git-core\n\nWith all the topics and integration branches:\n\n        https://github.com/gitster/git\n\nThe preformatted documentation in HTML and man format are found in:\n\n        git://git.kernel.org/pub/scm/git/git-{htmldocs,manpages}.git/\n        git://repo.or.cz/git-{htmldocs,manpages}.git/\n        https://code.google.com/p/git-{htmldocs,manpages}.git/\n        https://github.com/gitster/git-{htmldocs,manpages}.git/\n\n--------------------------------------------------\n[New Topics]\n\n* rs/diff-postimage-in-context (2012-01-06) 1 commit\n  (merged to 'next' on 2012-01-09 at 9635032)\n + xdiff: print post-image for common records instead of pre-image\n\nLooked reasonable.\nNot urgent.\n\n* cb/push-quiet (2012-01-08) 3 commits\n - t5541: avoid TAP test miscounting\n - fix push --quiet: add 'quiet' capability to receive-pack\n - server_supports(): parse feature list more carefully\n\nLooked reasonable.\nNot urgent.\n\n* nd/clone-detached (2012-01-08) 6 commits\n - clone: print advice on checking out detached HEAD\n - clone: allow --branch to take a tag\n - clone: --branch=<branch> always means refs/heads/<branch>\n - clone: factor out checkout code\n - clone: write detached HEAD in bare repositories\n - t5601: add missing && cascade\n\nI am not sure what the benefit of this is.\n\n* nd/clone-single-branch (2012-01-08) 1 commit\n  (merged to 'next' on 2012-01-09 at 6c3c759)\n + clone: add --single-branch to fetch only one branch\n\nLooked reasonable.\nNot urgent.\n\n* jn/gitweb-unspecified-action (2012-01-09) 1 commit\n - gitweb: Fix actionless dispatch for non-existent objects\n\n--------------------------------------------------\n[Graduated to \"master\"]\n\n* jc/show-sig (2012-01-05) 6 commits\n  (merged to 'next' on 2012-01-05 at 5da3ae2)\n + log --show-signature: reword the common two-head merge case\n + log-tree: show mergetag in log --show-signature output\n + log-tree.c: small refactor in show_signature()\n + commit --amend -S: strip existing gpgsig headers\n + verify_signed_buffer: fix stale comment\n + Merge branch 'jc/signed-commit' and 'jc/pull-signed-tag'\n (this branch uses jc/signed-commit.)\n\nFinishing touches to the already graduated \"pull signed tags\" topic.\n\n* jc/signed-commit (2011-11-29) 5 commits\n  (merged to 'next' on 2011-12-21 at 8fcbf00)\n + gpg-interface: allow use of a custom GPG binary\n + pretty: %G[?GS] placeholders\n + test \"commit -S\" and \"log --show-signature\"\n + log: --show-signature\n + commit: teach --gpg-sign option\n (this branch is used by jc/show-sig.)\n\n* jh/fetch-head-update (2012-01-03) 1 commit\n  (merged to 'next' on 2012-01-04 at b5778e1)\n + write first for-merge ref to FETCH_HEAD first\n\n* jk/credentials (2012-01-08) 1 commit\n  (merged to 'next' on 2012-01-08 at 48766c9)\n + credentials: unable to connect to cache daemon\n\n* jm/stash-diff-disambiguate (2012-01-01) 1 commit\n  (merged to 'next' on 2012-01-05 at 75a283b)\n + stash: Don't fail if work dir contains file named 'HEAD'\n\n* mh/ref-api-less-extra-refs (2012-01-06) 3 commits\n  (merged to 'next' on 2012-01-06 at 3105696)\n + write_head_info(): handle \"extra refs\" locally\n + show_ref(): remove unused \"flag\" and \"cb_data\" arguments\n + receive-pack: move more work into write_head_info()\n\n* mm/maint-gitweb-project-maxdepth (2012-01-04) 1 commit\n  (merged to 'next' on 2012-01-06 at bcf3818)\n + gitweb: accept trailing \"/\" in $project_list\n\nLooked quite sensible.\n\n* pw/p4-view-updates (2012-01-03) 6 commits\n  (merged to 'next' on 2012-01-03 at c3b5872)\n + git-p4: view spec documentation\n + git-p4: rewrite view handling\n + git-p4: support single file p4 client view maps\n + git-p4: sort client views by reverse View number\n + git-p4: fix test for unsupported P4 Client Views\n + git-p4: test client view handling\n\n--------------------------------------------------\n[Stalled]\n\n* jc/advise-push-default (2011-12-18) 1 commit\n - push: hint to use push.default=upstream when appropriate\n\nPeff had a good suggestion outlining an updated code structure so that\nsomebody new can try to dip his or her toes in the development. Any\ntakers?\n\nWaiting for a reroll.\n\n* jc/split-blob (2011-12-01) 6 commits\n . WIP (streaming chunked)\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 - varint-in-pack: refactor varint encoding/decoding\n\nNot ready.\n\nAt least pack-objects and fsck need to learn the new encoding for the\nseries to be usable locally, and then index-pack/unpack-objects needs to\nlearn it to be used remotely.\n\n* jc/advise-i18n (2011-12-22) 1 commit\n - i18n of multi-line advice messages\n\nAllow localization of advice messages that tend to be longer and\nmulti-line formatted. For now this is deliberately limited to advise()\ninterface and not vreportf() in general as touching the latter has\ninteractions with error() that has plumbing callers whose prefix \"error: \"\nshould never be translated.\n\n--------------------------------------------------\n[Cooking]\n\n* nd/index-pack-no-recurse (2012-01-09) 3 commits\n - index-pack: eliminate unlimited recursion in get_delta_base()\n - index-pack: eliminate recursion in find_unresolved_deltas\n - Eliminate recursion in setting/clearing marks in commit list\n\nThe first one looked sensible; I am not sure if the second and third ones\ntake the right approach.\n\n* bw/maint-t8006-sed-incomplete-line (2012-01-03) 1 commit\n - Work around sed portability issue in t8006-blame-textconv\n\nWaiting for a clarification of the reasoning in the log message.\n\n* mh/ref-api-rest (2011-12-12) 35 commits\n - repack_without_ref(): call clear_packed_ref_cache()\n - read_packed_refs(): keep track of the directory being worked in\n - is_refname_available(): query only possibly-conflicting references\n - refs: read loose references lazily\n - read_loose_refs(): take a (ref_entry *) as argument\n - struct ref_dir: store a reference to the enclosing ref_cache\n - sort_ref_dir(): take (ref_entry *) instead of (ref_dir *)\n - do_for_each_ref_in_dir*(): take (ref_entry *) instead of (ref_dir *)\n - add_entry(): take (ref_entry *) instead of (ref_dir *)\n - search_ref_dir(): take (ref_entry *) instead of (ref_dir *)\n - find_containing_direntry(): use (ref_entry *) instead of (ref_dir *)\n - add_ref(): take (ref_entry *) instead of (ref_dir *)\n - read_packed_refs(): take (ref_entry *) instead of (ref_dir *)\n - find_ref(): take (ref_entry *) instead of (ref_dir *)\n - is_refname_available(): take (ref_entry *) instead of (ref_dir *)\n - get_loose_refs(): return (ref_entry *) instead of (ref_dir *)\n - get_packed_refs(): return (ref_entry *) instead of (ref_dir *)\n - refs: wrap top-level ref_dirs in ref_entries\n - get_ref_dir(): keep track of the current ref_dir\n - do_for_each_ref(): only iterate over the subtree that was requested\n - refs: sort ref_dirs lazily\n - sort_ref_dir(): do not sort if already sorted\n - refs: store references hierarchically\n - refs.c: rename ref_array -> ref_dir\n - struct ref_entry: nest the value part in a union\n - check_refname_component(): return 0 for zero-length components\n - free_ref_entry(): new function\n - refs.c: reorder definitions more logically\n - is_refname_available(): reimplement using do_for_each_ref_in_array()\n - names_conflict(): simplify implementation\n - names_conflict(): new function, extracted from is_refname_available()\n - repack_without_ref(): reimplement using do_for_each_ref_in_array()\n - do_for_each_ref_in_arrays(): new function\n - do_for_each_ref_in_array(): new function\n - do_for_each_ref(): correctly terminate while processesing extra_refs\n\nThe API for extra anchoring points may require rethought first; that would\nhopefully make the \"ref\" part a lot simpler. And that is happening in\nanother topic (which has graduated to 'master').\n\nWill defer till the next cycle.\n\n* ss/git-svn-prompt-sans-terminal (2012-01-04) 3 commits\n - fixup! 15eaaf4\n - git-svn, perl/Git.pm: extend Git::prompt helper for querying users\n  (merged to 'next' on 2012-01-05 at 954f125)\n + perl/Git.pm: \"prompt\" helper to honor GIT_ASKPASS and SSH_ASKPASS\n\nThe bottom one has been replaced with a rewrite based on comments from\nÆvar. The second one needs more work, both in perl/Git.pm and prompt.c, to\ngive precedence to tty over SSH_ASKPASS when terminal is available.\n\nWill defer till the next cycle.\n\n* cb/git-daemon-tests (2012-01-08) 5 commits\n  (merged to 'next' on 2012-01-08 at 1db8351)\n + git-daemon tests: wait until daemon is ready\n + git-daemon: produce output when ready\n + git-daemon: add tests\n + dashed externals: kill children on exit\n + run-command: optionally kill children on exit\n\nWill defer till the next cycle.\n\n* jk/parse-object-cached (2012-01-06) 3 commits\n  (merged to 'next' on 2012-01-08 at 8c6fa4a)\n + upload-pack: avoid parsing tag destinations\n + upload-pack: avoid parsing objects during ref advertisement\n + parse_object: try internal cache before reading object db\n\nThese are a bit scary changes, but I do think they are worth doing.\nWill defer till the next cycle.\n\n* jn/maint-gitweb-grep-fix (2012-01-05) 2 commits\n - gitweb: Harden \"grep\" search against filenames with ':'\n - gitweb: Fix file links in \"grep\" search\n\nWaiting for a confirmation from bug reporter.\n"}]}