Re: [PATCH 1/2] progress: create progress struct in 'verbose' mode
- From
- Jonathan Tan <jonathantanmy@google.com>
- Date
- Sep 9, 2020, 22:42 UTC
- Message-ID
- <20200909224253.866718-1-jonathantanmy@google.com>
- In-Reply-To
- <xmqqh7t0zy43.fsf@gitster.c.googlers.com>
Show 24 quoted lines
> Junio C Hamano <gitster@pobox.com> writes: > > > Emily Shaffer <emilyshaffer@google.com> writes: > > > >> The main concern I saw here was "we are doing a lot of work that isn't > >> used if the user doesn't want to log traces" - should I approach a > >> reroll of this topic by trying to be smarter about whether to set > >> 'quiet' or 'print' or 'verbose' or whatever it is renamed to, based on > >> whether there is a trace destination? Then for systems which are logging > >> traces the extra work is worth it, but for everyone else it can function > >> as before. > >> > >> I don't love it from a design perspective - it feels a little like > >> progress module is looking a little too closely at trace module > >> internals. > > > > Isn't that primarily due to the decision to tie progress and trace > > too closely? If so, perhaps that needs to be revisited? > > Or the "too close coupling" needs to be accepted as the cost of > doing so (as "progress is often a good cue for an event worth > tracing" was a convenient way to cheat by programmers not to spend > too many braincycles to decide adding trace points---they > automatically got them when they decided to show progress output).
I wouldn't describe it as "cheat", but I agree with the general sentiment - in general, I would think that if something is lengthy enough to need to indicate progress to the user, we should trace its performance.