{"thread":{"id":"53415","subject":"Git Test Coverage Report (May 6, 2020)","startedAt":"2020-05-06T15:19:43Z","lastAt":"2020-05-06T17:45:29Z","messageCount":2,"participants":["Derrick Stolee","Taylor Blau"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"397191","messageId":"4a47a215-f636-3f94-17f5-33f13140bdc7@gmail.com","threadId":"53415","inReplyTo":null,"subject":"Git Test Coverage Report (May 6, 2020)","fromName":"Derrick Stolee","fromEmail":"stolee@gmail.com","sentAt":"2020-05-06T15:19:38Z","receivedAt":"2020-05-06T15:19:43Z","isPatch":false,"sender":{"key":"stolee@gmail.com","avatar":"https://avatars.githubusercontent.com/u/570044?v=4"},"body":"Here is today's test coverage report.\n\nThanks,\n-Stolee\n\n\n[1] https://derrickstolee.github.io/git-test-coverage/reports/2020-05-06-commits.txt\n[2] https://derrickstolee.github.io/git-test-coverage/reports/2020-05-06.txt\n[3] https://derrickstolee.github.io/git-test-coverage/reports/2020-05-06.htm\n\n---\n\npu\tc0f7ae5a7ea5cf8246270fcf1853726167ca8ef4\njch\tfffcd002d6befa77784a44046b986934b87e6c3b\nnext\t55c56c9c57da646085d27e61a3420043978ab4a1\nmaster\t07d8ea56f2ecb64b75b92264770c0a664231ce17\nmaster@{1}\t86ab15cb154862b6fa5cc646dac27532f881e1fb\n\n\nUncovered code in 'pu' not in 'jch'\n--------------------------------------------------------\n\nCommits introducing uncovered code:\nDerrick Stolee\t78a1541e line-log: integrate with changed-path Bloom filters\nline-log.c\n78a1541e 1159) return 1;\n78a1541e 1166) return 0;\n\nJiang Xin\t7e70e854 receive-pack: new config receive.procReceiveRefs\nbuiltin/receive-pack.c\n7e70e854 239) return config_error_nonbool(var);\n7e70e854 1838) continue;\n\nJiang Xin\tad8697b0 receive-pack: add new proc-receive hook\nbuiltin/receive-pack.c\nad8697b0 1045) return code;\nad8697b0 1048) proc.err = 0;\nad8697b0 1053) if (use_sideband)\nad8697b0 1054) finish_async(&muxer);\nad8697b0 1055) return code;\nad8697b0 1541) cmd->report.error_message = \"broken symref\";\nad8697b0 1726) cmd->report.error_message = \"transaction failed to start\";\nad8697b0 1865) if (!cmd->report.error_message)\nad8697b0 1866) cmd->report.error_message = \"unable to migrate objects to permanent storage\";\nad8697b0 2266)  cmd->ref_name, cmd->report.error_message);\n\nt/helper/test-proc-receive.c\nad8697b0 134) usage_msg_opt(\"Too many arguments.\", proc_receive_usage, options);\n\nJiang Xin\t1b722303 New capability \"report-status-v2\" for git-push\nsend-pack.c\n1b722303 183)        if (new_options) {\n1b722303 185) new_options = 0;\n1b722303 187) ret = -1;\n1b722303 188) continue;\n1b722303 228) ret = -1;\n1b722303 229) break;\n1b722303 243)     hint->status != REF_STATUS_OK &&\n1b722303 244)     hint->status != REF_STATUS_REMOTE_REJECT) {\n\ntransport-helper.c\n1b722303 833) hint = NULL;\n1b722303 852) (*ref)->report.message = msg;\n\nMiriam Rubio\t9aadf776 bisect--helper: introduce new `write_in_file()` function\nbuiltin/bisect--helper.c\n9aadf776 91) return error_errno(_(\"cannot open file '%s' in mode '%s'\"), path, mode);\n9aadf776 96) fclose(fp);\n9aadf776 97) return error_errno(_(\"could not write to file '%s'\"), path);\n\nPhillip Wood\t30b22821 rebase -i: support --ignore-date\nsequencer.c\n30b22821 893) return NULL;\n30b22821 1475) res = -1;\n30b22821 1476) goto out;\n\nPhillip Wood\t66f46e74 rebase -i: support --committer-date-is-author-date\nsequencer.c\n66f46e74 1395) goto out;\n66f46e74 1399) goto out;\n\nPranit Bauva\t587c9fac bisect--helper: reimplement `bisect_next` and `bisect_auto_next` shell functions in C\nbuiltin/bisect--helper.c\n587c9fac 493) return error_errno(_(\"failed to write to '%s'\"), git_path_bisect_log());\n587c9fac 522) return error_errno(_(\"could not open '%s' for appending\"),\n\nPranit Bauva\tf0bf9482 bisect--helper: finish porting `bisect_start()` to C\nbuiltin/bisect--helper.c\nf0bf9482 730) return BISECT_FAILED;\nf0bf9482 751) res = BISECT_FAILED;\nf0bf9482 763) res = BISECT_FAILED;\nf0bf9482 775) res = BISECT_FAILED;\n\nPranit Bauva\t05a69202 bisect--helper: reimplement `bisect_autostart` shell function in C\nbuiltin/bisect--helper.c\n05a69202 818) fprintf(stderr, _(\"You need to start by \\\"git bisect \"\n05a69202 821) if (!isatty(STDIN_FILENO))\n05a69202 822) return 1;\n05a69202 829) yesno = git_prompt(_(\"Do you want me to do it for you \"\n05a69202 831) if (starts_with(yesno, _(\"n\")) || starts_with(yesno, _(\"N\")))\n05a69202 832) return 1;\n05a69202 834) return bisect_start(terms, 0, NULL, 0);\n\nPranit Bauva\t10520dbf bisect--helper: reimplement `bisect_state` & `bisect_head` shell functions in C\nbuiltin/bisect--helper.c\n10520dbf 869) return BISECT_FAILED;\n10520dbf 885) oid_array_clear(&revs);\n10520dbf 886) return BISECT_FAILED;\n\nShawn O. Pearce\t38a81b4e receive-pack: Wrap status reports inside side-band-64k\nbuiltin/receive-pack.c\n38a81b4e 2265) packet_buf_write(&buf, \"ng %s %s\\n\",\n38a81b4e 2271) send_sideband(1, 1, buf.buf, buf.len, use_sideband);\n\nTaylor Blau\t199d758e builtin/commit-graph.c: dereference tags in builtin\nbuiltin/commit-graph.c\n199d758e 244) progress = start_delayed_progress(\n\n\n\nUncovered code in 'jch' not in 'next'\n--------------------------------------------------------\n\nCommits introducing uncovered code:\nDamien Robert\t812a5889 remote.c: fix handling of %(push:remoteref)\nremote.c\n812a5889 1638) return NULL;\n812a5889 1645) return branch->refname;\n812a5889 1660) return NULL;\n812a5889 1774) return NULL;\n\nJonathan Tan\tfbda77c6 commit-graph: avoid Memory Leaks\ncommit-graph.c\nfbda77c6 296) goto free_and_return;\nfbda77c6 363) goto free_and_return;\n\n\n\nUncovered code in 'next' not in 'master'\n--------------------------------------------------------\n\nCommits introducing uncovered code:\n\n\nUncovered code in 'master' not in 'master@{1}'\n--------------------------------------------------------\n\nCommits introducing uncovered code:\nDenton Liu\tbe1bb600 sequencer: make apply_autostash() accept a path\nsequencer.c\nbe1bb600 5203) apply_autostash(rebase_path_autostash());\n\nDenton Liu\t65c425a2 sequencer: stop leaking buf\nsequencer.c\n65c425a2 2557) goto done_rebase_i;\n\nDenton Liu\t5b2f6d9c sequencer: make file exists check more efficient\nsequencer.c\n5b2f6d9c 431) warning_errno(_(\"could not read '%s'\"), path);\n\nDenton Liu\tefcf6cf0 rebase: use read_oneliner()\nbuiltin/rebase.c\nefcf6cf0 625) } else if (!read_oneliner(&buf, state_dir_path(\"head\", opts),\n\nDenton Liu\tf213f069 rebase: generify reset_head()\nbuiltin/rebase.c\nf213f069 880) reset_head(the_repository, &opts->orig_head, \"checkout\",\nf213f069 881)    opts->head_name, 0,\n\nDenton Liu\t86ed00af rebase: use apply_autostash() from sequencer.c\nbuiltin/rebase.c\n86ed00af 1041) apply_autostash(state_dir_path(\"autostash\", opts));\n\nDenton Liu\tb309a971 reset: extract reset_head() from rebase\nreset.c\nb309a971 37) ret = -1;\nb309a971 38) goto leave_reset_head;\nb309a971 43) goto leave_reset_head;\nb309a971 66) goto leave_reset_head;\nb309a971 72) goto leave_reset_head;\nb309a971 77) goto leave_reset_head;\nb309a971 81) ret = -1;\nb309a971 82) goto leave_reset_head;\nb309a971 90) goto leave_reset_head;\nb309a971 109) } else if (old_orig)\nb309a971 110) delete_ref(NULL, \"ORIG_HEAD\", old_orig, 0);\n\nDerrick Stolee\te3696980 diff: halt tree-diff early after max_changes\ntree-diff.c\ne3696980 438) break;\n\nDerrick Stolee\t8918e379 revision: complicated pathspecs disable filters\nrevision.c\n8918e379 658) return 1;\n8918e379 662) return 1;\n\nDerrick Stolee\t6c622f9f commit-graph: write commit-graph chains\ncommit-graph.c\n6c622f9f 1585) return -1;\n\nDerrick Stolee\t0906ac2b blame: use changed-path Bloom filters\nblame.c\n0906ac2b 1281) return 1;\n0906ac2b 1302) bd->alloc *= 2;\n0906ac2b 1303) REALLOC_ARRAY(bd->keys, bd->alloc);\n0906ac2b 2899) return;\n\nĐoàn Trần Công Danh\t4f89f4fc date.c: validate and set time in a helper function\ndate.c\n4f89f4fc 553) return -1;\n\nĐoàn Trần Công Danh\tc933b28d date.c: s/is_date/set_date/\ndate.c\nc933b28d 521) return -1;\nc933b28d 532) return -1;\n\nElijah Newren\t7af7a258 unpack-trees: add a new update_sparsity() function\nunpack-trees.c\n7af7a258 1846) ret = UPDATE_SPARSITY_WORKTREE_UPDATE_FAILURES;\n\nElijah Newren\t16846444 dir: include DIR_KEEP_UNTRACKED_CONTENTS handling in treat_directory()\ndir.c\n16846444 1924) FREE_AND_NULL(dir->entries[i]);\n\nEmily Shaffer\t1411914a bugreport: add uname info\nbugreport.c\n1411914a 18) strbuf_addf(sys_info, _(\"uname() failed with error '%s' (%d)\\n\"),\n1411914a 20)     errno);\n\nEmily Shaffer\t617d5719 bugreport: gather git version and build info\nhelp.c\n617d5719 641) strbuf_addstr(buf, \"no commit associated with this build\\n\");\n\nEmily Shaffer\t709df95b help: move list_config_help to builtin/help\nbuiltin/help.c\n709df95b 123) puts(var);\n709df95b 124) continue;\n\nGarima Singh\ted591feb bloom.c: core Bloom filter implementation for changed paths.\nbloom.c\ned591feb 172) return NULL;\ned591feb 246) for (i = 0; i < diff_queued_diff.nr; i++)\ned591feb 247) diff_free_filepair(diff_queued_diff.queue[i]);\ned591feb 248) filter->data = NULL;\ned591feb 249) filter->len = 0;\n\nGarima Singh\t76ffbca7 commit-graph: write Bloom filters to commit graph file\ncommit-graph.c\n76ffbca7 338) chunk_repeated = 1;\n76ffbca7 345) chunk_repeated = 1;\n76ffbca7 352) break;\n76ffbca7 1094) progress = start_delayed_progress(\n76ffbca7 1096) ctx->commits.nr);\n76ffbca7 1119) progress = start_delayed_progress(\n76ffbca7 1121) ctx->commits.nr);\n\nGarima Singh\ta56b9464 revision.c: use Bloom filters to speed up path based revision walks\nbloom.c\na56b9464 266) return -1;\n\nrevision.c\na56b9464 721) return -1;\n\nGarima Singh\tf1294eaf bloom.c: introduce core Bloom filter constructs\nt/helper/test-bloom.c\nf1294eaf 25) printf(\"No filter.\\n\");\nf1294eaf 26) return;\n\nGarima Singh\tf97b9325 commit-graph: compute Bloom filters for changed paths\ncommit-graph.c\nf97b9325 1298) progress = start_delayed_progress(\nf97b9325 1300) ctx->commits.nr);\n\nGarima Singh\t3d112755 commit-graph: examine commits by generation number\ncommit-graph.c\n3d112755 1306) QSORT(sorted_commits, ctx->commits.nr, commit_pos_cmp);\n\nJeff King\t1b4c57fa test-bloom: check that we have expected arguments\nt/helper/test-bloom.c\n1b4c57fa 54) usage(bloom_usage);\n1b4c57fa 59) usage(bloom_usage);\n1b4c57fa 71) usage(bloom_usage);\n1b4c57fa 85) usage(bloom_usage);\n\nJeff King\td21ee7d1 commit-graph: examine changed-path objects in pack order\ncommit-graph.c\nd21ee7d1 76) return; /* should never happen, but be lenient */\nd21ee7d1 81) static int commit_pos_cmp(const void *va, const void *vb)\nd21ee7d1 83) const struct commit *a = *(const struct commit **)va;\nd21ee7d1 84) const struct commit *b = *(const struct commit **)vb;\nd21ee7d1 85) return commit_pos_at(&commit_pos, a) -\nd21ee7d1 86)        commit_pos_at(&commit_pos, b);\n\nJohannes Schindelin\t12294990 credential: handle `credential.<partial-URL>.<key>` again\nurlmatch.c\n12294990 581) retval = 0;\n\nKarsten Blees\tdefd7c7b dir.c: git-status --ignored: don't scan the work tree three times\ndir.c\ndefd7c7b 2177) return path_none;\n\nPatrick Steinhardt\ta65b8ac2 update-ref: organize commands in an array\nbuiltin/update-ref.c\na65b8ac2 419) continue;\n\nPatrick Steinhardt\tedc30691 refs: fix segfault when aborting empty transaction\nrefs/files-backend.c\nedc30691 2572) strbuf_release(&err);\n\nTaylor Blau\t37b9dcab shallow.c: use '{commit,rollback}_shallow_file'\nbuiltin/receive-pack.c\n37b9dcab 896) rollback_shallow_file(the_repository, &shallow_lock);\n\nTaylor Blau\tfdbde82f builtin/commit-graph.c: introduce split strategy 'no-merge'\ncommit-graph.c\nfdbde82f 1788) break;\n\n\n"},{"id":"397221","messageId":"20200506174524.GE6078@syl.local","threadId":"53415","inReplyTo":"4a47a215-f636-3f94-17f5-33f13140bdc7@gmail.com","subject":"Re: Git Test Coverage Report (May 6, 2020)","fromName":"Taylor Blau","fromEmail":"me@ttaylorr.com","sentAt":"2020-05-06T17:45:24Z","receivedAt":"2020-05-06T17:45:29Z","isPatch":false,"sender":{"key":"me@ttaylorr.com","avatar":"https://avatars.githubusercontent.com/u/301000140?v=4"},"body":"Hi Stolee,\n\nOn Wed, May 06, 2020 at 11:19:38AM -0400, Derrick Stolee wrote:\n> Here is today's test coverage report.\n\nThanks as always for running these. I personally find them very helpful.\n\n> Thanks,\n> -Stolee\n>\n>\n> [1] https://derrickstolee.github.io/git-test-coverage/reports/2020-05-06-commits.txt\n> [2] https://derrickstolee.github.io/git-test-coverage/reports/2020-05-06.txt\n> [3] https://derrickstolee.github.io/git-test-coverage/reports/2020-05-06.htm\n>\n> ---\n>\n> pu\tc0f7ae5a7ea5cf8246270fcf1853726167ca8ef4\n> jch\tfffcd002d6befa77784a44046b986934b87e6c3b\n> next\t55c56c9c57da646085d27e61a3420043978ab4a1\n> master\t07d8ea56f2ecb64b75b92264770c0a664231ce17\n> master@{1}\t86ab15cb154862b6fa5cc646dac27532f881e1fb\n>\n>\n> Uncovered code in 'pu' not in 'jch'\n> --------------------------------------------------------\n>\n> Taylor Blau\t199d758e builtin/commit-graph.c: dereference tags in builtin\n> builtin/commit-graph.c\n> 199d758e 244) progress = start_delayed_progress(\n\nI think that this one is fine. In the commit message, we even say\nsomething to the effect of \"hey, we're probably never going to actually\nshow this progress meter, at least in the case of a not-horrendous\namount of input with '--stdin-commits'.\"\n\nI'm not even sure what the standard procedures are for testing progress\nmeters from 't'. I'm inclined to just let this one be.\n\n> Uncovered code in 'master' not in 'master@{1}'\n> --------------------------------------------------------\n>\n> Taylor Blau\t37b9dcab shallow.c: use '{commit,rollback}_shallow_file'\n> builtin/receive-pack.c\n> 37b9dcab 896) rollback_shallow_file(the_repository, &shallow_lock);\n\nI'm lukewarm on whether or not this should be tested. The same commit,\n37b9dcab, is testing another location of 'rollback_shallow_file'. If\n'rollback_shallow_file' were defective, we'd expect to see a crash with\n'git -c fetch.writeCommitGraph=true fetch ...', which we know from\nElijah's original report.\n\nSo, I think that we have high-enough confidence that\n'rollback_shallow_file' is working as intended.\n\n> Taylor Blau\tfdbde82f builtin/commit-graph.c: introduce split strategy 'no-merge'\n> commit-graph.c\n> fdbde82f 1788) break;\n\nThis is stopping us from trying to roll up commit-graph chains when they\ncross an alternate. It's probably worth adding a test for this (although\nthis line has probably always been uncovered, and is only showing up\nagain because fdbde82f indented these lines by surrounding the loop with\na new if statement.)\n\nThanks,\nTaylor\n"}]}