{"push_id":1325310569,"size":40,"distinct_size":2,"ref":"refs/heads/jk/external-odb-wip","head":"f0664bedbef1328a94b324f5d343ed0272008eed","before":"a0514a52df433b9c62762094c659c49a4ff48e7d","commits":[{"sha":"334192b411312c1ffab01af346d2d64d23597d84","author":{"name":"Jonathan Tan","email":"cd7d9b1b2e07747e72c61609f6cb1551235775cd@google.com"},"message":"mailinfo: separate in-body header processing\n\nThe check_header function contains logic specific to in-body headers,\nalthough it is invoked during both the processing of actual headers and\nin-body headers. Separate out the in-body header part into its own\nfunction.\n\nSigned-off-by: Jonathan Tan <jonathantanmy@google.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/334192b411312c1ffab01af346d2d64d23597d84"},{"sha":"9c5681da88825c4320d3f7142ed320e6984c2377","author":{"name":"Jonathan Tan","email":"cd7d9b1b2e07747e72c61609f6cb1551235775cd@google.com"},"message":"mailinfo: make is_scissors_line take plain char *\n\nThe is_scissors_line takes a struct strbuf * when a char * would\nsuffice. Make it take char *.\n\nSigned-off-by: Jonathan Tan <jonathantanmy@google.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/9c5681da88825c4320d3f7142ed320e6984c2377"},{"sha":"6b4b013f1884a3b5e67877d65a9f1da598ab4a6f","author":{"name":"Jonathan Tan","email":"cd7d9b1b2e07747e72c61609f6cb1551235775cd@google.com"},"message":"mailinfo: handle in-body header continuations\n\nMailinfo currently handles multi-line headers, but it does not handle\nmulti-line in-body headers. Teach it to handle such headers, for\nexample, for this input:\n\n  From: author <author@example.com>\n  Date: Fri, 9 Jun 2006 00:44:16 -0700\n  Subject: a very long\n   broken line\n\n  Subject: another very long\n   broken line\n\ninterpret the in-body subject to be \"another very long broken line\"\ninstead of \"another very long\".\n\nAn existing test (t/t5100/msg0015) has an indented line immediately\nafter an in-body header - it has been modified to reflect the new\nfunctionality.\n\nSigned-off-by: Jonathan Tan <jonathantanmy@google.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/6b4b013f1884a3b5e67877d65a9f1da598ab4a6f"},{"sha":"a9445d859e810cc193c1cdcb15fa684a5e9b7560","author":{"name":"Jeff King","email":"7e57302763bea699aee296fb53304dc616ab92d5@peff.net"},"message":"verify_packfile: check pack validity before accessing data\n\nThe verify_packfile() does not explicitly open the packfile;\ninstead, it starts with a sha1 checksum over the whole pack,\nand relies on use_pack() to open the packfile as a side\neffect.\n\nIf the pack cannot be opened for whatever reason (either\nbecause its header information is corrupted, or perhaps\nbecause a simultaneous repack deleted it), then use_pack()\nwill die(), as it has no way to return an error. This is not\nideal, as verify_packfile() otherwise tries to gently return\nan error (this lets programs like git-fsck go on to check\nother packs).\n\nInstead, let's check is_pack_valid() up front, and return an\nerror if it fails. This will open the pack as a side effect,\nand then use_pack() will later rely on our cached\ndescriptor, and avoid calling die().\n\nSigned-off-by: Jeff King <peff@peff.net>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/a9445d859e810cc193c1cdcb15fa684a5e9b7560"},{"sha":"c375a7efa3a42afc51385659437f04027ed106b1","author":{"name":"Jeff King","email":"7e57302763bea699aee296fb53304dc616ab92d5@peff.net"},"message":"ident: handle NULL ai_canonname\n\nWe call getaddrinfo() to try to convert a short hostname\ninto a fully-qualified one (to use it as an email domain).\nIf there isn't a canonical name, getaddrinfo() will\ngenerally return either a NULL addrinfo list, or one in\nwhich ai->ai_canonname is a copy of the original name.\n\nHowever, if the result of gethostname() looks like an IP\naddress, then getaddrinfo() behaves differently on some\nsystems. On OS X, it will return a \"struct addrinfo\" with a\nNULL ai_canonname, and we segfault feeding it to strchr().\n\nThis is hard to test reliably because it involves not only a\nsystem where we we have to fallback to gethostname() to come\nup with an ident, but also where the hostname is a number\nwith no dots. But I was able to replicate the bug by faking\na hostname, like:\n\n    diff --git a/ident.c b/ident.c\n    index e20a772..b790d28 100644\n    --- a/ident.c\n    +++ b/ident.c\n    @@ -128,6 +128,7 @@ static void add_domainname(struct strbuf *out, int *is_bogus)\n                     *is_bogus = 1;\n                     return;\n             }\n    +        xsnprintf(buf, sizeof(buf), \"1\");\n             if (strchr(buf, '.'))\n                     strbuf_addstr(out, buf);\n             else if (canonical_name(buf, out) < 0) {\n\nand running \"git var GIT_AUTHOR_IDENT\" on an OS X system.\n\nBefore this patch it segfaults, and after we correctly\ncomplain of the bogus \"user@1.(none)\" address (though this\nbogus address would be suitable for non-object uses like\nwriting reflogs).\n\nReported-by: Jonas Thiel <jonas.lierschied@gmx.de>\nDiagnosed-by: John Keeping <john@keeping.me.uk>\nSigned-off-by: Jeff King <peff@peff.net>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/c375a7efa3a42afc51385659437f04027ed106b1"},{"sha":"06b3d386e0a5841c11b6730f95c44068790d791e","author":{"name":"Jonathan Tan","email":"cd7d9b1b2e07747e72c61609f6cb1551235775cd@google.com"},"message":"fetch-pack: do not reset in_vain on non-novel acks\n\nThe MAX_IN_VAIN mechanism was introduced in commit f061e5f (\"fetch-pack:\ngive up after getting too many \"ack continue\"\", 2006-05-24) to stop ref\nnegotiation if a number of consecutive \"have\"s have been sent with no\ncorresponding new acks. This is to stop the client from digging too deep\nin an irrelevant side branch in vain without ever finding a common\nancestor. A use case (as described in that commit) is the scenario in\nwhich the local repository has more roots than the remote repository.\n\nHowever, during a negotiation in which stateless RPCs are used,\nMAX_IN_VAIN will (almost) never trigger (in the more-roots scenario\nabove and others) because in each new request, the client has to inform\nthe server of objects it already has and knows the server has (to remind\nthe server of the state), which the server then acks.\n\nMake fetch-pack only consider, as new acks for the purpose of\nMAX_IN_VAIN, acks for objects for which the client has never received an\nack before in this session.\n\nSigned-off-by: Jonathan Tan <jonathantanmy@google.com>\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/06b3d386e0a5841c11b6730f95c44068790d791e"},{"sha":"d49028e6e7ad02a0fc2622487abc46312d9b42f4","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"worktree: honor configuration variables\n\nThe command accesses default_abbrev (defined in environment.c and is\nupdated via core.abbrev configuration), but never makes any call to\ngit_config().  The output from \"worktree list\" ignores the abbrev\nsetting for this reason.\n\nMake a call to git_config() to read the default set of configuration\nvariables at the beginning of the command.\n\nSigned-off-by: Junio C Hamano <gitster@pobox.com>","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/d49028e6e7ad02a0fc2622487abc46312d9b42f4"},{"sha":"9e2c4fa5d381225f3cdb8e6578ff2a0b8080fa0d","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'bw/pathspec-remove-unused-extern-decl' into maint\n\nCode cleanup.\n\n* bw/pathspec-remove-unused-extern-decl:\n  pathspec: remove unnecessary function prototypes","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/9e2c4fa5d381225f3cdb8e6578ff2a0b8080fa0d"},{"sha":"3a3bb36514921bd5d5f2fc04af3e657b3b071d83","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'rs/checkout-some-states-are-const' into maint\n\nCode cleanup.\n\n* rs/checkout-some-states-are-const:\n  checkout: constify parameters of checkout_stage() and checkout_merged()","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/3a3bb36514921bd5d5f2fc04af3e657b3b071d83"},{"sha":"b0af4819938761654050d934c12c244c2de629be","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'rs/strbuf-remove-fix' into maint\n\nCode cleanup.\n\n* rs/strbuf-remove-fix:\n  strbuf: use valid pointer in strbuf_remove()","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/b0af4819938761654050d934c12c244c2de629be"},{"sha":"633212b246c9af1698983fc53f06398be4dc2f70","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'rs/unpack-trees-reduce-file-scope-global' into maint\n\nCode cleanup.\n\n* rs/unpack-trees-reduce-file-scope-global:\n  unpack-trees: pass checkout state explicitly to check_updates()","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/633212b246c9af1698983fc53f06398be4dc2f70"},{"sha":"73336299e1500bfead563170bdcd69b519811ef6","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'mr/vcs-svn-printf-ulong' into maint\n\nCode cleanup.\n\n* mr/vcs-svn-printf-ulong:\n  vcs-svn/fast_export: fix timestamp fmt specifiers","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/73336299e1500bfead563170bdcd69b519811ef6"},{"sha":"8183592601b007c3eb92cc747276dbf30ef51a90","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'sy/git-gui-i18n-ja' into maint\n\nUpdate Japanese translation for \"git-gui\".\n\n* sy/git-gui-i18n-ja:\n  git-gui: update Japanese information\n  git-gui: update Japanese translation\n  git-gui: add Japanese language code\n  git-gui: apply po template to Japanese translation\n  git-gui: consistently use the same word for \"blame\" in Japanese\n  git-gui: consistently use the same word for \"remote\" in Japanese","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/8183592601b007c3eb92cc747276dbf30ef51a90"},{"sha":"35ec7fd479f85797d3d2b76beee29121a0a45aff","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'jk/fix-remote-curl-url-wo-proto' into maint\n\n\"git fetch http::/site/path\" did not die correctly and segfaulted\ninstead.\n\n* jk/fix-remote-curl-url-wo-proto:\n  remote-curl: handle URLs without protocol","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/35ec7fd479f85797d3d2b76beee29121a0a45aff"},{"sha":"d7e74c940b9a2f9a8d1c5bfb1c7df5591afb9666","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'js/git-gui-commit-gpgsign' into maint\n\n\"git commit-tree\" stopped reading commit.gpgsign configuration\nvariable that was meant for Porcelain \"git commit\" in Git 2.9; we\nforgot to update \"git gui\" to look at the configuration to match\nthis change.\n\n* js/git-gui-commit-gpgsign:\n  git-gui: respect commit.gpgsign again","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/d7e74c940b9a2f9a8d1c5bfb1c7df5591afb9666"},{"sha":"35ca3e538d2e36c528ff5382a0e3cca35b46c6ed","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'jk/patch-ids-no-merges' into maint\n\n\"git log --cherry-pick\" used to include merge commits as candidates\nto be matched up with other commits, resulting a lot of wasted time.\nThe patch-id generation logic has been updated to ignore merges to\navoid the wastage.\n\n* jk/patch-ids-no-merges:\n  patch-ids: refuse to compute patch-id for merge commit\n  patch-ids: turn off rename detection","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/35ca3e538d2e36c528ff5382a0e3cca35b46c6ed"},{"sha":"e007a094d49d58105a93a22bd4e6d33f6b3eacbd","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'ew/http-do-not-forget-to-call-curl-multi-remove-handle' into maint\n\nThe http transport (with curl-multi option, which is the default\nthese days) failed to remove curl-easy handle from a curlm session,\nwhich led to unnecessary API failures.\n\n* ew/http-do-not-forget-to-call-curl-multi-remove-handle:\n  http: always remove curl easy from curlm session on release\n  http: consolidate #ifdefs for curl_multi_remove_handle\n  http: warn on curl_multi_add_handle failures","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/e007a094d49d58105a93a22bd4e6d33f6b3eacbd"},{"sha":"ef4f0cad4ba2340d02e79f60a5b5a308048222c7","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'rs/xdiff-merge-overlapping-hunks-for-W-context' into maint\n\n\"git diff -W\" output needs to extend the context backward to\ninclude the header line of the current function and also forward to\ninclude the body of the entire current function up to the header\nline of the next one.  This process may have to merge to adjacent\nhunks, but the code forgot to do so in some cases.\n\n* rs/xdiff-merge-overlapping-hunks-for-W-context:\n  xdiff: fix merging of hunks with -W context and -u context","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/ef4f0cad4ba2340d02e79f60a5b5a308048222c7"},{"sha":"08d0f7a5317d80cbb93f80791f2759fb6aec890f","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'ks/perf-build-with-autoconf' into maint\n\nPerformance tests done via \"t/perf\" did not use the same set of\nbuild configuration if the user relied on autoconf generated\nconfiguration.\n\n* ks/perf-build-with-autoconf:\n  t/perf/run: copy config.mak.autogen & friends to build area","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/08d0f7a5317d80cbb93f80791f2759fb6aec890f"},{"sha":"7b7e977b9625d0e5a4d4aa9fa6ffb62f083cbb6b","author":{"name":"Junio C Hamano","email":"3228067b6039a0d99bddaf967dafdecd5cc61600@pobox.com"},"message":"Merge branch 'jt/format-patch-base-info-above-sig' into maint\n\n\"git format-patch --base=...\" feature that was recently added\nshowed the base commit information after \"-- \" e-mail signature\nline, which turned out to be inconvenient.  The base information\nhas been moved above the signature line.\n\n* jt/format-patch-base-info-above-sig:\n  format-patch: show base info before email signature","distinct":false,"url":"https://api.github.com/repos/peff/git/commits/7b7e977b9625d0e5a4d4aa9fa6ffb62f083cbb6b"}]}
{"actor":{"display_login":"peff"}}