From: "Ævar Arnfjörð Bjarmason" <avarab@gmail.com> To: git@vger.kernel.org Cc: "Junio C Hamano" <gitster@pobox.com>, "SZEDER Gábor" <szeder.dev@gmail.com>, "René Scharfe" <l.s.r@web.de>, "Emily Shaffer" <emilyshaffer@google.com>, "Taylor Blau" <me@ttaylorr.com>, "Ævar Arnfjörð Bjarmason" <avarab@gmail.com> Subject: [PATCH v4 0/8] progress: assert "global_progress" + test fixes / cleanup Date: Mon, 25 Oct 2021 13:24:59 +0200 [thread overview] Message-ID: <cover-v4-0.8-00000000000-20211025T111915Z-avarab@gmail.com> (raw) In-Reply-To: <cover-v3-00.10-00000000000-20211013T222329Z-avarab@gmail.com> This series fixes various issues in and related to progress.c, and adds a BUG() assertion for us not starting two progress bars at the same time. Those changes are needed for subsequent changes that do more interesting things with this new global progress bar. I think this should address all the feedback on v3[1]. Changes: * Clarified the whole string_list_insert() in test-progress.c. I added a wrapper function with a comment to make that code flow clearer, and as a bonus could drop braces and a temporary variable from the main function as a result. * I elaborated on the "limitations in the progress output" part of the commit message, and tried to address the safety concerns SZEDER expressed in [2]. I think we might still disagree on whether 8/8 is worth it overall, but hopefully this addreses any outstanding questions about the approach & why it's being taken. * SZEDER pointed out that I should move the BUG() assert out of the signal handlers, there's now a couple of small helpers to do that, which also allowed for ejecting a couple of earlier refactoring commits (code moves as they were "static"). 1. https://lore.kernel.org/git/cover-v3-00.10-00000000000-20211013T222329Z-avarab@gmail.com/ 2. https://lore.kernel.org/git/20211025050202.GC2101@szeder.dev/ Ævar Arnfjörð Bjarmason (8): leak tests: fix a memory leaks in "test-progress" helper progress.c test helper: add missing braces progress.c tests: make start/stop commands on stdin progress.c tests: test some invalid usage progress.c: add temporary variable from progress struct pack-bitmap-write.c: don't return without stop_progress() various *.c: use isatty(1|2), not isatty(STDIN_FILENO|STDERR_FILENO) progress.c: add & assert a "global_progress" variable builtin/bisect--helper.c | 2 +- builtin/bundle.c | 2 +- compat/mingw.c | 2 +- pack-bitmap-write.c | 6 +-- progress.c | 23 +++++++- t/helper/test-progress.c | 52 +++++++++++++----- t/t0500-progress-display.sh | 105 ++++++++++++++++++++++++++++-------- 7 files changed, 150 insertions(+), 42 deletions(-) Range-diff against v3: 1: 40f7c438a1e = 1: a3bd032d1eb leak tests: fix a memory leaks in "test-progress" helper 2: ee177d253a8 = 2: e441cfea7c5 progress.c test helper: add missing braces 3: 045d58d8201 ! 3: 1c5f9bdfe6d progress.c tests: make start/stop verbs on stdin @@ Metadata Author: Ævar Arnfjörð Bjarmason <avarab@gmail.com> ## Commit message ## - progress.c tests: make start/stop verbs on stdin + progress.c tests: make start/stop commands on stdin Change the usage of the "test-tool progress" introduced in 2bb74b53a49 (Test the progress display, 2019-09-16) to take command @@ t/helper/test-progress.c #include "progress.h" #include "strbuf.h" +#include "string-list.h" ++ ++/* ++ * We can't use "end + 1" as an argument to start_progress() below, it ++ * doesn't xstrdup() its "title" argument. We need to hold onto a ++ * valid "char *" for it until the end. ++ */ ++static char *dup_title(struct string_list *titles, const char *title) ++{ ++ return string_list_insert(titles, title)->string; ++} int cmd__progress(int argc, const char **argv) { - int total = 0; - const char *title; + const char *const default_title = "Working hard"; -+ struct string_list list = STRING_LIST_INIT_DUP; -+ const struct string_list_item *item; ++ struct string_list titles = STRING_LIST_INIT_DUP; struct strbuf line = STRBUF_INIT; - struct progress *progress; + struct progress *progress = NULL; @@ t/helper/test-progress.c - if (skip_prefix(line.buf, "progress ", (const char **) &end)) { + if (skip_prefix(line.buf, "start ", (const char **) &end)) { + uint64_t total = strtoull(end, &end, 10); -+ if (*end == '\0') { ++ if (*end == '\0') + progress = start_progress(default_title, total); -+ } else if (*end == ' ') { -+ item = string_list_insert(&list, end + 1); -+ progress = start_progress(item->string, total); -+ } else { ++ else if (*end == ' ') ++ progress = start_progress(dup_title(&titles, ++ end + 1), ++ total); ++ else + die("invalid input: '%s'\n", line.buf); -+ } + } else if (skip_prefix(line.buf, "progress ", (const char **) &end)) { uint64_t item_count = strtoull(end, &end, 10); if (*end != '\0') @@ t/helper/test-progress.c: int cmd__progress(int argc, const char **argv) } - stop_progress(&progress); strbuf_release(&line); -+ string_list_clear(&list, 0); ++ string_list_clear(&titles, 0); return 0; } 4: efc0ec360cc = 4: 474ce31f9d2 progress.c tests: test some invalid usage 5: 9e36f03de46 < -: ----------- progress.c: move signal handler functions lower 6: c7c3843564e < -: ----------- progress.c: call progress_interval() from progress_test_force_update() 7: cd2d27b1626 = 5: ff039742148 progress.c: add temporary variable from progress struct 8: e0a3510dd88 = 6: 3dfe31decff pack-bitmap-write.c: don't return without stop_progress() 9: 2cf14881ecf = 7: 8a18eb40fae various *.c: use isatty(1|2), not isatty(STDIN_FILENO|STDERR_FILENO) 10: 01d5bbfce76 ! 8: 06124e8ac5e progress.c: add & assert a "global_progress" variable @@ Commit message limitations in the progress output: The current output must be "driven" by calls to the likes of display_progress(). Once we have a global current progress object we'll be able to update that object via - SIGALRM. See [3] for early code to do that. + SIGALRM, this will cover cases where we're busy, but either haven't + invoked our first display_progress() yet, or the time between + display_progress() is too long. See [3] for early code to do that. It's conceivable that this change will hit the BUG() condition in some scenario that we don't currently have tests for, this would be very @@ Commit message above, and the tests that are testing that the progress output itself is present (but for testing I'd made display() a NOOP). - Between those three points I think it's safe to go ahead with this + This doesn't address any currently out-of-tree user of progress.c, + i.e. WIP patches, or progress output that's a part of forks of + git.git. Those hopefully have test coverage that would expose the + BUG(). + + If they don't they'll either run into it in code that displays more + than one progress bar for the lifetime of the progress, or which calls + stop_progress() with a non-NULL "progress" without a corresponding + start_progress(). Both of those cases are less likely than the general + cases of progress.c API misuse. + + Between those three points above and the discussion of how this could + impact out-of-tree users I think it's safe to go ahead with this change. 1. 6f9d5f2fda1 (commit-graph: fix progress of reachable commits, 2020-07-09) @@ progress.c: struct progress { /* * These are only intended for testing the progress output, i.e. exclusively -@@ progress.c: void progress_test_force_update(void) - progress_interval(SIGALRM); +@@ progress.c: void display_progress(struct progress *progress, uint64_t n) + display(progress, n, NULL); } --static void set_progress_signal(void) -+static void set_progress_signal(struct progress *progress) - { - struct sigaction sa; - struct itimerval v; - ++static void set_global_progress(struct progress *progress) ++{ + if (global_progress) + BUG("'%s' progress still active when trying to start '%s'", + global_progress->title, progress->title); + global_progress = progress; ++} + - if (progress_testing) - return; - -@@ progress.c: static void set_progress_signal(void) - setitimer(ITIMER_REAL, &v, NULL); - } - --static void clear_progress_signal(void) -+static void clear_progress_signal(struct progress *progress) + static struct progress *start_progress_delay(const char *title, uint64_t total, + unsigned delay, unsigned sparse) { - struct itimerval v = {{0,},}; - -+ if (!global_progress) -+ BUG("should have active global_progress when cleaning up"); -+ global_progress = NULL; -+ - if (progress_testing) - return; - @@ progress.c: static struct progress *start_progress_delay(const char *title, uint64_t total, strbuf_init(&progress->counters_sb, 0); progress->title_len = utf8_strwidth(title); progress->split = 0; -- set_progress_signal(); -+ set_progress_signal(progress); ++ set_global_progress(progress); + set_progress_signal(); trace2_region_enter("progress", title, the_repository); return progress; +@@ progress.c: void stop_progress(struct progress **p_progress) + stop_progress_msg(p_progress, _("done")); } + ++static void unset_global_progress(void) ++{ ++ if (!global_progress) ++ BUG("should have active global_progress when cleaning up"); ++ global_progress = NULL; ++} ++ + void stop_progress_msg(struct progress **p_progress, const char *msg) + { + struct progress *progress; @@ progress.c: void stop_progress_msg(struct progress **p_progress, const char *msg) - display(progress, progress->last_value, buf); free(buf); } -- clear_progress_signal(); -+ clear_progress_signal(progress); + clear_progress_signal(); ++ unset_global_progress(); strbuf_release(&progress->counters_sb); if (progress->throughput) strbuf_release(&progress->throughput->display); -- 2.33.1.1510.ge5c82eefb93
next prev parent reply other threads:[~2021-10-25 11:25 UTC|newest] Thread overview: 197+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-06-20 20:02 [PATCH 0/7] progress: verify progress counters in the test suite SZEDER Gábor 2021-06-20 20:02 ` [PATCH 1/7] progress: introduce GIT_TEST_CHECK_PROGRESS to verify progress counters SZEDER Gábor 2021-06-21 7:09 ` Ævar Arnfjörð Bjarmason 2021-06-22 15:55 ` Taylor Blau 2021-06-20 20:02 ` [PATCH 2/7] progress: catch nested/overlapping progresses with GIT_TEST_CHECK_PROGRESS SZEDER Gábor 2021-06-22 16:00 ` Taylor Blau 2021-08-30 21:15 ` SZEDER Gábor 2021-06-20 20:02 ` [PATCH 3/7] progress: catch backwards counting " SZEDER Gábor 2021-06-20 20:03 ` [PATCH 4/7] commit-graph: fix bogus counter in "Scanning merged commits" progress line SZEDER Gábor 2021-06-20 22:13 ` Ævar Arnfjörð Bjarmason 2021-06-21 18:32 ` René Scharfe 2021-06-21 20:08 ` Ævar Arnfjörð Bjarmason 2021-06-26 8:27 ` René Scharfe 2021-06-26 14:11 ` Ævar Arnfjörð Bjarmason 2021-06-26 20:22 ` René Scharfe 2021-06-26 21:38 ` Ævar Arnfjörð Bjarmason 2021-07-04 12:15 ` René Scharfe 2021-07-05 14:09 ` Junio C Hamano 2021-07-05 23:28 ` Ævar Arnfjörð Bjarmason 2021-07-06 16:02 ` René Scharfe 2021-06-27 17:31 ` Felipe Contreras 2021-06-20 20:03 ` [PATCH 5/7] entry: show finer-grained counter in "Filtering content" " SZEDER Gábor 2021-06-20 20:03 ` [PATCH 6/7] [RFC] entry: don't show "Filtering content: ... done." line in case of errors SZEDER Gábor 2021-06-21 18:32 ` René Scharfe 2021-06-23 1:52 ` Taylor Blau 2021-08-30 21:17 ` SZEDER Gábor 2021-06-20 20:03 ` [PATCH 7/7] test-lib: enable GIT_TEST_CHECK_PROGRESS by default SZEDER Gábor 2021-06-21 0:59 ` [PATCH 0/7] progress: verify progress counters in the test suite Ævar Arnfjörð Bjarmason 2021-06-23 2:04 ` Taylor Blau 2021-06-23 17:48 ` [PATCH 00/25] progress.c: various fixes + SZEDER's RFC code Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 01/25] progress.c tests: fix breakage with COLUMNS != 80 Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 02/25] progress.c tests: make start/stop verbs on stdin Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 03/25] progress.c tests: test some invalid usage Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 04/25] progress.c tests: add a "signal" verb Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 05/25] progress.c: move signal handler functions lower Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 06/25] progress.c: call progress_interval() from progress_test_force_update() Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 07/25] progress.c: stop eagerly fflush(stderr) when not a terminal Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 08/25] progress.c: add temporary variable from progress struct Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 09/25] midx perf: add a perf test for multi-pack-index Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 10/25] progress.c: remove the "sparse" mode nano-optimization Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 11/25] pack-bitmap-write.c: add a missing stop_progress() Ævar Arnfjörð Bjarmason 2021-09-17 5:14 ` SZEDER Gábor 2021-09-17 5:56 ` Ævar Arnfjörð Bjarmason 2021-09-17 21:38 ` SZEDER Gábor 2021-06-23 17:48 ` [PATCH 12/25] progress.c: add & assert a "global_progress" variable Ævar Arnfjörð Bjarmason 2021-09-16 18:31 ` SZEDER Gábor 2021-06-23 17:48 ` [PATCH 13/25] progress.[ch]: move the "struct progress" to the header Ævar Arnfjörð Bjarmason 2021-09-16 19:42 ` SZEDER Gábor 2021-06-23 17:48 ` [PATCH 14/25] progress.[ch]: move test-only code away from "extern" variables Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 15/25] progress.c: pass "is done?" (again) to display() Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 16/25] progress.[ch]: convert "title" to "struct strbuf" Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 17/25] progress.c: refactor display() for less confusion, and fix bug Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 18/25] progress.c: emit progress on first signal, show "stalled" Ævar Arnfjörð Bjarmason 2021-09-16 18:37 ` SZEDER Gábor 2021-06-23 17:48 ` [PATCH 19/25] commit-graph: fix bogus counter in "Scanning merged commits" progress line Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 20/25] midx: don't provide a total for QSORT() progress Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 21/25] entry: show finer-grained counter in "Filtering content" progress line Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [PATCH 22/25] progress.c: add a stop_progress_early() function Ævar Arnfjörð Bjarmason 2021-06-24 10:35 ` Ævar Arnfjörð Bjarmason 2021-06-25 1:24 ` Andrei Rybak 2021-06-23 17:48 ` [PATCH 23/25] entry: deal with unexpected "Filtering content" total Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [RFC/PATCH 24/25] progress: assert last update in stop_progress() Ævar Arnfjörð Bjarmason 2021-06-23 17:48 ` [RFC/PATCH 25/25] progress: assert counting upwards in display() Ævar Arnfjörð Bjarmason 2021-06-23 17:59 ` [PATCH 00/25] progress.c: various fixes + SZEDER's RFC code Randall S. Becker 2021-06-23 20:01 ` Ævar Arnfjörð Bjarmason 2021-06-23 20:25 ` Randall S. Becker 2021-06-23 21:57 ` [PATCH 0/4] WIP/POC check isatty(2)-protected progress lines SZEDER Gábor 2021-06-23 21:57 ` [PATCH 1/4] WIP progress, isatty(2), hidden progress lnies for GIT_TEST_CHECK_PROGRESS SZEDER Gábor 2021-06-23 21:57 ` [PATCH 2/4] blame: fix progress total with line ranges SZEDER Gábor 2021-06-23 21:57 ` [PATCH 3/4] read-cache: avoid overlapping progress lines SZEDER Gábor 2021-06-23 21:57 ` [PATCH 4/4] preload-index: fix "Refreshing index" progress line SZEDER Gábor 2021-06-23 22:11 ` [PATCH 0/4] WIP/POC check isatty(2)-protected progress lines SZEDER Gábor 2021-06-24 10:43 ` Ævar Arnfjörð Bjarmason 2021-06-24 10:45 ` Ævar Arnfjörð Bjarmason 2021-07-22 12:20 ` [PATCH 0/3] progress.c API users: fix bogus counting Ævar Arnfjörð Bjarmason 2021-07-22 12:20 ` [PATCH 1/3] commit-graph: fix bogus counter in "Scanning merged commits" progress line Ævar Arnfjörð Bjarmason 2021-07-23 21:55 ` Junio C Hamano 2021-08-02 21:07 ` SZEDER Gábor 2021-07-22 12:20 ` [PATCH 2/3] midx: don't provide a total for QSORT() progress Ævar Arnfjörð Bjarmason 2021-07-23 21:56 ` Junio C Hamano 2021-08-05 15:07 ` Phillip Wood 2021-08-05 19:07 ` Ævar Arnfjörð Bjarmason 2021-07-22 12:20 ` [PATCH 3/3] entry: show finer-grained counter in "Filtering content" progress line Ævar Arnfjörð Bjarmason 2021-07-23 22:01 ` Junio C Hamano 2021-08-02 22:05 ` SZEDER Gábor 2021-08-02 21:48 ` SZEDER Gábor 2021-08-05 11:01 ` [PATCH v2 0/3] progress.c API users: fix bogus counting Ævar Arnfjörð Bjarmason 2021-08-05 11:01 ` [PATCH v2 1/3] commit-graph: fix bogus counter in "Scanning merged commits" progress line Ævar Arnfjörð Bjarmason 2021-08-05 11:01 ` [PATCH v2 2/3] midx: don't provide a total for QSORT() progress Ævar Arnfjörð Bjarmason 2021-08-05 11:01 ` [PATCH v2 3/3] entry: show finer-grained counter in "Filtering content" progress line Ævar Arnfjörð Bjarmason 2021-08-23 10:29 ` [PATCH v3 0/2] progress.c API users: fix bogus counting Ævar Arnfjörð Bjarmason 2021-08-23 10:29 ` [PATCH v3 1/2] commit-graph: fix bogus counter in "Scanning merged commits" progress line Ævar Arnfjörð Bjarmason 2021-08-23 10:29 ` [PATCH v3 2/2] entry: show finer-grained counter in "Filtering content" " Ævar Arnfjörð Bjarmason 2021-09-09 1:10 ` [PATCH v4 0/2] progress.c API users: fix bogus counting Ævar Arnfjörð Bjarmason 2021-09-09 1:10 ` [PATCH v4 1/2] commit-graph: fix bogus counter in "Scanning merged commits" progress line Ævar Arnfjörð Bjarmason 2021-09-09 1:10 ` [PATCH v4 2/2] entry: show finer-grained counter in "Filtering content" " Ævar Arnfjörð Bjarmason 2021-09-09 20:02 ` [PATCH v4 0/2] progress.c API users: fix bogus counting Junio C Hamano 2021-07-22 12:54 ` [PATCH 0/8] progress: assert "global_progress" + test fixes / cleanup Ævar Arnfjörð Bjarmason 2021-07-22 12:54 ` [PATCH 1/8] progress.c tests: make start/stop verbs on stdin Ævar Arnfjörð Bjarmason 2021-07-22 12:55 ` [PATCH 2/8] progress.c tests: test some invalid usage Ævar Arnfjörð Bjarmason 2021-07-22 12:55 ` [PATCH 3/8] progress.c: move signal handler functions lower Ævar Arnfjörð Bjarmason 2021-07-22 12:55 ` [PATCH 4/8] progress.c: call progress_interval() from progress_test_force_update() Ævar Arnfjörð Bjarmason 2021-07-22 12:55 ` [PATCH 5/8] progress.c: stop eagerly fflush(stderr) when not a terminal Ævar Arnfjörð Bjarmason 2021-07-22 12:55 ` [PATCH 6/8] progress.c: add temporary variable from progress struct Ævar Arnfjörð Bjarmason 2021-07-22 12:55 ` [PATCH 7/8] pack-bitmap-write.c: add a missing stop_progress() Ævar Arnfjörð Bjarmason 2021-07-22 12:55 ` [PATCH 8/8] progress.c: add & assert a "global_progress" variable Ævar Arnfjörð Bjarmason 2021-09-16 21:34 ` [PATCH 12/25] " Ævar Arnfjörð Bjarmason 2021-07-23 22:02 ` [PATCH 0/8] progress: assert "global_progress" + test fixes / cleanup Junio C Hamano 2021-09-20 23:09 ` [PATCH v2 " Ævar Arnfjörð Bjarmason 2021-09-20 23:09 ` [PATCH v2 1/8] progress.c tests: make start/stop verbs on stdin Ævar Arnfjörð Bjarmason 2021-10-08 3:43 ` Emily Shaffer 2021-09-20 23:09 ` [PATCH v2 2/8] progress.c tests: test some invalid usage Ævar Arnfjörð Bjarmason 2021-10-08 3:53 ` Emily Shaffer 2021-09-20 23:09 ` [PATCH v2 3/8] progress.c: move signal handler functions lower Ævar Arnfjörð Bjarmason 2021-09-20 23:09 ` [PATCH v2 4/8] progress.c: call progress_interval() from progress_test_force_update() Ævar Arnfjörð Bjarmason 2021-09-20 23:09 ` [PATCH v2 5/8] progress.c: stop eagerly fflush(stderr) when not a terminal Ævar Arnfjörð Bjarmason 2021-10-08 3:59 ` Emily Shaffer 2021-10-08 7:01 ` Ævar Arnfjörð Bjarmason 2021-09-20 23:09 ` [PATCH v2 6/8] progress.c: add temporary variable from progress struct Ævar Arnfjörð Bjarmason 2021-10-08 4:02 ` Emily Shaffer 2021-09-20 23:09 ` [PATCH v2 7/8] pack-bitmap-write.c: add a missing stop_progress() Ævar Arnfjörð Bjarmason 2021-10-08 4:04 ` Emily Shaffer 2021-10-08 12:14 ` Ævar Arnfjörð Bjarmason 2021-10-10 21:29 ` SZEDER Gábor 2021-09-20 23:09 ` [PATCH v2 8/8] progress.c: add & assert a "global_progress" variable Ævar Arnfjörð Bjarmason 2021-10-08 4:18 ` Emily Shaffer 2021-10-08 7:15 ` Ævar Arnfjörð Bjarmason 2021-10-13 22:28 ` [PATCH v3 00/10] progress: assert "global_progress" + test fixes / cleanup Ævar Arnfjörð Bjarmason 2021-10-13 22:28 ` [PATCH v3 01/10] leak tests: fix a memory leaks in "test-progress" helper Ævar Arnfjörð Bjarmason 2021-10-13 22:28 ` [PATCH v3 02/10] progress.c test helper: add missing braces Ævar Arnfjörð Bjarmason 2021-10-13 22:28 ` [PATCH v3 03/10] progress.c tests: make start/stop verbs on stdin Ævar Arnfjörð Bjarmason 2021-10-21 22:30 ` SZEDER Gábor 2021-10-22 14:18 ` Ævar Arnfjörð Bjarmason 2021-10-22 22:14 ` Taylor Blau 2021-10-24 20:10 ` SZEDER Gábor 2021-10-22 3:34 ` Emily Shaffer 2021-10-13 22:28 ` [PATCH v3 04/10] progress.c tests: test some invalid usage Ævar Arnfjörð Bjarmason 2021-10-13 22:28 ` [PATCH v3 05/10] progress.c: move signal handler functions lower Ævar Arnfjörð Bjarmason 2021-10-13 22:28 ` [PATCH v3 06/10] progress.c: call progress_interval() from progress_test_force_update() Ævar Arnfjörð Bjarmason 2021-10-22 22:28 ` Taylor Blau 2021-10-13 22:28 ` [PATCH v3 07/10] progress.c: add temporary variable from progress struct Ævar Arnfjörð Bjarmason 2021-10-22 22:37 ` Taylor Blau 2021-10-13 22:28 ` [PATCH v3 08/10] pack-bitmap-write.c: don't return without stop_progress() Ævar Arnfjörð Bjarmason 2021-10-22 3:37 ` Emily Shaffer 2021-10-22 22:47 ` Taylor Blau 2021-10-13 22:28 ` [PATCH v3 09/10] various *.c: use isatty(1|2), not isatty(STDIN_FILENO|STDERR_FILENO) Ævar Arnfjörð Bjarmason 2021-10-22 3:39 ` Emily Shaffer 2021-10-13 22:28 ` [PATCH v3 10/10] progress.c: add & assert a "global_progress" variable Ævar Arnfjörð Bjarmason 2021-10-22 3:42 ` Emily Shaffer 2021-10-25 5:02 ` SZEDER Gábor 2021-10-25 9:38 ` Junio C Hamano 2021-12-02 23:14 ` SZEDER Gábor 2021-12-03 10:29 ` Ævar Arnfjörð Bjarmason 2021-10-25 11:06 ` Ævar Arnfjörð Bjarmason 2021-10-22 3:44 ` [PATCH v3 00/10] progress: assert "global_progress" + test fixes / cleanup Emily Shaffer 2021-10-22 14:21 ` Ævar Arnfjörð Bjarmason 2021-10-25 11:24 ` Ævar Arnfjörð Bjarmason [this message] 2021-10-25 11:25 ` [PATCH v4 1/8] leak tests: fix a memory leaks in "test-progress" helper Ævar Arnfjörð Bjarmason 2021-10-25 11:25 ` [PATCH v4 2/8] progress.c test helper: add missing braces Ævar Arnfjörð Bjarmason 2021-10-25 11:25 ` [PATCH v4 3/8] progress.c tests: make start/stop commands on stdin Ævar Arnfjörð Bjarmason 2021-10-25 11:25 ` [PATCH v4 4/8] progress.c tests: test some invalid usage Ævar Arnfjörð Bjarmason 2021-10-25 11:25 ` [PATCH v4 5/8] progress.c: add temporary variable from progress struct Ævar Arnfjörð Bjarmason 2021-10-25 11:25 ` [PATCH v4 6/8] pack-bitmap-write.c: don't return without stop_progress() Ævar Arnfjörð Bjarmason 2021-10-25 11:25 ` [PATCH v4 7/8] various *.c: use isatty(1|2), not isatty(STDIN_FILENO|STDERR_FILENO) Ævar Arnfjörð Bjarmason 2021-10-25 11:25 ` [PATCH v4 8/8] progress.c: add & assert a "global_progress" variable Ævar Arnfjörð Bjarmason 2021-10-25 11:53 ` Johannes Sixt 2021-10-25 12:29 ` Ævar Arnfjörð Bjarmason 2021-11-01 19:09 ` [PATCH v5 0/8] progress: assert "global_progress" + test fixes / cleanup Ævar Arnfjörð Bjarmason 2021-11-01 19:09 ` [PATCH v5 1/8] leak tests: fix a memory leaks in "test-progress" helper Ævar Arnfjörð Bjarmason 2021-11-01 19:09 ` [PATCH v5 2/8] progress.c test helper: add missing braces Ævar Arnfjörð Bjarmason 2021-11-01 19:09 ` [PATCH v5 3/8] progress.c tests: make start/stop commands on stdin Ævar Arnfjörð Bjarmason 2021-11-01 19:09 ` [PATCH v5 4/8] progress.c tests: test some invalid usage Ævar Arnfjörð Bjarmason 2021-11-01 19:09 ` [PATCH v5 5/8] progress.c: add temporary variable from progress struct Ævar Arnfjörð Bjarmason 2021-11-01 19:09 ` [PATCH v5 6/8] pack-bitmap-write.c: don't return without stop_progress() Ævar Arnfjörð Bjarmason 2021-11-01 19:09 ` [PATCH v5 7/8] various *.c: use isatty(1|2), not isatty(STDIN_FILENO|STDERR_FILENO) Ævar Arnfjörð Bjarmason 2021-11-02 0:58 ` Carlo Arenas 2021-11-01 19:09 ` [PATCH v5 8/8] progress.c: add & assert a "global_progress" variable Ævar Arnfjörð Bjarmason 2021-11-02 12:27 ` [PATCH v6 0/8] progress: assert "global_progress" + test fixes / cleanup Ævar Arnfjörð Bjarmason 2021-11-02 12:27 ` [PATCH v6 1/8] leak tests: fix a memory leaks in "test-progress" helper Ævar Arnfjörð Bjarmason 2021-11-02 12:27 ` [PATCH v6 2/8] progress.c test helper: add missing braces Ævar Arnfjörð Bjarmason 2021-11-02 12:27 ` [PATCH v6 3/8] progress.c tests: make start/stop commands on stdin Ævar Arnfjörð Bjarmason 2021-11-02 12:27 ` [PATCH v6 4/8] progress.c tests: test some invalid usage Ævar Arnfjörð Bjarmason 2021-11-02 12:27 ` [PATCH v6 5/8] progress.c: add temporary variable from progress struct Ævar Arnfjörð Bjarmason 2021-11-02 12:27 ` [PATCH v6 6/8] pack-bitmap-write.c: don't return without stop_progress() Ævar Arnfjörð Bjarmason 2021-11-02 12:27 ` [PATCH v6 7/8] various *.c: use isatty(0|2), not isatty(STDIN_FILENO|STDERR_FILENO) Ævar Arnfjörð Bjarmason 2021-11-02 12:27 ` [PATCH v6 8/8] progress.c: add & assert a "global_progress" variable Ævar Arnfjörð Bjarmason 2022-02-03 21:40 ` [PATCH v9 0/9] progress: test fixes / cleanup Ævar Arnfjörð Bjarmason 2022-02-03 21:40 ` [PATCH v9 1/9] leak tests: fix a memory leak in "test-progress" helper Ævar Arnfjörð Bjarmason 2022-02-03 21:40 ` [PATCH v9 2/9] progress.c test helper: add missing braces Ævar Arnfjörð Bjarmason 2022-02-03 21:40 ` [PATCH v9 3/9] progress.c tests: make start/stop commands on stdin Ævar Arnfjörð Bjarmason 2022-02-03 21:40 ` [PATCH v9 4/9] progress.c tests: test some invalid usage Ævar Arnfjörð Bjarmason 2022-02-03 21:40 ` [PATCH v9 5/9] progress.h: format and be consistent with progress.c naming Ævar Arnfjörð Bjarmason 2022-02-03 21:40 ` [PATCH v9 6/9] progress.c: use dereferenced "progress" variable, not "(*p_progress)" Ævar Arnfjörð Bjarmason 2022-02-03 21:40 ` [PATCH v9 7/9] progress.c: refactor stop_progress{,_msg}() to use helpers Ævar Arnfjörð Bjarmason 2022-02-03 21:40 ` [PATCH v9 8/9] progress API: unify stop_progress{,_msg}(), fix trace2 bug Ævar Arnfjörð Bjarmason 2022-02-03 21:40 ` [PATCH v9 9/9] pack-bitmap-write.c: don't return without stop_progress() Ævar Arnfjörð Bjarmason 2022-02-03 23:39 ` [PATCH v9 0/9] progress: test fixes / cleanup Junio C Hamano
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style List information: http://vger.kernel.org/majordomo-info.html * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=cover-v4-0.8-00000000000-20211025T111915Z-avarab@gmail.com \ --to=avarab@gmail.com \ --cc=emilyshaffer@google.com \ --cc=git@vger.kernel.org \ --cc=gitster@pobox.com \ --cc=l.s.r@web.de \ --cc=me@ttaylorr.com \ --cc=szeder.dev@gmail.com \ --subject='Re: [PATCH v4 0/8] progress: assert "global_progress" + test fixes / cleanup' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Code repositories for project(s) associated with this inbox: https://80x24.org/mirrors/git.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).