curl/RELEASE-NOTES
2025-02-21 10:36:53 +01:00

176 lines
7.2 KiB
Plaintext

curl and libcurl 8.13.0
Public curl releases: 266
Command line options: 267
curl_easy_setopt() options: 306
Public functions in libcurl: 96
Contributors: 3349
This release includes the following changes:
This release includes the following bugfixes:
o addrinfo: add curl macro to avoid redefining foreign symbols [29]
o asyn-thread: avoid the separate 'struct resdata' alloc [20]
o asyn-thread: avoid the separate curl_mutex_t alloc [6]
o asyn-thread: do not allocate thread_data separately [21]
o asyn-thread: remove 'status' from struct Curl_async [36]
o build: enable -Wjump-misses-init for GCC 4.5+ [62]
o build: fix compiler warnings in feature detections [39]
o build: set `HAVE_WRITABLE_ARGV` for Apple cross-builds [8]
o build: silence bogus `-Wconversion` warnings with gcc 5.1-5.4 [68]
o ca-native.md: sync with CURLSSLOPT_NATIVE_CA [72]
o cf-socket: deduplicate Windows Vista detection [11]
o client writer: handle pause before deocding [61]
o cmake: `SHARE_LIB_OBJECT=ON` requires CMake 3.12 or newer [46]
o cmake: add pre-fill for Unix, enable in GHA/macos, verify pre-fills [42]
o cmake: allow empty custom `IMPORT_LIB_SUFFIX`, add suffix collision detection [41]
o cmake: drop `HAVE_IN_ADDR_T` from pre-fill too
o cmake: drop two stray TLS feature checks for wolfSSL [9]
o cmake: fix `HAVE_ATOMIC`/`HAVE_STDATOMIC` pre-fill for clang-cl [28]
o cmake: fix ECH detection in custom-patched OpenSSL [32]
o cmake: mention 'insecure' in the debug build warning [15]
o cmake: misc tidy-ups [38]
o cmake: sync OpenSSL(-fork) feature checks with `./configure` [49]
o CODE_STYLE: readability and banned functions [35]
o configure: use `curl_cv_apple` variable [40]
o conn: fix connection reuse when SSL is optional [54]
o cookie: minor parser simplification [58]
o cookie: simplify invalid_octets() [24]
o curl_msh3: remove verify bypass from DEBUGBUILDs [43]
o docs: add FD_ZERO to curl_multi_fdset example [19]
o docs: correct argument names & URL redirection [4]
o hash: use single linked list for entries [57]
o hostip: make CURLOPT_RESOLVE support replacing IPv6 addresses [47]
o HTTP3.md: only speak about minimal versions [18]
o http: fix NTLM info message typo [22]
o http: negotiation and room for alt-svc/https rr to navigate [64]
o http: version negotiation [45]
o http_aws_sigv4: use strparse more for parsing [55]
o https-rr: implementation improvements [44]
o httpsrr: fix port detection [51]
o httpsrr: fix the HTTPS-RR threaded-resolver build combo [67]
o lib: better optimized casecompare() and ncasecompare() [3]
o lib: simplify more white space loops [60]
o lib: strtoofft.h header cleanup [17]
o lib: use Curl_str_* instead of strtok_r() [59]
o lib: use Curl_str_number() for parsing decimal numbers [13]
o managen: correct the warning for un-escaped '<' and '>' [1]
o openssl: remove bad `goto`s into other scope [63]
o schannel: enable ALPN with MinGW, fix ALPN for UWP builds [71]
o scripts/managen: fix option 'single' [31]
o scripts/managen: fix parsing of markdown code sections [30]
o ssh: consider sftp quote commands case sensitive [33]
o ssl session cache: add exportable flag [56]
o strparse: make Curl_str_number() return error for no digits [14]
o strparse: switch the API to work on 'const char *' [2]
o strparse: switch to curl_off_t as base data type [7]
o tests: fix enum/int confusion (Intel C), fix autotools `CFLAGS` for `servers` [27]
o tidy-up: delete, comment or scope C macros reported unused [16]
o tidy-up: drop unused `CURL_INADDR_NONE` macro and `in_addr_t` type [26]
o tidy-up: use `CURL_ARRAYSIZE()` [37]
o timediff: fix comment for curlx_mstotv() [25]
o timediff: remove unnecessary double typecast [53]
o tool_getparam: clear sensitive arguments better [66]
o urlapi: simplify junkscan [23]
o variable.md: clarify 'trim' example [12]
o wolfssh: retrieve the error using wolfSSH_get_error [5]
o wolfssl: fix CA certificate multiple location import [34]
o wolfssl: when using PQ KEM, use ML-KEM, not Kyber [10]
This release includes the following known bugs:
See https://curl.se/docs/knownbugs.html
For all changes ever done in curl:
See https://curl.se/changes.html
Planned upcoming removals include:
o Support for the msh3 HTTP/3 backend
o The winbuild build system
o TLS libraries not supporting TLS 1.3
See https://curl.se/dev/deprecate.html
This release would not have looked like this without help, code, reports and
advice from friends like these:
Anthony Hu, Daniel Stenberg, dependabot[bot], Dexter Gerig, Harry Sintonen,
John Bampton, Joseph Chen, kayrus on github, kriztalz, lf- on github,
Marcel Raad, Mark Phillips, Ray Satiro, rmg-x on github,
RubisetCie on Github, Sergey, Stefan Eissing, Viktor Szakats,
Zenju on github
(19 contributors)
References to bug reports and discussions on issues:
[1] = https://curl.se/bug/?i=16315
[2] = https://curl.se/bug/?i=16316
[3] = https://curl.se/bug/?i=16311
[4] = https://curl.se/bug/?i=16334
[5] = https://curl.se/bug/?i=16335
[6] = https://curl.se/bug/?i=16323
[7] = https://curl.se/bug/?i=16336
[8] = https://curl.se/bug/?i=16338
[9] = https://curl.se/bug/?i=16339
[10] = https://curl.se/bug/?i=16337
[11] = https://curl.se/bug/?i=16400
[12] = https://curl.se/bug/?i=16346
[13] = https://curl.se/bug/?i=16319
[14] = https://curl.se/bug/?i=16319
[15] = https://curl.se/bug/?i=16327
[16] = https://curl.se/bug/?i=16279
[17] = https://curl.se/bug/?i=16331
[18] = https://curl.se/bug/?i=16320
[19] = https://curl.se/bug/?i=16325
[20] = https://curl.se/bug/?i=16321
[21] = https://curl.se/bug/?i=16241
[22] = https://curl.se/bug/?i=16305
[23] = https://curl.se/bug/?i=16307
[24] = https://curl.se/bug/?i=16306
[25] = https://curl.se/bug/?i=16310
[26] = https://curl.se/bug/?i=16318
[27] = https://curl.se/bug/?i=16314
[28] = https://curl.se/bug/?i=16313
[29] = https://curl.se/bug/?i=16274
[30] = https://curl.se/bug/?i=16345
[31] = https://curl.se/bug/?i=16344
[32] = https://curl.se/bug/?i=16354
[33] = https://curl.se/bug/?i=16382
[34] = https://curl.se/bug/?i=16391
[35] = https://curl.se/bug/?i=16349
[36] = https://curl.se/bug/?i=16347
[37] = https://curl.se/bug/?i=16381
[38] = https://curl.se/bug/?i=16238
[39] = https://curl.se/bug/?i=16287
[40] = https://curl.se/bug/?i=16340
[41] = https://curl.se/bug/?i=16324
[42] = https://curl.se/bug/?i=15841
[43] = https://curl.se/bug/?i=16342
[44] = https://curl.se/bug/?i=16132
[45] = https://curl.se/bug/?i=16100
[46] = https://curl.se/bug/?i=16375
[47] = https://curl.se/bug/?i=16357
[49] = https://curl.se/bug/?i=16352
[51] = https://curl.se/bug/?i=16409
[53] = https://curl.se/bug/?i=16367
[54] = https://curl.se/bug/?i=16384
[55] = https://curl.se/bug/?i=16366
[56] = https://curl.se/bug/?i=16322
[57] = https://curl.se/bug/?i=16351
[58] = https://curl.se/bug/?i=16362
[59] = https://curl.se/bug/?i=16360
[60] = https://curl.se/bug/?i=16363
[61] = https://curl.se/bug/?i=16280
[62] = https://curl.se/bug/?i=16252
[63] = https://curl.se/bug/?i=16356
[64] = https://curl.se/bug/?i=16117
[66] = https://curl.se/bug/?i=16396
[67] = https://curl.se/bug/?i=16399
[68] = https://curl.se/bug/?i=16398
[71] = https://curl.se/bug/?i=16385
[72] = https://curl.se/bug/?i=16373