LibSoup

Software Screenshot:
LibSoup
Software Details:
Version: 2.62.3 / 2.64.0 Beta 2 updated
Upload Date: 16 Aug 18
Distribution Type: Freeware
Downloads: 34

Rating: nan/5 (Total Votes: 0)

LibSoup is a completely free, easy-to-use and open source HTTP (Hypertext Transfer Protocol) server and client library used in a wide variety of applications designed for the GNOME graphical desktop environment, running under Linux kernel-based operating systems.

Backed by GLib and GObjects projects

The LibSoup project uses the powerful GLib library as a main loop, and the GObjects software to integrate with most GNOME applications. It supports proxy, including authentication and SSL tunneling.

Supports SSL through GnuTLS

The library automatically caches connections, contains asynchronous (GMainLoop and callback-based) and synchronous APIs (Application Programming Interfaces), and supports SSL (Secure Sockets Layer) through GnuTLS.

Offers proxy support and numerous other attractive features

Among other interesting features, we can mention client support for Digest, Basic authentication, and NTLM, client and server support for XML-RPC, proxy support, including authentication and SSL tunneling, as well as server support for Basic and Digest authentication.

Getting started with LibSoup

To install the LibSoup library on your GNU/Linux operating system, you will have to download the latest release of the software from Softoware, save it on a location of your choice, and uncompress it on the current directory.

Open a Terminal app, navigate to the location where you’ve extracted the archive file (e.g. cd /home/softoware/libsoup-2.49.1), run the ‘./configure && make’ command to configure and compile the program, then run the ‘./configure && make’ command to configure the program.

After a successful compilation operation, run either of the ‘make install’ or ‘sudo make install’ commands, depending if you’re root or a user with privileges, to install the LibSoup library system wide and start using it in your projects.

What is new in this release:

  • Simplify soup_hosts_matches_host() [Claudio Saavedra]
  • Add new tests for trailing dots in domain names [Claudio Saavedra]
  • Updated Turkish translation

What is new in version 2.63.2:

  • Many fixes to the meson build system support [#795324, #782410, Tomas Popela, Jan Alexander Steffens]
  • Fixes to xmlrpc-server test with PHP >= 7.2 and related [#795111, #782410 Jan Alexander Steffens]
  • Fix critical warning in SoupSocket [Carlos Garcia Campos]
  • Updated translations: Romanian, Friulian, Slovenian, Czech, Spanish, Indonesian, Chinese (China).

What is new in version :

  • tld-parser: use Python 3 [#785735, Ross Burton]
  • Fix heap-buffer-overflow in soup_ntlm_parse_challenge() [#788037, Milan Crha]
  • Fix possibly uninitialized value in ssl-test. [Tomas Popela]
  • SoupCache: fix the timestamp for responses [#791031, Claudio Saavedra]

What is new in version 2.60.2:

  • Fix documentation typos [#788920, Nirbheek Chauhan]
  • format-zero-length warning triggered in soup-logger.c [#789096, Tomas Popela]
  • Warnings while generating inrospection files [#789099, Tomas Popela]
  • Visual Studio builds: Enhance security of x64 binaries [Chun-wei Fan]
  • Updated translation: Nepali.

What is new in version 2.60.0:

  • New/updated translations: Catalan, Danish, Dutch, Nepali.

What is new in version 2.58.1:

  • Reverts a change to SoupSession to close all open connections when the :proxy-resolver property is changed [#777326; this change was made in 2.58.0 but accidentally left out of the NEWS for that release]; although that behavior made :proxy-resolver more consistent with :proxy-uri, it ended up breaking Evolution EWS. [#781590]
  • Fixed undefined behavior in tests/header-parsing that could make the test spuriously fail. [#777258]
  • Updates to the configure tests for Apache for use in tests/:
  • Dropped support for Apache 2.2
  • Changed PHP support from PHP 5 to PHP 7
  • mod_unixd can now be either built-in or dynamically loaded [#776478]
  • Updated translations:
  • Turkish

What is new in version 2.57.1:

  • Changes in libsoup from 2.56.0 to 2.57.1:
  • Added SoupWebsocketConnection:keepalive-interval, to make a connection send regular pings. [#773253, Ignacio Casal Quinteiro]
  • Added soup_auth_manager_clear_cached_credentials() and SOUP_MESSAGE_DO_NOT_USE_AUTH_CACHE, to allow greater control over the use of cached HTTP auth credentials. [#774031, #774033, Carlos Garcia Campos]
  • Fixed the use of SoupSession:proxy-uri values containing passwords. [#772932, Jonathan Lebon]
  • Various minor WebSocket fixes [Ignacio Casal Quinteiro]:
  • Avoid sending data after we start closing the connection [#774957]
  • Do not log a critical if the peer sends an invalid close status code
  • Log a debug message when a "pong" is received
  • Fixed introspection of soup_message_headers_get_content_range() [Jasper St. Pierre]
  • Replaced Vala [Deprecated] annotations with [Version] to avoid build warnings [#773177, Evan Nemerson]
  • MSVC build improvements (Chun-wei Fan)
  • Updated error/message strings to use Unicode punctuation. [#772217, Piotr Drag]
  • Updated translations:
  • Czech, Friulian, German, Hebrew, Hungarian,
  • Norwegian bokmal, Polish, Swedish

What is new in version 2.56.0:

  • Added SoupWebsocketConnection:max-incoming-payload-size property, to override the default maximum incoming payload size. [#770022, Ignacio Casal Quinteiro]
  • Added soup-version.h symbols (in particular soup_check_version()) to introspection. [#771439, Rico Tzschichholz]
  • Updated the copy of the public suffix list used by SoupTLD [#769650, Michael Catanzaro]
  • Updated translations:
  • British English, Greek, Polish

What is new in version 2.54.1 / 2.56.0 Beta:

  • Removed support for SSLv3 fallback; sites that reject TLS 1.x handshakes will now just fail with an error. (Firefox and Chrome have both already switched to this behavior.) [#765940, Dan Winship]
  • Fixed the parsing of < double >s in the new GVariant-based XMLRPC code. [#767707, Dan Winship]
  • Fixed soup_server_set_ssl_cert_file(), which was added in 2.48 but didn't actually work... [patch on libsoup-list from Sean DuBois]
  • Added GObject properties to SoupLogger to make it bindings-friendly. [#768053, Jonh Wendell]
  • Fixed build error on FreeBSD [#765376, Ting-Wei Lan]
  • Fixed build with certain new versions of glibc that define "EOF" as a macro. [#768731, Philip Withnall]
  • Updated m4/ax_code_coverage.m4 with support for lcov 1.12 [Philip Withnall]
  • Updated po files for future gettext versions [Piotr Drag]
  • New/updated translations:
  • Occitan, Scottish Gaelic

What is new in version 2.53.2:

  • Fixed up symbol visibility handling for mingw by copying GLib's system [Ignacio Casal Quinteiro, #757146]
  • Finally marked the old SoupSessionAsync and SoupSessionSync methods as deprecated [Ignacio Casal Quinteiro, Dan Winship, #757146]
  • Added libsoup-2.4.deps for valac [Rico Tzschichholz]
  • Make it possible to build from git without gtk-doc being installed [Ignacio Casal Quinteiro]
  • Updated translations: Norwegian bokmal, Occitan

What is new in version 2.51.3:

  • Fixed "make check" in non-English locales [rh #1224989, #749397]
  • Fixed some compiler warnings [#748514, Philip Withnall]
  • New/Updated translations:
  • Aragonese, Catalan, Occitan, Russian

What is new in version 2.50.0:

  • Updated translations: Basque, Chinese (Taiwan), Danish, Indonesian, Norwegian bokmal

What is new in version 2.49.1:

  • Fixed a bug in the SoupMessage:event signal that broke evolution's ability to connect to https hosts with "bad" certificates. [#739951, Dan Winship]
  • Fixed a case where the async codepaths could potentially block on a synchronous write [#727138, Dan Winship]
  • Fixed the symbol soup_server_set_ssl_cert_file() to get exported, and added soup_server_get_uris() to the documentation. [Tristan Van Berkom]
  • Improved a bunch of introspection annotations [#729987, Evan Nemerson]
  • Clarified some documentation. [Tristan Van Berkom, Dan Winship]
  • Fixed Windows build, twice [#738003, Kouhei Sutou, and #738551, Kalev Lember].
  • Updated translations: Bengali (Indian), Chinese (Traditional), Italian, Latvian, Serbian, Telugu, Ukranian

What is new in version 2.48.1:

  • Fixed a bug in the SoupMessage:event signal that broke evolution's ability to connect to https hosts with "bad" certificates. [#739951, Dan Winship]
  • Fixed a case where the async codepaths could potentially block on a synchronous write [#727138, Dan Winship]
  • Fixed the symbol soup_server_set_ssl_cert_file() to get exported, and added soup_server_get_uris() to the documentation. [Tristan Van Berkom]
  • Improved a bunch of introspection annotations [#729987, Evan Nemerson]
  • Clarified some documentation. [Tristan Van Berkom, Dan Winship]
  • Fixed Windows build, twice [#738003, Kouhei Sutou, and #738551, Kalev Lember].
  • Updated translations: Bengali (Indian), Chinese (Traditional), Italian, Latvian, Serbian, Telugu, Ukranian

What is new in version 2.45.3:

  • The documentation has finally been updated to reflect the new APIs added in 2.42.
  • Added GBytes-valued :request-body-data and :response-body-data properties to SoupMessage, which should help some bindings.
  • We now set TCP_NODELAY on sockets, improving throughput a bit. In particular, this avoids an unnecessary extra round trip in the TLS handshake.
  • The SoupSession APIs that return GErrors now return the actual underlying gio errors in the event of connection failures and the like.
  • Updated the copy of the Public Suffix list used by soup-tld.

What is new in version 2.42.3:

  • Fixed an authentication error when using NTLM when connecting to an https site over a proxy; the code was getting confused and thinking that the 200 OK response to the CONNECT meant that NTLM auth had succeeded. [#698728, Dan]
  • Fixed a bug that could cause synchronous sessions to get stuck in a state where no new messages would ever get processed. [#703463, Philip Withnall]
  • Fixed a bug in the connection-pool code, which would in certain cases accidentally keep using a connection after a message was cancelled while in progress, causing the next request on that connection to get the response to the previous request, etc. [#708006, David Woodhouse]
  • Fixed some problems when falling back from samba single-sign-on-based NTLM to ordinary ask-for-a-password NTLM. [#703186, David Woodhouse]
  • If you called g_input_stream_close() on a SoupRequests's GInputStream before you finished reading it, it would block until the rest of the response had been read (which in the case of, eg, an infinite audio stream, meant that it would block forever). [#695652, Dan]
  • Updated translations: Indonesian

What is new in version 2.44.2:

  • Fixed a hang with internet radio streams in Rhythmbox (and some other places).
  • Fixed a connection leak when cancelling the close of a message GInputStream.
  • Plugged a few memory leaks.
  • Fix build with --without-ntlm.
  • Fixed a few warnings.
  • Fixed connection-test to pass with current glib.
  • Tests are now more verbose by default under "make check", since current automake just redirects all the output to a log file anyway.

What is new in version 2.44.1:

  • If you called g_input_stream_close() on SoupMessage or SoupRequests's GInputStream before you finished reading it, it would block until the rest of the response had been read (which in the case of, eg, an infinite audio stream, meant that it would block forever). This was an unintended change from 2.42 and is now fixed. [#695652, Dan]
  • soup_session_queue_message() on a plain SoupSession (not SoupSessionAsync) was operating synchronously rather than asynchronously as it should have. [#707711, Dan]
  • soup-form methods now use the HTML5 x-www-form-urlencoded rules rather than the HTML4 ones. (In particular, they leave
  • "-", "_", and "." unencoded.) [#708621, Alban Browaeys]
  • The test programs now explicitly request the "memory" GSettings backend, meaning they won't print a warning if they get it accidentally, and they won't accidentally use the dconf proxy settings if the dconf backend is available. [Dan]
  • Fix SoupSession so that if you override the proxy configuration at construct time, it doesn't try to resolve the default GProxyResolver. (This is important in particular for programs that expect to run outside a user session, which would otherwise spew errors from the dconf GSettings backend about not being able to connect to dconf.) Likewise with TLS settings and the TLS backend. [#708696, Dan]
  • Fix the SoupServer:tls-certificate property; soup_server_is_https() had not been updated to recognize it, and so would return FALSE, which in turn meant that the server would return 400 Bad Request in response to https requests. [#709647, Fabiano FidAªncio]
  • Fixed a sporadic failure in tests/connection-test. [Dan]
  • Updated translations:
  • Tajik

What is new in version 2.44.0:

  • New/updated translations: Dutch, Indonesian.

What is new in version 2.44 Beta 1:

  • Fixed the handling of unsatisfiable range requests in SoupServer [pointed out on mailing list, Dan]. Also, added more documentation clarifying that you don't need to handle range requests yourself in many cases.
  • Fixed the handling of IPv6 address literals with scope IDs. (Requires the latest glib as well for the complete fix.) [#669724, Dan]

What is new in version 2.43.5:

  • SoupProxyURIResolver is now deprecated in favor of the SoupSession:proxy-resolver property (which takes a GProxyResolver). [#680273, Dan]
  • The SoupKnownStatusCode enum is now called SoupStatus. The old name continues to exist as an alias, but is deprecated. (This change has no visible effect in C; it is primarily to help language bindings, so that, eg, SOUP_STATUS_NOT_FOUND maps to "Soup.Status.NOT_FOUND" rather than "Soup.KnownStatusCode.NOT_FOUND".) [#684409, Dan]
  • Fixed the parsing of URI schemes in SoupURI (in particular, to allow scheme names with digits in them). [#703776, Dan]
  • Fixed SoupLogger to print a message's response headers even if the message gets cancelled before the complete response body is received. [#703200, Andres Gomez]
  • Fixed a build problem in non-UTF-8 locales [#702534, Ross Lagerwall]
  • SoupSession now warns if you use soup_session_pause_message() or soup_session_unpause_message() on a synchronous message (which has never worked, though that fact wasn't documented). [#703461, Philip Withnall]

What is new in version 2.43.4:

  • Fixed a bug that could cause synchronous sessions to get stuck in a state where no new messages would ever get processed. [#703463, Philip Withnall]
  • Fixed another memory leak in SoupSocket (found while added a test case for #700472)
  • Switched to using g_cclosure_marshal_generic() rather than using glib-genmarshal. [#686042, Olivier Blin]
  • Changed SoupServer to call unref() on the query hash table after calling the handler, rather than destroy(), so that the handler can keep a copy of the query data if it wants. [#702793, Bernhard Schuster]
  • Fixed a few introspection annotations
  • Updated examples/get to use SoupLogger and to allow redirecting the output to a file [#703231, #703229, Andres Gomez]

What is new in version 2.43.2:

  • Fixed an authentication error when using NTLM when connecting to an https site over a proxy; the code was getting confused and thinking that the 200 OK response to the CONNECT meant that NTLM auth had succeeded. [#698728, Dan]
  • Fixed a memory leak in SoupSocket. [#700472, Richard RA¶jfors]
  • Fixed a missing include error on some platforms [#700003, Erik van Pienbroek]
  • Fixed warnings when running against the "dummy" TLS backend. [#700518, Dan]

What is new in version 2.43.1:

  • Including no longer pulls in the system networking headers. This may cause some packages to no longer compile, if they were accidentally depending on this. Adding "#include " will fix them on both unix and Windows. (This was done as part of fixing the build on Windows.) [#692134, Dan]

What is new in version 2.42.2:

  • Fixed SoupSession:proxy-resolver [#698163, Dan]
  • Further win32 build fixes [#692134, Dan]
  • Fixed several test programs to still work if glib-networking isn't installed [Dan], and fixed another to still work if the kernel has no IPv6 support. [#698220, Dan]

What is new in version 2.42.0:

  • Fixed a compiler warning on 32bit in a test program. [Kalev Lember]
  • New/updated translations: Hindi, Kannada, Korean, Malayalam, Marathi, Odia, Persian, Tadjik, Tamil, Telugu.

What is new in version 2.41.92:

  • Fixed a bug that caused libsoup to retry an incorrect password repeatedly, forever, in a certain case that affected Google calendars in evolution in particuar. [Red Hat bug #916224, Dan]
  • Also added code to make such infinite retry loops impossible in the future. [Dan]
  • Fixed SoupRequestData's handling of URIs with "" in them. [#695246, A½an DoberAek]
  • Added the SoupSession:proxy-resolver property, to override the GProxyResolver used by a session. (This means there are now three different ways of controlling proxy resolution in SoupSession... this will be cleaned up a bit after 2.42.) [#680273, Dan]
  • Added missing G_BEGIN_DECLS/G_END_DECLS to soup-message-headers.h, so that its functions can be called from C++. [Carlos Garcia Campos]
  • Updated translations: Assamese, Belarusian, Brazilian Portuguese, Catalan (Valencian), Catalan, Danish, Estonian, French, Greek, Gujarati, Hungarian, Italian, Latvian, Portuguese, Russian, Slovenian, Thai

What is new in version 2.41.91:

  • Fixed a crash that showed up with XMLRPC requests in WebKitGTK. [#694920, Sergio]
  • Fixed SoupCache to update the cached headers when it receives a 304 Not Modified response, and added a test for this. [#695121, Sergio]
  • libsoup now builds under automake 1.13 (and "make check" works under the parallel test harness which is the default in 1.13) [#694135]
  • The tests/ directory now contains only actual test programs that are run by "make check", and the programs that are intended more as example code are under examples/.
  • New/updated translations: Aragonese, Chinese (traditional), Czech, Galician, Hebrew, Lithuanian, Norwegian bokmA¥l, Punjabi, Spanish, Uyghur, Vietnamese

What is new in version 2.41.90:

  • Added SoupSession:local-address property, which allows you to force connections to bind to a particular local address (eg, to control the interface that is used). [#693215, Jonh Wendell]
  • Fixed SoupCache to properly handle messages that get cancelled, and added tests for this. [#692310, Sergio]
  • Fixed a reference leak in SoupCache that resulted in epiphany hanging for several seconds on exit and then eventually printing "Cache flush finished despite X pending requests". And added more tests. [#682527, Sergio]
  • Fixed SoupAuthNTLM so that SoupSession:authenticate gets emitted with retrying=TRUE if the first attempt fails (ie, make it work the same way as SoupAuthBasic and SoupAuthDigest). [#693222, Dan]
  • Fixed the SoupSession:add-feature-by-type property to accept non-SoupSessionFeature features as well (eg, auth types) [Dan]
  • Fixed a build bug that would break all the apache-based tests if you didn't have PHP installed. [#693311, Dan]
  • Updated translations: Malayalam, Polish, Serbian, Slovak

What is new in version 2.41.5:

  • Reverted the change to SoupURI's password handling from 2.41.4, since it turns out to have broken some things. [#692149, Dan]
  • Avoid a g_return_if_fail() when loading SoupSession:ssl-ca-file fails. [#691930, Guillaume Desmottes]
  • Fixed a bug in SoupBodyInputStream that caused redirects in WebKitGTK to hang. [#692026, Sergio]
  • Updated translations: Belarusian, Chinese (traditional), German, Italian, Norwegian bokmA¥l, Serbian, Uyghur

Similar Software

Comments to LibSoup

Comments not found
Add Comment
Turn on images!