curl and libcurl 8.2.0
Public curl releases: 220
- Command line options: 254
+ Command line options: 255
curl_easy_setopt() options: 303
Public functions in libcurl: 91
- Contributors: 2898
+ Contributors: 2900
This release includes the following changes:
o curl: add --ca-native and --proxy-ca-native [24]
+ o curl: add --trace-ids [53]
o CURLOPT_MAIL_RCPT_ALLOWFAILS: replace CURLOPT_MAIL_RCPT_ALLLOWFAILS [5]
- o haproxy: add --haproxy-clientip flag to spoof client IPs [23]
+ o haproxy: add --haproxy-clientip flag to set client IPs [23]
+ o lib: add CURLINFO_CONN_ID and CURLINFO_XFER_ID [54]
This release includes the following bugfixes:
o curl_pushheader_byname/bynum.3: document in their own man pages [37]
o curl_url_set: enforce the max string length check for all parts [38]
o CURLOPT_AWS_SIGV4.3: remove unused variable from example [11]
+ o CURLOPT_INFILESIZE.3: mention -1 triggers chunked [55]
o CURLOPT_SSH_PRIVATE_KEYFILE.3: expand on the file search [31]
+ o docs/libcurl/libcurl.3: cleanups and improvements [46]
o docs: fix missing parameter names in examples [41]
+ o docs: update CURLOPT_UPLOAD.3 [63]
o docs: update HTTP3.md for newer ngtcp2 and nghttp3 [28]
o example/crawler: also set CURLOPT_AUTOREFERER [35]
o example/http2-download: set CURLOPT_BUFFERSIZE [34]
o example/ipv6: feature CURLOPT_ADDRESS_SCOPE in use [27]
o examples/ftpuploadresume.c: add use of CURLOPT_ACCEPTTIMEOUT_MS [39]
o examples/https.c: use CURLOPT_CA_CACHE_TIMEOUT [19]
+ o examples/multi-debugcallback.c: avoid the bool typedef [29]
o examples/unixsocket.c: example using CURLOPT_UNIX_SOCKET_PATH [40]
o examples/websocket.c: websocket example using CONNECT_ONLY [17]
+ o fopen: fix conversion warning on 32-bit Android [49]
o http2: better support for --limit-rate [7]
+ o http2: fix variable type [50]
+ o HTTP3.md: update openssl version [57]
+ o libcurl-url.3: also mention CURLUPART_ZONEID
+ o libcurl-ws.3. WebSocket API overview [48]
o libssh2: provide error message when setting host key type fails [9]
o libssh2: use custom memory functions [12]
o ngtcp2: build with 0.16.0 and nghttp3 0.12.0 [33]
o runtests; give each server a unique log lock file [43]
o scripts: Fix GHA matrix job detection in cijobs.pl
o system.h: remove __IBMC__/__IBMCPP__ guards and apply to all z/OS compiles [10]
+ o test427: verify sending more cookies than fit in a 8190 bytes line [61]
o tests/servers.pm: pick unused port number with a server socket [16]
o tests/servers: generate temp names in /tmp for unix domain sockets [6]
o tests: fix error messages & handling around sockets [30]
+ o testutil: allow multiple %-operators on the same line [62]
+ o timeval: use CLOCK_MONOTONIC_RAW if available [52]
o tls13-ciphers.d: include Schannel [36]
o tool: remove exclamation marks from error/warning messages
o tool: remove newlines from all helpf/notef/warnf/errorf calls [15]
o tool_getparam: fix comment [22]
+ o tool_operate: allow cookie lines up to 8200 bytes [60]
o tool_urlglob: use curl_off_t instead of longs [2]
o urlapi: have *set(PATH) prepend a slash if one is missing [42]
o urlapi: scheme must start with alpha [26]
+ o vtls: avoid memory leak if sha256 call fails [58]
o websocket-cb: example doing WebSocket download using callback [18]
o ws: make the curl_ws_meta() return pointer a const [45]
advice from friends like these:
ad0p on github, Alejandro R. Sedeño, Andy Fiddaman, Anssi Kolehmainen,
- atjg on github, Boris Verkhovskiy, Dan Fandrich, Daniel Stenberg,
- Emanuele Torre, Igor Todorovski, JustAnotherArchivist on github,
- Karthikdasari0423, MaeIsBad on github, Mark Seuffert, Pedro Henrique,
+ atjg on github, Boris Verkhovskiy, Cristian Rodríguez, Dan Fandrich,
+ Daniel Stenberg, Emanuele Torre, Harry Sintonen, Igor Todorovski,
+ JustAnotherArchivist on github, Karthikdasari0423, lizhuang0630 on github,
+ MaeIsBad on github, Marcel Raad, Mark Seuffert, Oleg Jukovec, Pedro Henrique,
Philip Heiduck, Raito Bezarius, Stefan Eissing, Viktor Szakats, Wyatt OʼDay
- (20 contributors)
+ (25 contributors)
References to bug reports and discussions on issues:
[26] = https://curl.se/bug/?i=11249
[27] = https://curl.se/bug/?i=11282
[28] = https://curl.se/bug/?i=11295
+ [29] = https://curl.se/bug/?i=11299
[30] = https://curl.se/bug/?i=11265
[31] = https://curl.se/bug/?i=11289
[32] = https://curl.se/bug/?i=11288
[43] = https://curl.se/bug/?i=11231
[44] = https://curl.se/bug/?i=11267
[45] = https://curl.se/bug/?i=11261
+ [46] = https://curl.se/bug/?i=11317
+ [48] = https://curl.se/bug/?i=11314
+ [49] = https://curl.se/bug/?i=11313
+ [50] = https://curl.se/bug/?i=11312
+ [52] = https://curl.se/bug/?i=11291
+ [53] = https://curl.se/bug/?i=11185
+ [54] = https://curl.se/bug/?i=11185
+ [55] = https://curl.se/bug/?i=11304
+ [57] = https://curl.se/bug/?i=11297
+ [58] = https://curl.se/bug/?i=11306
+ [60] = https://curl.se/bug/?i=11303
+ [61] = https://curl.se/bug/?i=11303
+ [62] = https://curl.se/bug/?i=11303
+ [63] = https://curl.se/bug/?i=11300