blob: 69b38e421bf3aec6ede65e600cd6ca54edb65728 [file] [log] [blame]
curl and libcurl 7.86.0
Public curl releases: 211
Command line options: 248
curl_easy_setopt() options: 300
Public functions in libcurl: 91
Contributors: 2708
This release includes the following changes:
o NPN: remove support for and use of [16]
o Websockets: initial support [23]
This release includes the following bugfixes:
o altsvc: use 'h3' for h3 [46]
o CI/GHA: cancel outdated CI runs on new PR changes [20]
o cli tool: do not use disabled protocols
o cmake: define BUILDING_LIBCURL in lib/CMakeLists, not config.h [5]
o cmake: fix original MinGW builds [177]
o configure: correct the wording when checking grep -E [13]
o configure: fail if '--without-ssl' + explicit parameter for an ssl lib [164]
o connect: fix the wrong error message on connect failures [55]
o content_encoding: use writer struct subclasses for different encodings [8]
o ctype: remove all use of <ctype.h>, use our own versions [12]
o curl-compilers.m4: use -O2 as default optimize for clang [6]
o curl.h: fix mention of wrong error code in comment
o curl: warn for --ssl use, considered insecure [49]
o curl_ctype: convert to macros-only [10]
o curl_easy_pause.3: unpausing is as fast as possible [14]
o curl_escape.3: fix typo [50]
o curl_setup: include curl.h after platform setup headers [37]
o curl_setup: include only system.h instead of curl.h [34]
o curl_strequal.3: fix argument typo [60]
o CURLOPT_DNS_INTERFACE.3: mention it works for almost all protocols [15]
o CURLOPT_PROXY_SSLCERT_BLOB.3: this is for HTTPS proxies [9]
o CURLOPT_WILDCARDMATCH.3: Fix backslash escaping under single quotes [172]
o docs/libcurl/symbols-in-versions: add several missing symbols
o docs: 100+ spellfixes
o docs: correct missing uppercase in Markdown files [38]
o docs: remove mentions of deprecated '--without-openssl' parameter [170]
o docs: tell about disabled protocols in CURLOPT_*PROTOCOLS_STR.
o easy: fix the #include order [53]
o examples/chkspeed: improve portability [48]
o formdata: fix warning: 'CURLformoption' is promoted to 'int' [24]
o ftp: ignore a 550 response to MDTM [1]
o getparameter: return PARAM_MANUAL_REQUESTED for -M even when disabled [17]
o GHA: run proselint on markdown files [22]
o github: initial CODEOWNERS setup for CI configuration [52]
o header: define public API functions as extern c [26]
o headers: reset the requests counter at transfer start [25]
o hostip: lazily wait to figure out if IPv6 works until needed [36]
o http2: make nghttp2 less picky about field whitespace [27]
o httpput-postfields.c: shorten string for C89 compliance [57]
o lib1560: extended to verify detect/reject of unknown schemes
o lib: add missing limits.h includes [35]
o lib: add required Win32 setup definitions in setup-win32.h [4]
o lib: the number four in a sequence is the "fourth" [28]
o manpages: Fix spelling of "allows to" -> "allows one to" [171]
o misc: ISSPACE() => ISBLANK() [11]
o misc: use the term "null-terminate" consistently [41]
o README.md: add GHA status badges for Linux and macOS builds [40]
o RELEASE-PROCEDURE.md: mention patch releases [21]
o resolve: make forced IPv4 resolve only use A queries [61]
o scripts: use `grep -E` instead of `egrep` [30]
o setopt: use the handler table for protocol name to number conversions [45]
o setopt: when POST is set, reset the 'upload' field [51]
o setup-win32: no longer define UNICODE/_UNICODE implicitly [3]
o strerror: improve two URL API error messages
o symbol-scan.pl: also check for LIBCURL* symbols [43]
o symbol-scan.pl: scan and verify .3 man pages [42]
o symbols-in-versions: add missing LIBCURL* symbols
o test1119: scan all public headers [44]
o test972: verify the output without using external tool [32]
o tests/certs/scripts: insert standard curl source headers [169]
o tests: fix tag syntax errors in test files
o tool_hugehelp: make hugehelp a blank macro when disabled [7]
o tool_operate: avoid a few #ifdefs for disabled-libcurl builds [29]
o tool_operate: prevent over-queuing in parallel mode [176]
o tool_operate: reduce errorbuffer allocs [173]
o tool_progress: remove 'Qd' from the parallel progress bar [175]
o tool_setopt: use better English in --libcurl source comments [39]
o unit test 1655: make it C89-compliant [59]
o urlapi: detect scheme better when not guessing [56]
o urlapi: leaner with fewer allocs [2]
o winbuild/MakefileBuild.vc: handle spaces in libssh(2) include paths [18]
o winbuild: Use NMake batch-rules for compilation [47]
o windows: add .rc support to autotools builds [33]
o wolfSSL: fix session management bug. [31]
This release includes the following known bugs:
o see docs/KNOWN_BUGS (https://curl.se/docs/knownbugs.html)
This release would not have looked like this without help, code, reports and
advice from friends like these:
a1346054 on github, ajak in #curl, Andrew Lambert, Benjamin Loison,
Dan Fandrich, Daniel Stenberg, Dmitry Karpov, Edoardo Lolletti,
Emanuele Torre, Hayden Roche, James Fuller, John Bampton,
justchen1369 on github, Keitagit-kun on github, Marcel Raad, Marc Hรถrsken,
Mark Itzcovitz, Max Dymond, Michael Drake, Michael Heimpold,
n0name321 on github, Orgad Shaneh, Patrick Monnerat, Philip Heiduck,
ProceduralMan on github, Ray Satiro, RobBotic1 on github, Samuel Henrique,
Sergey Bronnikov, ssdbest on github, Tobias Schaefer, Viktor Szakats,
Yuriy Chernyshov, zhanghu on xiaomi
(34 contributors)
References to bug reports and discussions on issues:
[1] = https://curl.se/bug/?i=9357
[2] = https://curl.se/bug/?i=9408
[3] = https://curl.se/bug/?i=9375
[4] = https://curl.se/bug/?i=9375
[5] = https://curl.se/bug/?i=9498
[6] = https://curl.se/bug/?i=9444
[7] = https://curl.se/bug/?i=9485
[8] = https://curl.se/bug/?i=9455
[9] = https://curl.se/bug/?i=9434
[10] = https://curl.se/bug/?i=9429
[11] = https://curl.se/bug/?i=9432
[12] = https://curl.se/bug/?i=9433
[13] = https://curl.se/bug/?i=9471
[14] = https://curl.se/bug/?i=9410
[15] = https://curl.se/bug/?i=9427
[16] = https://curl.se/bug/?i=9307
[17] = https://curl.se/bug/?i=9485
[18] = https://curl.se/mail/lib-2022-09/0038.html
[20] = https://curl.se/bug/?i=9533
[21] = https://curl.se/bug/?i=9495
[22] = https://curl.se/bug/?i=9520
[23] = https://curl.se/bug/?i=8995
[24] = https://curl.se/bug/?i=9484
[25] = https://curl.se/bug/?i=9424
[26] = https://curl.se/bug/?i=9424
[27] = https://curl.se/bug/?i=9448
[28] = https://curl.se/bug/?i=9535
[29] = https://curl.se/bug/?i=9486
[30] = https://curl.se/bug/?i=9491
[31] = https://curl.se/bug/?i=9492
[32] = https://curl.se/bug/?i=9563
[33] = https://curl.se/bug/?i=9521
[34] = https://curl.se/bug/?i=9453
[35] = https://curl.se/bug/?i=9453
[36] = https://curl.se/bug/?i=9553
[37] = https://curl.se/bug/?i=9453
[38] = https://curl.se/bug/?i=9474
[39] = https://curl.se/bug/?i=9475
[40] = https://curl.se/bug/?i=9530
[41] = https://curl.se/bug/?i=9527
[42] = https://curl.se/bug/?i=9544
[43] = https://curl.se/bug/?i=9544
[44] = https://curl.se/bug/?i=9544
[45] = https://curl.se/bug/?i=9472
[46] = https://curl.se/bug/?i=9515
[47] = https://curl.se/bug/?i=9512
[48] = https://curl.se/bug/?i=9562
[49] = https://curl.se/bug/?i=9519
[50] = https://curl.se/bug/?i=9517
[51] = https://curl.se/bug/?i=9507
[52] = https://curl.se/bug/?i=9505
[53] = https://curl.se/bug/?i=9560
[55] = https://curl.se/bug/?i=9549
[56] = https://curl.se/bug/?i=9503
[57] = https://curl.se/bug/?i=9555
[59] = https://curl.se/bug/?i=9551
[60] = https://curl.se/bug/?i=9548
[61] = https://curl.se/bug/?i=9540
[164] = https://curl.se/bug/?i=9414
[169] = https://curl.se/bug/?i=9417
[170] = https://curl.se/bug/?i=9415
[171] = https://curl.se/bug/?i=9419
[172] = https://curl.se/bug/?i=9418
[173] = https://curl.se/bug/?i=9394
[175] = https://curl.se/bug/?i=9389
[176] = https://curl.se/bug/?i=8933
[177] = https://curl.se/bug/?i=9214