Thread (1 message) 1 message, 1 author, 2018-09-21

Re: [PATCH v2 1/2] commit-graph write: add progress output

From: Junio C Hamano <hidden>
Date: 2018-09-21 21:43:18

Derrick Stolee [off-list ref] writes:
On 9/7/2018 2:29 PM, Ævar Arnfjörð Bjarmason wrote:
quoted
-void write_commit_graph_reachable(const char *obj_dir, int append);
+void write_commit_graph_reachable(const char *obj_dir, int append,
+				  int report_progress);
  void write_commit_graph(const char *obj_dir,
  			struct string_list *pack_indexes,
  			struct string_list *commit_hex,
-			int append);
+			int append, int report_progress);
    int verify_commit_graph(struct repository *r, struct
commit_graph *g);
  
Junio,

The above prototype change seems to have created a semantic conflict
with ds/commit-graph-tests (859fdc "commit-graph: define
GIT_TEST_COMMIT_GRAPH") because when GIT_TEST_COMMIT_GRAPH is set, we
call write_commit_graph_reachable() but the final parameter was
resolved to be "1" instead of "0".
Hmph.  That's unfortunate.

Perhaps one of the topics should have yielded and waited until the
other one passes through.

As 859fdc0c ("commit-graph: define GIT_TEST_COMMIT_GRAPH",
2018-08-29) already is in 'master', the other "progress" topic
probably should be corrected to match.  The easiest and cleanest
would be to eject the ab/commit-graph-progress topic out of 'next'
and have it rerolled on top of 'master', as we are going to rewind
the tip of 'next' anyway.

While we are at it, I suspect that a saner evolution of the API into
the function would not append more parameters to the call, but would
make the "do we append?" bit into a flag word "unsigned flags" with
two bits, and such a clean-up can be done as a preliminary change.
quoted hunk
This causes t3420-rebase-autostash.sh to fail, as that test watches
the full output of the rebase command, including commit runs. The
following patch fixes the problem, but could probably be squashed into
a merge or other commit.

Thanks,

-Stolee

-->8--

From: Derrick Stolee <redacted>
Date: Fri, 21 Sep 2018 19:57:36 +0000
Subject: [PATCH] commit: quietly write commit-graph in tests

The GIT_TEST_COMMIT_GRAPH environment variable causes git-commit to
write a commit-graph file on every execution. Recently, we added
progress output when writing the commit-graph. This conflicts with
some expected output during some tests, so avoid writing progress
if writing a commit-graph this way.

Signed-off-by: Derrick Stolee <redacted>
---
 builtin/commit.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/builtin/commit.c b/builtin/commit.c
index 2a49ab4917..764664d832 100644
--- a/builtin/commit.c
+++ b/builtin/commit.c
@@ -1660,7 +1660,7 @@ int cmd_commit(int argc, const char **argv,
const char *prefix)
                      "not exceeded, and then \"git reset HEAD\" to
recover."));

        if (git_env_bool(GIT_TEST_COMMIT_GRAPH, 0))
- write_commit_graph_reachable(get_object_directory(), 0, 1);
+ write_commit_graph_reachable(get_object_directory(), 0, 0);

        rerere(0);
        run_command_v_opt(argv_gc_auto, RUN_GIT_CMD);
--
2.19.0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help