{"thread":{"id":"31195","subject":"What's cooking in git.git (Aug 2012, #02; Mon, 6)","startedAt":"2012-08-06T20:32:39Z","lastAt":"2012-08-06T20:32:39Z","messageCount":1,"participants":["Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"196562","messageId":"7vvcgvyd5k.fsf@alter.siamese.dyndns.org","threadId":"31195","inReplyTo":null,"subject":"What's cooking in git.git (Aug 2012, #02; Mon, 6)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2012-08-06T20:32:39Z","receivedAt":"2012-08-06T20:32:39Z","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\nI am planning to tag 1.7.12-rc2 tomorrow.  GSoC \"index-v5\" topic is\nqueued in 'pu' together with quick band-aid patches to give people\neasier access than applying them individually to their tree.\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[New Topics]\n\n* jk/version-string (2012-08-03) 1 commit\n - include agent identifier in capability string\n\nLeftover bits from the \"git version\" code restructuring, that\nactually give us an ability to expose the Git version over the wire\nin the protocol exchange.\n\n* js/grep-patterntype-config (2012-08-03) 1 commit\n - grep: add a grep.patternType configuration setting\n\n\"grep\" learned to use a non-standard pattern type by default if a\nconfiguration variable tells it to.\n\n* mm/die-with-dashdash-help (2012-08-03) 1 commit\n - setup: clarify error messages for file/revisions ambiguity\n\nReword error messages.\n\n* tr/merge-recursive-flush (2012-08-03) 1 commit\n - merge-recursive: eliminate flush_buffer() in favor of write_in_full()\n\nRemove unnecessary code.\n\n* tr/void-diff-setup-done (2012-08-03) 1 commit\n - diff_setup_done(): return void\n\nRemove unnecessary code.\n\n* mk/test-seq (2012-08-04) 1 commit\n  (merged to 'next' on 2012-08-06 at 3f6917c)\n + tests: Introduce test_seq\n (this branch is used by ab/diff-write-incomplete-line.)\n\nAdd a compatibility/utility function to the test framework. \n\n* ab/diff-write-incomplete-line (2012-08-05) 1 commit\n - Fix '\\ No newline...' annotation in rewrite diffs\n (this branch uses mk/test-seq.)\n\nThe output from \"git diff -B\" for a file that ends with an\nincomplete line did not put \"\\ No newline...\" on a line of its own.\n\nWill merge to 'next'.\n\n* pg/maint-apply-remove-unused-variable (2012-08-05) 1 commit\n  (merged to 'next' on 2012-08-05 at aa9f5e9)\n + apply: delete unused deflate_origlen from patch struct\n\nRemove unused field.\nNot urgent.\n\n* tg/index-v5 (2012-08-06) 18 commits\n - band-aid! drop double close(fd)\n - band-aid!! compilation fix\n - p0002-index.sh: add perf test for the index formats\n - update-index.c: add a force-rewrite option\n - Write resolve-undo data for index-v5\n - Write index-v5 cache-tree data\n - Write index-v5\n - Read cache-tree in index-v5\n - Read resolve-undo data\n - Read index-v5\n - Make in-memory format aware of stat_crc\n - Add documentation of the index-v5 file format\n - t3700: sleep for 1 second, to avoid interfering with the racy code\n - t2104: Don't fail for index versions other than [23]\n - Modify write functions to prepare for other index formats\n - Modify match_stat_basic to prepare for other index formats\n - Modify read functions to prepare for other index formats\n - Modify cache_header to prepare for other index formats\n\nA GSoC project.\n\n* nd/index-errno (2012-08-06) 1 commit\n  (merged to 'next' on 2012-08-06 at a9f2101)\n + read_index_from: remove bogus errno assignments\n\n--------------------------------------------------\n[Stalled]\n\n* mz/rebase-range (2012-07-18) 7 commits\n - rebase (without -p): correctly calculate patches to rebase\n - rebase -p: don't request --left-right only to ignore left side\n - rebase -p: use --cherry-mark for todo file\n - git-rebase--interactive.sh: look up subject in add_pick_line\n - git-rebase--interactive: group all $preserve_merges code\n - git-rebase--interactive.sh: extract function for adding \"pick\" line\n - git-rebase--am.sh: avoid special-casing --keep-empty\n\nExpecting a reroll.\n\nPerformance concerns from Windows folks.  Also the series lacks\nproper sign-offs.\n\n* jl/submodule-rm (2012-07-05) 2 commits\n - rm: remove submodules from the index and the .gitmodules file\n - rm: don't fail when removing populated submodules\n\nExpecting a reroll.\n\n* ph/stash-rerere (2012-07-08) 2 commits\n - stash: invoke rerere in case of conflict\n - test: git-stash conflict sets up rerere\n\nWill be rerolled but is going in the right direction.\n\n* lt/commit-tree-guess-utf-8 (2012-06-28) 1 commit\n - commit/commit-tree: correct latin1 to utf-8\n\nTeaches \"git commit\" and \"git commit-tree\" the \"we are told to use\nutf-8 in log message, but this does not look like utf-8---attempt to\npass it through convert-from-latin1-to-utf8 and see if it makes\nsense\" heuristics \"git mailinfo\" already uses.\n\nA draft from Linus received privately without a log message.\nExpecting a reroll.\n\n* mb/remote-default-nn-origin (2012-07-11) 6 commits\n - Teach get_default_remote to respect remote.default.\n - Test that plain \"git fetch\" uses remote.default when on a detached HEAD.\n - Teach clone to set remote.default.\n - Teach \"git remote\" about remote.default.\n - Teach remote.c about the remote.default configuration setting.\n - Rename remote.c's default_remote_name static variables.\n\nWhen the user does not specify what remote to interact with, we\noften attempt to use 'origin'.  This can now be customized via a\nconfiguration variable.\n\nExpecting a reroll.\n\"The first remote becomes the default\" bit is better done as a\nseparate step.\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/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 long time ago still remains here without much comments\nand updates from the developer community. I even made the interface\nto the logic that decides where to split chunks easily replaceable,\nand I deliberately made the logic in the original patch extremely\nstupid to entice others, especially the \"bup\" fanbois, to come up\nwith a better logic, thinking that giving people an easy target to\nshoot for, they may be encouraged to help out. The plan is not\nworking :-<.\n\n--------------------------------------------------\n[Cooking]\n\n* jc/maint-sane-execvp-notdir (2012-07-31) 1 commit\n - sane_execvp(): ignore non-directory on $PATH\n\n\"git foo\" errored out with \"Not a directory\" when the user had a non\ndirectory on $PATH, and worse yet it masked an alias \"foo\" to run.\n\nNot urgent.\n\n* jc/sanitize-nkd-lazy-iconv-open (2012-07-31) 1 commit\n - macos: lazily initialize iconv\n\nTeach the code that works around NKD/NKC gotcha on MacOS to call\niconv_open() only when it is necessary, in the hope of avoiding\nset-up overhead.\n\nNot urgent.\n\n* tr/maint-send-email-2047 (2012-07-31) 1 commit\n - send-email: improve RFC2047 quote parsing\n\n\"git send-email\" did not unquote encoded words that appear on the\nheader correctly, and lost \"_\" from strings.\n\nNot urgent.\n\n* cw/cherry-pick-allow-empty-message (2012-08-06) 1 commit\n - cherry-pick: add --allow-empty-message option\n\n\"git cherry-pick\" by default stops when it sees a commit without any\nlog message.  The \"--allow-empty-message\" option can be used to\nsilently proceed.\n\nNot urgent.\n\n* ms/git-svn-1.7 (2012-08-02) 20 commits\n - git-svn: remove ad-hoc canonicalizations\n - git-svn: canonicalize newly-minted URLs\n - git-svn: introduce add_path_to_url function\n - git-svn: canonicalize earlier\n - git-svn: replace URL escapes with canonicalization\n - git-svn: attempt to mimic SVN 1.7 URL canonicalization\n - t9107: fix typo\n - t9118: workaround inconsistency between SVN versions\n - Git::SVN{,::Ra}: canonicalize earlier\n - git-svn: path canonicalization uses SVN API\n - Git::SVN::Utils: remove irrelevant comment\n - git-svn: add join_paths() to safely concatenate paths\n - git-svn: factor out _collapse_dotdot function\n - git-svn: use SVN 1.7 to canonicalize when possible\n - git-svn: move canonicalization to Git::SVN::Utils\n - use Git::SVN{,::RA}->url accessor globally\n - use Git::SVN->path accessor globally\n - Git::SVN::Ra: use accessor for URLs\n - Git::SVN: use accessor for URLs internally\n - Git::SVN: use accessors internally for path\n\nA series by Michael Schwern via Eric to update git-svn to revamp the\nway URLs are internally passed around, to make it work with SVN 1.7.\n\n* jc/maint-t7406-rev-parse-max-count-huh (2012-07-30) 1 commit\n  (merged to 'next' on 2012-07-30 at 9b27acc)\n + t7406: fix misleading \"rev-parse --max-count=1 HEAD\"\n\nTest clean-up, with no behaviour change.\nNot urgent.\n\n* jk/maint-diff-nul40-as-sentinel (2012-07-29) 1 commit\n + diff: do not use null sha1 as a sentinel value\n (this branch is used by jk/maint-null-in-trees.)\n\n\"git diff\" had a confusion between taking data from a path in the\nworking tree and taking data from an object that happens to have\nname 0{40} recorded in a tree.\nNot urgent.\n\n* mz/cherry-code-cleanup (2012-07-29) 3 commits\n - cherry: remove redundant check for merge commit\n - cherry: don't set ignored rev_info options\n - remove unnecessary parameter from get_patch_ids()\n\nMinor code clean-up on the cherry-pick codepath.\nNot urgent.\n\n* jc/maint-config-exit-status (2012-07-30) 1 commit\n  (merged to 'next' on 2012-07-30 at 8392da9)\n + config: \"git config baa\" should exit with status 1\n\nThe exit status code from \"git config\" was way overspecified while\nbeing incorrect.  Update the implementation to give the documented\nstatus for a case that was documented, and introduce a new code for\n\"all other errors\".\n\nNot urgent.\n\n* jk/maint-null-in-trees (2012-07-29) 2 commits\n  (merged to 'next' on 2012-07-30 at 771c497)\n + fsck: detect null sha1 in tree entries\n + do not write null sha1s to on-disk index\n (this branch uses jk/maint-diff-nul40-as-sentinel.)\n\nWe do not want a link to 0{40} object stored anywhere in our objects.\n\nNot urgent.\n\n* sz/submodule-force-update (2012-07-25) 1 commit\n  (merged to 'next' on 2012-07-26 at 3bda2be)\n + Make 'git submodule update --force' always check out submodules.\n\nWe may want a documentation update and a few tests on top.\n\nNot urgent.\n\n* jc/test-prereq (2012-08-04) 8 commits\n  (merged to 'next' on 2012-08-04 at 6dd9156)\n + fixup! t3910: use the UTF8_NFD_TO_NFC test prereq\n  (merged to 'next' on 2012-07-30 at b7c6949)\n + t3910: use the UTF8_NFD_TO_NFC test prereq\n  (merged to 'next' on 2012-07-27 at 448cbbc)\n + test-lib: provide UTF8 behaviour as a prerequisite\n + t0050: use the SYMLINKS test prereq\n + t0050: use the CASE_INSENSITIVE_FS test prereq\n + test-lib: provide case insensitivity as a prerequisite\n + test: allow prerequisite to be evaluated lazily\n + test: rename $satisfied to $satisfied_prereq\n\nTeaches the test framework to probe rarely used prerequistes lazily,\nand make use of it for detecting SYMLINKS, CASE_INSENSITIVE_FS and\nNKD/NKC MacOS x gotcha.\n\nNot urgent.\n\n* da/difftool-updates (2012-07-26) 10 commits\n  (merged to 'next' on 2012-07-26 at 3263461)\n + difftool: Disable --symlinks on cygwin\n + difftool: Handle compare() returning -1\n + difftool: Wrap long lines for readability\n + difftool: Check all return codes from compare()\n + difftool: Handle finding mergetools/ in a path with spaces\n  (merged to 'next' on 2012-07-23 at 96528a7)\n + difftool: Use symlinks when diffing against the worktree\n + difftool: Call the temp directory \"git-difftool\"\n + difftool: Move option values into a hash\n + difftool: Eliminate global variables\n + difftool: Simplify print_tool_help()\n\n\"git difftool --dir-diff\" learned to use symbolic links to prepare\ntemporary copy of the working tree when available.\n\nNot urgent.\n\n* jk/no-more-pre-exec-callback (2012-06-05) 1 commit\n  (merged to 'next' on 2012-07-23 at fe59cb6)\n + pager: drop \"wait for output to run less\" hack\n\nWill defer for 6 months until ancient \"less\" goes extinct.\n\n* mm/push-default-switch-warning (2012-06-24) 1 commit\n  (merged to 'next' on 2012-06-26 at fea512a)\n + push: start warning upcoming default change for push.default\n\nWill defer for another cycle.\n"}]}