aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Arver <linusa@google.com>2024-03-15 06:55:05 +0000
committerJunio C Hamano <gitster@pobox.com>2024-03-15 10:10:25 -0700
commit3452d173241c8b87ecdd67f91f594cb14327e394 (patch)
tree8e427625651a8323e00de9788f9b39e906dd59ed
parent676c1db76e310c400b602890ac6853fdf8fdfa98 (diff)
downloadgit-3452d173241c8b87ecdd67f91f594cb14327e394.tar.gz
trailer: finish formatting unification
Rename format_trailer_info() to format_trailers(). Finally, both interpret-trailers and format_trailers_from_commit() can call "format_trailers()"! Update the comment in <trailer.h> to remove the (now obsolete) caveats about format_trailers_from_commit(). Those caveats come from a388b10fc1 (pretty: move trailer formatting to trailer.c, 2017-08-15) where it says: pretty: move trailer formatting to trailer.c The next commit will add many features to the %(trailer) placeholder in pretty.c. We'll need to access some internal functions of trailer.c for that, so our options are either: 1. expose those functions publicly or 2. make an entry point into trailer.c to do the formatting Doing (2) ends up exposing less surface area, though do note that caveats in the docstring of the new function. which suggests format_trailers_from_commit() started out from pretty.c and did not have access to all of the trailer implementation internals, and was never intended to replace (unify) the formatting machinery in trailer.c. The refactors leading up to this commit (as well as additional refactors that will follow) expose additional functions publicly, and is therefore choosing option (1) as described in a388b10fc1. Signed-off-by: Linus Arver <linusa@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rw-r--r--builtin/interpret-trailers.c2
-rw-r--r--trailer.c8
-rw-r--r--trailer.h15
3 files changed, 9 insertions, 16 deletions
diff --git a/builtin/interpret-trailers.c b/builtin/interpret-trailers.c
index f57af0db37..11f4ce9e4a 100644
--- a/builtin/interpret-trailers.c
+++ b/builtin/interpret-trailers.c
@@ -171,7 +171,7 @@ static void interpret_trailers(const struct process_trailer_options *opts,
}
/* Print trailer block. */
- format_trailer_info(opts, &head, &trailer_block);
+ format_trailers(opts, &head, &trailer_block);
free_trailers(&head);
fwrite(trailer_block.buf, 1, trailer_block.len, outfile);
strbuf_release(&trailer_block);
diff --git a/trailer.c b/trailer.c
index 43d5baef9c..3e4dab9c06 100644
--- a/trailer.c
+++ b/trailer.c
@@ -1052,9 +1052,9 @@ void trailer_info_release(struct trailer_info *info)
free(info->trailers);
}
-void format_trailer_info(const struct process_trailer_options *opts,
- struct list_head *trailers,
- struct strbuf *out)
+void format_trailers(const struct process_trailer_options *opts,
+ struct list_head *trailers,
+ struct strbuf *out)
{
size_t origlen = out->len;
struct list_head *pos;
@@ -1128,7 +1128,7 @@ void format_trailers_from_commit(const struct process_trailer_options *opts,
strbuf_add(out, msg + info.trailer_block_start,
info.trailer_block_end - info.trailer_block_start);
} else
- format_trailer_info(opts, &trailer_objects, out);
+ format_trailers(opts, &trailer_objects, out);
free_trailers(&trailer_objects);
trailer_info_release(&info);
diff --git a/trailer.h b/trailer.h
index 3c13006a4c..9f42aa7599 100644
--- a/trailer.h
+++ b/trailer.h
@@ -101,23 +101,16 @@ void trailer_info_get(const struct process_trailer_options *,
void trailer_info_release(struct trailer_info *info);
void trailer_config_init(void);
-void format_trailer_info(const struct process_trailer_options *,
+void format_trailers(const struct process_trailer_options *,
struct list_head *trailers,
struct strbuf *out);
void free_trailers(struct list_head *);
/*
- * Format the trailers from the commit msg "msg" into the strbuf "out".
- * Note two caveats about "opts":
- *
- * - this is primarily a helper for pretty.c, and not
- * all of the flags are supported.
- *
- * - this differs from process_trailers slightly in that we always format
- * only the trailer block itself, even if the "only_trailers" option is not
- * set.
+ * Convenience function to format the trailers from the commit msg "msg" into
+ * the strbuf "out". Reuses format_trailers() internally.
*/
-void format_trailers_from_commit(const struct process_trailer_options *opts,
+void format_trailers_from_commit(const struct process_trailer_options *,
const char *msg,
struct strbuf *out);