xref: /curl/RELEASE-NOTES (revision cfae354a)
1curl and libcurl 8.11.0
2
3 Public curl releases:         262
4 Command line options:         265
5 curl_easy_setopt() options:   306
6 Public functions in libcurl:  94
7 Contributors:                 3245
8
9This release includes the following changes:
10
11 o curl: --create-dirs works for --dump-header as well [4]
12 o gtls: Add P12 format support [9]
13 o ipfs: add options to disable [8]
14
15This release includes the following bugfixes:
16
17 o alt-svc: honor data->state.httpwant [19]
18 o autotools: add support for 'unity' builds, enable in CI [15]
19 o build: add pytest targets [71]
20 o build: clarify CA embed is for curl tool, mark default, improve summary [72]
21 o build: fix cross-compile check for poll with bionic [70]
22 o build: fix possible `-Wformat-overflow` in lib557 [85]
23 o build: limit arc4random detection to no-SSL configs [43]
24 o build: show if CA bundle to embed was found [83]
25 o build: tidy up and improve versioned-symbols options [5]
26 o build: tidy up deprecation suppression, enable warnings for clang [12]
27 o checksrc: Added checks for colon operator in ternary expressions [77]
28 o checksrc: check for spaces around '?', '>' and '<' [46]
29 o cmake, Makefile.mk: use -isystem for headers, silence BearSSL issues [37]
30 o cmake/FindNGTCP2: use library path as hint for finding crypto module [40]
31 o cmake: allow building tests in unity mode [31]
32 o cmake: delete unused NEED_LBER_H, HAVE_LDAP_H [38]
33 o cmake: disable default OpenSSL if BearSSL, GnuTLS or Rustls is enabled [44]
34 o cmake: drop redundant assignments [49]
35 o cmake: drop redundant zlib var, rename function (internals) [50]
36 o cmake: expand CURL_USE_PKGCONFIG to non-cross MINGW [13]
37 o cmake: fix broken dependency chain for cmdline-opts, tidy-ups [11]
38 o cmake: make `test-ci` target skip building dependencies [88]
39 o cmake: require quictls (or fork) when using msh3 on non-Windows [14]
40 o cmake: separate target for examples, optimize CI, fix fallouts [16]
41 o cmake: sync torture test parallelism with autotools [35]
42 o configure: catch Apple in more target triplets [6]
43 o configure: improve help string for some options [78]
44 o curl: add build options for safe/no CA bundle search (Windows) [26]
45 o curl_trc: fix build with verbose messages disabled [79]
46 o curl_url_set.md: document HOST handling when URL is parsed [2]
47 o CURLMOPT_PIPELINING.md: clarify that CURLPIPE_NOTHING is not default [54]
48 o lib, src, tests: added space around ternary expressions [56]
49 o lib/cw-out: initialize 'flush_all' directly [62]
50 o lib/src: white space edits to comply better with code style [47]
51 o lib: fix unity builds with BearSSL, MSH3, Quiche, OmniOS [32]
52 o libssh.c: handle EGAINS during proto-connect correctly [23]
53 o libssh2: use the Curl_* memory functions to avoid memdebug [22]
54 o multi.c: make stronger check for paused transfer before asserting [24]
55 o multi.c: warn/assert on stall only without timer [80]
56 o multi: avoid reading whole struct pointer from pointer [10]
57 o negotiate: conditional check around GSS & SSL specific code [1]
58 o openssl: convert a memcpy to dynbuf use [57]
59 o openssl: remove two strcpy() calls [64]
60 o processhelp.pm: improve taskkill calls (Windows) [52]
61 o request: on shutdown send, proceed normally on timeout [18]
62 o runtests.md: suggest a value for -j for torture tests
63 o sendf: add condition to max-filesize check [3]
64 o socks_gssapi: switch to dynbuf from buffer with strcpy [42]
65 o test1035: convert host name back to utf8 as should be [63]
66 o test1540: add debug logging [58]
67 o test190: replace %FTPTIME2 with a fixed value [34]
68 o test2502: add libtest debug tracing [60]
69 o test504: fix handling on pending connect [59]
70 o testrun: explicitly set proper IP address for stunnel listen/connect [61]
71 o tests/valgrind.pm: fix warnings with no valgrind report to show [25]
72 o tests: add codeset-utf8 as a feature [66]
73 o tests: add file: tests with existing files [45]
74 o tests: check http/2 and http/3 server responsiveness [28]
75 o tests: delete duplicate macro check [53]
76 o tests: fix keyword for test1411
77 o tests: improve mqtt server handling [27]
78 o tests: introduce %CLIENT6IP-NB [67]
79 o tests: libtests and unit tests need explicit #include memdebug [7]
80 o tests: make precheck for HTTP on 127.0.0.1 into a feature [68]
81 o tests: Only log warnings or worse by default in smbserver [33]
82 o tests: postcheck is now in verify [69]
83 o tests: remove all valgrind disable instructions [21]
84 o tests: remove the %FTPTIME3 variable [41]
85 o tests: speed up builds with single-binary test bundles [29]
86 o tests: testrunner fairness [39]
87 o tests: testrunner reliability improvements [55]
88 o tests: use '-4' where needed [17]
89 o tidy-up: rename CURL_WINDOWS_APP to CURL_WINDOWS_UWP [36]
90 o tool_doswin: simplify; remove unused options and strncpy calls [65]
91 o unit1660: fix unreachable code warning in no-SSL builds [30]
92 o url: connection reuse on h3 connections [20]
93 o urlapi: drop unused header [51]
94
95This release includes the following known bugs:
96
97 See docs/KNOWN_BUGS (https://curl.se/docs/knownbugs.html)
98
99For all changes ever done in curl:
100
101 See https://curl.se/changes.html
102
103Planned upcoming removals include:
104
105 o Hyper support after February 2025 [89]
106 o TLS libraries not supporting TLS 1.3
107
108 See https://curl.se/dev/deprecate.html for details
109
110This release would not have looked like this without help, code, reports and
111advice from friends like these:
112
113  Aki Sakurai, Baruch Siach, Dan Fandrich, Daniel Stenberg, Gabriel Marin,
114  Ian Spence, Jon Rumsey, Kai Pastor, lomberd2 on github, MacKenzie,
115  Montg0mery on github, Nicolas George, Pavel Kropachev, ralfjunker on github,
116  Rasmus Melchior Jacobsen, Ray Satiro, renovate[bot], Stefan Eissing,
117  Tal Regev, Tatsuhiro Tsujikawa, Testclutch, Venkat Krishna R, Viktor Szakats,
118  vvb2060 on github
119  (24 contributors)
120
121References to bug reports and discussions on issues:
122
123 [1] = https://curl.se/bug/?i=14938
124 [2] = https://curl.se/bug/?i=14942
125 [3] = https://curl.se/bug/?i=14958
126 [4] = https://curl.se/bug/?i=14941
127 [5] = https://curl.se/bug/?i=14818
128 [6] = https://curl.se/bug/?i=14728
129 [7] = https://curl.se/bug/?i=15007
130 [8] = https://curl.se/bug/?i=14824
131 [9] = https://curl.se/bug/?i=14991
132 [10] = https://curl.se/bug/?i=15063
133 [11] = https://curl.se/bug/?i=14883
134 [12] = https://curl.se/bug/?i=14789
135 [13] = https://curl.se/bug/?i=14658
136 [14] = https://curl.se/bug/?i=15003
137 [15] = https://curl.se/bug/?i=14815
138 [16] = https://curl.se/bug/?i=14906
139 [17] = https://curl.se/bug/?i=15060
140 [18] = https://curl.se/bug/?i=14843
141 [19] = https://curl.se/bug/?i=14966
142 [20] = https://curl.se/bug/?i=14890
143 [21] = https://curl.se/bug/?i=14983
144 [22] = https://curl.se/bug/?i=14984
145 [23] = https://curl.se/bug/?i=14982
146 [24] = https://curl.se/bug/?i=14981
147 [25] = https://curl.se/bug/?i=14977
148 [26] = https://curl.se/bug/?i=14582
149 [27] = https://curl.se/bug/?i=15059
150 [28] = https://curl.se/bug/?i=15058
151 [29] = https://curl.se/bug/?i=14772
152 [30] = https://curl.se/bug/?i=14971
153 [31] = https://curl.se/bug/?i=14765
154 [32] = https://curl.se/bug/?i=14932
155 [33] = https://curl.se/bug/?i=14950
156 [34] = https://curl.se/bug/?i=15056
157 [35] = https://curl.se/bug/?i=14969
158 [36] = https://curl.se/bug/?i=14881
159 [37] = https://curl.se/bug/?i=14763
160 [38] = https://curl.se/bug/?i=14690
161 [39] = https://curl.se/bug/?i=14967
162 [40] = https://github.com/curl/curl-for-win/blob/8b8909e1206de1dcca356a8dd33eb1e4ffeea7fd/curl.sh#L289
163 [41] = https://curl.se/bug/?i=15064
164 [42] = https://curl.se/bug/?i=15057
165 [43] = https://curl.se/bug/?i=14909
166 [44] = https://curl.se/bug/?i=14828
167 [45] = https://curl.se/bug/?i=15045
168 [46] = https://curl.se/bug/?i=14921
169 [47] = https://curl.se/bug/?i=14921
170 [49] = https://curl.se/bug/?i=14924
171 [50] = https://curl.se/bug/?i=14918
172 [51] = https://curl.se/bug/?i=14867
173 [52] = https://curl.se/bug/?i=14959
174 [53] = https://curl.se/bug/?i=14963
175 [54] = https://curl.se/bug/?i=14961
176 [55] = https://curl.se/bug/?i=14960
177 [56] = https://curl.se/bug/?i=14912
178 [57] = https://curl.se/bug/?i=15049
179 [58] = https://curl.se/bug/?i=15055
180 [59] = https://curl.se/bug/?i=15054
181 [60] = https://curl.se/bug/?i=15053
182 [61] = https://curl.se/bug/?i=15051
183 [62] = https://curl.se/bug/?i=15044
184 [63] = https://curl.se/bug/?i=15050
185 [64] = https://curl.se/bug/?i=15052
186 [65] = https://curl.se/bug/?i=15047
187 [66] = https://curl.se/bug/?i=15039
188 [67] = https://curl.se/bug/?i=15039
189 [68] = https://curl.se/bug/?i=15039
190 [69] = https://curl.se/bug/?i=15046
191 [70] = https://curl.se/bug/?i=15013
192 [71] = https://curl.se/bug/?i=15034
193 [72] = https://curl.se/bug/?i=15035
194 [77] = https://curl.se/bug/?i=14990
195 [78] = https://curl.se/bug/?i=15033
196 [79] = https://curl.se/bug/?i=15026
197 [80] = https://curl.se/bug/?i=15028
198 [83] = https://curl.se/bug/?i=15027
199 [85] = https://curl.se/bug/?i=15012
200 [88] = https://curl.se/bug/?i=15001
201 [89] = https://curl.se/bug/?i=15010
202