{"thread":{"id":"27513","subject":"What's cooking in git.git (May 2011, #14; Tue, 31)","startedAt":"2011-05-31T22:43:22Z","lastAt":"2011-06-01T19:21:09Z","messageCount":3,"participants":["Junio C Hamano","Johannes Sixt"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"169084","messageId":"7vhb8aij91.fsf@alter.siamese.dyndns.org","threadId":"27513","inReplyTo":null,"subject":"What's cooking in git.git (May 2011, #14; Tue, 31)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2011-05-31T22:43:22Z","receivedAt":"2011-05-31T22:43:22Z","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 week #6 of this cycle. Feature freeze is imminent.\n\n--------------------------------------------------\n[New Topics]\n\n* jc/diff-index-quick-exit-early (2011-05-31) 2 commits\n - diff-index --quiet: learn the \"stop feeding the backend early\" logic\n - Merge remote-tracking branch 'ko/maint' into jc/diff-index-quick-exit-early\n (this branch uses jk/diff-not-so-quick.)\n\n* jk/diff-not-so-quick (2011-05-31) 2 commits\n - diff: futureproof \"stop feeding the backend early\" logic\n - diff_tree: disable QUICK optimization with diff filter\n (this branch is used by jc/diff-index-quick-exit-early.)\n\n--------------------------------------------------\n[Graduated to \"master\"]\n\n* ab/i18n-envsubst-doc-fix (2011-05-30) 1 commit\n  (merged to 'next' on 2011-05-30 at 25ef758)\n + git-sh-i18n--envsubst: add SYNOPSIS section to the documentation\n\n* jc/fmt-req-fix (2011-05-25) 1 commit\n  (merged to 'next' on 2011-05-25 at 9f46ca0)\n + userformat_find_requirements(): find requirement for the correct format\n\n* jc/log-quiet-fix (2011-05-28) 1 commit\n  (merged to 'next' on 2011-05-30 at dcbdbc0)\n + log: --quiet should serve as synonym to -s\n\n* jk/format-patch-am (2011-05-26) 5 commits\n  (merged to 'next' on 2011-05-30 at 29d5dac)\n + format-patch: preserve subject newlines with -k\n + clean up calling conventions for pretty.c functions\n + pretty: add pp_commit_easy function for simple callers\n + mailinfo: always clean up rfc822 header folding\n + t: test subject handling in format-patch / am pipeline\n\n* jk/format-patch-empty-prefix (2011-05-30) 1 commit\n - format-patch: make zero-length subject prefixes prettier\n\n* jk/maint-config-alias-fix (2011-05-24) 4 commits\n  (merged to 'next' on 2011-05-25 at 25b86e4)\n + handle_options(): do not miscount how many arguments were used\n + config: always parse GIT_CONFIG_PARAMETERS during git_config\n + git_config: don't peek at global config_parameters\n + config: make environment parsing routines static\n\n* jk/maint-docs (2011-05-26) 4 commits\n  (merged to 'next' on 2011-05-30 at 0ed19d6)\n + docs: fix some antique example output\n + docs: make sure literal \"->\" isn't converted to arrow\n + docs: update status --porcelain format\n + docs: minor grammar fixes to git-status\n\n* jk/maint-remote-mirror-safer (2011-05-26) 1 commit\n  (merged to 'next' on 2011-05-30 at dc260ff)\n + remote: allow \"-t\" with fetch mirrors\n\n* jk/read-in-full-stops-on-error (2011-05-26) 1 commit\n  (merged to 'next' on 2011-05-30 at 102a220)\n + read_in_full: always report errors\n\n* jk/rebase-head-reflog (2011-05-27) 2 commits\n  (merged to 'next' on 2011-05-30 at 97f02df)\n + rebase: write a reflog entry when finishing\n + rebase: create HEAD reflog entry when aborting\n\n* jl/read-tree-m-dry-run (2011-05-25) 2 commits\n  (merged to 'next' on 2011-05-30 at 42febaf)\n + Teach read-tree the -n|--dry-run option\n + unpack-trees: add the dry_run flag to unpack_trees_options\n\n* jn/doc-remote-helpers (2011-05-30) 1 commit\n - Documentation: do not misinterpret refspecs as bold text\n\n* kk/maint-prefix-in-config-mak (2011-05-27) 1 commit\n  (merged to 'next' on 2011-05-30 at 35b8752)\n + config.mak.in: allow \"configure --sysconfdir=/else/where\"\n\n--------------------------------------------------\n[Stalled]\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* jh/receive-count-limit (2011-05-23) 10 commits\n - receive-pack: Allow server to refuse pushes with too many objects\n - pack-objects: Estimate pack size; abort early if pack size limit is exceeded\n - send-pack/receive-pack: Allow server to refuse pushing too large packs\n - pack-objects: Allow --max-pack-size to be used together with --stdout\n - send-pack/receive-pack: Allow server to refuse pushes with too many commits\n - pack-objects: Teach new option --max-commit-count, limiting #commits in pack\n - receive-pack: Prepare for addition of the new 'limit-*' family of capabilities\n - Tighten rules for matching server capabilities in server_supports()\n - send-pack: Attempt to retrieve remote status even if pack-objects fails\n - Update technical docs to reflect side-band-64k capability in receive-pack\n\nWould need another round to separate per-pack and per-session limits.\nNot urgent. Will not merge before 1.7.6.\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--------------------------------------------------\n[Cooking]\n\n* bc/maint-status-z-to-use-porcelain (2011-05-29) 2 commits\n - builtin/commit.c: set status_format _after_ option parsing\n - t7508: demonstrate status's failure to use --porcelain format with -z\n\nWill merge to \"next\".\n\n* ef/maint-win-verify-path (2011-05-27) 3 commits\n - verify_path: consider dos drive prefix\n - real_path: do not assume '/' is the path seperator\n - A Windows path starting with a backslash is absolute\n\nJ6t had a reasonable question in the discussion; has it been resolved?\n\n* jc/apply-nsbp (2011-05-27) 4 commits\n - War on nbsp: teach \"git apply\" to check and fix nbsp\n - War on nbsp: Add \"nbsp\" whitespace breakage class\n - War on nbsp: a bit of retreat\n - ws.c: add a helper to format comma separated messages\n\nWill probably drop.\nIt was fun to write, though.\n\n* jn/gitweb-js-blame (2011-05-27) 3 commits\n - gitweb.js: use setTimeout rather than setInterval in blame_incremental.js\n - gitweb.js: No need for loop in blame_incremental's handleResponse()\n - gitweb.js: No need for inProgress in blame_incremental.js\n\nWill cook a bit longer.\n\n* mg/diff-stat-count (2011-05-27) 4 commits\n - diff --stat-count: finishing touches\n - diff-options.txt: describe --stat-{width,name-width,count}\n - diff: introduce --stat-lines to limit the stat lines\n - diff.c: omit hidden entries from namelen calculation with --stat\n\nWill merge to \"next\".\n\n* da/git-prefix-everywhere (2011-05-26) 3 commits\n  (merged to 'next' on 2011-05-30 at 9480900)\n + git-mergetool--lib: Make vimdiff retain the current directory\n + git: Remove handling for GIT_PREFIX\n + setup: Provide GIT_PREFIX to built-ins\n\nWill cook a bit longer.\n\n* jc/streaming-filter (2011-05-26) 8 commits\n - t0021: test application of both crlf and ident\n - t0021-conversion.sh: fix NoTerminatingSymbolAtEOF test\n - streaming: filter cascading\n - streaming filter: ident filter\n - Add LF-to-CRLF streaming conversion\n - stream filter: add \"no more input\" to the filters\n - Add streaming filter API\n - convert.h: move declarations for conversion from cache.h\n (this branch uses jc/streaming.)\n\nTrivial lf-to-crlf and ident conversions can be performed without reading\neverything in-core first.\n\nNot urgent. Will not merge before 1.7.6.\n\n* jk/combine-diff-binary-etc (2011-05-24) 5 commits\n  (merged to 'next' on 2011-05-24 at 07cf180)\n + combine-diff: respect textconv attributes\n + refactor get_textconv to not require diff_filespec\n + combine-diff: handle binary files as binary\n + combine-diff: calculate mode_differs earlier\n + combine-diff: split header printing into its own function\n\nNot urgent. Will not merge before 1.7.6.\n\n* jc/advice-about-to-lose-commit (2011-05-24) 1 commit\n  (merged to 'next' on 2011-05-30 at 42385cc)\n + checkout: make advice when reattaching the HEAD less loud\n\nNot urgent. Will not merge before 1.7.6.\n\n* jc/streaming (2011-05-26) 14 commits\n  (merged to 'next' on 2011-05-26 at 7fdda8d)\n + sha1_file: use the correct type (ssize_t, not size_t) for read-style function\n  (merged to 'next' on 2011-05-23 at 7fd0b52)\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 + convert: CRLF_INPUT is a no-op in the output codepath\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 is used by jc/streaming-filter.)\n\nNot urgent. Will not merge before 1.7.6.\n\n* ab/i18n-scripts (2011-05-21) 48 commits\n  (merged to 'next' on 2011-05-23 at 69164a3)\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 gettext + gettext to stderr 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\nRerolled.\nWill cook a bit longer.\n"},{"id":"169097","messageId":"4DE5E1C3.8000904@viscovery.net","threadId":"27513","inReplyTo":"7vhb8aij91.fsf@alter.siamese.dyndns.org","subject":"Re: What's cooking in git.git (May 2011, #14; Tue, 31)","fromName":"Johannes Sixt","fromEmail":"j.sixt@viscovery.net","sentAt":"2011-06-01T06:52:51Z","receivedAt":"2011-06-01T06:52:51Z","isPatch":false,"sender":{"key":"j6t@kdbg.org","avatar":"https://avatars.githubusercontent.com/u/14810926?v=4"},"body":"Am 6/1/2011 0:43, schrieb Junio C Hamano:\n> * ef/maint-win-verify-path (2011-05-27) 3 commits\n>  - verify_path: consider dos drive prefix\n>  - real_path: do not assume '/' is the path seperator\n>  - A Windows path starting with a backslash is absolute\n> \n> J6t had a reasonable question in the discussion; has it been resolved?\n\nThis particular question is resolved; I consider \"verify_path: consider\ndos drive prefix\" a good change. But I haven't had a chance to review the\neffects of the other two changes, yet.\n\n-- Hannes\n"},{"id":"169140","messageId":"7v62opgxy2.fsf@alter.siamese.dyndns.org","threadId":"27513","inReplyTo":"4DE5E1C3.8000904@viscovery.net","subject":"Re: What's cooking in git.git (May 2011, #14; Tue, 31)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2011-06-01T19:21:09Z","receivedAt":"2011-06-01T19:21:09Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Johannes Sixt <j.sixt@viscovery.net> writes:\n\n> Am 6/1/2011 0:43, schrieb Junio C Hamano:\n>> * ef/maint-win-verify-path (2011-05-27) 3 commits\n>>  - verify_path: consider dos drive prefix\n>>  - real_path: do not assume '/' is the path seperator\n>>  - A Windows path starting with a backslash is absolute\n>> \n>> J6t had a reasonable question in the discussion; has it been resolved?\n>\n> This particular question is resolved; I consider \"verify_path: consider\n> dos drive prefix\" a good change. But I haven't had a chance to review the\n> effects of the other two changes, yet.\n\nThe second one replaces strrchr(buf, '/') with find_last_dir_sep(buf),\nwhich I imagine would be a good change for Windows. If you are dealing\nwith a pathname that came directly from the end user, you may see a\nbackslash instead of a slash. If you are dealing with a pathname that is\nnormalized earlier to use slashes, as you cannot have a backslash as a\npath component anyway, the change will not hurt, either (except for a\nslight performance penalty). The same thing can be said for the \"starting\nwith a backslash\" patch.\n\n $ git grep -e \"strrchr(.*, '/')\" -e \"strchr(.*, '/')\"\n\nwill show a handful of instances that are not covered by the patch, that\nmay or may not be converted in a similar way. I suspect that many of the\nhits are reading paths we internally generate (either by reading from the\nindex or walking trees, concatenating paths components found with '/' in\nbetween) and should not have to be (and should not be) touched.\n"}]}