curl/RELEASE-NOTES

267 lines
11 KiB
Plaintext
Raw Normal View History

2024-07-31 16:48:48 +08:00
curl and libcurl 8.10.0
2024-07-31 16:48:48 +08:00
Public curl releases: 260
2024-08-05 15:03:11 +08:00
Command line options: 265
2024-06-14 19:30:06 +08:00
curl_easy_setopt() options: 306
Public functions in libcurl: 94
2024-08-12 19:48:08 +08:00
Contributors: 3221
2023-05-23 17:12:50 +08:00
2023-05-31 14:59:48 +08:00
This release includes the following changes:
2024-08-12 19:48:08 +08:00
o autotools: add `--with-windows-unicode` option [103]
2024-08-04 22:26:21 +08:00
o curl: --help [option] displays documentation for given cmdline option [19]
2024-08-05 15:03:11 +08:00
o curl: add --skip-existing [54]
2024-08-04 22:26:21 +08:00
o curl: for -O, use "default" as filename when the URL has none [34]
o curl: make --rate accept "number of units" [4]
o curl: make --show-headers the same as --include [6]
o curl: support --dump-header % to direct to stderr [31]
o curl: support embedding a CA bundle and --dump-ca-embed [20]
2024-08-07 14:25:43 +08:00
o curl: support repeated use of the verbose option; -vv etc [35]
o curl: use libuv for parallel transfers with --test-event [82]
o mbedtls: add CURLOPT_TLS13_CIPHERS support [78]
2024-08-05 15:03:11 +08:00
o vtls: stop offering alpn http/1.1 for http2-prior-knowledge [53]
2024-08-07 14:25:43 +08:00
o wolfssl: add CURLOPT_TLS13_CIPHERS support [76]
2024-08-05 15:03:11 +08:00
o wolfssl: add support for ssl cert blob / ssl key blob options [50]
2023-05-31 14:59:48 +08:00
This release includes the following bugfixes:
2024-08-04 02:38:54 +08:00
o autotools: fix typo in tests/data target [30]
2024-08-07 14:25:43 +08:00
o aws_sigv4: fix canon order for headers with same prefix [74]
2024-08-05 15:03:11 +08:00
o bearssl: improve shutdown handling [45]
2024-08-09 15:43:28 +08:00
o BINDINGS: add zig binding [100]
2024-08-04 02:38:54 +08:00
o cfilters: send flush [13]
o CHANGES: rename to CHANGES.md, no longer generated [40]
o CI: enable parallel testing in CI builds [18]
o ci: Update actions/upload-artifact digest to 89ef406 [24]
2024-08-07 14:25:43 +08:00
o cmake: add Linux CI job, fix pytest with cmake [71]
o cmake: add math library when using wolfssl and ngtcp2 [66]
2024-08-05 15:03:11 +08:00
o cmake: add support for versioned symbols option [51]
2024-08-07 14:25:43 +08:00
o cmake: cleanup header paths [59]
2024-08-09 15:43:28 +08:00
o cmake: delete MSVC warning suppression for tests/server [101]
2024-08-04 02:38:54 +08:00
o cmake: detect `nghttp2` via `pkg-config`, enable by default [21]
2024-08-09 15:43:28 +08:00
o cmake: detect and show VCPKG in platform flags [84]
o cmake: distcheck for files in CMake subdir [9]
2024-08-04 02:38:54 +08:00
o cmake: drop custom `CMakeOutput.log`/`CMakeError.log` logs [27]
o cmake: drop no-op `tests/data/CMakeLists.txt` [26]
o cmake: drop reference to undefined variable [25]
2024-08-07 14:25:43 +08:00
o cmake: drop unused `HAVE_IDNA_STRERROR` [62]
2024-08-04 02:38:54 +08:00
o cmake: drop unused internal variable [22]
2024-08-12 19:48:08 +08:00
o cmake: exclude tests/http/clients builds by default [110]
2024-08-07 14:25:43 +08:00
o cmake: fix `GSS_VERSION` for Heimdal found via pkg-config [77]
2024-08-09 15:43:28 +08:00
o cmake: fix `pkg-config`-based detection in `FindGSS.cmake` [94]
2024-08-12 19:48:08 +08:00
o cmake: limit libidn2 `pkg-config` detection to `UNIX` [109]
2024-08-09 15:43:28 +08:00
o cmake: more small tidy-ups and fixes [80]
2024-08-07 14:25:43 +08:00
o cmake: show CMake platform/compiler flags [63]
o cmake: use numeric comparison for `HAVE_WIN32_WINNT` [69]
2024-08-12 19:48:08 +08:00
o configure: delete unused `m4/xc-translit.m4` [114]
2024-08-07 14:25:43 +08:00
o configure: detect AppleIDN [70]
2024-08-05 15:03:11 +08:00
o configure: fail if PSL is not disabled but not found [46]
2024-08-12 19:48:08 +08:00
o configure: replace nonportable grep -o with awk [111]
o cookie.md: try to articulate the two different uses this option has [92]
2024-08-04 02:38:54 +08:00
o curl: allow 500MB data URL encode strings [38]
2024-08-09 15:43:28 +08:00
o curl: fix --proxy-pinnedpubkey [91]
o curl: warn on unsupported SSL options [106]
2024-08-04 02:38:54 +08:00
o Curl_rand_bytes to control env override [17]
2024-08-12 19:48:08 +08:00
o DEPRECATE.md: remove hyper after February 2025 [89]
2024-08-05 15:03:11 +08:00
o dist: add missing `docs/examples/CMakeLists.txt` [58]
o dist: add missing `FindNettle.cmake` [11]
2024-08-12 19:48:08 +08:00
o dist: add missing `lib/optiontable.pl` [115]
2024-08-09 15:43:28 +08:00
o dist: add missing `test_*.py` scripts [102]
2024-08-07 14:25:43 +08:00
o dist: drop buildconf [65]
2024-08-04 02:38:54 +08:00
o dist: fix reproducible build from release tarball [36]
o dmaketgz: only run 'make distclean' if Makefile exists
2024-08-07 14:25:43 +08:00
o docs: mention "@-" in more places [67]
2024-08-04 22:26:21 +08:00
o doh-url.md: point out DOH server IP pinning [37]
2024-08-05 15:03:11 +08:00
o easy: fix curl_easy_upkeep for shared connection caches [52]
2024-08-04 02:38:54 +08:00
o escape: allow curl_easy_escape to generate 3*input length output [39]
2024-08-09 15:43:28 +08:00
o ftp: flush pingpong before response [73]
2024-07-31 16:48:48 +08:00
o GHA/windows: enable MulitSSL in an MSVC job [2]
o GHA: scan git repository and detect unvetted binary files [3]
2024-08-09 15:43:28 +08:00
o http/2: simplify eos/blocked handling [90]
2024-08-04 02:38:54 +08:00
o http2: improve rate limiting of downloads [33]
2024-08-05 15:03:11 +08:00
o http2: improved upload eos handling [41]
2024-08-09 15:43:28 +08:00
o idn: more strictly check AppleIDN errors [98]
o idn: support non-UTF-8 input under AppleIDN [99]
o INSTALL.md: MultiSSL and QUIC are mutually exclusive [7]
2024-08-07 14:25:43 +08:00
o KNOWN_BUGS: "special characers" in URL works with aws-sigv4 [81]
2024-08-09 15:43:28 +08:00
o krb5: add Linux/macOS CI tests, fix cmake GSS detection [83]
o krb5: fix `-Wcast-align` [95]
2024-08-04 02:38:54 +08:00
o lib: add eos flag to send methods [14]
o lib: convert some debugf()s into traces [8]
2024-08-12 19:48:08 +08:00
o lib: fix AIX build issues [112]
o libcurl.pc: add `Cflags.private` [10]
2024-08-12 19:48:08 +08:00
o libcurl/docs: expand on redirect following and secrets to other hosts [85]
o llist: remove direct struct accesses, use only functions [72]
2024-08-07 14:25:43 +08:00
o Makefile.mk: fixup enabling libidn2 [61]
2024-08-04 02:38:54 +08:00
o Makefile: remove 'scripts' duplicate from DIST_SUBDIRS
2024-08-04 22:26:21 +08:00
o maketgz: accept option to include latest commit hash [5]
2024-08-09 15:43:28 +08:00
o manpage: ensure a maximum width for the text version [75]
o max-filesize.md: mention zero disables the limit [93]
o mk-ca-bundle.pl: include a link to the caextract webpage [68]
2024-08-12 19:48:08 +08:00
o multi: make the "general" list of easy handles a Curl_llist [97]
2024-08-07 14:25:43 +08:00
o ngtcp2: use NGHTTP3 prefix instead of NGTCP2 for errors in h3 callbacks [79]
2024-08-05 15:03:11 +08:00
o openssl: improve shutdown handling [44]
2024-08-04 02:38:54 +08:00
o progress: ratelimit/progress tweaks [32]
2024-08-04 22:26:21 +08:00
o pytests: add tests for HEAD requests in all HTTP versions [42]
2024-08-07 14:25:43 +08:00
o runtests: if DISABLED cannot be read, error out [56]
o rustls: make all tests pass [1]
2024-08-05 15:03:11 +08:00
o sigpipe: init the struct so that first apply ignores [49]
2024-08-09 15:43:28 +08:00
o test556: improve robustness [64]
o test579: improve robustness [60]
o test677: improve robustness [47]
2024-08-07 14:25:43 +08:00
o tests/runner: only allow [!A-Za-z0-9_-] in %if feature names [55]
2024-08-09 15:43:28 +08:00
o tests: ignore QUIT from FTP protocol comparisons [108]
o tests: provide docs as curldown, not nroff [12]
2024-08-05 15:03:11 +08:00
o tidy-up: OS names [57]
o tool_operhlp: fix "potentially uninitialized local variable 'pc' used" [48]
2024-08-04 02:38:54 +08:00
o url: dns_entry related improvements [16]
2024-08-12 19:48:08 +08:00
o urldata: remove 'scratch' from the UrlState struct [86]
2024-08-04 02:38:54 +08:00
o verify-release: shell script that verifies a release tarball [29]
2024-08-09 15:43:28 +08:00
o vtls: add SSLSUPP_CIPHER_LIST [107]
2024-08-04 02:38:54 +08:00
o vtls: fix MSVC 'cast truncates constant value' warning [23]
o vtls: init ssl peer only once [15]
2024-08-09 15:43:28 +08:00
o wolfssl: avoid taking cached x509 store ref if sslctx already using it [88]
2024-08-05 15:03:11 +08:00
o wolfssl: improve shutdown handling [43]
2024-08-09 15:43:28 +08:00
o ws: flags to opcodes should ignore CURLWS_CONT flag [104]
2024-08-04 02:38:54 +08:00
o x509asn1: raise size limit for x509 certification information [28]
2019-07-19 17:32:23 +08:00
This release includes the following known bugs:
See docs/KNOWN_BUGS (https://curl.se/docs/knownbugs.html)
For all changes ever done in curl:
See https://curl.se/changes.html
Planned upcoming removals include:
2024-07-24 14:48:18 +08:00
o TLS libraries not supporting TLS 1.3
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:
2024-08-09 15:43:28 +08:00
Alex Snast, Antoine du Hamel, Austin Moore, Bo Anderson, Christoph Reiter,
Dan Fandrich, Daniel Stenberg, David Sardari, dependabot[bot], Jan Venekamp,
Jiacai Liu, Joe Birr-Pixton, John Haugabook, kit-ty-kate on github,
2024-08-12 19:48:08 +08:00
MasterInQuestion on github, Matt Jolly, Micah Snyder, Moritz Buhl,
Pete Cordell, Rasmus Thomsen, Ray Satiro, renovate[bot],
Ryan Carsten Schmidt, Sergio Durigan Junior, Slaven Rezić, Stefan Eissing,
Tal Regev, Viktor Szakats, Yedaya Katsman
(29 contributors)
References to bug reports and discussions on issues:
2024-07-31 16:48:48 +08:00
[1] = https://curl.se/bug/?i=14317
[2] = https://curl.se/bug/?i=14276
[3] = https://curl.se/bug/?i=14333
2024-08-04 02:38:54 +08:00
[4] = https://curl.se/bug/?i=14245
2024-08-04 22:26:21 +08:00
[5] = https://curl.se/bug/?i=14363
2024-08-04 02:38:54 +08:00
[6] = https://curl.se/bug/?i=13987
[7] = https://curl.se/bug/?i=14308
[8] = https://curl.se/bug/?i=14322
[9] = https://curl.se/bug/?i=14323
[10] = https://curl.se/bug/?i=14321
[11] = https://curl.se/bug/?i=14285
[12] = https://curl.se/bug/?i=14324
2024-08-04 02:38:54 +08:00
[13] = https://curl.se/bug/?i=14271
[14] = https://curl.se/bug/?i=14220
[15] = https://curl.se/bug/?i=14152
[16] = https://curl.se/bug/?i=14195
[17] = https://curl.se/bug/?i=14264
[18] = https://curl.se/bug/?i=11510
2024-08-04 22:26:21 +08:00
[19] = https://curl.se/bug/?i=13997
2024-08-04 02:38:54 +08:00
[20] = https://curl.se/bug/?i=14059
[21] = https://curl.se/bug/?i=14136
[22] = https://curl.se/bug/?i=14361
[23] = https://curl.se/bug/?i=14341
[24] = https://curl.se/bug/?i=14359
[25] = https://curl.se/bug/?i=14358
[26] = https://curl.se/bug/?i=14357
[27] = https://curl.se/bug/?i=14356
[28] = https://curl.se/bug/?i=14352
[29] = https://curl.se/bug/?i=14350
[30] = https://curl.se/bug/?i=14355
2024-08-04 22:26:21 +08:00
[31] = https://curl.se/bug/?i=13992
2024-08-04 02:38:54 +08:00
[32] = https://curl.se/bug/?i=14335
[33] = https://curl.se/bug/?i=14326
2024-08-04 22:26:21 +08:00
[34] = https://curl.se/bug/?i=13988
2024-08-07 14:25:43 +08:00
[35] = https://curl.se/bug/?i=13977
2024-08-04 02:38:54 +08:00
[36] = https://curl.se/bug/?i=14336
2024-08-04 22:26:21 +08:00
[37] = https://curl.se/bug/?i=14377
2024-08-04 02:38:54 +08:00
[38] = https://curl.se/bug/?i=14337
[39] = https://curl.se/bug/?i=14339
[40] = https://curl.se/bug/?i=14331
2024-08-05 15:03:11 +08:00
[41] = https://curl.se/bug/?i=14253
2024-08-04 22:26:21 +08:00
[42] = https://curl.se/bug/?i=14367
2024-08-05 15:03:11 +08:00
[43] = https://curl.se/bug/?i=14376
[44] = https://curl.se/bug/?i=14375
[45] = https://curl.se/bug/?i=14374
[46] = https://curl.se/bug/?i=14373
2024-08-09 15:43:28 +08:00
[47] = https://curl.se/bug/?i=14455
2024-08-05 15:03:11 +08:00
[48] = https://curl.se/bug/?i=14389
[49] = https://curl.se/bug/?i=14344
[50] = https://curl.se/bug/?i=14018
[51] = https://curl.se/bug/?i=14349
[52] = https://curl.se/bug/?i=12677
[53] = https://curl.se/bug/?i=9963
[54] = https://curl.se/bug/?i=13993
2024-08-07 14:25:43 +08:00
[55] = https://curl.se/bug/?i=14403
[56] = https://curl.se/bug/?i=14411
2024-08-05 15:03:11 +08:00
[57] = https://curl.se/bug/?i=14360
[58] = https://curl.se/bug/?i=14380
2024-08-07 14:25:43 +08:00
[59] = https://curl.se/bug/?i=14416
2024-08-09 15:43:28 +08:00
[60] = https://curl.se/bug/?i=14454
2024-08-07 14:25:43 +08:00
[61] = https://curl.se/bug/?i=14421
[62] = https://curl.se/bug/?i=14420
[63] = https://curl.se/bug/?i=14417
2024-08-09 15:43:28 +08:00
[64] = https://curl.se/bug/?i=14453
2024-08-07 14:25:43 +08:00
[65] = https://curl.se/bug/?i=14412
[66] = https://curl.se/bug/?i=14343
[67] = https://curl.se/bug/?i=14402
2024-08-09 15:43:28 +08:00
[68] = https://github.com/curl/curl-www/issues/374
2024-08-07 14:25:43 +08:00
[69] = https://curl.se/bug/?i=14409
[70] = https://curl.se/bug/?i=14401
[71] = https://curl.se/bug/?i=14382
2024-08-12 19:48:08 +08:00
[72] = https://curl.se/bug/?i=14485
2024-08-09 15:43:28 +08:00
[73] = https://curl.se/bug/?i=14452
2024-08-07 14:25:43 +08:00
[74] = https://curl.se/bug/?i=14370
2024-08-09 15:43:28 +08:00
[75] = https://curl.se/bug/?i=14423
2024-08-07 14:25:43 +08:00
[76] = https://curl.se/bug/?i=14385
[77] = https://curl.se/bug/?i=14393
[78] = https://curl.se/bug/?i=14384
[79] = https://curl.se/bug/?i=14394
2024-08-09 15:43:28 +08:00
[80] = https://curl.se/bug/?i=14450
2024-08-07 14:25:43 +08:00
[81] = https://curl.se/bug/?i=13754
[82] = https://curl.se/bug/?i=14298
2024-08-09 15:43:28 +08:00
[83] = https://curl.se/bug/?i=14447
[84] = https://curl.se/bug/?i=14451
2024-08-12 19:48:08 +08:00
[85] = https://curl.se/bug/?i=14472
[86] = https://curl.se/bug/?i=14500
2024-08-09 15:43:28 +08:00
[88] = https://curl.se/bug/?i=14442
2024-08-12 19:48:08 +08:00
[89] = https://curl.se/bug/?i=14492
2024-08-09 15:43:28 +08:00
[90] = https://curl.se/bug/?i=14435
[91] = https://curl.se/bug/?i=14438
2024-08-12 19:48:08 +08:00
[92] = https://curl.se/bug/?i=14491
2024-08-09 15:43:28 +08:00
[93] = https://curl.se/bug/?i=14440
[94] = https://curl.se/bug/?i=14430
[95] = https://curl.se/bug/?i=14433
2024-08-12 19:48:08 +08:00
[97] = https://curl.se/bug/?i=14474
2024-08-09 15:43:28 +08:00
[98] = https://curl.se/bug/?i=14431
[99] = https://curl.se/bug/?i=14431
[100] = https://curl.se/bug/?i=14437
[101] = https://curl.se/bug/?i=14428
[102] = https://curl.se/bug/?i=14427
2024-08-12 19:48:08 +08:00
[103] = https://curl.se/bug/?i=7229
2024-08-09 15:43:28 +08:00
[104] = https://curl.se/bug/?i=14397
[106] = https://curl.se/bug/?i=14406
[107] = https://curl.se/bug/?i=14406
[108] = https://curl.se/bug/?i=14404
2024-08-12 19:48:08 +08:00
[109] = https://curl.se/bug/?i=14405
[110] = https://curl.se/bug/?i=14477
[111] = https://curl.se/bug/?i=14469
[112] = https://curl.se/bug/?i=14464
[114] = https://curl.se/bug/?i=14459
[115] = https://curl.se/bug/?i=14467