{"thread":{"id":"23511","subject":"What's cooking in git.git (Apr 2010, #06; Sat, 17)","startedAt":"2010-04-18T06:16:00Z","lastAt":"2010-04-18T18:57:53Z","messageCount":4,"participants":["Junio C Hamano","Jeff King"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"139816","messageId":"7v7ho5xp3z.fsf@alter.siamese.dyndns.org","threadId":"23511","inReplyTo":null,"subject":"What's cooking in git.git (Apr 2010, #06; Sat, 17)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2010-04-18T06:16:00Z","receivedAt":"2010-04-18T06:16:00Z","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'.  The ones\nmarked with '.' do not appear in any of the integration branches, but I am\nstill holding onto them.\n\nI'll soon be tagging 1.7.1-rc2; please test 'master', report & fix\nregressions.\n\n--------------------------------------------------\n[New Topics]\n\n* jk/maint-diffstat-overflow (2010-04-17) 1 commit\n - diff: use large integers for diffstat calculations\n\n* jn/t7006-fixup (2010-04-14) 1 commit\n - t7006: guard cleanup with test_expect_success\n\n* js/maint-receive-pack-symref-alias (2010-04-15) 2 commits\n - receive-pack: ignore duplicated commands which can occur with symrefs\n - receive-pack: Switch global variable 'commands' to a parameter\n\n* sp/maint-dumb-http-pack-reidx (2010-04-17) 11 commits\n - http-fetch: Use temporary files for pack-*.idx until verified\n - http-fetch: Use index-pack rather than verify-pack to check packs\n - Allow parse_pack_index on temporary files\n - Extract verify_pack_index for reuse from verify_pack\n - Introduce close_pack_index to permit replacement\n - http.c: Remove unnecessary strdup of sha1_to_hex result\n - http.c: Don't store destination name in request structures\n - http.c: Drop useless != NULL test in finish_http_pack_request\n - http.c: Tiny refactoring of finish_http_pack_request\n - t5550-http-fetch: Use subshell for repository operations\n - http.c: Remove bad free of static block\n\n* wp/doc-filter-direction (2010-04-17) 1 commit\n - documentation: clarify direction of core.autocrlf\n\n--------------------------------------------------\n[Graduated to \"master\"]\n\n* jc/doc-submit-gmail (2010-04-07) 1 commit\n  (merged to 'next' on 2010-04-10 at cd4e8cf)\n + SubmittingPatches: update GMail section\n\n--------------------------------------------------\n[Stalled]\n\n* rr/remote-helper-doc (2010-04-07) 3 commits\n - Documentation/remote-helpers: Add invocation section\n - Documentation/urls: Rewrite to accomodate <transport>::<address>\n - Documentation/remote-helpers: Rewrite description\n\nI'd like acks or rewrites from transport people on this topic.\n\n* js/rebase-origin-x (2010-02-05) 1 commit\n - [RFC w/o test and incomplete] rebase: add -x option to record original commit name\n\nI retract my objection against the idea of -x; needs polishing before\nmoving forward.\n\n* js/grep-open (2010-03-26) 2 commits\n - grep -O: allow optional argument specifying the pager (or editor)\n - grep: Add the option '--open-files-in-pager'\n (this branch is used by jp/hold-string-list-sanity.)\n\nProbably needs to support --no-index mode as well.\n\n* jp/hold-string-list-sanity (2010-04-06) 9 commits\n . string_list: Fix argument order for string_list_append\n . Merge branch 'sr/remote-helper-export' into HEAD\n . Merge branch 'js/grep-open' into HEAD\n . Merge branch 'sb/fmt-merge-msg' into HEAD\n . string_list: Fix argument order for string_list_lookup\n . string_list: Fix argument order for string_list_insert_at_index\n . string_list: Fix argument order for string_list_insert\n . string_list: Fix argument order for for_each_string_list\n . string_list: Fix argument order for print_string_list\n (this branch uses js/grep-open and sr/remote-helper-export.)\n\nBuilding this on top of slushy codebase is not a very promising endeavor.\nGood thing to do, but bad timing.\n\n--------------------------------------------------\n[Cooking]\n\n* hg/id-munging (2010-04-06) 2 commits\n - convert: Keep foreign $Id$ on checkout.\n - convert: Safer handling of $Id$ contraction.\n\n* jn/submodule-basic-test (2010-04-10) 3 commits\n - t7400: clarify submodule update tests\n - t7400: clarify 'submodule add' tests\n - t7400: split setup into multiple tests\n\n* np/index-pack-memsave (2010-04-12) 3 commits\n - index-pack: smarter memory usage when appending objects\n - index-pack: rationalize unpack_entry_data()\n - index-pack: smarter memory usage when resolving deltas\n\n* jg/auto-initialize-notes-with-percent-n-in-format (2010-04-13) 1 commit\n - pretty: Initialize notes if %N is used\n\n* jc/am-3-show-corrupted-patch (2010-04-09) 1 commit\n - am -3: recover the diagnostic messages for corrupt patches\n\n* jc/maint-no-reflog-expire-unreach-for-head (2010-04-09) 3 commits\n - reflog --expire-unreachable: special case entries in \"HEAD\" reflog\n - more war on \"sleep\" in tests\n - Document gc.<pattern>.reflogexpire variables\n (this branch uses jc/maint-reflog-expire-unreachable.)\n\nRerolled; instead of ignoring the configuration like the previous round\ndid, this one prunes stale entries that are unreachable from any ref from\nthe reflog of HEAD.\n\n* cw/maint-exec-defpath (2010-04-15) 2 commits\n - autoconf: Check if <paths.h> exists and set HAVE_PATHS_H\n - exec_cmd.c: replace hard-coded path list with one from <paths.h>\n\n* tr/word-diff (2010-04-14) 1 commit\n - diff: add --word-diff option that generalizes --color-words\n\nThere are gitk patches that go with this series.\n\n* sp/maint-describe-tiebreak-with-tagger-date (2010-04-12) 5 commits\n - describe: Break annotated tag ties by tagger date\n - tag.c: Parse tagger date (if present)\n - tag.c: Refactor parse_tag_buffer to be saner to program\n - tag.h: Remove unused signature field\n - tag.c: Correct indentation\n\n* bg/apply-blank-trailing-context (2010-04-08) 1 commit\n  (merged to 'next' on 2010-04-14 at a393c0b)\n + apply: Allow blank *trailing* context lines to match beyond EOF\n\n* bg/send-email-smtpdomain (2010-04-10) 4 commits\n  (merged to 'next' on 2010-04-14 at 88fff99)\n + send-email: Cleanup smtp-domain and add config\n + Document send-email --smtp-domain\n + send-email: Don't use FQDNs without a '.'\n + send-email: Cleanup { style\n\n* rc/ls-remote-default (2010-04-09) 1 commit\n  (merged to 'next' on 2010-04-14 at d5081bd)\n + ls-remote: fall-back to default remotes when no remote specified\n\n* rc/maint-curl-helper (2010-04-08) 3 commits\n  (merged to 'next' on 2010-04-14 at 2eb9177)\n + remote-curl: ensure that URLs have a trailing slash\n + http: make end_url_with_slash() public\n + t5541-http-push: add test for URLs with trailing slash\n\n* hg/maint-attr-fix (2010-04-06) 3 commits\n  (merged to 'next' on 2010-04-14 at a27c7d7)\n + attr: Expand macros immediately when encountered.\n + attr: Allow multiple changes to an attribute on the same line.\n + attr: Fixed debug output for macro expansion.\n\n* jc/status-show-ignored (2010-04-10) 5 commits\n - status: --ignored option shows ignored files\n - wt-status: rename and restructure status-print-untracked\n - wt-status: collect ignored files\n - wt-status: plug memory leak while collecting untracked files\n - wt-status: remove unused workdir_untracked member\n\nThis is merely an illustration patch.  I am negative about conflating the\nJSON output to the mix at this point.  If we are going to add JSON option\nto everywhere we would generate \"machine readable\" output with the -z\nand/or --porcelain options, that is fine, but let's stabilize \"status\"\nwith the existing --porcelain/-z option first.\n\n* eb/unpretty-b-format (2010-03-24) 1 commit\n  (merged to 'next' on 2010-04-07 at 7f5c112)\n + Add `%B' in format strings for raw commit body in `git log' and friends\n\n* ab/commit-empty-message (2010-04-06) 1 commit\n  (merged to 'next' on 2010-04-07 at 701e863)\n + Add option to git-commit to allow empty log messages\n\n* jc/test-sleepless (2010-04-06) 1 commit\n  (merged to 'next' on 2010-04-07 at 8ccf40a)\n + war on \"sleep\" in tests\n\n* jc/maint-reflog-expire-unreachable (2010-04-07) 1 commit\n - reflog --expire-unreachable: avoid merge-base computation\n (this branch is used by jc/maint-no-reflog-expire-unreach-for-head.)\n\n* np/malloc-threading (2010-04-08) 2 commits\n  (merged to 'next' on 2010-04-10 at e1730fb)\n + Thread-safe xmalloc and xrealloc needs a recursive mutex\n + Make xmalloc and xrealloc thread-safe\n\nThe fix should eventually go to 'maint' and 'master'.  This queues the one\nfrom J6t for Windows compatibility.\n\n* js/async-thread (2010-03-09) 7 commits\n - Enable threaded async procedures whenever pthreads is available\n  (merged to 'next' on 2010-03-20 at 9939243)\n + Dying in an async procedure should only exit the thread, not the process.\n + Reimplement async procedures using pthreads\n + Windows: more pthreads functions\n + Fix signature of fcntl() compatibility dummy\n + Make report() from usage.c public as vreportf() and use it.\n + Modernize t5530-upload-pack-error.\n\nBeen waiting for resolution of locking issues in malloc-threading.\n\n* sd/log-decorate (2010-04-08) 6 commits\n  (merged to 'next' on 2010-04-08 at 68fee56)\n + log.decorate: only ignore it under \"log --pretty=raw\"\n + script with rev-list instead of log\n  (merged to 'next' on 2010-04-06 at 992c9ad)\n + log --pretty/--oneline: ignore log.decorate\n  (merged to 'next' on 2010-03-08 at 58a6fba)\n + log.decorate: usability fixes\n + Add `log.decorate' configuration variable.\n + git_config_maybe_bool()\n\n* mh/status-optionally-refresh (2010-04-03) 3 commits\n  (merged to 'next' on 2010-04-05 at 0e64aac)\n + t7508: add a test for \"git status\" in a read-only repository\n + git status: refresh the index if possible\n + t7508: add test for \"git status\" refreshing the index\n\n* cw/ws-indent-with-tab (2010-04-03) 6 commits\n  (merged to 'next' on 2010-04-05 at 5b5e579)\n + whitespace: tests for git-apply --whitespace=fix with tab-in-indent\n + whitespace: add tab-in-indent support for --whitespace=fix\n + whitespace: replumb ws_fix_copy to take a strbuf *dst instead of char *dst\n + whitespace: tests for git-diff --check with tab-in-indent error class\n + whitespace: add tab-in-indent error class\n + whitespace: we cannot \"catch all errors known to git\" anymore\n\n* sr/remote-helper-export (2010-04-12) 9 commits\n  (merged to 'next' on 2010-04-12 at cefbb2f)\n + t5800: testgit helper requires Python support\n  (merged to 'next' on 2010-04-09 at 94f6e3d)\n + Makefile: Simplify handling of python scripts\n  (merged to 'next' on 2010-04-07 at 5651307)\n + remote-helpers: add tests for testgit helper\n + remote-helpers: add testgit helper\n + remote-helpers: add support for an export command\n + remote-helpers: allow requesing the path to the .git directory\n + fast-import: always create marks_file directories\n + clone: also configure url for bare clones\n + clone: pass the remote name to remote_get\n (this branch is used by jp/hold-string-list-sanity.)\n\n* cc/revert-strategy (2010-03-31) 5 commits\n  (merged to 'next' on 2010-04-05 at 50909c1)\n + revert: add \"--strategy\" option to choose merge strategy\n + merge: make function try_merge_command non static\n + merge: refactor code that calls \"git merge-STRATEGY\"\n + revert: refactor merge recursive code into its own function\n + revert: use strbuf to refactor the code that writes the merge message\n\nThis is more about debugging and we are not in a great hurry.\n\n* sc/http-late-auth (2010-04-01) 1 commit\n  (merged to 'next' on 2010-04-02 at c991acf)\n + Prompt for a username when an HTTP request 401s\n\n* jk/cached-textconv (2010-04-01) 5 commits\n  (merged to 'next' on 2010-04-02 at a023e3c)\n + diff: avoid useless filespec population\n + diff: cache textconv output\n + textconv: refactor calls to run_textconv\n + introduce notes-cache interface\n + make commit_tree a library function\n\nThe small leak fixes in the beginning of the series has been merged to\n'master' after a minor fixup.\n\n* ld/discovery-limit-to-fs (2010-04-04) 6 commits\n - write-index: check and warn when worktree crosses a filesystem boundary\n  (merged to 'next' on 2010-04-07 at 11ea09a)\n + Rename ONE_FILESYSTEM to DISCOVERY_ACROSS_FILESYSTEM\n + GIT_ONE_FILESYSTEM: flip the default to stop at filesystem boundaries\n + Add support for GIT_ONE_FILESYSTEM\n + truncate cwd string before printing error message\n + config.c: remove static keyword from git_env_bool()\n\nThe tip one is a bit iffy; the whole series changes behaviour in a corner\ncase, and is not a 1.7.1 material.\n\n* pc/remove-warn (2010-03-26) 4 commits\n  (merged to 'next' on 2010-04-02 at 52fc00d)\n + Remove a redundant errno test in a usage of remove_path\n + Introduce remove_or_warn function\n + Implement the rmdir_or_warn function\n + Generalise the unlink_or_warn function\n\nI cherry-picked only obviously sensible bits.\n\n* em/checkout-orphan (2010-03-21) 1 commit\n  (merged to 'next' on 2010-03-28 at 86b6a4f)\n + git checkout: create unparented branch by --orphan\n\nPerhaps needs a bit of documentation updates, describing the \"going open\nsource\" scenario.\n\n* ar/config-from-command-line (2010-03-26) 2 commits\n  (merged to 'next' on 2010-04-07 at e50fd3a)\n + Use strbufs instead of open-coded string manipulation\n + Allow passing of configuration parameters in the command line\n"},{"id":"139817","messageId":"20100418083641.GA17717@coredump.intra.peff.net","threadId":"23511","inReplyTo":"7v7ho5xp3z.fsf@alter.siamese.dyndns.org","subject":"Re: What's cooking in git.git (Apr 2010, #06; Sat, 17)","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2010-04-18T08:36:41Z","receivedAt":"2010-04-18T08:36:41Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Sat, Apr 17, 2010 at 11:16:00PM -0700, Junio C Hamano wrote:\n\n> * jg/auto-initialize-notes-with-percent-n-in-format (2010-04-13) 1 commit\n>  - pretty: Initialize notes if %N is used\n\nI think the last round looked good, and this would ideally go into\nv1.7.1, as it fixes a segfault. It is getting a bit late in the -rc\ncycle, though. I guess the other option is to close the segfault with a\none-liner and just make %N a no-op for v1.7.1, and then fix it right for\nv1.7.2.  I think I would prefer to have Johannes' patch right away,\nthough.\n\n-Peff\n"},{"id":"139826","messageId":"7vvdbowrkq.fsf@alter.siamese.dyndns.org","threadId":"23511","inReplyTo":"20100418083641.GA17717@coredump.intra.peff.net","subject":"Re: What's cooking in git.git (Apr 2010, #06; Sat, 17)","fromName":"Junio C Hamano","fromEmail":"gitster@pobox.com","sentAt":"2010-04-18T18:20:21Z","receivedAt":"2010-04-18T18:20:21Z","isPatch":false,"sender":{"key":"gitster@pobox.com","avatar":"https://avatars.githubusercontent.com/u/54884?v=4"},"body":"Jeff King <peff@peff.net> writes:\n\n> On Sat, Apr 17, 2010 at 11:16:00PM -0700, Junio C Hamano wrote:\n>\n>> * jg/auto-initialize-notes-with-percent-n-in-format (2010-04-13) 1 commit\n>>  - pretty: Initialize notes if %N is used\n>\n> I think the last round looked good, and this would ideally go into\n> v1.7.1, as it fixes a segfault. It is getting a bit late in the -rc\n> cycle, though. I guess the other option is to close the segfault with a\n> one-liner and just make %N a no-op for v1.7.1, and then fix it right for\n> v1.7.2.  I think I would prefer to have Johannes' patch right away,\n> though.\n\nIt is an assertion failure but the fix is low-impact enough to appear in\nthe coming release.\n\n t/t3301-notes.sh |   18 ++++++++++++++++++\n 1 files changed, 18 insertions(+), 0 deletions(-)\n\ndiff --git a/t/t3301-notes.sh b/t/t3301-notes.sh\nindex b2e7b07..64f32ad 100755\n--- a/t/t3301-notes.sh\n+++ b/t/t3301-notes.sh\n@@ -55,6 +55,15 @@ test_expect_success 'handle empty notes gracefully' '\n \tgit notes show ; test 1 = $?\n '\n \n+test_expect_success 'show non-existent notes entry with %N' '\n+\tfor l in A B\n+\tdo\n+\t\techo \"$l\"\n+\tdone >expect &&\n+\tgit show -s --format='A%n%NB' >output &&\n+\ttest_cmp expect output\n+'\n+\n test_expect_success 'create notes' '\n \tgit config core.notesRef refs/notes/commits &&\n \tMSG=b4 git notes add &&\n@@ -65,6 +74,15 @@ test_expect_success 'create notes' '\n \ttest_must_fail git notes show HEAD^\n '\n \n+test_expect_success 'show notes entry with %N' '\n+\tfor l in A b4 B\n+\tdo\n+\t\techo \"$l\"\n+\tdone >expect &&\n+\tgit show -s --format='A%n%NB' >output &&\n+\ttest_cmp expect output\n+'\n+\n cat >expect <<EOF\n d423f8c refs/notes/commits@{0}: notes: Notes added by 'git notes add'\n EOF\n"},{"id":"139838","messageId":"20100418185753.GB11366@coredump.intra.peff.net","threadId":"23511","inReplyTo":"7vvdbowrkq.fsf@alter.siamese.dyndns.org","subject":"Re: What's cooking in git.git (Apr 2010, #06; Sat, 17)","fromName":"Jeff King","fromEmail":"peff@peff.net","sentAt":"2010-04-18T18:57:53Z","receivedAt":"2010-04-18T18:57:53Z","isPatch":false,"sender":{"key":"peff@peff.net","avatar":"https://avatars.githubusercontent.com/u/45925?v=4"},"body":"On Sun, Apr 18, 2010 at 11:20:21AM -0700, Junio C Hamano wrote:\n\n> >> * jg/auto-initialize-notes-with-percent-n-in-format (2010-04-13) 1 commit\n> >>  - pretty: Initialize notes if %N is used\n> [...]\n> \n> It is an assertion failure but the fix is low-impact enough to appear in\n> the coming release.\n\nYeah, I forgot it was an assertion and not a segfault, but I think both\nare things we would rather not see in a release.\n\n>  t/t3301-notes.sh |   18 ++++++++++++++++++\n>  1 files changed, 18 insertions(+), 0 deletions(-)\n\nYour tests look sane to me.\n\n-Peff\n"}]}