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