curl/RELEASE-NOTES
2023-06-20 09:20:54 +02:00

193 lines
8.2 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

curl and libcurl 8.2.0
Public curl releases: 220
Command line options: 255
curl_easy_setopt() options: 303
Public functions in libcurl: 91
Contributors: 2903
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 set client IPs [23]
o lib: add CURLINFO_CONN_ID and CURLINFO_XFER_ID [54]
This release includes the following bugfixes:
o bufq: make write/pass methods more robust [21]
o build: drop unused/redundant `HAVE_WINLDAP_H` [25]
o cf-socket: skip getpeername()/getsockname for TFTP [65]
o circleci: install impacket & wolfssl 5.6.0 [1]
o cmake: add support for "unity" builds [13]
o configure: fix run-compiler for old /bin/sh [4]
o curl: count uploaded data to stop at the originally given size [14]
o curl_log: evaluate log statement only when transfer is verbose [8]
o curl_mprintf.3: minor fix of the example
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/connect-to: show CURLOPT_CONNECT_TO [47]
o example/crawler: also set CURLOPT_AUTOREFERER [35]
o example/crawler: make it use a few more options
o example/default-scheme: set the default scheme for schemeless URLs [67]
o example/hsts-preload: show one way to HSTS preload [68]
o example/http2-download: set CURLOPT_BUFFERSIZE [34]
o example/ipv6: feature CURLOPT_ADDRESS_SCOPE in use [27]
o example/opensslthreadlock: remove [59]
o examples/ftpuploadresume.c: add use of CURLOPT_ACCEPTTIMEOUT_MS [39]
o examples/http-options: show how to send "OPTIONS *" [69]
o examples/https.c: use CURLOPT_CA_CACHE_TIMEOUT [19]
o examples/multi-debugcallback.c: avoid the bool typedef [29]
o examples/smtp-mime: use CURLOPT_MAIL_RCPT_ALLOWFAILS [71]
o examples/unixsocket.c: example using CURLOPT_UNIX_SOCKET_PATH [40]
o examples/websocket.c: websocket example using CONNECT_ONLY [17]
o examples: make use of CURLOPT_(REDIR_|)PROTOCOLS_STR [70]
o fopen: fix conversion warning on 32-bit Android [49]
o HTTP/2: upload handling fixes [56]
o http2: better support for --limit-rate [7]
o http2: fix variable type [50]
o HTTP3.md: update openssl version [57]
o http: rectify the outgoing Cookie: header field size check [72]
o hyper: unslow [51]
o imap: Provide method to disable SASL if it is advertised [75]
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 ngtcp2: use ever increasing timestamp in io [32]
o runtests: abort test run after failure without -a [3]
o runtests: better handle ^C during slow tests
o runtests: create multiple test runners when requested [20]
o runtests: make test file directories in log/N [44]
o runtests: rename server command file
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 tests: improve reliability of TFTP tests
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]
This release includes the following known bugs:
o see docs/KNOWN_BUGS (https://curl.se/docs/knownbugs.html)
Planned upcoming removals include:
o gskit
o NSS
o support for space-separated NOPROXY patterns
o support for the original legacy mingw version 1
See https://curl.se/dev/deprecate.html for details
This release would not have looked like this without help, code, reports and
advice from friends like these:
ad0p on github, Alejandro R. Sedeño, Andy Fiddaman, Anssi Kolehmainen,
atjg on github, Boris Verkhovskiy, Chris Talbot, Cristian Rodríguez,
Dan Fandrich, Daniel Stenberg, Dion Williams, Emanuele Torre, Gisle Vanem,
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,
Ray Satiro, Sean McArthur, Sergey Alirzaev, Stefan Eissing, Viktor Szakats,
Wyatt OʼDay
(31 contributors)
References to bug reports and discussions on issues:
[1] = https://curl.se/bug/?i=11221
[2] = https://curl.se/bug/?i=11224
[3] = https://curl.se/bug/?i=11225
[4] = https://curl.se/bug/?i=11228
[5] = https://curl.se/bug/?i=11218
[6] = https://curl.se/bug/?i=11152
[7] = https://curl.se/bug/?i=11115
[8] = https://curl.se/bug/?i=11238
[9] = https://curl.se/bug/?i=11240
[10] = https://curl.se/bug/?i=11241
[11] = https://curl.se/bug/?i=11302
[12] = https://curl.se/bug/?i=11235
[13] = https://curl.se/bug/?i=11095
[14] = https://curl.se/bug/?i=11222
[15] = https://curl.se/bug/?i=11226
[16] = https://curl.se/bug/?i=11220
[17] = https://curl.se/bug/?i=11262
[18] = https://curl.se/bug/?i=11260
[19] = https://curl.se/bug/?i=11290
[20] = https://curl.se/bug/?i=10818
[21] = https://curl.se/bug/?i=11247
[22] = https://curl.se/bug/?i=11253
[23] = https://curl.se/bug/?i=10779
[24] = https://curl.se/bug/?i=11049
[25] = https://curl.se/bug/?i=11245
[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
[33] = https://curl.se/bug/?i=11184
[34] = https://curl.se/bug/?i=11284
[35] = https://curl.se/bug/?i=11283
[36] = https://curl.se/bug/?i=11271
[37] = https://curl.se/bug/?i=11286
[38] = https://curl.se/bug/?i=11273
[39] = https://curl.se/bug/?i=11277
[40] = https://curl.se/bug/?i=11276
[41] = https://curl.se/bug/?i=11278
[42] = https://curl.se/mail/lib-2023-06/0015.html
[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
[47] = https://curl.se/bug/?i=11340
[48] = https://curl.se/bug/?i=11314
[49] = https://curl.se/bug/?i=11313
[50] = https://curl.se/bug/?i=11312
[51] = https://curl.se/bug/?i=11203
[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
[56] = https://curl.se/bug/?i=11342
[57] = https://curl.se/bug/?i=11297
[58] = https://curl.se/bug/?i=11306
[59] = https://curl.se/bug/?i=11341
[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
[65] = https://curl.se/bug/?i=11332
[67] = https://curl.se/bug/?i=11338
[68] = https://curl.se/bug/?i=11337
[69] = https://curl.se/bug/?i=11333
[70] = https://curl.se/bug/?i=11334
[71] = https://curl.se/bug/?i=11335
[72] = https://curl.se/bug/?i=11331
[75] = https://curl.se/bug/?i=10041