Changes in libsoup from 2.26.1 to 2.26.2:
* SOUP_SESSION_TIMEOUT now works properly with
SoupSessionAsync [#574414] and SSL [#578928]. Added
tests/timeout-test to test this.
* SoupDate fixes:
* soup_date_to_string() now handles SOUP_DATE_RFC2822
[#579055, Enrico Tröger]
* soup_date_new_from_string() now accepts 24:00 as a
time in ISO8601 timestamps
* soup_date_to_string() now coerces the date to UTC
for HTTP and cookie dates, and outputs the UTC
correct offset for the other date types.
* Added regression tests to tests/date
* soup_headers_parse() now completely ignores
syntactically-incorrect headers, rather than passing them to
soup_message_headers_append() and causing a g_warning.
soup_message_headers_append() now also rejects 0-length
header names. Updated tests/header-parsing to check this.
[#579318]
* Fix a crash when cancelling a message from a "restarted"
handler, and updated a regression test to notice the
underlying cause. [#580193]
* TLS1.1 support in gnutls has been temporarily disabled, to
work around what appears to be a bug in gnutls's support for
backward-compatibility with older servers. [#581342]
* DNS resolution should be slightly faster, as we no longer
set a flag that resulted in additional unnecessary DNS
requests.
* The --disable-more-warnings flag to configure is no longer
required when you are using gcc < 3.4. [#578851]
* Fixed a bug in the new body parsing code [qv #571283 below]
that caused libsoup to mistakenly reject some responses with
SOUP_STATUS_MALFORMED, "Message Corrupt". [#582002]
* soup_form_request_for_data() now allows you to use "PUT" as
the method, because apparently some web service authors
think that's how you spell "POST", or something. [#581860]
This changes the buildlink3.mk files to use an include guard for the
recursive include. The use of BUILDLINK_DEPTH, BUILDLINK_DEPENDS,
BUILDLINK_PACKAGES and BUILDLINK_ORDER is handled by a single new
variable BUILDLINK_TREE. Each buildlink3.mk file adds a pair of
enter/exit marker, which can be used to reconstruct the tree and
to determine first level includes. Avoiding := for large variables
(BUILDLINK_ORDER) speeds up parse time as += has linear complexity.
The include guard reduces system time by avoiding reading files over and
over again. For complex packages this reduces both %user and %sys time to
half of the former time.
Changes in libsoup from 2.25.91 to 2.26.0:
* Temporarily disable libproxy support to work around a bug in
its gnome plugin that causes gvfsd-http (and probably
eventually other apps) to crash. [#571527]. For now,
SoupProxyResolverGNOME uses only GConf. To be fixed in
2.26.1
* Fixed a bug that showed up in WebKit, where if many messages
were queued all at once to a server that doesn't support
persistent connections, some of the requests will get lost.
#574365, reported by Xan Lopez.
* Fixed SoupServer to support using SOUP_ENCODING_EOF, so you
can stream responses of unknown length to HTTP/1.0 clients.
[#572153]. Added a regression test for this, and for chunked
and Content-Length-based streaming.
* Fixed several bugs that prevented SoupCookieJarSqlite from
working. [#572409, patch from Xan Lopez]
* Added G_{BEGIN,END}_DECLS guards to public headers that were
missing it. (Xan Lopez)
* Misc gtk-doc improvements
Changes in libsoup from 2.25.4 to 2.25.5:
* Fixed a crash in SoupProxyResolverGNOME when the proxy
requires authentication. (This does not make proxy
authentication *work* yet, it just makes it not crash.)
* Updated documentation
Changes in libsoup from 2.25.4 to 2.25.5:
* SoupProxyResolverGConf (which was incomplete) is gone, and
libsoup-gnome now requires libproxy, which is now officially
an external dependency of GNOME.
* Fixed a bug in SoupCookieJar that was making it send
"Cookie: (null)" when it had no cookies for a site, which
confused some web servers (WebKit bug 23240).
* Fixed a bug with using SOUP_MEMORY_TEMPORARY buffers and
soup_message_body_set_accumulate(FALSE). (Part of WebKit bug
18343, noticed by Gustavo Noronha Silva.)
* Fixed the build with non-gcc compilers
Changes in libsoup from 2.25.3 to 2.25.4:
* Added soup_session_get_feature() and
soup_session_get_features(), to query the features currently
available in a session (which is needed by the patch in
https://bugs.webkit.org/show_bug.cgi?id=22624)
Changes in libsoup from 2.25.2 to 2.25.3:
* Fixed a crash when using both cookies and a proxy. [#562191,
Mark Lee]
* Fixed soup_form_decode() to correctly handle forms with
URI-encoded parameter names [#563302, Evan Nemerson] and
added a regression test.
* Fixed a crash in SoupProxyResolverGConf. [#563145]
Changes in libsoup from 2.25.1 to 2.25.2:
* Fixed client behavior when presented with multiple auth
types to choose the *strongest* auth type (eg, Digest)
rather than the *weakest* one [#562339, Pontus Oldberg].
Added a regression test for this.
* Moved libsoup-gnome headers to a different directory to make
it easier to split libsoup and libsoup-gnome into separate
packages, and to ensure that things that only want to be
looking at plain libsoup headers (like gir-repository) don't
accidentally see the libsoup-gnome ones.
* Some minor doc fixes
* Fixed libsoup-gnome linking with --as-needed. [#559342]
Changes in libsoup from 2.24.1 to 2.25.1:
libsoup 2.25.1 introduces a new library, libsoup-gnome, which
will be used for features which are important to GNOME apps,
but which require GNOME-specific libraries that non-GNOME apps
may not want to add dependencies on.
In 2.25.1, libsoup-gnome contains:
* SOUP_TYPE_PROXY_RESOLVER_GNOME, a SoupSessionFeature
type that can be added to a SoupSession to provide
automatic proxy handling via the GConf proxy keys. (See
below) The default implementation uses libproxy, which
also handles WPAD, PAC, etc, but if libproxy is not
available it will use GConf directly, supporting only
the basic HTTP proxy functionality.
* SoupCookieJarSqlite, a SoupSessionFeature that handles
cookies and stores them in a Firefox 3-compatible sqlite
file. (This is not actually a "GNOME-specific" feature,
but I didn't want to make libsoup itself depend on
sqlite, and I didn't want to make the dependency
optional. This might change before 2.26.)
* SOUP_TYPE_GNOME_FEATURES_2_26: a SoupSessionFeature type
that can be added to a SoupSession to add all
GNOME-integration features that are available for 2.26;
as of 2.25.1, this is just the GNOME proxy resolver, but
by 2.26.0 it may also include gnome-keyring support and
possibly other features.
Applications/libraries that are currently doing GConf proxy
lookup by hand can be updated as follows:
* Remove all of the existing code that listens to the
GConf keys and sets SOUP_SESSION_PROXY_URI
* Change the configure check to require
"libsoup-gnome-2.4 >= 2.25.1" instead of "libsoup-2.4"
* #include <libsoup/soup-gnome.h>
* After creating your SoupSession, do:
soup_session_add_feature_by_type (session, SOUP_TYPE_PROXY_RESOLVER_GNOME);
(Or alternatively, use SOUP_SESSION_ADD_FEATURE_BY_TYPE
with soup_session_async_new_with_options() or
soup_session_sync_new_with_options().)
Other new features and bug fixes in 2.25.1 include:
* SoupCookieJarText, like SoupCookieJarSqlite, but using the
old-style cookies.txt format, and in the base libsoup rather
than libsoup-gnome.
* Various bugfixes to SoupCookie and SoupCookieJar to fix the
problems with cookies not working on certain sites.
* The new SoupMultipart type provides support for multipart
MIME bodies, and soup-form now includes several methods for
generating and parsing multipart form data and file uploads.
* SoupMessageHeaders now has methods for easy handling of the
Content-Type, Content-Disposition, Range, and Content-Range
headers. The Content-Disposition handling recognizes
RFC2231-encoded UTF-8 filenames.
* SoupServer now automatically handles partial GET requests;
if your server returns SOUP_STATUS_OK in response to a
partial GET, libsoup will automatically convert it to a
SOUP_STATUS_PARTIAL_CONTENT response with only the requested
portions.
Thanks to Xan Lopez and Diego Escalante Urrelo for their work
on SoupCookie, SoupCookieJar, SoupCookieJarText, and
SoupCookieJarSqlite.
Changes in libsoup from 2.24.2.1 to 2.24.3:
* Fixed SoupCookieJar to not send "Cookie: (null)", which is
(a) wrong, and (b) confusing to some servers.
[bugs.webkit.org #23240]
* Fixed soup_form_decode() to correctly handle forms with
URI-encoded parameter names. [#563302, Evan Nemerson]
* Fixed SoupSession to use Digest auth when both Digest and
Basic are available. (It was mistakenly comparing the
strengths backwards before, choosing the weakest-available
auth instead of the strongest.) [#562339, Pontus Oldberg]
* Fixed a bug in the Client How-To docs. [#562411, Andreas
Bruse]
Changes in libsoup from 2.24.1 to 2.24.2.1:
* Fixed two bugs and a memory leak in cookie handling
* Added G_BEGIN_DECLS/G_END_DECLS to those public headers that
were missing them
* Minor updates to gtk-docs
* (2.24.2.1 fixes a crash in the cookie code introduced in
2.24.2. [#562191])
Changes in libsoup from 2.24.0.1 to 2.24.1:
* Fixed a crash when unreffing the session from a
soup_session_queue_message() callback [#533473], and added
regression test. In particular, this fixes a crash in
seahorse when trying to connect to a non-responsive
keyserver.
* Fixed an infinite loop when giving a bad password to a site
that uses non-standard capitalization in the
WWW-Authenticate header (eg, gmail.com) [#536285].
* Fixed a leak in SoupSessionAsync when using a non-default
GMainContext. [addendum to #498509, Arnout Vandecappelle]
Added additional code to the regression tests to make sure
sessions and servers do not get leaked.
* Fixed a leak in the XML-RPC code
* Compile fixes for "gcc -pedantic" [#553976, Sander Dijkhuis]
and -DG_DISABLE_DEPRECATED / -DG_DISABLE_SINGLE_INCLUDES
[#557072, Cosimo Cecchi]
* Patched xmlrpc-test to accept the incorrect response to
test_echo() that php-xmlrpc gives when it's built against
libxml2 >= 2.7.1 (qv http://bugs.php.net/45996), so that
I can "make distcheck"...
* Updated generated documentation