curl/RELEASE-NOTES

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

254 lines
12 KiB
Plaintext
Raw Normal View History

curl and libcurl 8.3.0
2023-08-16 17:11:24 +08:00
Public curl releases: 251
2023-08-08 02:39:32 +08:00
Command line options: 257
2023-06-08 05:35:51 +08:00
curl_easy_setopt() options: 303
2023-08-08 02:39:32 +08:00
Public functions in libcurl: 92
2023-08-22 14:26:12 +08:00
Contributors: 2961
2023-05-23 17:12:50 +08:00
2023-05-31 14:59:48 +08:00
This release includes the following changes:
2023-08-02 14:37:42 +08:00
o curl: make %output{} in -w specify a file to write to [36]
2023-08-09 15:58:43 +08:00
o gskit: remove [71]
2023-08-22 14:26:12 +08:00
o lib: --disable-bindlocal builds curl without local binding support
2023-07-31 17:58:26 +08:00
o nss: remove support for this TLS library [10]
o tool: add "variable" support [1]
2023-08-04 22:00:08 +08:00
o trace: make tracing available in non-debug builds [41]
o url: change default value for CURLOPT_MAXREDIRS to 30 [46]
2023-08-13 21:43:32 +08:00
o urlapi: CURLU_PUNY2IDN - convert from punycode to IDN name [54]
2023-07-31 17:58:26 +08:00
o wolfssl: support loading system CA certificates [8]
2023-05-31 14:59:48 +08:00
This release includes the following bugfixes:
o bearssl: don't load CA certs when peer verification is disabled [33]
2023-08-22 14:26:12 +08:00
o bearssl: handshake fix, provide proper get_select_socks() implementation [99]
2023-08-16 17:11:24 +08:00
o build: streamline non-UWP wincrypt detections [87]
2023-08-09 15:58:43 +08:00
o c-hyper: adjust the hyper to curlcode conversion [52]
o cf-haproxy: make CURLOPT_HAPROXY_CLIENT_IP set the *source* IP [61]
2023-08-08 02:39:32 +08:00
o cf-socket: log successful interface bind [39]
2023-08-22 14:26:12 +08:00
o CI/cirrus: disable python install on FreeBSD [83]
2023-07-31 17:58:26 +08:00
o CI: add caching to many jobs [19]
2023-08-22 14:26:12 +08:00
o cmake: add GnuTLS option [103]
2023-08-02 14:37:42 +08:00
o cmake: add support for single libcurl compilation pass [21]
2023-08-13 21:43:32 +08:00
o cmake: allow `SHARE_LIB_OBJECT=ON` on all platforms [80]
o cmake: assume `wldap32` availability on Windows [81]
2023-08-02 14:37:42 +08:00
o cmake: cache more config and delete unused ones [4]
o cmake: detect `SSL_set0_wbio` in OpenSSL [22]
2023-08-09 15:58:43 +08:00
o cmake: drop `HAVE_LIBWINMM` and `HAVE_LIBWS2_32` feature checks [68]
2023-08-13 21:43:32 +08:00
o cmake: fix to use variable for the curl namespace [79]
2023-08-02 14:37:42 +08:00
o cmake: fixup H2 duplicate symbols for unity builds [23]
2023-07-31 17:58:26 +08:00
o cmake: support building static and shared libcurl in one go [17]
2023-08-22 14:26:12 +08:00
o cmdline-opts/docs: mention the negative option part [90]
2023-08-09 15:58:43 +08:00
o cmdline-opts/page-header: reorder, clean up [51]
2023-07-31 17:58:26 +08:00
o configure, cmake, lib: more form api deprecation [7]
o configure: use the pkg-config --libs-only-l flag for libssh2 [16]
2023-08-13 21:43:32 +08:00
o cookie-jar.d: emphasize that this option is ONLY writing cookies [72]
2023-08-09 15:58:43 +08:00
o crypto: ensure crypto initialization works [69]
2023-08-16 17:11:24 +08:00
o CURLINFO_CERTINFO.3: better explain curl_certinfo struct [64]
o CURLINFO_TLS_SSL_PTR.3: clarify a recommendation [75]
2023-08-22 14:26:12 +08:00
o CURLOPT_*TIMEOUT*: extend and clarify [101]
2023-08-08 02:39:32 +08:00
o CURLOPT_SSL_VERIFYPEER.3: mention it does not load CA certs when disabled [42]
2023-08-13 21:43:32 +08:00
o docs/cmdline-opts/gen.pl: hide "added in" before 7.50.0 [76]
2023-08-02 14:37:42 +08:00
o docs/cmdline-opts: spellfixes, typos and polish [9]
2023-08-08 02:39:32 +08:00
o docs/cmdline: add small "warning" to verbose options [59]
o docs/cmdline: remove repeated working for negotiate + ntlm [58]
2023-08-13 21:43:32 +08:00
o docs/HYPER.md: document a workaround for a link error [73]
2023-08-02 14:37:42 +08:00
o docs: link to the website versions instead of markdowns [3]
o easy: remove #ifdefs to make code easier on the eye [34]
2023-08-02 14:37:42 +08:00
o egd: delete feature detection and related source code [5]
2023-08-09 15:58:43 +08:00
o gen.pl: escape all dashes (ascii minus) to avoid unicode hyphens [50]
2023-08-13 21:43:32 +08:00
o gen.pl: replace all single quotes with aq [78]
o GHA: adding quiche workflow [35]
2023-08-08 02:39:32 +08:00
o headers: accept leading whitespaces on first response header [37]
2023-08-02 14:37:42 +08:00
o http2: avoid too early connection re-use/multiplexing [20]
2023-08-08 02:39:32 +08:00
o http2: cleanup trace messages [56]
o http2: disable asssertion blocking OSSFuzz testing [31]
o http2: fix in h2 proxy tunnel: progress in ingress on sending [32]
2023-08-04 22:00:08 +08:00
o http2: upgrade tests and add fix for non-existing stream [44]
2023-08-08 02:39:32 +08:00
o http3/ngtcp2: shorten handshake, trace cleanup [13]
2023-08-09 15:58:43 +08:00
o http3: quiche, handshake optimization, trace cleanup [63]
2023-08-16 17:11:24 +08:00
o http: do not require a user name when using CURLAUTH_NEGOTIATE [86]
o http: remove the p_pragma struct field [60]
2023-08-04 22:00:08 +08:00
o http: return error when receiving too large header set [43]
2023-08-16 17:11:24 +08:00
o imap: add a check for failing strdup()
o imap: remove the only sscanf() call in the IMAP code [84]
2023-08-08 02:39:32 +08:00
o include/curl/mprintf.h: add __attribute__ for the prototypes [38]
2023-08-22 14:26:12 +08:00
o lib: build fixups when built with most things disabled [97]
2023-08-04 22:00:08 +08:00
o lib: fix a few *printf() flag mistakes [47]
2023-08-22 14:26:12 +08:00
o lib: move mimepost data from ->req.p.http to ->state [94]
2023-08-09 15:58:43 +08:00
o list-only.d: mention SFTP as supported protocol [55]
2023-07-31 17:58:26 +08:00
o macOS: fix target detection more [11]
2023-08-02 14:37:42 +08:00
o misc: fix various typos [18]
2023-08-09 15:58:43 +08:00
o openssl: auto-detect `SSL_R_TLSV13_ALERT_CERTIFICATE_REQUIRED` [65]
2023-08-04 22:00:08 +08:00
o openssl: make aws-lc version support OCSP [48]
2023-08-02 14:37:42 +08:00
o openssl: Support async cert verify callback [24]
2023-08-09 15:58:43 +08:00
o openssl: switch to modern init for LibreSSL 2.7.0+ [70]
o openssl: use `SSL_CTX_set_ciphersuites` with LibreSSL 3.4.1 [66]
o openssl: use `SSL_CTX_set_keylog_callback` with LibreSSL 3.5.0 [67]
2023-08-22 14:26:12 +08:00
o os400: do not check translatable options at build time [95]
2023-08-09 15:58:43 +08:00
o page-footer: QLOGDIR works with ngtcp2 and quiche [62]
2023-08-13 21:43:32 +08:00
o page-header: move up a URL paragraph from GLOBBING to URL
2023-08-16 17:11:24 +08:00
o quiche: adjust quiche `QUIC_IDLE_TIMEOUT` to 60s
o quiche: enable quiche to handle timeout events [82]
2023-08-02 14:37:42 +08:00
o resolve: use PF_INET6 family lookups when CURL_IPRESOLVE_V6 is set [2]
2023-07-31 17:58:26 +08:00
o Revert "schannel: reverse the order of certinfo insertions" [14]
2023-08-04 22:00:08 +08:00
o schannel: fix user-set legacy algorithms in Windows 10 & 11 [53]
2023-08-13 21:43:32 +08:00
o schannel: verify hostname independent of verify cert [74]
2023-08-02 14:37:42 +08:00
o sectransp: prevent CFRelease() of NULL [26]
2023-08-22 14:26:12 +08:00
o test1304: build and skip without netrc support
o test1554: check translatable string options in OS400 wrapper [96]
o test1608: make it build and get skipped without shuffle DNS support
o test687/688: two more basic --xattr tests [89]
2023-08-08 02:39:32 +08:00
o tests/tftpd+mqttd: make variables static to silence picky warnings [57]
2023-08-22 14:26:12 +08:00
o tests: add 'large-time' as a testable feature [92]
2023-08-04 22:00:08 +08:00
o tests: ensure `libcurl.def` contains all exports [45]
2023-08-02 14:37:42 +08:00
o tests: fix h3 server check and parallel instances [6]
2023-08-22 14:26:12 +08:00
o tests: TLS session sharing test [100]
2023-08-04 22:00:08 +08:00
o tool: make the length argument an int for printf()-.* flags [49]
2023-08-02 14:37:42 +08:00
o tool_cb_wrt: fix invalid unicode for windows console [25]
2023-07-31 17:58:26 +08:00
o tool_operate: allow both SSL_CERT_FILE and SSL_CERT_DIR [12]
2023-08-22 14:26:12 +08:00
o tool_urlglob: use the correct format specifier for curl_off_t in msnprintf [88]
2023-08-16 17:11:24 +08:00
o transfer: don't set TIMER_STARTTRANSFER on first send [77]
2023-08-22 14:26:12 +08:00
o unit2600: fix build warning if built without verbose messages
o url: remove infof() output for "still name resolving" [28]
2023-08-02 14:37:42 +08:00
o urlapi: fix heap buffer overflow [30]
o urlapi: make sure zoneid is also duplicated in curl_url_dup [29]
2023-08-22 14:26:12 +08:00
o urlapi: return CURLUE_BAD_HOSTNAME if puny2idn encoding fails [102]
2023-08-04 22:00:08 +08:00
o vquic: show stringified messages for errno [40]
2023-08-02 14:37:42 +08:00
o vtls: clarify "ALPN: offers" message [27]
2023-07-31 17:58:26 +08:00
o winbuild: improve check for static zlib [15]
2023-08-22 14:26:12 +08:00
o workflows/macos.yml: disable zstd and alt-svc in the http-only build [98]
2023-08-16 17:11:24 +08:00
o write-out.d: clarify %{time_starttransfer}
2019-07-19 17:32:23 +08:00
This release includes the following known bugs:
2020-11-04 21:02:01 +08:00
o see docs/KNOWN_BUGS (https://curl.se/docs/knownbugs.html)
Planned upcoming removals include:
2023-02-15 15:10:01 +08:00
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:
2023-08-13 21:43:32 +08:00
Alexander Jaeger, balikalina on Github, Dan Fandrich, Daniel Gustafsson,
Daniel Stenberg, Dan Jacobson, Derzsi Dániel, Douglas R. Reno,
2023-08-16 17:11:24 +08:00
ed0d2b2ce19451f2, Emanuele Torre, Enrico Scholz, eppesuig, FC Stegerman,
Gabriel Corona, Gisle Vanem, Goro FUJI, Graham Campbell, Guillaume Algis,
2023-08-22 14:26:12 +08:00
Jacob Mealey, JazJas on github, Joseph Tharayil, junsik on github,
kyled-dell on github, Lukas Tribus, Maksim Arhipov, Maksim Sciepanienka,
Marcel Raad, Marin Hannache, Markus Sommer, Martin Galvan, Mathew Benson,
2023-08-16 17:11:24 +08:00
Maurício Meneghini Fauth, Nathan Moinvaziri, Niall McGee,
Nicholas Nethercote, Pablo Busse, Patrick Monnerat,
2023-08-09 15:58:43 +08:00
Philippe Antoine on HackerOne, Ray Satiro, Richard W.M. Jones,
Rutger Broekhoff, Ryan Schmidt, Samuel Chiang, Sergey, Stefan Eissing,
2023-08-16 17:11:24 +08:00
Thomas M. DuBuisson, trrui-huawei, Viktor Szakats, wangzhikun,
Wilhelm von Thiele, yushicheng7788 on github, zhihaoy on github
2023-08-22 14:26:12 +08:00
(52 contributors)
References to bug reports and discussions on issues:
2023-07-31 17:58:26 +08:00
[1] = https://curl.se/bug/?i=11346
2023-08-02 14:37:42 +08:00
[2] = https://curl.se/bug/?i=11564
[3] = https://github.com/curl/curl-www/issues/272
[4] = https://curl.se/bug/?i=11551
[5] = https://curl.se/bug/?i=11556
[6] = https://curl.se/bug/?i=11553
2023-07-31 17:58:26 +08:00
[7] = https://curl.se/bug/?i=9621
[8] = https://curl.se/bug/?i=11452
2023-08-02 14:37:42 +08:00
[9] = https://curl.se/bug/?i=11562
2023-07-31 17:58:26 +08:00
[10] = https://curl.se/bug/?i=11459
[11] = https://curl.se/bug/?i=11502
[12] = https://curl.se/bug/?i=11325
2023-08-08 02:39:32 +08:00
[13] = https://curl.se/bug/?i=11609
2023-07-31 17:58:26 +08:00
[14] = https://curl.se/bug/?i=11536
[15] = https://curl.se/bug/?i=11521
[16] = https://curl.se/bug/?i=11538
[17] = https://curl.se/bug/?i=11505
2023-08-02 14:37:42 +08:00
[18] = https://curl.se/bug/?i=11561
2023-07-31 17:58:26 +08:00
[19] = https://curl.se/bug/?i=11532
2023-08-02 14:37:42 +08:00
[20] = https://curl.se/mail/lib-2023-07/0045.html
[21] = https://curl.se/bug/?i=11546
[22] = https://curl.se/bug/?i=11555
[23] = https://curl.se/bug/?i=11550
[24] = https://curl.se/bug/?i=11499
[25] = https://curl.se/bug/?i=9841
[26] = https://curl.se/bug/?i=9194
[27] = https://curl.se/mail/lib-2023-07/0041.html
[28] = https://curl.se/bug/?i=11394
2023-08-02 14:37:42 +08:00
[29] = https://curl.se/mail/lib-2023-07/0047.html
[30] = https://curl.se/bug/?i=11560
[31] = https://curl.se/bug/?i=11500
[32] = https://curl.se/bug/?i=11527
[33] = https://curl.se/bug/?i=11457
[34] = https://curl.se/bug/?i=11525
[35] = https://curl.se/bug/?i=11517
2023-08-02 14:37:42 +08:00
[36] = https://curl.se/bug/?i=11416
2023-08-08 02:39:32 +08:00
[37] = https://curl.se/bug/?i=11605
[38] = https://curl.se/bug/?i=11589
[39] = https://curl.se/bug/?i=11608
2023-08-04 22:00:08 +08:00
[40] = https://curl.se/bug/?i=11584
[41] = https://curl.se/bug/?i=11421
2023-08-08 02:39:32 +08:00
[42] = https://curl.se/bug/?i=11606
2023-08-04 22:00:08 +08:00
[43] = https://curl.se/bug/?i=11582
[44] = https://curl.se/bug/?i=11563
[45] = https://curl.se/bug/?i=11570
[46] = https://curl.se/bug/?i=11581
[47] = https://curl.se/bug/?i=11579
[48] = https://curl.se/bug/?i=11568
[49] = https://curl.se/bug/?i=11578
2023-08-09 15:58:43 +08:00
[50] = https://curl.se/bug/?i=11635
[51] = https://curl.se/bug/?i=11638
[52] = https://curl.se/bug/?i=11621
2023-08-04 22:00:08 +08:00
[53] = https://curl.se/bug/?i=10741
2023-08-13 21:43:32 +08:00
[54] = https://curl.se/bug/?i=11655
2023-08-09 15:58:43 +08:00
[55] = https://curl.se/bug/?i=11628
2023-08-08 02:39:32 +08:00
[56] = https://curl.se/bug/?i=11592
[57] = https://curl.se/bug/?i=11594
[58] = https://curl.se/bug/?i=11597
[59] = https://curl.se/bug/?i=11596
2023-08-16 17:11:24 +08:00
[60] = https://curl.se/bug/?i=11681
2023-08-09 15:58:43 +08:00
[61] = https://curl.se/bug/?i=11619
[62] = https://curl.se/bug/?i=11631
[63] = https://curl.se/bug/?i=11618
2023-08-16 17:11:24 +08:00
[64] = https://curl.se/bug/?i=11666
2023-08-09 15:58:43 +08:00
[65] = https://curl.se/bug/?i=11617
[66] = https://curl.se/bug/?i=11616
[67] = https://curl.se/bug/?i=11615
[68] = https://curl.se/bug/?i=11612
[69] = https://curl.se/bug/?i=11614
[70] = https://curl.se/bug/?i=11611
[71] = https://curl.se/bug/?i=11460
2023-08-13 21:43:32 +08:00
[72] = https://curl.se/bug/?i=11661
[73] = https://curl.se/bug/?i=11653
[74] = https://curl.haxx.se/mail/lib-2018-10/0113.html
2023-08-16 17:11:24 +08:00
[75] = https://curl.se/bug/?i=11665
2023-08-13 21:43:32 +08:00
[76] = https://curl.se/bug/?i=11651
2023-08-16 17:11:24 +08:00
[77] = https://curl.se/bug/?i=11669
2023-08-13 21:43:32 +08:00
[78] = https://curl.se/bug/?i=11645
[79] = https://curl.se/bug/?i=1199308
[80] = https://curl.se/bug/?i=11627
[81] = https://curl.se/bug/?i=11624
2023-08-16 17:11:24 +08:00
[82] = https://curl.se/bug/?i=11654
2023-08-22 14:26:12 +08:00
[83] = https://curl.se/bug/?i=11705
2023-08-16 17:11:24 +08:00
[84] = https://curl.se/bug/?i=11673
[86] = https://sourceforge.net/p/curl/bugs/440/
[87] = https://curl.se/bug/?i=11657
2023-08-22 14:26:12 +08:00
[88] = https://curl.se/bug/?i=11698
[89] = https://curl.se/bug/?i=11697
[90] = https://curl.se/bug/?i=11695
[92] = https://curl.se/bug/?i=11696
[94] = https://curl.se/bug/?i=11680
[95] = https://curl.se/bug/?i=11650
[96] = https://curl.se/bug/?i=11650
[97] = https://curl.se/bug/?i=11687
[98] = https://curl.se/bug/?i=11683
[99] = https://curl.se/bug/?i=11675
[100] = https://curl.se/bug/?i=11675
[101] = https://curl.se/bug/?i=11686
[102] = https://curl.se/bug/?i=11674
[103] = https://curl.se/bug/?i=11685