summaryrefslogtreecommitdiff
path: root/RELEASE-NOTES
blob: b291ccfb8ebff3630c3509ef9d97dc634956bf1f (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
curl and libcurl 7.77.1

 Public curl releases:         201
 Command line options:         242
 curl_easy_setopt() options:   290
 Public functions in libcurl:  85
 Contributors:                 2421

This release includes the following changes:

 o CURLE_SETOPT_OPTION_SYNTAX: new error name for wrong setopt syntax [40]
 o hostip: make 'localhost' return fixed values [16]
 o mbedtls: add support for cert and key blob options [11]
 o metalink: remove [54]

This release includes the following bugfixes:

 o ares: always store IPv6 addresses first [20]
 o bearssl: explicitly initialize all fields of Curl_ssl [1]
 o bearssl: remove incorrect const on variable that is modified [1]
 o c-hyper: abort CONNECT response reading early on non 2xx responses [75]
 o c-hyper: clear NTLM auth buffer when request is issued [23]
 o c-hyper: convert HYPERE_INVALID_PEER_MESSAGE to CURLE_UNSUPPORTED_PROTOCOL [21]
 o c-hyper: fix NTLM on closed connection tested with test159 [4]
 o c-hyper: fix the uploaded field in progress callbacks [78]
 o c-hyper: handle NULL from hyper_buf_copy() [19]
 o c-hyper: support CURLINFO_STARTTRANSFER_TIME [29]
 o c-hyper: support CURLOPT_HEADER [32]
 o ccsidcurl: fix the compile errors [27]
 o cmake: add CURL_DISABLE_NTLM option [44]
 o cmake: avoid leaking absolute paths into exported config [3]
 o cmake: try well-known send/recv signature for Apple [12]
 o configure: add --disable-ntlm option [45]
 o configure: disable RTSP when hyper is selected [68]
 o configure: rename get-easy-option configure option to get-easy-options [81]
 o conn_shutdown: if closed during CONNECT cleanup properly [59]
 o conncache: lowercase the hash key for better match [5]
 o cookies: track expiration in jar to optimize removals [25]
 o curl: ignore blank --output-dir [57]
 o Curl_ntlm_core_mk_nt_hash: fix OOM in error path [8]
 o Curl_ssl_getsessionid: fail if no session cache exists [14]
 o CURLOPT_WRITEFUNCTION.3: minor update of the example [80]
 o docs/INSTALL: remove mentions of configure --with-darwin-ssl [55]
 o docs: use --max-redirs instead of --max-redir [28]
 o doh: fix wrong DEBUGASSERT for doh private_data [62]
 o filecheck: quietly remove test-place/*~ [39]
 o GHA: add a linux-hyper job [52]
 o GHA: add several libcurl tests to the hyper job
 o GHA: run the newly fixed tests with hyper [36]
 o github: timeout jobs on macOS after 90 minutes [42]
 o GOVERNANCE: add 'user', 'committer' and 'contributor' [15]
 o hostip: bad CURLOPT_RESOLVE syntax now returns error [35]
 o hsts: ignore numberical IP address hosts [17]
 o HSTS: not experimental anymore
 o http2: init recvbuf struct for pushed streams [13]
 o http2_connisdead: handle trailing GOAWAY better [18]
 o http_proxy: deal with non-200 CONNECT response with Hyper [22]
 o HYPER: remove mentions of deprecated development branch
 o lib: don't compare fd to FD_SETSIZE when using poll [61]
 o mbedtls: make mbedtls_strerror always work [6]
 o mqtt: detect illegal and too large file size [43]
 o ngtcp2: disable TLSv1.3 compatible mode when using GnuTLS [83]
 o openssl: don't remove session id entry in disassociate [56]
 o Revert "c-hyper: handle body on HYPER_TASK_EMPTY" [26]
 o runtests: also find the last test in Makefile.inc [66]
 o runtests: enable 'hyper mode' only for HTTP tests [34]
 o runtests: init $VERSION to avoid warnings when using -l
 o runtests: parse data/Makefile.inc instead of using make [38]
 o runtests: skip disabled tests unless -f is used [82]
 o schannel: set ALPN length correctly for HTTP/2 [24]
 o setopt: fix incorrect comments [10]
 o socketpair: fix potential hangs [37]
 o ssl: read pending close notify alert before closing the connection [9]
 o sws: malloc request struct instead of using stack [60]
 o test1216: adjusted for hyper mode [73]
 o test1218: adjusted for hyper mode [72]
 o test1230: adjust to work in hyper mode [74]
 o test1340/1341: adjusted for hyper mode [71]
 o test1438/1457: add HTTP keyword to make hyper mode work [70]
 o test1594/1595/1596: fix to work in hyper mode [69]
 o test269: disable for hyper [33]
 o test3010: work with hyper mode [67]
 o test328: avoid a header-looking body to make hyper mode work [53]
 o test339: CRLFify better to work in hyper mode [51]
 o test347: CRLFify to work in hyper mode [50]
 o test393: make Content-Length fit within 64 bit for hyper [49]
 o test394: hyper returns a different error [48]
 o test395: hyper cannot work around > 64 bit content-lengths like built-in [47]
 o test433: adjust for hyper mode [46]
 o test434: add HTTP keyword [76]
 o test500: adjust to work with hyper mode
 o test566: adjust to work with hyper mode [79]
 o test599: adjusted to work in hyper mode [77]
 o test644: remove as duplicate of test 587 [84]
 o tests: fix Accept-Encoding strips to work with Hyper builds [41]
 o travis: add bearssl build [1]
 o travis: delete --enable-hsts option (it is the default now) [ci skip] [2]
 o travis: remove the hyper build
 o url: bad CURLOPT_CONNECT_TO syntax now returns error [31]
 o vtls: exit addsessionid if no cache is inited [7]
 o warnless: simplify type size handling [30]
 o Win32: fix build with Watt-32

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:

  Alexis Vachette, Alex Xu, Bastian Krause, Christian Weisgerber,
  Christoph M. Becker, Dan Fandrich, Daniel Gustafsson, Daniel Stenberg,
  Dmitry Karpov, Dmitry Kostjuchenko, Douglas R. Reno, Ebe Janchivdorj,
  Fawad Mirza, Gergely Nagy, Gisle Vanem, Gregor Jasny, Harry Sintonen,
  Joel Depooter, Jon Rumsey, Jun-ya Kato, Kevin Burke, Laurent Dufresne,
  Marc Hörsken, Mark Swaanenburg, Michael Forney, Michael Kaufmann,
  nian6324 on github, Paul Groke, Phil E. Taylor, Shikha Sharma,
  Vadim Grinshpun, Viktor Szakats, Zhang Xiuhua,
  (33 contributors)

References to bug reports and discussions on issues:

 [1] = https://curl.se/bug/?i=7133
 [2] = https://curl.se/bug/?i=7167
 [3] = https://curl.se/bug/?i=7152
 [4] = https://curl.se/bug/?i=7154
 [5] = https://curl.se/bug/?i=7159
 [6] = https://curl.se/bug/?i=7162
 [7] = https://curl.se/bug/?i=7165
 [8] = https://curl.se/bug/?i=7164
 [9] = https://curl.se/bug/?i=7095
 [10] = https://curl.se/bug/?i=7157
 [11] = https://curl.se/bug/?i=7157
 [12] = https://curl.se/bug/?i=7158
 [13] = https://curl.se/bug/?i=7153
 [14] = https://curl.se/bug/?i=7148
 [15] = https://curl.se/bug/?i=7151
 [16] = https://curl.se/bug/?i=7039
 [17] = https://curl.se/bug/?i=7146
 [18] = https://curl.se/mail/lib-2021-06/0001.html
 [19] = https://curl.se/bug/?i=7143
 [20] = https://curl.se/mail/lib-2021-06/0003.html
 [21] = https://curl.se/bug/?i=7141
 [22] = https://curl.se/bug/?i=7141
 [23] = https://curl.se/bug/?i=7139
 [24] = https://curl.se/bug/?i=7138
 [25] = https://curl.se/bug/?i=7172
 [26] = https://curl.se/bug/?i=7122
 [27] = https://curl.se/bug/?i=7134
 [28] = https://curl.se/bug/?i=7130
 [29] = https://curl.se/bug/?i=7204
 [30] = https://curl.se/bug/?i=7181
 [31] = https://curl.se/bug/?i=7183
 [32] = https://curl.se/bug/?i=7204
 [33] = https://curl.se/bug/?i=7184
 [34] = https://curl.se/bug/?i=7185
 [35] = https://curl.se/bug/?i=7170
 [36] = https://curl.se/bug/?i=7205
 [37] = https://curl.se/bug/?i=7144
 [38] = https://curl.se/bug/?i=7177
 [39] = https://curl.se/bug/?i=7179
 [40] = https://curl.se/bug/?i=7175
 [41] = https://curl.se/bug/?i=7169
 [42] = https://curl.se/bug/?i=7173
 [43] = https://curl.se/bug/?i=7166
 [44] = https://curl.se/bug/?i=7028
 [45] = https://curl.se/bug/?i=7028
 [46] = https://curl.se/bug/?i=7205
 [47] = https://curl.se/bug/?i=7205
 [48] = https://curl.se/bug/?i=7205
 [49] = https://curl.se/bug/?i=7205
 [50] = https://curl.se/bug/?i=7205
 [51] = https://curl.se/bug/?i=7205
 [52] = https://curl.se/bug/?i=7206
 [53] = https://curl.se/bug/?i=7203
 [54] = https://curl.se/bug/?i=7176
 [55] = https://curl.se/mail/lib-2021-06/0008.html
 [56] = https://curl.se/bug/?i=7222
 [57] = https://curl.se/bug/?i=7218
 [59] = https://curl.se/bug/?i=7236
 [60] = https://curl.se/mail/lib-2021-06/0018.html
 [61] = https://curl.se/bug/?i=7240
 [62] = https://curl.se/bug/?i=7227
 [66] = https://curl.se/bug/?i=7209
 [67] = https://curl.se/bug/?i=7209
 [68] = https://curl.se/bug/?i=7209
 [69] = https://curl.se/bug/?i=7209
 [70] = https://curl.se/bug/?i=7209
 [71] = https://curl.se/bug/?i=7209
 [72] = https://curl.se/bug/?i=7209
 [73] = https://curl.se/bug/?i=7209
 [74] = https://curl.se/bug/?i=7209
 [75] = https://curl.se/bug/?i=493
 [76] = https://curl.se/bug/?i=7209
 [77] = https://curl.se/bug/?i=7209
 [78] = https://curl.se/bug/?i=7209
 [79] = https://curl.se/bug/?i=7209
 [80] = https://curl.se/bug/?i=7219
 [81] = https://curl.se/bug/?i=7211
 [82] = https://curl.se/bug/?i=7212
 [83] = https://curl.se/bug/?i=6896
 [84] = https://curl.se/bug/?i=7208