123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256 |
- 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: 2711
- 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: reject bad port numbers [86]
- o altsvc: use 'h3' for h3 [46]
- o autotools: allow --enable-symbol-hiding with windows [65]
- o autotools: reduce brute-force when detecting recv/send arg list [66]
- o bearssl: make it proper C89 compliant
- o CI/GHA: cancel outdated CI runs on new PR changes [20]
- o cirrus-ci: add macOS build with m1 [81]
- 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: deprecate builds with small curl_off_t [89]
- o configure: fail if '--without-ssl' + explicit parameter for an ssl lib [164]
- o connect: change verbose IPv6 address:port to [address]:port [83]
- 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: for gcc + want warnings, set gnu89 standard [72]
- 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: disable use of FLOSS for 64-bit NonStop builds [69]
- 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 curl_url_set.3: document CURLU_APPENDQUERY proper [96]
- o CURLOPT_ACCEPT_ENCODING.3: remove "four" as they are five [85]
- o CURLOPT_COOKIELIST.3: fix formatting mistake [80]
- 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 CURLSHOPT_UNLOCKFUNC.3: the callback has no 'access' argument [84]
- o DEPRECATE.md: Support for systems without 64 bit data types [19]
- 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: document more server names for test files
- o docs: remove mentions of deprecated '--without-openssl' parameter [170]
- o docs: tag curl options better in man pages
- o docs: tell about disabled protocols in CURLOPT_*PROTOCOLS_STR.
- o docs: update sourceforge project links [95]
- o easy: fix the #include order [53]
- o easy: fix the altsvc init for curl_easy_duphandle [77]
- 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 functypes: provide the recv and send arg and return types [87]
- o getparameter: return PARAM_MANUAL_REQUESTED for -M even when disabled [17]
- o GHA: build tests in a separate step from the running of them [78]
- 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 http, vauth: always provide Curl_allow_auth_to_host() functionality [90]
- o http2: make nghttp2 less picky about field whitespace [27]
- o HTTP3.md: update Caddy example [76]
- o httpput-postfields.c: shorten string for C89 compliance [57]
- o ldap: delete stray CURL_HAS_MOZILLA_LDAP reference [79]
- o lib1560: extended to verify detect/reject of unknown schemes
- o lib517: fix C89 constant signedness [73]
- o lib: add missing limits.h includes [35]
- o lib: add required Win32 setup definitions in setup-win32.h [4]
- o lib: prepare the incoming of additional protocols [71]
- o lib: sanitize conditional exclusion around MIME [82]
- o lib: the number four in a sequence is the "fourth" [28]
- o Makefile.m32: major rework [92]
- o manpage-syntax.pl: all libcurl option symbols should be \fI-tagged [75]
- 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 mprintf: use snprintf if available [74]
- o msh3: change the static_assert to make the code C89
- o ngtcp2: fix C89 compliance nit
- o openssl: make certinfo available for QUIC [91]
- 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 schannel: ban server ALPN change during recv renegotiation [63]
- 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 symbols-in-versions: CURLOPT_ENCODING is deprecated since 7.21.6
- 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 tests: skip mime/form tests when mime is not built-in [54]
- o TODO: Provide the error body from a CONNECT response [67]
- o tool: remove dead code [70]
- 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 url: a zero-length userinfo part in the URL is still a (blank) user [64]
- o url: rename function due to name-clash in Watt-32 [62]
- o urlapi: detect scheme better when not guessing [56]
- o urlapi: leaner with fewer allocs [2]
- o urlapi: reject more bad characters from the host name field [88]
- 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 windows: adjust name of two internal public functions [58]
- o windows: autotools .rc warnings fixup [68]
- 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, David Hu, Dmitry Karpov, Edoardo Lolletti,
- Eloy Degen, Emanuele Torre, Gisle Vanem, Hayden Roche, James Fuller,
- John Bampton, justchen1369 on github, Keitagit-kun on github, Marcel Raad,
- Marc Hörsken, Mark Itzcovitz, Matt Holt, Max Dymond, Michael Drake,
- Michael Heimpold, n0name321 on github, Orgad Shaneh, Patrick Monnerat,
- Philip H, Philip Heiduck, ProceduralMan on github, Randall S. Becker,
- Ray Satiro, RobBotic1 on github, Robby Simpson, Samuel Henrique,
- Sergey Bronnikov, ssdbest on github, Thiago Suchorski, Tobias Schaefer,
- Viktor Szakats, Yuriy Chernyshov, zhanghu on xiaomi
- (42 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
- [19] = https://curl.se/bug/?i=9604
- [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
- [54] = https://curl.se/bug/?i=9596
- [55] = https://curl.se/bug/?i=9549
- [56] = https://curl.se/bug/?i=9503
- [57] = https://curl.se/bug/?i=9555
- [58] = https://curl.se/bug/?i=9598
- [59] = https://curl.se/bug/?i=9551
- [60] = https://curl.se/bug/?i=9548
- [61] = https://curl.se/bug/?i=9540
- [62] = https://curl.se/bug/?i=9585
- [63] = https://curl.se/bug/?i=9463
- [64] = https://curl.se/bug/?i=9088
- [65] = https://curl.se/bug/?i=9586
- [66] = https://curl.se/bug/?i=9591
- [67] = https://curl.se/bug/?i=9513
- [68] = https://curl.se/bug/?i=9582
- [69] = https://curl.se/bug/?i=9575
- [70] = https://curl.se/bug/?i=9576
- [71] = https://curl.se/bug/?i=9534
- [72] = https://curl.se/bug/?i=9542
- [73] = https://curl.se/bug/?i=9572
- [74] = https://curl.se/bug/?i=9569
- [75] = https://curl.se/bug/?i=9574
- [76] = https://curl.se/bug/?i=9623
- [77] = https://curl.se/bug/?i=9624
- [78] = https://curl.se/bug/?i=9619
- [79] = https://curl.se/bug/?i=9625
- [80] = https://curl.se/bug/?i=9639
- [81] = https://curl.se/bug/?i=9565
- [82] = https://curl.se/bug/?i=9610
- [83] = https://curl.se/mail/archive-2022-02/0041.html
- [84] = https://curl.se/bug/?i=9612
- [85] = https://curl.se/bug/?i=9614
- [86] = https://curl.se/bug/?i=9607
- [87] = https://curl.se/bug/?i=9592
- [88] = https://curl.se/bug/?i=9608
- [89] = https://curl.se/bug/?i=9605
- [90] = https://curl.se/bug/?i=9600
- [91] = https://curl.se/bug/?i=9584
- [92] = https://curl.se/bug/?i=9632
- [95] = https://curl.se/bug/?i=9630
- [96] = https://curl.se/bug/?i=9628
- [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
|