* minimum curl version effectively changed
@ 2024-10-10 18:24 Alejandro R. Sedeño
2024-10-10 21:23 ` brian m. carlson
0 siblings, 1 reply; 4+ messages in thread
From: Alejandro R. Sedeño @ 2024-10-10 18:24 UTC (permalink / raw)
To: Git List
As of ad9bb6dfe6e598d87ffe6e2285b4b86dac3bc726, http.c depends on
symbols introduced curl 7.37.0, which is newer than the documented
minimum version of 7.21.3 in INSTALL.
```
In file included from /usr/include/curl/curl.h:2238:0,
from git-curl-compat.h:3,
from http.c:4:
http.c: In function ‘set_proxyauth_name_password’:
http.c:655:28: error: ‘CURLOPT_PROXYHEADER’ undeclared (first use in
this function)
curl_easy_setopt(result, CURLOPT_PROXYHEADER,
^
http.c:655:28: note: each undeclared identifier is reported only once
for each function it appears in
make: *** [http.o] Error 1
```
-Alejandro
^ permalink raw reply [flat|nested] 4+ messages in thread* Re: minimum curl version effectively changed 2024-10-10 18:24 minimum curl version effectively changed Alejandro R. Sedeño @ 2024-10-10 21:23 ` brian m. carlson 2024-10-10 21:30 ` Alejandro R. Sedeño 0 siblings, 1 reply; 4+ messages in thread From: brian m. carlson @ 2024-10-10 21:23 UTC (permalink / raw) To: Alejandro R. Sedeño; +Cc: Git List [-- Attachment #1: Type: text/plain, Size: 1458 bytes --] On 2024-10-10 at 18:24:52, Alejandro R. Sedeño wrote: > As of ad9bb6dfe6e598d87ffe6e2285b4b86dac3bc726, http.c depends on > symbols introduced curl 7.37.0, which is newer than the documented > minimum version of 7.21.3 in INSTALL. > > ``` > In file included from /usr/include/curl/curl.h:2238:0, > from git-curl-compat.h:3, > from http.c:4: > http.c: In function ‘set_proxyauth_name_password’: > http.c:655:28: error: ‘CURLOPT_PROXYHEADER’ undeclared (first use in > this function) > curl_easy_setopt(result, CURLOPT_PROXYHEADER, > ^ > http.c:655:28: note: each undeclared identifier is reported only once > for each function it appears in > make: *** [http.o] Error 1 > ``` From the curl changelog, I do agree that that feature was added in 7.37.0. I think that's okay, since that was released in May 2014, over a decade ago, so we probably need to update INSTALL appropriately. I don't think any major Linux distros are still offering complementary security support for such an old version of libcurl, so I don't see us restoring support for older libcurl. It will probably also involve ripping out appropriate parts of `git-curl-compat.h` and the option flags. If nobody else gets to it over the next couple of days, I'll try to, but of course anyone is free to send in a patch. -- brian m. carlson (they/them or he/him) Toronto, Ontario, CA [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 262 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: minimum curl version effectively changed 2024-10-10 21:23 ` brian m. carlson @ 2024-10-10 21:30 ` Alejandro R. Sedeño 2024-10-10 21:52 ` brian m. carlson 0 siblings, 1 reply; 4+ messages in thread From: Alejandro R. Sedeño @ 2024-10-10 21:30 UTC (permalink / raw) To: brian m. carlson, Alejandro R. Sedeño; +Cc: Git List I have a patch I plan to send in tomorrow that will properly conditionalize using the symbol on versions of curl that have it, and emitting a warning otherwise. It will also follow up with some corrections to errors in git-curl-compat.h. I don't think a new feature should unilaterally change the minimum requirements of git without some announcement and forethought. -Alejandro On Thu, Oct 10, 2024 at 5:23 PM brian m. carlson <sandals@crustytoothpaste.net> wrote: > > On 2024-10-10 at 18:24:52, Alejandro R. Sedeño wrote: > > As of ad9bb6dfe6e598d87ffe6e2285b4b86dac3bc726, http.c depends on > > symbols introduced curl 7.37.0, which is newer than the documented > > minimum version of 7.21.3 in INSTALL. > > > > ``` > > In file included from /usr/include/curl/curl.h:2238:0, > > from git-curl-compat.h:3, > > from http.c:4: > > http.c: In function ‘set_proxyauth_name_password’: > > http.c:655:28: error: ‘CURLOPT_PROXYHEADER’ undeclared (first use in > > this function) > > curl_easy_setopt(result, CURLOPT_PROXYHEADER, > > ^ > > http.c:655:28: note: each undeclared identifier is reported only once > > for each function it appears in > > make: *** [http.o] Error 1 > > ``` > > From the curl changelog, I do agree that that feature was added in > 7.37.0. I think that's okay, since that was released in May 2014, over > a decade ago, so we probably need to update INSTALL appropriately. I > don't think any major Linux distros are still offering complementary > security support for such an old version of libcurl, so I don't see us > restoring support for older libcurl. > > It will probably also involve ripping out appropriate parts of > `git-curl-compat.h` and the option flags. If nobody else gets to it over > the next couple of days, I'll try to, but of course anyone is free to > send in a patch. > -- > brian m. carlson (they/them or he/him) > Toronto, Ontario, CA ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: minimum curl version effectively changed 2024-10-10 21:30 ` Alejandro R. Sedeño @ 2024-10-10 21:52 ` brian m. carlson 0 siblings, 0 replies; 4+ messages in thread From: brian m. carlson @ 2024-10-10 21:52 UTC (permalink / raw) To: Alejandro R. Sedeño; +Cc: Git List [-- Attachment #1: Type: text/plain, Size: 1603 bytes --] On 2024-10-10 at 21:30:04, Alejandro R. Sedeño wrote: > I have a patch I plan to send in tomorrow that will properly > conditionalize using the symbol on versions of curl that have it, and > emitting a warning otherwise. It will also follow up with some > corrections to errors in git-curl-compat.h. > > I don't think a new feature should unilaterally change the minimum > requirements of git without some announcement and forethought. We already have a platform support policy, which guides our behaviour here, and it was discussed very recently. It says this: Uses versions of dependencies which are generally accepted as stable and supportable, e.g., in line with the version used by other long-term-support distributions No major Linux distributions are still using such an old version of libcurl. CentOS 7 is dead, and we don't typically support extended long-term support because it comes at a cost, and it's not fair to Git developers to require them to pay for a secure system to test against. I don't know of any other major OS which is providing support for such an old version of curl either. Usually the BSDs have a much shorter life span for versions, for example. So I think the oldest supported version we're going to be willing to accept is in a clone of RHEL 8, which would be curl 7.61. It's certainly a mistake on our part that we neglected to update INSTALL accordingly, but it's not a mistake that we unconditionally added support for a feature from over a decade ago. -- brian m. carlson (they/them or he/him) Toronto, Ontario, CA [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 262 bytes --] ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-10-10 21:52 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-10-10 18:24 minimum curl version effectively changed Alejandro R. Sedeño 2024-10-10 21:23 ` brian m. carlson 2024-10-10 21:30 ` Alejandro R. Sedeño 2024-10-10 21:52 ` brian m. carlson
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox