aboutsummaryrefslogtreecommitdiff
path: root/RELEASE-NOTES
blob: 99504e702f9e1d96ba92c363904ae6b882ec5c9a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
curl and libcurl 8.6.0

 Public curl releases:         254
 Command line options:         258
 curl_easy_setopt() options:   304
 Public functions in libcurl:  93
 Contributors:                 3064

This release includes the following changes:

 o add CURLE_TOO_LARGE [48]
 o add CURLINFO_QUEUE_TIME_T [76]
 o add CURLOPT_SERVER_RESPONSE_TIMEOUT_MS: add [39]
 o asyn-thread: use GetAddrInfoExW on >= Windows 8 [55]
 o runtests: support -gl. Like -g but for lldb. [47]

This release includes the following bugfixes:

 o altsvc: free 'as' when returning error [23]
 o appveyor: replace PowerShell with bash + parallel autotools [54]
 o appveyor: switch to out-of-tree builds [29]
 o build: delete unused `HAVE_{GSSHEIMDAL,GSSMIT,HEIMDAL}` [4]
 o build: enable missing OpenSSF-recommended warnings, with fixes [11]
 o build: fix `-Wconversion`/`-Wsign-conversion` warnings [26]
 o build: fix Windows ADDRESS_FAMILY detection [35]
 o build: more `-Wformat` fixes [40]
 o build: remove redundant `CURL_PULL_*` settings [8]
 o CI/distcheck: run full tests [31]
 o cmake: fix generation for system name iOS [53]
 o cmake: fix typo [5]
 o cmake: prefill/cache `HAVE_STRUCT_SOCKADDR_STORAGE` [45]
 o cmdline-docs: use .IP consistently [13]
 o cmdline-opts: update availability for the *-ca-native options [66]
 o cmdline/gen: fix the sorting of the man page options [33]
 o configure: fix no default int compile error in ipv6 detection [69]
 o connect: remove margin from eyeballer alloc [79]
 o content_encoding: change return code to typedef'ed enum [94]
 o cookie: avoid fopen with empty file name [24]
 o curl: show ipfs and ipns as supported "protocols" [15]
 o CURLINFO_REFERER.3: clarify that it is the *request* header [70]
 o CURLOPT_AUTOREFERER.3: mention CURLINFO_REFERER
 o CURLOPT_POSTFIELDS.3: fix incorrect C string escape in example [27]
 o CURLOPT_SSH_*_KEYFILE: clarify [57]
 o dist: add tests/errorcodes.pl to the tarball [6]
 o docs: clean up Protocols: for cmdline options [32]
 o doh: remove unused local variable [34]
 o ftp: handle the PORT parsing without allocation [44]
 o ftp: use dynbuf to store entrypath [83]
 o ftp: use memdup0 to store the OS from a SYST 215 response [82]
 o gnutls: fix build with --disable-verbose [3]
 o haproxy-clientip.d: document the arg [68]
 o hostip: return error immediately when Curl_ip2addr() fails [19]
 o http2: improved on_stream_close/data_done handling [49]
 o http3/quiche: fix result code on a stream reset [91]
 o http: adjust_pollset fix [85]
 o http: fix off-by-one error in request method length check [14]
 o lib: add debug log outputs for CURLE_BAD_FUNCTION_ARGUMENT [62]
 o lib: fix variable undeclared error caused by `infof` changes [2]
 o lib: reduce use of strncpy [30]
 o lib: rename Curl_strndup to Curl_memdup0 to avoid misunderstanding [36]
 o lib: strndup/memdup instead of malloc, memcpy and null-terminate [42]
 o libssh: improve the deprecation warning dismissal [20]
 o libssh: supress warnings without version check [18]
 o Makefile.am: fix the MSVC project generation [22]
 o Makefile.mk: drop Windows support [12]
 o mbedtls: free the entropy when threaded [46]
 o mime: use memdup0 instead of malloc + memcpy [63]
 o mprintf: overhaul and bugfixes [52]
 o ngtcp2: put h3 at the front of alpn [58]
 o openldap: fix an LDAP crash [75]
 o openldap: fix STARTTLS [67]
 o openssl: re-match LibreSSL deinit with init [17]
 o pop3: replace calloc + memcpy with memdup0 [60]
 o quiche: return CURLE_HTTP3 on send to invalid stream [65]
 o readwrite_data: loop less [21]
 o Revert "urldata: move async resolver state from easy handle to connectdata" [16]
 o runtests: for mode="text" on <stdout>, fix newlines on both parts [64]
 o schannel: fix `-Warith-conversion` gcc 13 warning [28]
 o sectransp_ make TLSCipherNameForNumber() available in non-verbose config [1]
 o sendf: fix compiler warning with CURL_DISABLE_HEADERS_API [38]
 o setopt: clear mimepost when formp is freed [92]
 o ssh: fix namespace of two local macros [51]
 o strerror: repair get_winsock_error() [56]
 o system.h: sync mingw `CURL_TYPEOF_CURL_SOCKLEN_T` with other compilers [9]
 o system_win32: fix a function pointer assignment warning [71]
 o tests/server: delete workaround for old-mingw [25]
 o tests: respect $TMPDIR when creating unix domain sockets [50]
 o tool: make parser reject blank arguments if not supported [86]
 o tool: prepend output_dir in header callback [95]
 o tool_getparam: bsearch cmdline options [74]
 o tool_getparam: do not try to expand without an argument [59]
 o tool_listhelp: regenerate after recent .d updates [61]
 o transfer: adjust_pollset improvements [81]
 o transfer: fix upload rate limiting, add test cases [37]
 o url: for disabled protocols, mention if found in redirect [7]
 o verify-examples.pl: fail verification on unescaped backslash [72]
 o vtls: fix missing multissl version info [73]
 o vtls: remove the Curl_cft_ssl_proxy object if CURL_DISABLE_PROXY [41]
 o windows: delete redundant headers [43]
 o windows: simplify detecting and using system headers [10]
 o wolfssl: load certificate *chain* for PEM client certs [84]

This release includes the following known bugs:

 o see docs/KNOWN_BUGS (https://curl.se/docs/knownbugs.html)

Planned upcoming removals include:

 o support for space-separated NOPROXY patterns

 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:

  Andy Alt, annalee, Baruch Siach, Ben, Boris Verkhovskiy,
  bubbleguuum on github, Cajus Pollmeier, calvin2021y on github, Chara White,
  Chris Sauer, Dan Fandrich, Daniel Gustafsson, Daniel Stenberg,
  dependabot[bot], Dmitry Karpov, Gabe, Geeknik Labs, Gisle Vanem,
  Hans-Christian Egtvedt, Haydar Alaidrus, hgdagon on github, iAroc on github,
  ivanfywang, Karthikdasari0423 on github, Lealem Amedie, Marcel Raad,
  Mark Sinkovics, Mauricio Scheffer, MichaƂ Antoniak, Mike Hommey, Ozan Cansel,
  Patrick Monnerat, Pavel Pavlov, Ray Satiro, RevaliQaQ on github,
  Stefan Eissing, Tatsuhiko Miyagawa, Theo, Thomas Ferguson, Viktor Szakats,
  Xi Ruoyao, Yedaya Katsman, Yifei Kong, YX Hao, zengwei, zengwei2000
  (46 contributors)

References to bug reports and discussions on issues:

 [1] = https://curl.se/bug/?i=12474
 [2] = https://curl.se/bug/?i=12470
 [3] = https://curl.se/bug/?i=12505
 [4] = https://curl.se/bug/?i=12506
 [5] = https://curl.se/bug/?i=12464
 [6] = https://curl.se/bug/?i=12462
 [7] = https://curl.se/bug/?i=12466
 [8] = https://curl.se/bug/?i=12502
 [9] = https://curl.se/bug/?i=12501
 [10] = https://curl.se/bug/?i=12495
 [11] = https://curl.se/bug/?i=12489
 [12] = https://curl.se/bug/?i=12224
 [13] = https://curl.se/bug/?i=12535
 [14] = https://curl.se/bug/?i=12534
 [15] = https://curl.se/mail/archive-2023-12/0026.html
 [16] = https://curl.se/bug/?i=12524
 [17] = https://curl.se/bug/?i=12525
 [18] = https://curl.se/bug/?i=12523
 [19] = https://curl.se/bug/?i=12522
 [20] = https://curl.se/bug/?i=12519
 [21] = https://curl.se/bug/?i=12504
 [22] = https://curl.se/bug/?i=12564
 [23] = https://curl.se/bug/?i=12570
 [24] = https://curl.se/bug/?i=12514
 [25] = https://curl.se/bug/?i=12510
 [26] = https://curl.se/bug/?i=12557
 [27] = https://curl.se/bug/?i=12588
 [28] = https://curl.se/bug/?i=12616
 [29] = https://curl.se/bug/?i=12550
 [30] = https://curl.se/bug/?i=12499
 [31] = https://curl.se/bug/?i=12503
 [32] = https://curl.se/bug/?i=12496
 [33] = https://curl.se/mail/archive-2023-12/0014.html
 [34] = https://curl.se/bug/?i=12491
 [35] = https://curl.se/bug/?i=12441
 [36] = https://curl.se/bug/?i=12490
 [37] = https://curl.se/bug/?i=12559
 [38] = https://curl.se/bug/?i=12485
 [39] = https://curl.se/bug/?i=12369
 [40] = https://curl.se/bug/?i=12540
 [41] = https://curl.se/bug/?i=12459
 [42] = https://curl.se/bug/?i=12453
 [43] = https://curl.se/bug/?i=12539
 [44] = https://curl.se/bug/?i=12456
 [45] = https://curl.se/bug/?i=12537
 [46] = https://curl.se/bug/?i=12584
 [47] = https://curl.se/bug/?i=12547
 [48] = https://curl.se/bug/?i=12269
 [49] = https://curl.se/bug/?i=10936
 [50] = https://curl.se/bug/?i=12545
 [51] = https://curl.se/bug/?i=12544
 [52] = https://curl.se/bug/?i=12561
 [53] = https://curl.se/bug/?i=12515
 [54] = https://curl.se/bug/?i=12560
 [55] = https://curl.se/bug/?i=12481
 [56] = https://curl.se/bug/?i=12578
 [57] = https://curl.se/bug/?i=12554
 [58] = https://curl.se/bug/?i=12576
 [59] = https://curl.se/bug/?i=12565
 [60] = https://curl.se/bug/?i=12650
 [61] = https://curl.se/bug/?i=12612
 [62] = https://curl.se/bug/?i=12658
 [63] = https://curl.se/bug/?i=12649
 [64] = https://curl.se/bug/?i=12612
 [65] = https://curl.se/bug/?i=12590
 [66] = https://curl.se/bug/?i=12613
 [67] = https://curl.se/bug/?i=12610
 [68] = https://curl.se/bug/?i=12611
 [69] = https://curl.se/bug/?i=12607
 [70] = https://curl.se/bug/?i=12605
 [71] = https://curl.se/bug/?i=12581
 [72] = https://curl.se/bug/?i=12589
 [73] = https://curl.se/bug/?i=12599
 [74] = https://curl.se/bug/?i=12631
 [75] = https://curl.se/bug/?i=12593
 [76] = https://curl.se/bug/?i=12368
 [79] = https://curl.se/bug/?i=12647
 [81] = https://curl.se/bug/?i=12640
 [82] = https://curl.se/bug/?i=12639
 [83] = https://curl.se/bug/?i=12638
 [84] = https://curl.se/bug/?i=12634
 [85] = https://curl.se/bug/?i=12632
 [86] = https://curl.se/bug/?i=12620
 [91] = https://curl.se/bug/?i=12629
 [92] = https://curl.se/bug/?i=12608
 [94] = https://curl.se/bug/?i=12618
 [95] = https://curl.se/bug/?i=12614