On Wed, Dec 20, 2017 at 11:14:07AM -0500, Jeff King wrote: > On Wed, Dec 20, 2017 at 02:42:43PM +0000, Jeff Hostetler wrote: > > > Extend stat_tracking_info() to return 1 when the branch is > > not up to date with its upstream branch and only return 0 > > when they are equal. > > This means that callers all need to be updated, but there's no change > that the compiler could catch. You've updated all of the calls here, but > any topics in flight would need to be fixed, too. > > I don't see any any in pu, but there are a number of long-running forks > hanging around these days. > > Is it worth introducing a small change so that any other callers which > get merged in force a human to look at them? I'm wondering if we could > just re-order the "upstream_name" argument or something. Having seen the change in the next patch, I wonder if we should add a flag field to specify "don't bother doing extra work" rather than passing NULL for the ours/theirs parameters. I.e., most callers would become: if (stat_tracking_info(branch, &ours, &theirs, &base, 0) >= 0) and the ones you touch later in the series would become: if (stat_tracking_info(branch, NULL, NULL, &base, TRACKING_QUICK) >= 0) or similar. And then any newly added calls would get flagged by the compiler as missing the final parameter. -Peff