summaryrefslogtreecommitdiff
path: root/NEWS
blob: da1b8f075de42c7fd49847ec9074212454185b34 (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
Changes in libsoup from 2.2.5 to 2.2.6:

	* Fixed a crash when canceling a message (from Tambet Ingo)

	* Fixed a bug where a connection could be leaked forever in
          some circumstances if a request got a 30x, 401, or 407
          response, eventually causing a hang when the session hit its
          maximum connection limit. (Dan/Tambet)

	* Fixed a memory leak. (Tambet)

	* Fixed a bug that would sometimes show up when connecting to
	  a server on localhost [#312540]

	* Added some API to SoupServer and SoupSocket to help fix a
          long-standing rcd bug.

Changes from 2.2.4 to 2.2.5:

	* Win32 support (from Tor Lillqvist)

	* Up-to-date API documentation pretty much everywhere

	* Basic XMLRPC support (from Mariano Suarez-Alvarez, Fernando
	  Herrera, and Jeff Bailey)

	* New HTTP timestamp-manipulation methods soup_date_parse,
	  soup_date_generate, and soup_date_iso8601_parse.

	* SoupSession now handles relative URLs in the Location header
          (in violation of RFC 2616, but in line with how some servers
          behave.) [270688]

Changes from 2.2.3 to 2.2.4:

	* Fixed a problem with NTLM authentication against
	  multi-domain servers. [306877]

	* Fixed DNS lookups on Solaris. [254551, 268389]

Changes from 2.2.2 to 2.2.3:

	* Now compiles against gnutls 1.2.0 [257811]

	* Fixed a bug that could result in 100% CPU usage if an SSL
	  server closed the connection uncleanly. [273352]

Changes from 2.2.1 to 2.2.2:

	* The SSL validation fix from 2.2.1 [264414] is now completely
          fixed. (Part of the fix didn't actually make it into 2.2.1)

	* HTTPS certificate validation now works when using an HTTP
          proxy. [268583]

	* HTTP proxy code deals better with proxies that try to make
          the user do HTML-form-based authentication. [268531]

	* 64-bit fixes for NTLM auth code. [270323, from Michael
          Zucchi]

Changes from 2.2.0 to 2.2.1:

	* Updated for a libgcrypt API change between 1.1.9x and 1.2.x
          that caused a crash at runtime if you compiled against
          1.2.x. [266342]

	* SSL certificate validation failure should now always result
          in a status of SOUP_STATUS_SSL_FAILED, rather than getting
          turned into SOUP_STATUS_IO_ERROR. [264414]


Changes in libsoup from the 2.0 series (1.99.x versions) to 2.2:

	* Most of the libsoup datatypes are now GObjects. (SoupUri
	  is currently an exception to this.)

		* SoupMessage now emits signals at various stages of
	          processing. (Eg, "wrote_body", "got_headers".) (You
	          can also still use soup_message_add_*handler().)

	* SoupContexts are gone; soup_message_new() now takes a URI
	  string.

	* All formerly global state is now maintained by the
          SoupSession object. (This includes the connection pool,
          proxy server, cached authentication information, SSL
          certificates, etc.)

		* You can create a SoupSessionAsync (for 2.0-like
		  behavior) or SoupSessionSync (for blocking,
		  synchronous usage).

		* You can add SoupMessageFilter objects to a session
                  to have certain processing automatically performed
                  on every message sent via that session. (Eg, setting
                  up handlers.)

		* NTLM authentication is no longer supported by
	          default. You must enable it by setting the
		  SOUP_SESSION_USE_NTLM flag on the session.

		* The preferred method of handling authentication is
	          now via the "authenticate" and "reauthenticate"
	          signals on SoupSession. (The old style, of encoding
	          the user and password information into the url is
	          also still supported.)

	* The SOUP_ERROR_* values are now SOUP_STATUS_* (so that we
          don't have "SOUP_ERROR_OK" and the like).

		* SOUP_MESSAGE_IS_ERROR() is gone, since some cases
		  want to include 3xx responses and some don't.

		* SOUP_ERROR_CANT_AUTHENTICATE and
                  SOUP_ERROR_CANT_AUTHENTICATE_PROXY are now gone,
                  since they didn't carry any information that
                  SOUP_STATUS_UNAUTHORIZED and
                  SOUP_STATUS_PROXY_UNAUTHORIZED don't.

		* DNS errors now show up as the new status code
		  SOUP_STATUS_CANT_RESOLVE rather than being mixed in
		  with SOUP_ERROR_CANT_CONNECT.

	* Minimal SOAP support has been added back, via
          SoupSoapMessage/SoupSoapResponse

	* The HTTP I/O state machine was completely rewritten, fixing
	  numerous crashes, leaks, and protocol errors.

	* SoupUri now conforms to RFC 2396. Mostly.

	* Various test programs have been added under tests/

	* Removed:

		* Support for OpenSSL (which was horribly buggy) and
		  Mozilla NSS (which was never finished). We only
		  support GNUTLS for SSL now.

		* SOCKS support

		* CGI support in SoupServer