Re: [PATCH 2/2] [GSOC] interpret-trailer: easy parse trailer value
flat view
From: Junio C Hamano <hidden>
Date: 2021-03-21 13:57:43
ZheNing Hu [off-list ref] writes:
quoted hunk ↗ jump to hunk
Do you think this is appropriate?@@ -370,5 +370,15 @@ int parse_buffer_signed_by_header(const char *buffer, struct strbuf *payload, struct strbuf *signature, const struct git_hash_algo *algop); +/* + * Calling `find_author_by_nickname` to find the "author <email>" pair + * in the most recent commit which matches "--author=name". + * + * Note that `find_author_by_nickname` is not reusable, because it haven't + * reset flags for parsed objects. The only safe way to use`find_author_by_nickname` + * (without rewriting the revision traversal machinery) is to spawn a + * subprocess and do find_author_by_nickname() in it. + */
Telling people not to add any new caller is good, but everything after "because" does not make sense to me. I do not think calling find_author_by_nickname() in a subprocess alone would not help somebody who wants to do this, either. We'd be doing a moral equivalent of that call, but the result has to be communicated back to the parent process, In the longer term, we'd probably want to have a pre-computed table of contributors, like we have precomputed files for reachability bitmaps, commit DAG topology, and such, but that is obviously far outside of the scope of this series.
+const char *find_author_by_nickname(const char *name);