4956407beed8df4e6d874120b24f952516915323
[platform/upstream/libsoup.git] / NEWS
1 Changes in libsoup from 2.2.99 to 2.2.100:
2
3         * Fixed soup_headers_parse_status_line() so WebDAV response
4           parsing will work again. [406997]
5
6         * Fixed a bug in the header-parsing regression test that
7           caused the test to fail sometimes, even though the actual
8           header-parsing code was fine.
9
10 Changes in libsoup from 2.2.98 to 2.2.99:
11
12         * Fixed header parsing, including a crash in SoupServer with
13           certain malformed requests [391970].
14
15         * Fixed redirection to other hosts with SoupSessionAsync.
16           [382251]
17
18         * Fixed a small memory leak pointed out by Chris Austin.
19
20 Changes in libsoup from 2.2.97 to 2.2.98:
21
22         * The XML-RPC code now correctly interprets <value>foo</value>
23           as meaning the same thing as
24           <value><string>foo</string></value>. [364490] Pointed out by
25           Todd Kulesza.
26
27         * Memory leak fixes from Andrew W. Nosenko.
28
29         * A few symbols that should have been static before now are.
30           [376387] Patch from Matthias Clasen.
31
32 Changes in libsoup from 2.2.96 to 2.2.97:
33
34         * Fixed SOAP and XML-RPC code to handle whitespace and
35           comments in the XML better. (Based on a patch from Andrew W.
36           Nosenko.)
37
38         * Fixed lots of typecasting/constness warnings in the code
39           (mostly via a patch from Andrew W. Nosenko)
40
41         * Fixed build on Cygwin [321827]
42
43         * Fixed libsoup-2.2.pc fields [343340] and make it get
44           uninstalled correctly [356809]. (Mikhail Zabaluev and
45           Matthew Barnes)
46
47         * Fixed some small leaks in SoupServer pointed out by Paolo
48           Borelli. [351500]
49
50 Changes in libsoup from 2.2.95.1 to 2.2.96:
51
52         * SoupServer now works even if you don't explicitly set an
53           encoding for the response. (In particular, the automatic 404
54           if you request a path with no handlers now works. Problem
55           pointed out by Dennis Jacobfeuerborn.)
56
57         * WWW-Authenticate and Proxy-Authenticate responses with no
58           realm parameter are now ignored, as per RFC 2617, fixing a
59           crash pointed out by Nate Nielsen.
60
61         * Added soup_xmlrpc_message_from_string(), from Fernando
62           Herrera [348532].
63
64         * simple-httpd and "get" now support HEAD
65
66 Changes in libsoup from 2.2.94 to 2.2.95.1:
67
68         * Even more fixes to XML-RPC, found by the new XML-RPC
69           regression test. This includes some API changes that I don't
70           feel guilty about, because the code totally didn't work at
71           all before.
72
73         * Fixed a bug in soup_mktime_utc()
74
75         * (2.2.95 was identical to 2.2.95.1. The only difference is
76           that the shared library version was belatedly bumped from
77           8.2.0 to 8.3.0 to reflect the API "additions")
78
79 Changes in libsoup from 2.2.93 to 2.2.94:
80
81         * Various fixes to the XML-RPC code (which apparently had not
82           actually ever worked before) from Brent Smith. [343973,
83           344222, 344458]
84
85         * Added client and server API tutorials to the docs
86
87         * auth-test now uses a local Apache 2.2 install, if possible,
88           rather than depending on files that used to be on an old
89           Ximian web server but haven't been anywhere for a long time.
90           [311825]
91
92 Changes in libsoup from 2.2.92 to 2.2.93:
93
94         * Fixed outgoing data corruption caused when SoupServer
95           started writing out a response a second time after already
96           having started once. [334469]. Also fixed 342640 and another
97           bug caused by the workaround for 334469 in 2.2.92. Based on
98           patches and analysis from William Jon McCann and Armin
99           Bauer.
100
101         * Fixed a deadlock when changing a session's proxy URI.
102           [309867 / bnc 174255, based on a patch by Veerapuram
103           Varadhan].
104
105         * Fixed https-via-proxies in the synchronous case. [bnc 174255]
106
107         * Fixed a crash in evolution-exchange [342545, fix based on an
108           analysis by Wang Xin].
109
110         * Fixed simple-proxy to not crash at startup. Oops. (Alex
111           Larsson)
112
113 Changes in libsoup from 2.2.91 to 2.2.92:
114
115         * Fixed server-side digest auth to return a valid "algorithm"
116           value and client-side to not crash if it sees an invalid one
117           [328615].
118
119         * Fixed the Request-Line parsing code to not hardcode a
120           maximum URI length (to allow very long DAAP requests from
121           iTunes in Rhythmbox). [335040]
122
123         * Fixed some warnings (signed/unsigned mismatch).
124
125 Changes in libsoup from 2.2.7 to 2.2.91:
126
127         * (The large version number bump is because there was an
128           internal 2.2.90 release for SUSE 10.1 alphas, which was
129           supposed to be intermediate between 2.2.7 and 2.4.0. But
130           2.4.0 didn't end up happening, and I don't want to regress
131           the version number at this point.)
132
133         * SoupSession, SoupServer, SoupConnection, SoupSocket, and
134           SoupAddress now have an "async-context" property that allows
135           you to use the async API in a non-default GMainContext.
136           [Based on patches from Armin Bauer and Jürg Billeter.]
137
138         * SoupSession, SoupConnection, and SoupSocket now have a
139           "timeout" property to stop synchronous sockets from hanging
140           forever if the remote end is unresponsive (from Varadhan).
141
142         * Fixed some bugs in soup_date_iso8601_parse(). [324671, from
143           Emmanuele Bassi]
144
145         * More Windows build fixes from Tor.
146
147 Changes in libsoup from 2.2.6.1 to 2.2.7:
148
149         * Fixed a crash when using NTLM connections [316313, probably
150           also 318252]. (Also 321208, which was a bug introduced in
151           the original fix for 316313.)
152
153         * Fixed a bug that could cause soup to suck up all available
154           CPU when a connection to a SoupServer was dropped by the
155           other side [319305, patch from Jonathan Matthew]
156
157         * Fixed the creation of struct elements in XMLRPC messages
158           [321362, patch from Sebastian Bauer]
159
160         * Plugged a small memory leak in SoupSocket (from Wang Xin).
161
162         * Fixed two compile problems, a gccism [320349, patch from
163           Roland Illig], and a strict-aliasing warning from gcc 4.1.
164
165 Changes in libsoup from 2.2.6 to 2.2.6.1:
166
167         * Fixed a crash when using SoupSoapMessage
168
169 Changes from 2.2.5 to 2.2.6:
170
171         * Fixed a crash when canceling a message (from Tambet Ingo)
172
173         * Fixed a bug where a connection could be leaked forever in
174           some circumstances if a request got a 30x, 401, or 407
175           response, eventually causing a hang when the session hit its
176           maximum connection limit. (Dan/Tambet)
177
178         * Fixed a memory leak. (Tambet)
179
180         * Fixed a bug that would sometimes show up when connecting to
181           a server on localhost [#312540]
182
183         * Added some API to SoupServer and SoupSocket to help fix a
184           long-standing rcd bug.
185
186 Changes from 2.2.4 to 2.2.5:
187
188         * Win32 support (from Tor Lillqvist)
189
190         * Up-to-date API documentation pretty much everywhere
191
192         * Basic XMLRPC support (from Mariano Suarez-Alvarez, Fernando
193           Herrera, and Jeff Bailey)
194
195         * New HTTP timestamp-manipulation methods soup_date_parse,
196           soup_date_generate, and soup_date_iso8601_parse.
197
198         * SoupSession now handles relative URLs in the Location header
199           (in violation of RFC 2616, but in line with how some servers
200           behave.) [270688]
201
202 Changes from 2.2.3 to 2.2.4:
203
204         * Fixed a problem with NTLM authentication against
205           multi-domain servers. [306877]
206
207         * Fixed DNS lookups on Solaris. [254551, 268389]
208
209 Changes from 2.2.2 to 2.2.3:
210
211         * Now compiles against gnutls 1.2.0 [257811]
212
213         * Fixed a bug that could result in 100% CPU usage if an SSL
214           server closed the connection uncleanly. [273352]
215
216 Changes from 2.2.1 to 2.2.2:
217
218         * The SSL validation fix from 2.2.1 [264414] is now completely
219           fixed. (Part of the fix didn't actually make it into 2.2.1)
220
221         * HTTPS certificate validation now works when using an HTTP
222           proxy. [268583]
223
224         * HTTP proxy code deals better with proxies that try to make
225           the user do HTML-form-based authentication. [268531]
226
227         * 64-bit fixes for NTLM auth code. [270323, from Michael
228           Zucchi]
229
230 Changes from 2.2.0 to 2.2.1:
231
232         * Updated for a libgcrypt API change between 1.1.9x and 1.2.x
233           that caused a crash at runtime if you compiled against
234           1.2.x. [266342]
235
236         * SSL certificate validation failure should now always result
237           in a status of SOUP_STATUS_SSL_FAILED, rather than getting
238           turned into SOUP_STATUS_IO_ERROR. [264414]
239
240
241 Changes in libsoup from the 2.0 series (1.99.x versions) to 2.2:
242
243         * Most of the libsoup datatypes are now GObjects. (SoupUri
244           is currently an exception to this.)
245
246                 * SoupMessage now emits signals at various stages of
247                   processing. (Eg, "wrote_body", "got_headers".) (You
248                   can also still use soup_message_add_*handler().)
249
250         * SoupContexts are gone; soup_message_new() now takes a URI
251           string.
252
253         * All formerly global state is now maintained by the
254           SoupSession object. (This includes the connection pool,
255           proxy server, cached authentication information, SSL
256           certificates, etc.)
257
258                 * You can create a SoupSessionAsync (for 2.0-like
259                   behavior) or SoupSessionSync (for blocking,
260                   synchronous usage).
261
262                 * You can add SoupMessageFilter objects to a session
263                   to have certain processing automatically performed
264                   on every message sent via that session. (Eg, setting
265                   up handlers.)
266
267                 * NTLM authentication is no longer supported by
268                   default. You must enable it by setting the
269                   SOUP_SESSION_USE_NTLM flag on the session.
270
271                 * The preferred method of handling authentication is
272                   now via the "authenticate" and "reauthenticate"
273                   signals on SoupSession. (The old style, of encoding
274                   the user and password information into the url is
275                   also still supported.)
276
277         * The SOUP_ERROR_* values are now SOUP_STATUS_* (so that we
278           don't have "SOUP_ERROR_OK" and the like).
279
280                 * SOUP_MESSAGE_IS_ERROR() is gone, since some cases
281                   want to include 3xx responses and some don't.
282
283                 * SOUP_ERROR_CANT_AUTHENTICATE and
284                   SOUP_ERROR_CANT_AUTHENTICATE_PROXY are now gone,
285                   since they didn't carry any information that
286                   SOUP_STATUS_UNAUTHORIZED and
287                   SOUP_STATUS_PROXY_UNAUTHORIZED don't.
288
289                 * DNS errors now show up as the new status code
290                   SOUP_STATUS_CANT_RESOLVE rather than being mixed in
291                   with SOUP_ERROR_CANT_CONNECT.
292
293         * Minimal SOAP support has been added back, via
294           SoupSoapMessage/SoupSoapResponse
295
296         * The HTTP I/O state machine was completely rewritten, fixing
297           numerous crashes, leaks, and protocol errors.
298
299         * SoupUri now conforms to RFC 2396. Mostly.
300
301         * Various test programs have been added under tests/
302
303         * Removed:
304
305                 * Support for OpenSSL (which was horribly buggy) and
306                   Mozilla NSS (which was never finished). We only
307                   support GNUTLS for SSL now.
308
309                 * SOCKS support
310
311                 * CGI support in SoupServer