Subject: Re: [PATCH 2/4] http: add the ability to log progress

From: Junio C Hamano <[email-masked]>
Date: Thu, 09 May 2024 09:51:51 -0700

Jeff King <[email-masked]> writes:

> On Wed, May 08, 2024 at 02:44:51PM +0200, Toon Claes wrote:
>
>> @@ -1457,6 +1458,9 @@ struct active_request_slot *get_active_slot(void)
>>  	curl_easy_setopt(slot->curl, CURLOPT_HTTPGET, 1);
>>  	curl_easy_setopt(slot->curl, CURLOPT_FAILONERROR, 1);
>>  	curl_easy_setopt(slot->curl, CURLOPT_RANGE, NULL);
>> +	curl_easy_setopt(slot->curl, CURLOPT_NOPROGRESS, 1L);
>> +	curl_easy_setopt(slot->curl, CURLOPT_XFERINFODATA, NULL);
>> +	curl_easy_setopt(slot->curl, CURLOPT_XFERINFOFUNCTION, NULL);
>
> These last two CURLOPTs appeared in 7.32.0, but our INSTALL doc claims
> to support back to 7.21.3. Before that you're supposed to use
> PROGRESSFUNCTION instead, which has a slightly different signature. I
> think you could support both, though it would also be OK to just disable
> this extra progress for antique curl.
>
> It might also be reasonable to just bump to 7.32.0 as our minimum. The
> last bump was recent via c28ee09503 (INSTALL: bump libcurl version to
> 7.21.3, 2024-04-02), and the version picked there was arbitrary-ish (it
> was something we had happened to depend on accidentally). 7.32.0 is
> itself almost 11 years old now.

The last bump was 7.19.5 (May 2009, 14.9 years) to 7.21.3 (Dec 2010,
13.3 years).  As 10 is a nice round number, we may even be able to
pick randomly a slightly newer one, say, 7.35.0 (Mar 2014, 10.0
years).

It is in a sense an inferiour way to pick the minimum dependency
than the choice of 7.32.0, which is backed by "we use this and that,
which appeared in that version", of course.

But being able to update mechanically without thinking is tempting,
and as long as the horizon is sufficiently long, such an approach
would not have a huge downside.

Thanks.