Jeff Hostetler <[email protected]> writes:
> From: Jeff Hostetler <[email protected]>
>
> Refactor the API between builtin/commit.c and wt-status.[ch].
> Hide details of the various wt_*status_print() routines inside
> wt-status.c behind a single (new) wt_status_print() routine
> and eliminate the switch statements from builtin/commit.c
>
> This will allow us to more easily add new status formats
> and isolate that within wt-status.c
>
> Signed-off-by: Jeff Hostetler <[email protected]>
> Signed-off-by: Jeff Hostetler <[email protected]>
Again, are these the same person? I won't repeat this for the
remainder of the series.
> diff --git a/wt-status.h b/wt-status.h
> index 2023a3c..a859a12 100644
> --- a/wt-status.h
> +++ b/wt-status.h
> @@ -43,6 +43,15 @@ struct wt_status_change_data {
> unsigned new_submodule_commits : 1;
> };
>
> + enum wt_status_format {
> + STATUS_FORMAT_NONE = 0,
> + STATUS_FORMAT_LONG,
> + STATUS_FORMAT_SHORT,
> + STATUS_FORMAT_PORCELAIN,
> +
> + STATUS_FORMAT_UNSPECIFIED
> + };
Is it your editor, or is it your MUA? This definition is indented
by one SP, which is funny.
Also throughout the series, I saw a handful of blank lines that
should be empty but are not (e.g. three tabs and nothing else on a
new line). I've fixed them up all but I won't be sending an
interdiff just for them, so please make sure they won't resurface
when/if you reroll.
> struct wt_status {
> int is_initial;
> char *branch;
> @@ -66,6 +75,8 @@ struct wt_status {
> int show_branch;
> int hints;
>
> + enum wt_status_format status_format;
> +
> /* These are computed during processing of the individual sections */
> int commitable;
> int workdir_dirty;
> @@ -99,6 +110,7 @@ struct wt_status_state {
> void wt_status_truncate_message_at_cut_line(struct strbuf *);
> void wt_status_add_cut_line(FILE *fp);
> void wt_status_prepare(struct wt_status *s);
> +void wt_status_print(struct wt_status *s);
> void wt_status_collect(struct wt_status *s);
> void wt_status_get_state(struct wt_status_state *state, int
> get_detached_from);
> int wt_status_check_rebase(const struct worktree *wt,
> @@ -106,10 +118,6 @@ int wt_status_check_rebase(const struct worktree *wt,
> int wt_status_check_bisect(const struct worktree *wt,
> struct wt_status_state *state);
>
> -void wt_longstatus_print(struct wt_status *s);
> -void wt_shortstatus_print(struct wt_status *s);
> -void wt_porcelain_print(struct wt_status *s);
> -
I think I agreed during the previous review round that shifting the
division of labor boundary between the command and wt-status.[ch]
this way, to have the latter do more printing, is a good idea, and I
still do.
Thanks.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html