{"thread":{"id":"27407","subject":"What's cooking in git.git (May 2011, #09; Wed, 18)","startedAt":"2011-05-19T17:28:21Z","lastAt":"2011-05-19T17:28:21Z","messageCount":1,"participants":["Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"168230","messageId":"7v1uzu8uru.fsf@alter.siamese.dyndns.org","threadId":"27407","inReplyTo":null,"subject":"What's cooking in git.git (May 2011, #09; Wed, 18)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2011-05-19T17:28:21Z","receivedAt":"2011-05-19T17:28:21Z","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' while commits prefixed with '+' are in 'next'.\n\nThe main part of this cycle is expected to run thru May, aiming for a\nfeature freeze in early June.\n\nWe are in the middle of week #4 of this cycle.\n\n(I forgot to send this out last night).\n\n--------------------------------------------------\n[New Topics]\n\n* hg/add-i-qq (2011-05-17) 1 commit\n - add-interactive: add 'Quit' shortcut to add hunk and quit\n\nThe question \"why is y+q any more deserving for a short-cut than d+q\" was\nraised late in the discussion, and I think it a very valid concern.\n\nMay drop.\n\n* js/log-abbrev-commit-config (2011-05-18) 2 commits\n - Add log.abbrevCommit config variable\n - \"git log -h\": typofix misspelled 'suppress'\n\n* js/mingw-shutdown (2011-05-18) 1 commit\n - Windows: add a wrapper for the shutdown() system call\n\nMeant for maint-1.7.4 and later.\n\n* mg/config-symbolic-constants (2011-05-17) 2 commits\n - config: Give error message when not changing a multivar\n - config: define and document exit codes\n\n* ms/ls-remote-exit-with-status (2011-05-18) 1 commit\n - ls-remote: the --exit-code option reports \"no matching refs\"\n\n* rg/copy-gecos-username (2011-05-17) 1 commit\n  (merged to 'next' on 2011-05-17 at 6080944)\n + copy_gecos: fix not adding nlen to len when processing \"&\"\n\n* tr/add-i-no-escape (2011-05-17) 1 commit\n - add -i: ignore terminal escape sequences\n\nWill merge to \"next\".\n\n--------------------------------------------------\n[Stalled]\n\n* mg/diff-stat-count (2011-05-03) 2 commits\n - diff-options.txt: describe --stat-{width,name-width,count}\n - diff: introduce --stat-count to limit the stat lines\n\nThere was a miscounting spotted.  Need another round.\n\n* jn/gitweb-js (2011-04-28) 13 commits\n - gitweb: Make JavaScript ability to adjust timezones configurable\n - gitweb.js: Add UI for selecting common timezone to display dates\n - gitweb: JavaScript ability to adjust time based on timezone\n - gitweb: Unify the way long timestamp is displayed\n - gitweb: Refactor generating of long dates into format_timestamp_html\n - gitweb.js: Provide getElementsByClassName method (if it not exists)\n - gitweb.js: Introduce code to handle cookies from JavaScript\n - gitweb.js: Extract and improve datetime handling\n - gitweb.js: Provide default values for padding in padLeftStr and padLeft\n - gitweb.js: Update and improve comments in JavaScript files\n - gitweb: Split JavaScript for maintability, combining on build\n - Remove gitweb/gitweb.cgi and other legacy targets from main Makefile\n - git-instaweb: Simplify build dependency on gitweb\n\nRerolled.  Waiting for comments.\n\n* jn/ctags-more (2011-04-29) 3 commits\n - gitweb: Optional grouping of projects by category\n - gitweb: Modularized git_get_project_description to be more generic\n - gitweb: Split git_project_list_body in two functions\n\nWaiting for comments.\n\n* jc/require-work-tree-exists (2011-05-08) 1 commit\n - require-work-tree wants more than what its name says\n\nMake \"git pull\" run from a random place work as long as GIT_DIR and\nGIT_WORK_TREE are set up correctly.  I am not absolutely sure if that\nis a sane use case, though. May drop.\n\n* jc/add-delete-default (2011-04-27) 1 commit\n - git add: notice removal of tracked paths by default\n\n* jk/maint-merge-rename-create (2011-03-25) 3 commits\n - merge: turn on rewrite detection\n - merge: handle renames with replacement content\n - t3030: fix accidental success in symlink rename\n\nPeff wanted to reroll this.\n\n* jc/index-pack (2011-02-27) 5 commits\n - index-pack --verify: read anomalous offsets from v2 idx file\n - write_idx_file: need_large_offset() helper function\n - index-pack: --verify\n - write_idx_file: introduce a struct to hold idx customization options\n - index-pack: group the delta-base array entries also by type\n\nStill a WIP. Need to put histogram output into index-pack --verify to\nreally kill verify-pack.\n\n* jc/dotdot-is-parent-directory (2011-05-04) 1 commit\n - specifying ranges: we did not mean to make \"..\" an empty set\n\nUpdated documentation, but I do not feel a strong enough annoyance to push\nthis forward. May drop.\n\n* jk/tag-contains (2010-07-05) 4 commits\n - Why is \"git tag --contains\" so slow?\n - default core.clockskew variable to one day\n - limit \"contains\" traversals based on commit timestamp\n - tag: speed up --contains calculation\n\nThe idea of the bottom one is probably Ok, except that the use of object\nflags needs to be rethought, or at least the helper needs to be moved to\nbuiltin/tag.c to make it clear that it should not be used outside the\ncurrent usage context.\n\n* jc/advice-about-to-lose-commit (2011-05-06) 1 commit\n - checkout: honor advice.detachedHead when reattaching to a branch\n\nNeeds to tighten the advice to only govern the generic How-to part.\n\n--------------------------------------------------\n[Cooking]\n\n* jh/receive-count-limit (2011-05-14) 1 commit\n - receive-pack: Add receive.objectCountLimit to refuse push with too many objects\n\nRe-rolled but decided not to pick it up while it is still being\ndiscussed.\n\n* jk/cherry-pick-root-with-resolve (2011-05-16) 3 commits\n  (merged to 'next' on 2011-05-16 at 2a63845)\n + t3503: test cherry picking and reverting root commits\n + revert: allow reverting a root commit\n + cherry-pick: handle root commits with external strategies\n\nWill merge to \"master\" soonish, to merge further to \"maint\" later.\n\n* jk/git-connection-deadlock-fix (2011-05-18) 4 commits\n  (merged to 'next' on 2011-05-18 at d4567da)\n + test core.gitproxy configuration\n  (merged to 'next' on 2011-05-16 at 33e6c11)\n + send-pack: avoid deadlock on git:// push with failed pack-objects\n + connect: let callers know if connection is a socket\n + connect: treat generic proxy processes like ssh processes\n (this branch uses js/maint-1.6.6-send-pack-stateless-rpc-deadlock-fix; is tangled with js/maint-send-pack-stateless-rpc-deadlock-fix.)\n\nWill merge to \"master\" soonish, to merge further to \"maint\" later.\n\n* jc/replacing (2011-05-15) 5 commits\n  (merged to 'next' on 2011-05-16 at 5d0b584)\n + read_sha1_file(): allow selective bypassing of replacement mechanism\n + inline lookup_replace_object() calls\n + read_sha1_file(): get rid of read_sha1_file_repl() madness\n + t6050: make sure we test not just commit replacement\n + Declare lookup_replace_object() in cache.h, not in commit.h\n (this branch is used by jc/streaming.)\n\nCode restructuring without much new feature.\nWill merge to \"master\" by the end of week #4.\n\n* jl/submodule-conflicted-gitmodules (2011-05-14) 2 commits\n  (merged to 'next' on 2011-05-16 at cc6c7e8)\n + Submodules: Don't parse .gitmodules when it contains, merge conflicts\n + test that git status works with merge conflict in, .gitmodules\n\nWill merge to \"master\" by the end of week #4.\n\n* js/maint-1.6.6-send-pack-stateless-rpc-deadlock-fix (2011-05-16) 1 commit\n + sideband_demux(): fix decl-after-stmt\n (this branch is used by jk/git-connection-deadlock-fix and js/maint-send-pack-stateless-rpc-deadlock-fix.)\n\nWill merge to \"master\" soonish, to merge further to \"maint\" later.\n\n* js/maint-send-pack-stateless-rpc-deadlock-fix (2011-05-16) 1 commit\n  (merged to 'next' on 2011-05-16 at ad83470)\n + Merge branch 'js/maint-1.6.6-send-pack-stateless-rpc-deadlock-fix' into js/maint-send-pack-stateless-rpc-deadlock-fix\n (this branch uses js/maint-1.6.6-send-pack-stateless-rpc-deadlock-fix; is tangled with jk/git-connection-deadlock-fix.)\n\nWill merge to \"master\" soonish, to merge further to \"maint\" later.\n\n* jc/maint-1.6.6-pathspec-stdin-and-cmdline (2011-05-11) 1 commit\n + setup_revisions(): take pathspec from command line and --stdin correctly\n (this branch is used by jc/magic-pathspec, jc/maint-1.7.4-pathspec-stdin-and-cmdline and jc/maint-pathspec-stdin-and-cmdline.)\n\nWill merge to \"master\" soonish, to merge further to \"maint\" later.\n\n* jc/maint-1.7.4-pathspec-stdin-and-cmdline (2011-05-11) 1 commit\n - Merge branch 'jc/maint-1.6.6-pathspec-stdin-and-cmdline'\n (this branch uses jc/maint-1.6.6-pathspec-stdin-and-cmdline; is tangled with jc/magic-pathspec and jc/maint-pathspec-stdin-and-cmdline.)\n\nWill merge to \"master\" soonish, to merge further to \"maint\" later.\n\n* jc/maint-pathspec-stdin-and-cmdline (2011-05-11) 2 commits\n  (merged to 'next' on 2011-05-15 at b4e3a75)\n + Merge branch 'jc/maint-1.7.4-pathspec-stdin-and-cmdline'\n + Merge branch 'jc/maint-1.6.6-pathspec-stdin-and-cmdline'\n (this branch uses jc/maint-1.6.6-pathspec-stdin-and-cmdline; is tangled with jc/magic-pathspec and jc/maint-1.7.4-pathspec-stdin-and-cmdline.)\n\nThese are to fix an ancient bug where feeding \"git log --stdin path\" with\nan input that also has additional pathspec corrupted memory.\n\nWill merge to \"master\" soonish, to merge further to \"maint\" later.\n\n* jl/read-tree-m-dry-run (2011-05-11) 1 commit\n - Teach read-tree the -n|--dry-run option\n\nLooked good. We _might_ want to make -n simply ignore -u, though.\nWaiting for a reroll.\n\n* jc/streaming (2011-05-18) 12 commits\n - streaming: read loose objects incrementally\n - sha1_file.c: expose helpers to read loose objects\n - streaming: read non-delta incrementally from a pack\n - streaming_write_entry(): support files with holes\n - streaming_write_entry(): use streaming API in write_entry()\n - streaming: a new API to read from the object store\n - write_entry(): separate two helper functions out\n - unpack_object_header(): make it public\n - sha1_object_info_extended(): hint about objects in delta-base cache\n - sha1_object_info_extended(): expose a bit more info\n - packed_object_info_detail(): do not return a string\n - Merge branches 'jc/convert', 'jc/bigfile' and 'jc/replacing' into jc/streaming\n (this branch uses jc/bigfile and jc/replacing.)\n\nThanks to Peff, it has become clear that sha1_object_info_extended()\nchange was not paying enough attention to the performance.\n\n* jc/bigfile (2011-05-13) 3 commits\n  (merged to 'next' on 2011-05-15 at 0ee7144)\n + Bigfile: teach \"git add\" to send a large file straight to a pack\n + index_fd(): split into two helper functions\n + index_fd(): turn write_object and format_check arguments into one flag\n (this branch is used by jc/streaming.)\n\nThis covers the entry point for a big file to the system. Other parts that\nneed to know about them are the exit point (i.e. write_entry()), packing\nand repacking (as long as bigfilethreshold is sane this should work),\ndiffs and status (avoid slurping large binary in core only to do nothing,\nwhich we already should), and transport (receive-pack/fetch-pack call\neither unpack-objects or index-pack, which still want to hold the full\nobject in-core and need to be fixed).\n\nWill merge to \"master\" by the middle of week #5.\n\n* jk/blame-line-porcelain (2011-05-09) 3 commits\n  (merged to 'next' on 2011-05-15 at 93232b3)\n + blame: add --line-porcelain output format\n + blame: refactor porcelain output\n + add tests for various blame formats\n\nWill merge to \"master\" by the end of week #4.\n\n* ms/tagname-does-not-begin-with-dash (2011-05-10) 1 commit\n  (merged to 'next' on 2011-05-15 at 7df0461)\n + tag: disallow '-' as tag name\n\nWill merge to \"master\" by the end of week #4.\n\n* nd/sparse-co-fix (2011-05-10) 2 commits\n  (merged to 'next' on 2011-05-15 at 1a85791)\n + sparse checkout: do not eagerly decide the fate for whole directory\n + t1011: fix sparse-checkout initialization and add new file\n\nWill merge to \"master\" by the end of week #4.\n\n* ab/i18n-scripts (2011-05-14) 48 commits\n - i18n: git-bisect bisect_next_check \"You need to\" message\n - i18n: git-bisect [Y/n] messages\n - i18n: git-bisect bisect_replay + $1 messages\n - i18n: git-bisect bisect_reset + $1 messages\n - i18n: git-bisect bisect_run + $@ messages\n - i18n: git-bisect die + eval_gettext messages\n - i18n: git-bisect die + gettext messages\n - i18n: git-bisect echo + eval_gettext message\n - i18n: git-bisect echo + gettext messages\n - i18n: git-bisect gettext + echo message\n - i18n: git-bisect add git-sh-i18n\n - i18n: git-stash drop_stash say/die messages\n - i18n: git-stash \"unknown option\" message\n - i18n: git-stash die + eval_gettext $1 messages\n - i18n: git-stash die + eval_gettext $* messages\n - i18n: git-stash die + eval_gettext messages\n - i18n: git-stash die + gettext messages\n - i18n: git-stash say + gettext messages\n - i18n: git-stash echo + gettext message\n - i18n: git-stash add git-sh-i18n\n - i18n: git-submodule \"blob\" and \"submodule\" messages\n - i18n: git-submodule \"path not initialized\" message\n - i18n: git-submodule \"[...] path is ignored\" message\n - i18n: git-submodule \"Entering [...]\" message\n - i18n: git-submodule $errmsg messages\n - i18n: git-submodule \"Submodule change[...]\" messages\n - i18n: git-submodule \"cached cannot be used\" message\n - i18n: git-submodule $update_module say + die messages\n - i18n: git-submodule die + eval_gettext messages\n - i18n: git-submodule say + eval_gettext messages\n - i18n: git-submodule echo + eval_gettext messages\n - i18n: git-submodule add git-sh-i18n\n - i18n: git-pull eval_gettext + warning message\n - i18n: git-pull eval_gettext + die message\n - i18n: git-pull die messages\n - i18n: git-pull add git-sh-i18n\n - i18n: git-am printf(1) message to eval_gettext\n - i18n: git-am core say messages\n - i18n: git-am \"Falling back\" say message\n - i18n: git-am \"Apply?\" message\n - i18n: git-am clean_abort messages\n - i18n: git-am cannot_fallback messages\n - i18n: git-am die messages\n - i18n: git-am echo + gettext message\n - i18n: git-am eval_gettext messages\n - i18n: git-am multi-line getttext $msg; echo\n - i18n: git-am one-line gettext $msg; echo\n - i18n: git-am add git-sh-i18n\n (this branch uses ab/i18n-scripts-basic.)\n\n* ab/i18n-scripts-basic (2011-05-14) 4 commits\n  (merged to 'next' on 2011-05-18 at 3dc69f0)\n + Makefile: add xgettext target for *.sh files\n + git-sh-i18n.sh: add GIT_GETTEXT_POISON support\n + git-sh-i18n.sh: add no-op gettext() and eval_gettext() wrappers\n + git-sh-i18n--envsubst: our own envsubst(1) for eval_gettext()\n (this branch is used by ab/i18n-scripts.)\n\n* mk/grep-pcre (2011-05-16) 12 commits\n  (merged to 'next' on 2011-05-16 at 0c6c25e)\n + Makefile: Pass USE_LIBPCRE down in GIT-BUILD-OPTIONS\n + git-grep: update tests now regexp type is \"last one wins\"\n  (merged to 'next' on 2011-05-15 at d110135)\n + git-grep: do not die upon -F/-P when grep.extendedRegexp is set.\n + git-grep: Bail out when -P is used with -F or -E\n + grep: Add basic tests\n + configure: Check for libpcre\n + git-grep: Learn PCRE\n + grep: Extract compile_regexp_failed() from compile_regexp()\n + grep: Fix a typo in a comment\n  (merged to 'next' on 2011-05-08 at 5d3bede)\n + grep: Put calls to fixmatch() and regmatch() into patmatch()\n + contrib/completion: --line-number to git grep\n + Documentation: Add --line-number to git-grep synopsis\n\nFixed up the build procedure that did not update GIT-BUILD-OPTIONS.\nWill merge to \"master\" by the middle of week #5.\n\n* ld/p4-preserve-user-names (2011-05-13) 3 commits\n  (merged to 'next' on 2011-05-15 at bdedb60)\n + git-p4: warn if git authorship won't be retained\n  (merged to 'next' on 2011-05-11 at bc14314)\n + git-p4: small improvements to user-preservation\n  (merged to 'next' on 2011-04-29 at 25116c8)\n + git-p4: add option to preserve user names\n\nWill merge to \"master\" by the end of week #4.\n\n* jc/magic-pathspec (2011-05-17) 14 commits\n  (merged to 'next' on 2011-05-18 at d7180b9)\n + setup.c: Fix some \"symbol not declared\" sparse warnings\n  (merged to 'next' on 2011-05-12 at 656c8b5)\n + t3703: Skip tests using directory name \":\" on Windows\n  (merged to 'next' on 2011-05-11 at 86d1d6d)\n + revision.c: leave a note for \"a lone :\" enhancement\n + Merge branch 'jc/maint-1.6.6-pathspec-stdin-and-cmdline'\n  (merged to 'next' on 2011-05-11 at aaad95e)\n + t3703, t4208: add test cases for magic pathspec\n + rev/path disambiguation: further restrict \"misspelled index entry\" diag\n + fix overslow :/no-such-string-ever-existed diagnostics\n + fix overstrict :<path> diagnosis\n + grep: use get_pathspec() correctly\n + pathspec: drop \"lone : means no pathspec\" from get_pathspec()\n + Revert \"magic pathspec: add \":(icase)path\" to match case insensitively\"\n  (merged to 'next' on 2011-04-25 at 788cd46)\n + magic pathspec: add \":(icase)path\" to match case insensitively\n + magic pathspec: futureproof shorthand form\n + magic pathspec: add tentative \":/path/from/top/level\" pathspec support\n (this branch uses jc/maint-1.6.6-pathspec-stdin-and-cmdline; is tangled with jc/maint-1.7.4-pathspec-stdin-and-cmdline and jc/maint-pathspec-stdin-and-cmdline.)\n\nWill merge to \"master\" by the end of week #4.\n"}]}