summaryrefslogtreecommitdiffstats
path: root/index.xml
diff options
context:
space:
mode:
Diffstat (limited to 'index.xml')
-rw-r--r--index.xml840
1 files changed, 840 insertions, 0 deletions
diff --git a/index.xml b/index.xml
index c7c93fec..f3f83106 100644
--- a/index.xml
+++ b/index.xml
@@ -103,6 +103,21 @@ Copyright (c) 2013-2023, Loïc Hoguin <[email protected]> Permiss
<item>
<title>Introduction</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/introduction/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/introduction/</guid>
+ <description>Gun is an HTTP client for Erlang/OTP.
+Gun supports the HTTP/2, HTTP/1.1 and Websocket protocols.
+Prerequisites Knowledge of Erlang, but also of the HTTP/1.1, HTTP/2 and Websocket protocols is required in order to read this guide.
+Supported platforms Gun is tested and supported on Linux, FreeBSD, Windows and OSX.
+Gun is developed for Erlang/OTP 22.0 and newer.
+License Gun uses the ISC License.
+Copyright (c) 2013-2025, Loïc Hoguin &amp;lt;[email protected]&amp;gt; Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.</description>
+ </item>
+
+ <item>
+ <title>Introduction</title>
<link>https://ninenines.eu/docs/en/ranch/1.6/guide/introduction/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -474,6 +489,18 @@ Adding Gun as an Erlang.mk dependency source-highlight: could not find a languag
</item>
<item>
+ <title>Starting and stopping</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/start/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/start/</guid>
+ <description>This chapter describes how to start and stop the Gun application.
+Setting up Specify Gun as a dependency to your application in your favorite build tool.
+With Erlang.mk this is done by adding gun to the DEPS variable in your Makefile.
+Adding Gun as an Erlang.mk dependency source-highlight: could not find a language definition for make Starting Gun is an OTP application. It needs to be started before you can use it.</description>
+ </item>
+
+ <item>
<title>Supported protocols</title>
<link>https://ninenines.eu/docs/en/gun/1.0/guide/protocols/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -546,6 +573,18 @@ Gun will send a gun_inform message for every intermediate informational response
</item>
<item>
+ <title>Supported protocols</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/protocols/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/protocols/</guid>
+ <description>This chapter describes the protocols supported and the operations available to them.
+HTTP/1.1 HTTP/1.1 is a text request-response protocol. The client sends a request, the server sends back a response.
+Gun provides convenience functions for performing GET, HEAD, OPTIONS, POST, PATCH, PUT, and DELETE requests. All these functions are aliases of gun:headers/4,5 or gun:request/5,6 for the respective methods. Gun also provides a gun:data/4 function for streaming the request body.
+Gun will send a gun_inform message for every intermediate informational responses received.</description>
+ </item>
+
+ <item>
<title>Introduction</title>
<link>https://ninenines.eu/docs/en/cowboy/2.10/guide/introduction/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -786,6 +825,17 @@ A Gun connection is an Erlang process that manages a socket to a remote endpoint
</item>
<item>
+ <title>Connection</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/connect/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/connect/</guid>
+ <description>This chapter describes how to open, monitor and close a connection using the Gun client.
+Gun connections Gun is designed with the HTTP/2 and Websocket protocols in mind. They are built for long-running connections that allow concurrent exchange of data, either in the form of request/responses for HTTP/2 or in the form of messages for Websocket.
+A Gun connection is an Erlang process that manages a socket to a remote endpoint.</description>
+ </item>
+
+ <item>
<title>Protocols</title>
<link>https://ninenines.eu/docs/en/ranch/1.6/guide/protocols/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -998,6 +1048,18 @@ Streams can be canceled at any time.</description>
</item>
<item>
+ <title>HTTP</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/http/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/http/</guid>
+ <description>This chapter describes how to use the Gun client for communicating with an HTTP/1.1 or HTTP/2 server.
+Streams Every time a request is initiated, Gun creates a stream. A stream reference uniquely identifies a set of request and response and must be used to perform additional operations with a stream or to identify its messages.
+Stream references use the Erlang reference data type and are therefore unique.
+Streams can be canceled at any time.</description>
+ </item>
+
+ <item>
<title>Embedded mode</title>
<link>https://ninenines.eu/docs/en/ranch/1.6/guide/embedded/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -1220,6 +1282,17 @@ You must use the gun:ws_upgrade/2,3,4 function to upgrade to Websocket.</descrip
</item>
<item>
+ <title>Websocket</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/websocket/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/websocket/</guid>
+ <description>This chapter describes how to use the Gun client for communicating with a Websocket server.
+HTTP upgrade Websocket is a protocol built on top of HTTP. To use Websocket, you must first request for the connection to be upgraded. Only HTTP/1.1 connections can be upgraded to Websocket, so you might need to restrict the protocol to HTTP/1.1 if you are planning to use Websocket over TLS.
+You must use the gun:ws_upgrade/2,3,4 function to upgrade to Websocket.</description>
+ </item>
+
+ <item>
<title>Writing parsers</title>
<link>https://ninenines.eu/docs/en/ranch/1.6/guide/parsers/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -1317,6 +1390,16 @@ In order to have a TLS layer inside another TLS layer we need a way to encode th
</item>
<item>
+ <title>Internals: TLS over TLS</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/internals_tls_over_tls/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/internals_tls_over_tls/</guid>
+ <description>The ssl application that comes with Erlang/OTP implements TLS using an interface equivalent to the gen_tcp interface: you get and manipulate a socket. The TLS encoding and decoding is applied transparently to the data sent and received.
+In order to have a TLS layer inside another TLS layer we need a way to encode the data of the inner layer before we pass it to the outer layer. We cannot do this with a socket interface.</description>
+ </item>
+
+ <item>
<title>Migrating from Gun 1.0 to 1.1</title>
<link>https://ninenines.eu/docs/en/gun/1.1/guide/migrating_from_1.0/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -1683,6 +1766,17 @@ Features added A new HTTP/2 option max_fragmented_header_block_size has been add
</item>
<item>
+ <title>Migrating from Gun 2.1 to 2.2</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_2.1/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_2.1/</guid>
+ <description>Gun 2.2 contains many features and fixes, including an experimental HTTP/3 implementation.
+Gun 2.2 requires Erlang/OTP 24.0 or greater.
+Features added Gun will now do wildcard certificate matching by default, as required by the HTTP protocol, by setting the customize_hostname_check ssl option. User pings are now supported for HTTP/2. User pings are PING frames sent by the user, with the corresponding PING_ACK resulting in a gun_notify message being sent to the user process.</description>
+ </item>
+
+ <item>
<title>Constraints</title>
<link>https://ninenines.eu/docs/en/cowboy/2.10/guide/constraints/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -1973,6 +2067,17 @@ Gun 2.0 adds many more features such as Websocket over HTTP/2, a built-in cookie
</item>
<item>
+ <title>Migrating from Gun 2.0 to 2.1</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_2.0/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_2.0/</guid>
+ <description>Gun 2.1 contains a small security improvement for the HTTP/2 protocol, as well as includes a small number of fixes and improvements.
+Gun 2.1 requires Erlang/OTP 22.0 or greater.
+Features added A new HTTP/2 option max_fragmented_header_block_size has been added to limit the size of header blocks that are sent over multiple HEADERS and CONTINUATION frames. Update Cowlib to 2.13.0. Bugs fixed Gun will no longer configure the NPN TLS extension, which has long been replaced by ALPN.</description>
+ </item>
+
+ <item>
<title>Migrating from Ranch 1.7 to Ranch 2.0</title>
<link>https://ninenines.eu/docs/en/ranch/2.0/guide/migrating_from_1.7/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -2149,6 +2254,16 @@ Features added The protocols CONNECT destination option has been added as a repl
</item>
<item>
+ <title>Migrating from Gun 1.3 to 2.0</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_1.3/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_1.3/</guid>
+ <description>Gun 2.0 includes state of the art tunnel support. With Gun 2.0 it is possible to make requests or data go through any number of proxy endpoints using any combination of TCP or TLS transports and HTTP/1.1, HTTP/2 or SOCKS5 protocols. All combinations of the scenario Proxy1 -&amp;gt; Proxy2 -&amp;gt; Origin are tested and known to work.
+Gun 2.0 adds many more features such as Websocket over HTTP/2, a built-in cookie store, graceful shutdown, flow control for data messages, event handlers and more.</description>
+ </item>
+
+ <item>
<title>Static files</title>
<link>https://ninenines.eu/docs/en/cowboy/2.10/guide/static_files/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -2323,6 +2438,16 @@ Features added CONNECT requests can now be issued on HTTP/1.1 connections. The t
</item>
<item>
+ <title>Migrating from Gun 1.2 to 1.3</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_1.2/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_1.2/</guid>
+ <description>Gun 1.3 improves the support for CONNECT requests introduced in the previous version and documents Websocket protocol negotiation.
+Features added The protocols CONNECT destination option has been added as a replacement for the now deprecated protocol option. Add built-in support for Websocket protocol negotiation through the Websocket option protocols. The interface of the handler module currently remains undocumented and must be set to gun_ws_h. Add the h2specd HTTP/2 test suite from the h2spec project.</description>
+ </item>
+
+ <item>
<title>The Req object</title>
<link>https://ninenines.eu/docs/en/cowboy/2.10/guide/req/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -2591,6 +2716,16 @@ Features added Update Cowlib to 2.5.1 Bugs fixed A bug in the experimental gun
</item>
<item>
+ <title>Migrating from Gun 1.1 to 1.2</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_1.1/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_1.1/</guid>
+ <description>Gun 1.2 adds support for the CONNECT request over HTTP/1.1 connections.
+Features added CONNECT requests can now be issued on HTTP/1.1 connections. The tunneled connection can use any of the protocols Gun supports: HTTP/1.1, HTTP/2 and Websocket over both TCP and TLS transports. Note that Gun currently does not support tunneling a TLS connection over a TLS connection due to limitations in Erlang/OTP. Gun supports sending multiple CONNECT requests, allowing the tunnel to the origin server to go through multiple proxies.</description>
+ </item>
+
+ <item>
<title>Sending a response</title>
<link>https://ninenines.eu/docs/en/cowboy/2.10/guide/resp/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -2820,6 +2955,16 @@ Cookies are a name/value store where the names and values are stored in plain te
</item>
<item>
+ <title>Migrating from Gun 1.0 to 1.1</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_1.0/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/migrating_from_1.0/</guid>
+ <description>Gun 1.1 updates the Cowlib dependency to 2.5.1 and fixes a few problems with experimental features.
+Features added Update Cowlib to 2.5.1 Bugs fixed A bug in the experimental gun_sse_h where lone id lines were not propagated has been fixed by updating the Cowlib dependency. The status code was incorrectly given to the experimental content handlers as a binary. It has been fixed an an integer is now given as was intended.</description>
+ </item>
+
+ <item>
<title>Multipart requests</title>
<link>https://ninenines.eu/docs/en/cowboy/2.10/guide/multipart/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -4662,6 +4807,18 @@ HTTP IANA Registries HTTP Method Registry HTTP Status Code Registry Message He
</item>
<item>
+ <title>Gun 2.2</title>
+ <link>https://ninenines.eu/articles/gun-2.2.0/</link>
+ <pubDate>Fri, 11 Apr 2025 07:00:00 +0100</pubDate>
+
+ <guid>https://ninenines.eu/articles/gun-2.2.0/</guid>
+ <description>Gun 2.2.0 has been released!
+Gun 2.2 contains many features and fixes, including an experimental HTTP/3 implementation.
+Gun 2.2 is the first release that includes an experimental support for the HTTP/3 protocol. Note that unlike Cowboy, Gun 2.2 does not yet support Websocket over HTTP/3.
+Gun 2.2 now sets the appropriate ssl options to perform wildcard certificate matching, which is a requirement for HTTP and previously had to be configured by users.</description>
+ </item>
+
+ <item>
<title>Cowboy 2.13</title>
<link>https://ninenines.eu/articles/cowboy-2.13.0/</link>
<pubDate>Tue, 18 Feb 2025 07:00:00 +0100</pubDate>
@@ -5480,6 +5637,17 @@ Exports cow_cookie:parse_cookie(3) - Parse a cookie header cow_cookie:parse_set
<item>
<title>cow_cookie(3)</title>
+ <link>https://ninenines.eu/docs/en/cowlib/2.15/manual/cow_cookie/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/cowlib/2.15/manual/cow_cookie/</guid>
+ <description>Name cow_cookie - Cookies
+Description The module cow_cookie provides functions for parsing and manipulating cookie headers.
+Exports cow_cookie:parse_cookie(3) - Parse a cookie header cow_cookie:parse_set_cookie(3) - Parse a set-cookie header cow_cookie:cookie(3) - Generate a cookie header cow_cookie:setcookie(3) - Generate a set-cookie header Types cookie_attrs() cookie_attrs() :: #{ expires =&amp;gt; calendar:datetime(), max_age =&amp;gt; calendar:datetime(), domain =&amp;gt; binary(), path =&amp;gt; binary(), secure =&amp;gt; true, http_only =&amp;gt; true, same_site =&amp;gt; default | none | strict | lax } Cookie attributes parsed from the set-cookie header.</description>
+ </item>
+
+ <item>
+ <title>cow_cookie(3)</title>
<link>https://ninenines.eu/docs/en/cowlib/2.8/manual/cow_cookie/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -5567,6 +5735,19 @@ Changelog 2.9: Function introduced. Examples Generate a cookie header Cookie =
<item>
<title>cow_cookie:cookie(3)</title>
+ <link>https://ninenines.eu/docs/en/cowlib/2.15/manual/cow_cookie.cookie/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/cowlib/2.15/manual/cow_cookie.cookie/</guid>
+ <description>Name cow_cookie:cookie - Generate a cookie header
+Description cookie(Cookies) -&amp;gt; iolist() Cookies :: [{Name :: iodata(), Value :: iodata()}] Generate a cookie header.
+Arguments Cookies A list of pairs of cookie name and value.
+ Return value An iolist with the generated cookie header value.
+Changelog 2.9: Function introduced. Examples Generate a cookie header Cookie = cow_cookie:cookie([{&amp;lt;&amp;lt;&#34;sessionid&#34;&amp;gt;&amp;gt;, ID}]). See also cow_cookie(3), cow_cookie:parse_cookie(3), cow_cookie:parse_set_cookie(3), cow_cookie:setcookie(3)</description>
+ </item>
+
+ <item>
+ <title>cow_cookie:cookie(3)</title>
<link>https://ninenines.eu/docs/en/cowlib/2.9/manual/cow_cookie.cookie/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -5650,6 +5831,20 @@ Changelog 2.9: Fixes to the parser may lead to potential incompatibilities. A co
<item>
<title>cow_cookie:parse_cookie(3)</title>
+ <link>https://ninenines.eu/docs/en/cowlib/2.15/manual/cow_cookie.parse_cookie/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/cowlib/2.15/manual/cow_cookie.parse_cookie/</guid>
+ <description>Name cow_cookie:parse_cookie - Parse a cookie header
+Description parse_cookie(Cookie :: binary()) -&amp;gt; [{binary(), binary()}] Parse a cookie header.
+Arguments Cookie The cookie header value.
+ Return value A list of cookie name/value pairs is returned on success.
+An exception is thrown in the event of a parse error.
+Changelog 2.9: Fixes to the parser may lead to potential incompatibilities. A cookie name starting with $ is no longer ignored.</description>
+ </item>
+
+ <item>
+ <title>cow_cookie:parse_cookie(3)</title>
<link>https://ninenines.eu/docs/en/cowlib/2.8/manual/cow_cookie.parse_cookie/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -5743,6 +5938,19 @@ An atom ignore is returned when the cookie has both an empty name and an empty v
<item>
<title>cow_cookie:parse_set_cookie(3)</title>
+ <link>https://ninenines.eu/docs/en/cowlib/2.15/manual/cow_cookie.parse_set_cookie/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/cowlib/2.15/manual/cow_cookie.parse_set_cookie/</guid>
+ <description>Name cow_cookie:parse_set_cookie - Parse a set-cookie header
+Description parse_set_cookie(SetCookie :: binary()) -&amp;gt; {ok, Name, Value, Attrs} | ignore Name :: binary() Value :: binary() Attrs :: cow_cookie:cookie_attrs() Parse a set-cookie header.
+Arguments SetCookie The set-cookie header value.
+ Return value An ok tuple with the cookie name, value and attributes is returned on success.
+An atom ignore is returned when the cookie has both an empty name and an empty value, and must be ignored.</description>
+ </item>
+
+ <item>
+ <title>cow_cookie:parse_set_cookie(3)</title>
<link>https://ninenines.eu/docs/en/cowlib/2.9/manual/cow_cookie.parse_set_cookie/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -5831,6 +6039,21 @@ Changelog 2.12: The Version attribute is no longer generated. 1.0: Function int
<item>
<title>cow_cookie:setcookie(3)</title>
+ <link>https://ninenines.eu/docs/en/cowlib/2.15/manual/cow_cookie.setcookie/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/cowlib/2.15/manual/cow_cookie.setcookie/</guid>
+ <description>Name cow_cookie:setcookie - Generate a set-cookie header
+Description setcookie(Name :: iodata(), Value :: iodata(), Opts :: cow_cookie:cookie_opts()) -&amp;gt; iolist() Generate a set-cookie header.
+Arguments Name Cookie name.
+ Value Cookie value.
+ Opts Options added to the set-cookie header as attributes.
+ Return value An iolist with the generated set-cookie header value.
+Changelog 2.12: The Version attribute is no longer generated. 1.0: Function introduced. Examples Generate a set-cookie header SetCookie = cow_cookie:setcookie(&amp;lt;&amp;lt;&#34;</description>
+ </item>
+
+ <item>
+ <title>cow_cookie:setcookie(3)</title>
<link>https://ninenines.eu/docs/en/cowlib/2.8/manual/cow_cookie.setcookie/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -13656,6 +13879,18 @@ Modules cow_cookie(3) - Cookies Dependencies crypto - Crypto functions All t
<item>
<title>Cowlib Function Reference</title>
+ <link>https://ninenines.eu/docs/en/cowlib/2.15/manual/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/cowlib/2.15/manual/</guid>
+ <description>Name cowlib - Support library for manipulating Web protocols
+Description Cowlib provides libraries for parsing and building messages for various Web protocols, including HTTP/1.1, HTTP/2 and Websocket.
+It is optimized for completeness rather than speed. No value is ignored, they are all returned.
+Modules cow_cookie(3) - Cookies Dependencies crypto - Crypto functions All these applications must be started before the cowlib application. To start Cowlib and all dependencies at once:</description>
+ </item>
+
+ <item>
+ <title>Cowlib Function Reference</title>
<link>https://ninenines.eu/docs/en/cowlib/2.8/manual/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -13740,6 +13975,18 @@ Modules cow_cookie(3) - Cookies Dependencies crypto - Crypto functions All t
<item>
<title>cowlib(7)</title>
+ <link>https://ninenines.eu/docs/en/cowlib/2.15/manual/cowlib_app/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/cowlib/2.15/manual/cowlib_app/</guid>
+ <description>Name cowlib - Support library for manipulating Web protocols
+Description Cowlib provides libraries for parsing and building messages for various Web protocols, including HTTP/1.1, HTTP/2 and Websocket.
+It is optimized for completeness rather than speed. No value is ignored, they are all returned.
+Modules cow_cookie(3) - Cookies Dependencies crypto - Crypto functions All these applications must be started before the cowlib application. To start Cowlib and all dependencies at once:</description>
+ </item>
+
+ <item>
+ <title>cowlib(7)</title>
<link>https://ninenines.eu/docs/en/cowlib/2.8/manual/cowlib_app/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -13835,6 +14082,18 @@ Modules gun(3) - Asynchronous HTTP client gun_cookies(3) - Cookie store engine
</item>
<item>
+ <title>Gun Function Reference</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/</guid>
+ <description>Name gun - HTTP/1.1, HTTP/2 and Websocket client for Erlang/OTP
+Description Gun is an HTTP client for Erlang/OTP with support for the HTTP/1.1, HTTP/2 and Websocket protocols.
+Gun aims to provide an easy to use, asynchronous and always-connected client. It maintains a permanent connection to the server and reconnects automatically when necessary.
+Modules gun(3) - Asynchronous HTTP client gun_cookies(3) - Cookie store engine gun_cookies_list(3) - Cookie store backend: in-memory, per connection gun_event(3) - Events gun_ws_protocol(3) - Websocket subprotocols Dependencies cowlib(7) - Support library for manipulating Web protocols ssl - Secure communication over sockets All these applications must be started before the gun application.</description>
+ </item>
+
+ <item>
<title>Gun User Guide</title>
<link>https://ninenines.eu/docs/en/gun/1.0/guide/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -13889,6 +14148,15 @@ Modules gun(3) - Asynchronous HTTP client gun_cookies(3) - Cookie store engine
</item>
<item>
+ <title>Gun User Guide</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/guide/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/guide/</guid>
+ <description>Interface Introduction Starting and stopping Supported protocols Connection Using HTTP Using Websocket Advanced Internals: TLS over TLS Additional information Migrating from Gun 2.1 to 2.2 Migrating from Gun 2.0 to 2.1 Migrating from Gun 1.3 to 2.0 Migrating from Gun 1.2 to 1.3 Migrating from Gun 1.1 to 1.2 Migrating from Gun 1.0 to 1.1 </description>
+ </item>
+
+ <item>
<title>gun(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -13961,6 +14229,18 @@ gun:open(3) - Open a connection to the given host and port gun:open_unix(3) - O
</item>
<item>
+ <title>gun(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun/</guid>
+ <description>Name gun - Asynchronous HTTP client
+Description The gun module provides an asynchronous interface for connecting and communicating with Web servers over HTTP, HTTP/2 or Websocket.
+Exports Connection:
+gun:open(3) - Open a connection to the given host and port gun:open_unix(3) - Open a connection to the given Unix domain socket gun:set_owner(3) - Set a new owner for the connection gun:ping(3) - Check the health or RTT of the connection gun:shutdown(3) - Gracefully close the connection gun:close(3) - Brutally close the connection gun:info(3) - Obtain information about the connection Requests:</description>
+ </item>
+
+ <item>
<title>gun(7)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_app/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14033,6 +14313,18 @@ Modules gun(3) - Asynchronous HTTP client gun_cookies(3) - Cookie store engine
</item>
<item>
+ <title>gun(7)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_app/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_app/</guid>
+ <description>Name gun - HTTP/1.1, HTTP/2 and Websocket client for Erlang/OTP
+Description Gun is an HTTP client for Erlang/OTP with support for the HTTP/1.1, HTTP/2 and Websocket protocols.
+Gun aims to provide an easy to use, asynchronous and always-connected client. It maintains a permanent connection to the server and reconnects automatically when necessary.
+Modules gun(3) - Asynchronous HTTP client gun_cookies(3) - Cookie store engine gun_cookies_list(3) - Cookie store backend: in-memory, per connection gun_event(3) - Events gun_ws_protocol(3) - Websocket subprotocols Dependencies cowlib(7) - Support library for manipulating Web protocols ssl - Secure communication over sockets All these applications must be started before the gun application.</description>
+ </item>
+
+ <item>
<title>gun:await(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.await/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14099,6 +14391,17 @@ This function waits for a message from the given stream and returns it as a tupl
</item>
<item>
+ <title>gun:await(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.await/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.await/</guid>
+ <description>Name gun:await - Wait for a response
+Description await(ConnPid, StreamRef) -&amp;gt; await(ConnPid, StreamRef, 5000, MonitorRef) await(ConnPid, StreamRef, MonitorRef) -&amp;gt; await(ConnPid, StreamRef, 5000, MonitorRef) await(ConnPid, StreamRef, Timeout) -&amp;gt; await(ConnPid, StreamRef, Timeout, MonitorRef) await(ConnPid, StreamRef, Timeout, MonitorRef) -&amp;gt; Result ConnPid :: pid() StreamRef :: gun:stream_ref() MonitorRef :: reference() Timeout :: timeout() Result :: tuple() - see below Wait for a response.
+This function waits for a message from the given stream and returns it as a tuple.</description>
+ </item>
+
+ <item>
<title>gun:await_body(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.await_body/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14159,6 +14462,16 @@ Description await_body(ConnPid, StreamRef) -&amp;gt; await_body(ConnPid, StreamR
</item>
<item>
+ <title>gun:await_body(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.await_body/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.await_body/</guid>
+ <description>Name gun:await_body - Wait for the complete response body
+Description await_body(ConnPid, StreamRef) -&amp;gt; await_body(ConnPid, StreamRef, 5000, MonitorRef) await_body(ConnPid, StreamRef, MonitorRef) -&amp;gt; await_body(ConnPid, StreamRef, 5000, MonitorRef) await_body(ConnPid, StreamRef, Timeout) -&amp;gt; await_body(ConnPid, StreamRef, Timeout, MonitorRef) await_body(ConnPid, StreamRef, Timeout, MonitorRef) -&amp;gt; {ok, Body} | {ok, Body, Trailers} | {error, Reason} ConnPid :: pid() StreamRef :: gun:stream_ref() MonitorRef :: reference() Timeout :: timeout() Body :: binary() Trailers :: [{binary(), binary()}] Reason :: {stream_error | connection_error | down, any()} | timeout Wait for the complete response body.</description>
+ </item>
+
+ <item>
<title>gun:await_up(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.await_up/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14225,6 +14538,17 @@ Arguments ConnPid The pid of the Gun connection process.</description>
</item>
<item>
+ <title>gun:await_up(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.await_up/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.await_up/</guid>
+ <description>Name gun:await_up - Wait for the connection to be up
+Description await_up(ConnPid) -&amp;gt; await_up(ConnPid, 5000, MonitorRef) await_up(ConnPid, MonitorRef) -&amp;gt; await_up(ConnPid, 5000, MonitorRef) await_up(ConnPid, Timeout) -&amp;gt; await_up(ConnPid, Timeout, MonitorRef) await_up(ConnPid, Timeout, MonitorRef) -&amp;gt; {ok, Protocol} | {error, Reason} ConnPid :: pid() MonitorRef :: reference() Timeout :: timeout() Protocol :: http | http2 | socks Reason :: {down, any()} | timeout Wait for the connection to be up.
+Arguments ConnPid The pid of the Gun connection process.</description>
+ </item>
+
+ <item>
<title>gun:cancel(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.cancel/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14297,6 +14621,18 @@ HTTP/1.1 does not support this feature. Gun will simply silence the stream and s
</item>
<item>
+ <title>gun:cancel(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.cancel/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.cancel/</guid>
+ <description>Name gun:cancel - Cancel the given stream
+Description cancel(ConnPid, StreamRef) -&amp;gt; ok ConnPid :: pid() StreamRef :: gun:stream_ref() Cancel the given stream.
+The behavior of this function depends on the protocol selected.
+HTTP/1.1 does not support this feature. Gun will simply silence the stream and stop relaying messages. Gun may also decide to close the connection if the response body is too large, to avoid wasting time and bandwidth.</description>
+ </item>
+
+ <item>
<title>gun:close(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.close/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14375,6 +14711,19 @@ Changelog 1.0: Function introduced. Examples Close the connection ok = gun:clo
</item>
<item>
+ <title>gun:close(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.close/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.close/</guid>
+ <description>Name gun:close - Brutally close the connection
+Description close(ConnPid) -&amp;gt; ok ConnPid :: pid() Brutally close the connection.
+Arguments ConnPid The pid of the Gun connection process.
+ Return value The atom ok is returned.
+Changelog 1.0: Function introduced. Examples Close the connection ok = gun:close(ConnPid). See also gun(3), gun:open(3), gun:open_unix(3), gun:shutdown(3)</description>
+ </item>
+
+ <item>
<title>gun:connect(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.2/manual/gun.connect/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14419,6 +14768,17 @@ This feature is currently only available for HTTP/1.1 connections. Upon successf
</item>
<item>
+ <title>gun:connect(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.connect/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.connect/</guid>
+ <description>Name gun:connect - Establish a tunnel to the origin server
+Description connect(ConnPid, Destination) -&amp;gt; connect(ConnPid, Destination, [], #{}). connect(ConnPid, Destination, Headers) -&amp;gt; connect(ConnPid, Destination, Headers, #{}). connect(ConnPid, Destination, Headers, ReqOpts) -&amp;gt; StreamRef ConnPid :: pid() Destination :: gun:connect_destination() Headers :: gun:req_headers() ReqOpts :: gun:req_opts() StreamRef :: gun:stream_ref() Establish a tunnel to the origin server.
+This feature is currently only available for HTTP/1.1 connections. Upon successful completion of the CONNECT request a tunnel is established and subsequent requests will go through the tunnel.</description>
+ </item>
+
+ <item>
<title>gun:data(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.data/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14491,6 +14851,18 @@ All calls to this function must use the nofin flag except for the last which mus
</item>
<item>
+ <title>gun:data(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.data/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.data/</guid>
+ <description>Name gun:data - Stream the body of a request
+Description data(ConnPid, StreamRef, IsFin, Data) -&amp;gt; ok ConnPid :: pid() StreamRef :: gun:stream_ref() IsFin :: fin | nofin Data :: iodata() Stream the body of a request.
+This function can only be used if the original request had headers indicating that a body would be streamed.
+All calls to this function must use the nofin flag except for the last which must use fin to indicate the end of the request body.</description>
+ </item>
+
+ <item>
<title>gun:delete(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.delete/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14575,6 +14947,20 @@ Arguments ConnPid The pid of the Gun connection process.
</item>
<item>
+ <title>gun:delete(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.delete/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.delete/</guid>
+ <description>Name gun:delete - Delete a resource
+Description delete(ConnPid, Path) -&amp;gt; delete(ConnPid, Path, [], #{}). delete(ConnPid, Path, Headers) -&amp;gt; delete(ConnPid, Path, Headers, #{}) delete(ConnPid, Path, Headers, ReqOpts) -&amp;gt; StreamRef ConnPid :: pid() Path :: iodata() Headers :: gun:req_headers() ReqOpts :: gun:req_opts() StreamRef :: gun:stream_ref() Delete a resource.
+Arguments ConnPid The pid of the Gun connection process.
+ Path Path to the resource.
+ Headers Additional request headers.
+ ReqOpts Request options.</description>
+ </item>
+
+ <item>
<title>gun:flush(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.flush/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14659,6 +15045,20 @@ ConnPid The pid of the Gun connection process.
</item>
<item>
+ <title>gun:flush(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.flush/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.flush/</guid>
+ <description>Name gun:flush - Flush all messages related to a connection or a stream
+Description flush(ConnPid) -&amp;gt; ok flush(StreamRef) -&amp;gt; ok ConnPid :: pid() StreamRef :: gun:stream_ref() Flush all messages related to a connection or a stream.
+Arguments Either of these arguments may be provided:
+ConnPid The pid of the Gun connection process.
+ StreamRef Identifier of the stream for the original request.
+ Return value The atom ok is returned.</description>
+ </item>
+
+ <item>
<title>gun:get(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.get/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14739,6 +15139,20 @@ Arguments ConnPid The pid of the Gun connection process.
</item>
<item>
+ <title>gun:get(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.get/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.get/</guid>
+ <description>Name gun:get - Get a resource representation
+Description get(ConnPid, Path) -&amp;gt; get(ConnPid, Path, [], #{}). get(ConnPid, Path, Headers) -&amp;gt; get(ConnPid, Path, Headers, #{}) get(ConnPid, Path, Headers, ReqOpts) -&amp;gt; StreamRef ConnPid :: pid() Path :: iodata() Headers :: gun:req_headers() ReqOpts :: gun:req_opts() StreamRef :: gun:stream_ref() Get a resource representation.
+Arguments ConnPid The pid of the Gun connection process.
+ Path Path to the resource.
+ Headers Additional request headers.
+ ReqOpts Request options.</description>
+ </item>
+
+ <item>
<title>gun:head(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.head/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14805,6 +15219,17 @@ This function performs the same operation as gun:get(3), except the server will
</item>
<item>
+ <title>gun:head(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.head/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.head/</guid>
+ <description>Name gun:head - Get headers of a resource representation
+Description head(ConnPid, Path) -&amp;gt; head(ConnPid, Path, [], #{}). head(ConnPid, Path, Headers) -&amp;gt; head(ConnPid, Path, Headers, #{}) head(ConnPid, Path, Headers, ReqOpts) -&amp;gt; StreamRef ConnPid :: pid() Path :: iodata() Headers :: gun:req_headers() ReqOpts :: gun:req_opts() StreamRef :: gun:stream_ref() Get headers of a resource representation.
+This function performs the same operation as gun:get(3), except the server will not send the resource representation, only the response&amp;apos;s status code and headers.</description>
+ </item>
+
+ <item>
<title>gun:headers(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun.headers/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14829,6 +15254,18 @@ The function headers/4,5 initiates a request but does not send the request body.
</item>
<item>
+ <title>gun:headers(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.headers/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.headers/</guid>
+ <description>Name gun:headers - Initiate the given request
+Description headers(ConnPid, Method, Path, Headers) -&amp;gt; headers(ConnPid, Method, Path, Headers, #{}) headers(ConnPid, Method, Path, Headers, ReqOpts) -&amp;gt; StreamRef ConnPid :: pid() Method :: binary() Path :: iodata() Headers :: gun:req_headers() ReqOpts :: gun:req_opts() StreamRef :: gun:stream_ref() Initiate the given request.
+This is a general purpose function that should only be used when other method-specific functions do not apply.
+The function headers/4,5 initiates a request but does not send the request body.</description>
+ </item>
+
+ <item>
<title>gun:info(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.info/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14898,6 +15335,16 @@ Description info(ConnPid) -&amp;gt; Info ConnPid :: pid() Info :: #{ owner =&amp
</item>
<item>
+ <title>gun:info(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.info/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.info/</guid>
+ <description>Name gun:info - Obtain information about the connection
+Description info(ConnPid) -&amp;gt; Info ConnPid :: pid() Info :: #{ owner =&amp;gt; pid(), socket =&amp;gt; inet:socket() | ssl:sslsocket(), transport =&amp;gt; tcp | tls, protocol =&amp;gt; http | http2 | socks | ws, state_name =&amp;gt; atom(), sock_ip =&amp;gt; inet:ip_address(), sock_port =&amp;gt; inet:port_number(), origin_scheme =&amp;gt; binary() | undefined, origin_host =&amp;gt; inet:hostname() | inet:ip_address(), origin_port =&amp;gt; inet:port_number(), intermediaries =&amp;gt; [Intermediary], cookie_store =&amp;gt; gun_cookies:cookie_store(), event_handler =&amp;gt; module(), event_handler_state =&amp;gt; any() } Intermediary :: #{ type =&amp;gt; connect | socks5, host =&amp;gt; inet:hostname() | inet:ip_address(), port =&amp;gt; inet:port_number(), transport =&amp;gt; tcp | tls, protocol =&amp;gt; http | http2 | socks | raw } Obtain information about the connection.</description>
+ </item>
+
+ <item>
<title>gun:open(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.open/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -14972,6 +15419,17 @@ Arguments Host Host or IP address to connect to.</description>
</item>
<item>
+ <title>gun:open(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.open/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.open/</guid>
+ <description>Name gun:open - Open a connection to the given host and port
+Description open(Host, Port) -&amp;gt; open(Host, Port, #{}) open(Host, Port, Opts) -&amp;gt; {ok, pid()} | {error, Reason} Host :: inet:hostname() | inet:ip_address() Port :: inet:port_number() Opts :: gun:opts() Reason :: {options, OptName} | {options, {http | http2 | socks | ws, OptName}} | any() OptName :: atom() Open a connection to the given host and port.
+Arguments Host Host or IP address to connect to.</description>
+ </item>
+
+ <item>
<title>gun:open_unix(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.open_unix/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15048,6 +15506,18 @@ Arguments SocketPath Path to the Unix domain socket to connect to.
</item>
<item>
+ <title>gun:open_unix(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.open_unix/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.open_unix/</guid>
+ <description>Name gun:open_unix - Open a connection to the given Unix domain socket
+Description open_unix(SocketPath, Opts) -&amp;gt; {ok, pid()} | {error, Reason} SocketPath :: string() Opts :: gun:opts() Reason :: {options, OptName} | {options, {http | http2 | socks | ws, OptName}} | any() OptName :: atom() Open a connection to the given Unix domain socket.
+Arguments SocketPath Path to the Unix domain socket to connect to.
+ Opts Options for this connection.</description>
+ </item>
+
+ <item>
<title>gun:options(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.options/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15114,6 +15584,17 @@ The special path &amp;quot;*&amp;quot; can be used to obtain information about t
</item>
<item>
+ <title>gun:options(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.options/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.options/</guid>
+ <description>Name gun:options - Query the capabilities of the server or a resource
+Description options(ConnPid, Path) -&amp;gt; options(ConnPid, Path, [], #{}). options(ConnPid, Path, Headers) -&amp;gt; options(ConnPid, Path, Headers, #{}) options(ConnPid, Path, Headers, ReqOpts) -&amp;gt; StreamRef ConnPid :: pid() Path :: iodata() Headers :: gun:req_headers() ReqOpts :: gun:req_opts() StreamRef :: gun:stream_ref() Query the capabilities of the server or a resource.
+The special path &amp;quot;*&amp;quot; can be used to obtain information about the server as a whole.</description>
+ </item>
+
+ <item>
<title>gun:patch(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.patch/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15178,6 +15659,27 @@ Description patch(ConnPid, Path, Headers) -&amp;gt; patch(ConnPid, Path, Headers
</item>
<item>
+ <title>gun:patch(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.patch/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.patch/</guid>
+ <description>Name gun:patch - Apply a set of changes to a resource
+Description patch(ConnPid, Path, Headers) -&amp;gt; patch(ConnPid, Path, Headers, #{}) patch(ConnPid, Path, Headers, ReqOpts) -&amp;gt; StreamRef patch(ConnPid, Path, Headers, Body) -&amp;gt; patch(ConnPid, Path, Headers, Body, #{}) patch(ConnPid, Path, Headers, Body, ReqOpts) -&amp;gt; StreamRef ConnPid :: pid() Path :: iodata() Headers :: gun:req_headers() Body :: iodata() ReqOpts :: gun:req_opts() StreamRef :: gun:stream_ref() Apply a set of changes to a resource.</description>
+ </item>
+
+ <item>
+ <title>gun:ping(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.ping/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.ping/</guid>
+ <description>Name gun:ping - Check the health or RTT of the connection
+Description ping(ConnPid) -&amp;gt; ping(ConnPid, #{}) ping(ConnPid, ReqOpts) -&amp;gt; PingRef ConnPid :: pid() ReqOpts :: gun:req_opts() PingRef :: reference() Check the health or round-trip time of the connection.
+On protocols that support it, Gun will send a PING frame and wait for its corresponding acknowledgement. When it receives that acknowledgement the user process gets notified via a gun_notify message.</description>
+ </item>
+
+ <item>
<title>gun:post(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.post/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15242,6 +15744,16 @@ Description post(ConnPid, Path, Headers) -&amp;gt; post(ConnPid, Path, Headers,
</item>
<item>
+ <title>gun:post(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.post/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.post/</guid>
+ <description>Name gun:post - Process the enclosed representation according to a resource&amp;apos;s own semantics
+Description post(ConnPid, Path, Headers) -&amp;gt; post(ConnPid, Path, Headers, #{}) post(ConnPid, Path, Headers, ReqOpts) -&amp;gt; StreamRef post(ConnPid, Path, Headers, Body) -&amp;gt; post(ConnPid, Path, Headers, Body, #{}) post(ConnPid, Path, Headers, Body, ReqOpts) -&amp;gt; StreamRef ConnPid :: pid() Path :: iodata() Headers :: gun:req_headers() Body :: iodata() ReqOpts :: gun:req_opts() StreamRef :: gun:stream_ref() Process the enclosed representation according to a resource&amp;apos;s own semantics.</description>
+ </item>
+
+ <item>
<title>gun:put(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.put/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15312,6 +15824,17 @@ The behavior of this function varies depending on whether a body is provided.</d
</item>
<item>
+ <title>gun:put(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.put/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.put/</guid>
+ <description>Name gun:put - Create or replace a resource
+Description put(ConnPid, Path, Headers) -&amp;gt; put(ConnPid, Path, Headers, #{}) put(ConnPid, Path, Headers, ReqOpts) -&amp;gt; StreamRef put(ConnPid, Path, Headers, Body) -&amp;gt; put(ConnPid, Path, Headers, Body, #{}) put(ConnPid, Path, Headers, Body, ReqOpts) -&amp;gt; StreamRef ConnPid :: pid() Path :: iodata() Headers :: gun:req_headers() Body :: iodata() ReqOpts :: gun:req_opts() StreamRef :: gun:stream_ref() Create or replace a resource.
+The behavior of this function varies depending on whether a body is provided.</description>
+ </item>
+
+ <item>
<title>gun:request(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.request/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15378,6 +15901,17 @@ This is a general purpose function that should only be used when other method-sp
</item>
<item>
+ <title>gun:request(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.request/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.request/</guid>
+ <description>Name gun:request - Perform the given request
+Description request(ConnPid, Method, Path, Headers, Body) -&amp;gt; request(ConnPid, Method, Path, Headers, Body, #{}) request(ConnPid, Method, Path, Headers, Body, ReqOpts) -&amp;gt; StreamRef ConnPid :: pid() Method :: binary() Path :: iodata() Headers :: gun:req_headers() Body :: iodata() ReqOpts :: gun:req_opts() StreamRef :: gun:stream_ref() Perform the given request.
+This is a general purpose function that should only be used when other method-specific functions do not apply.</description>
+ </item>
+
+ <item>
<title>gun:set_owner(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun.set_owner/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15406,6 +15940,20 @@ Arguments ConnPid The pid of the Gun connection process.
</item>
<item>
+ <title>gun:set_owner(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.set_owner/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.set_owner/</guid>
+ <description>Name gun:set_owner - Set a new owner for the connection
+Description set_owner(ConnPid, OwnerPid) -&amp;gt; ok ConnPid :: pid() OwnerPid :: pid() Set a new owner for the connection.
+Only the current owner of the connection can set a new owner.
+Gun monitors the owner of the connection and automatically shuts down gracefully when the owner exits.
+Arguments ConnPid The pid of the Gun connection process.
+ OwnerPid The pid of the new owner for the connection.</description>
+ </item>
+
+ <item>
<title>gun:shutdown(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun.shutdown/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15430,6 +15978,18 @@ For HTTP/1.1 there is no such mechanism and Gun will close the connection once t
</item>
<item>
+ <title>gun:shutdown(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.shutdown/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.shutdown/</guid>
+ <description>Name gun:shutdown - Gracefully close the connection
+Description shutdown(ConnPid) -&amp;gt; ok ConnPid :: pid() Gracefully close the connection.
+Gun will wait for up to closing_timeout milliseconds before brutally closing the connection. The graceful shutdown mechanism varies between the different protocols:
+For HTTP/1.1 there is no such mechanism and Gun will close the connection once the current response is received. Any pipelined requests are immediately terminated. For HTTP/2 Gun will send a GOAWAY frame and wait for the existing streams to terminate.</description>
+ </item>
+
+ <item>
<title>gun:stream_info(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun.stream_info/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15450,6 +16010,16 @@ Description stream_info(ConnPid, StreamRef) -&amp;gt; {ok, undefined | Info} | {
</item>
<item>
+ <title>gun:stream_info(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.stream_info/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.stream_info/</guid>
+ <description>Name gun:stream_info - Obtain information about a stream
+Description stream_info(ConnPid, StreamRef) -&amp;gt; {ok, undefined | Info} | {error, not_connected} ConnPid :: pid() StreamRef :: gun:stream_ref() Info :: #{ ref =&amp;gt; gun:stream_ref(), reply_to =&amp;gt; pid(), state =&amp;gt; running | stopping, intermediaries =&amp;gt; [Intermediary], tunnel =&amp;gt; Tunnel } Intermediary :: #{ type =&amp;gt; connect | socks5, host =&amp;gt; inet:hostname() | inet:ip_address(), port =&amp;gt; inet:port_number(), transport =&amp;gt; tcp | tls, protocol =&amp;gt; http | http2 | socks | raw } Tunnel :: #{ transport =&amp;gt; tcp | tls, protocol =&amp;gt; http | http2 | socks | raw, origin_scheme =&amp;gt; binary() | undefined, origin_host =&amp;gt; inet:hostname() | inet:ip_address(), origin_port =&amp;gt; inet:port_number() } Obtain information about a stream.</description>
+ </item>
+
+ <item>
<title>gun:update_flow(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun.update_flow/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15478,6 +16048,20 @@ Arguments ConnPid The pid of the Gun connection process.
</item>
<item>
+ <title>gun:update_flow(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.update_flow/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.update_flow/</guid>
+ <description>Name gun:update_flow - Update a stream&amp;apos;s flow control value
+Description update_flow(ConnPid, StreamRef, Flow) -&amp;gt; ok ConnPid :: pid() StreamRef :: gun:stream_ref() Flow :: pos_integer() Update a stream&amp;apos;s flow control value.
+The flow value can only ever be incremented.
+This function does nothing for streams that have flow control disabled (which is the default).
+Arguments ConnPid The pid of the Gun connection process.
+ StreamRef Identifier of the stream for the original request.</description>
+ </item>
+
+ <item>
<title>gun:ws_send(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.ws_send/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15554,6 +16138,18 @@ Arguments ConnPid The pid of the Gun connection process.</description>
</item>
<item>
+ <title>gun:ws_send(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.ws_send/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.ws_send/</guid>
+ <description>Name gun:ws_send - Send Websocket frames
+Description ws_send(ConnPid, StreamRef, Frames) -&amp;gt; ok ConnPid :: pid() StreamRef :: gun:stream_ref() Frames :: Frame | [Frame] Frame :: close | ping | pong | {text | binary | close | ping | pong, iodata()} | {close, non_neg_integer(), iodata()} Send Websocket frames.
+The connection must first be upgraded to Websocket using the function gun:ws_upgrade(3).
+Arguments ConnPid The pid of the Gun connection process.</description>
+ </item>
+
+ <item>
<title>gun:ws_upgrade(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun.ws_upgrade/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15626,6 +16222,18 @@ HTTP/1.1 cannot handle Websocket and HTTP requests concurrently. The upgrade, if
</item>
<item>
+ <title>gun:ws_upgrade(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun.ws_upgrade/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun.ws_upgrade/</guid>
+ <description>Name gun:ws_upgrade - Upgrade to Websocket
+Description ws_upgrade(ConnPid, Path) -&amp;gt; ws_upgrade(ConnPid, Path, []) ws_upgrade(ConnPid, Path, Headers) -&amp;gt; StreamRef ws_upgrade(ConnPid, Path, Headers, WsOpts) -&amp;gt; StreamRef ConnPid :: pid() Path :: iodata() Headers :: gun:req_headers() WsOpts :: gun:ws_opts() StreamRef :: gun:stream_ref() Upgrade to Websocket.
+The behavior of this function depends on the protocol selected.
+HTTP/1.1 cannot handle Websocket and HTTP requests concurrently. The upgrade, if successful, will result in the complete takeover of the connection.</description>
+ </item>
+
+ <item>
<title>gun_cookies(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun_cookies/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15650,6 +16258,18 @@ init init(Opts :: any()) -&amp;gt; gun_cookies:store() Initialize the cookie st
</item>
<item>
+ <title>gun_cookies(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_cookies/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_cookies/</guid>
+ <description>Name gun_cookies - Cookie store engine
+Description The gun_cookies module implements a cookie store engine. It will be used by Gun when a cookie store is configured. It also defines the interface and provides functions used to implement cookie store backends.
+Callbacks Cookie store backends implement the following interface. Functions are organized by theme: initialization, querying, storing and garbage collecting:
+init init(Opts :: any()) -&amp;gt; gun_cookies:store() Initialize the cookie store.</description>
+ </item>
+
+ <item>
<title>gun_cookies:domain_match(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun_cookies.domain_match/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15680,6 +16300,21 @@ Changelog 2.0: Function introduced. Examples Perform a domain match Match = gu
</item>
<item>
+ <title>gun_cookies:domain_match(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_cookies.domain_match/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_cookies.domain_match/</guid>
+ <description>Name gun_cookies:domain_match - Cookie domain match
+Description domain_match(String, DomainString) -&amp;gt; boolean() String :: binary() DomainString :: binary() Cookie domain match.
+This function can be used when implementing the set_cookie_secure_match callback of a cookie store.
+Arguments String The string to match.
+ DomainString The domain string that will be matched against.
+ Return value Returns true when String domain-matches DomainString, and false otherwise.
+Changelog 2.0: Function introduced. Examples Perform a domain match Match = gun_cookies:domain_match(Domain, CookieDomain).</description>
+ </item>
+
+ <item>
<title>gun_cookies:path_match(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun_cookies.path_match/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15710,6 +16345,21 @@ Changelog 2.0: Function introduced. Examples Perform a path match Match = gun_
</item>
<item>
+ <title>gun_cookies:path_match(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_cookies.path_match/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_cookies.path_match/</guid>
+ <description>Name gun_cookies:path_match - Cookie path match
+Description path_match(ReqPath, CookiePath) -&amp;gt; boolean() ReqPath :: binary() CookiePath :: binary() Cookie path match.
+This function can be used when implementing the set_cookie_secure_match callback of a cookie store.
+Arguments ReqPath The request path to match.
+ CookiePath The cookie path that will be matched against.
+ Return value Returns true when ReqPath path-matches CookiePath, and false otherwise.
+Changelog 2.0: Function introduced. Examples Perform a path match Match = gun_cookies:path_match(ReqPath, CookiePath).</description>
+ </item>
+
+ <item>
<title>gun_cookies_list(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun_cookies_list/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15736,6 +16386,19 @@ Types opts() opts() :: #{ } Cookie store backend options.</description>
</item>
<item>
+ <title>gun_cookies_list(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_cookies_list/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_cookies_list/</guid>
+ <description>Name gun_cookies_list - Cookie store backend: in-memory, per connection
+Description The gun_cookies_list module implements a cookie store backend that keeps all the cookie data in-memory and tied to a specific connection.
+It is possible to implement a custom backend on top of gun_cookies_list in order to add persistence or sharing properties.
+Exports This module implements the callbacks defined in gun_cookies(3).
+Types opts() opts() :: #{ } Cookie store backend options.</description>
+ </item>
+
+ <item>
<title>gun_data(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_data/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15814,6 +16477,19 @@ The response body may be terminated either by a data message with the flag fin s
</item>
<item>
+ <title>gun_data(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_data/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_data/</guid>
+ <description>Name gun_data - Response body
+Description {gun_data, ConnPid, StreamRef, IsFin, Data} ConnPid :: pid() StreamRef :: gun:stream_ref() IsFin :: fin | nofin Data :: binary() Response body.
+This message informs the relevant process that the server sent a all or part of the body for the response to the original request.
+A data message is always preceded by a response message.
+The response body may be terminated either by a data message with the flag fin set or by a gun_trailers(3) message.</description>
+ </item>
+
+ <item>
<title>gun_down(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_down/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15886,6 +16562,18 @@ When the connection goes back up, Gun will not attempt to retry requests.</descr
</item>
<item>
+ <title>gun_down(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_down/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_down/</guid>
+ <description>Name gun_down - The connection is down
+Description {gun_down, ConnPid, Protocol, Reason, KilledStreams} ConnPid :: pid() Protocol :: http | http2 | socks | ws Reason :: any() KilledStreams :: [gun:stream_ref()] The connection is down.
+This message informs the owner process that the connection was lost. Depending on the retry and retry_timeout options Gun may automatically attempt to reconnect.
+When the connection goes back up, Gun will not attempt to retry requests.</description>
+ </item>
+
+ <item>
<title>gun_error(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_error/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15952,6 +16640,17 @@ These messages inform the relevant process that an error occurred. A reference i
</item>
<item>
+ <title>gun_error(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_error/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_error/</guid>
+ <description>Name gun_error - Stream or connection-wide error
+Description {gun_error, ConnPid, StreamRef, Reason} {gun_error, ConnPid, Reason} ConnPid :: pid() StreamRef :: gun:stream_ref() Reason :: any() Stream or connection-wide error.
+These messages inform the relevant process that an error occurred. A reference is given when the error pertains to a specific stream. Connection-wide errors do not imply that the connection is no longer usable, they are used for all errors that are not specific to a stream.</description>
+ </item>
+
+ <item>
<title>gun_event(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun_event/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -15978,6 +16677,19 @@ init init_event() :: #{ owner := pid(), transport := tcp | tls, origin_scheme :=
</item>
<item>
+ <title>gun_event(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_event/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_event/</guid>
+ <description>Name gun_event - Events
+Description The gun_event module provides the callback interface and types for implementing event handlers.
+Callbacks Event handlers implement the following interface. Because types are tied to specific events, they are documented alongside them. All event types are exported and can be referred to as gun_event:Type().
+The events are ordered by the order they are likely to be triggered, with the most frequent events listed first.
+init init_event() :: #{ owner := pid(), transport := tcp | tls, origin_scheme := binary(), origin_host := inet:hostname() | inet:ip_address(), origin_port := inet:port_number(), opts := gun:opts() } init(init_event(), State) -&amp;gt; State Gun is initializing.</description>
+ </item>
+
+ <item>
<title>gun_inform(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_inform/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -16050,6 +16762,31 @@ Informational responses are only intermediate responses and provide no guarantee
</item>
<item>
+ <title>gun_inform(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_inform/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_inform/</guid>
+ <description>Name gun_inform - Informational response
+Description {gun_inform, ConnPid, StreamRef, Status, Headers} ConnPid :: pid() StreamRef :: gun:stream_ref() Status :: 100..199 Headers :: [{binary(), binary()}] Informational response.
+This message informs the relevant process that the server sent an informational response to the original request.
+Informational responses are only intermediate responses and provide no guarantees as to what the final response will be. An informational response always precedes the response to the original request.</description>
+ </item>
+
+ <item>
+ <title>gun_notify(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_notify/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_notify/</guid>
+ <description>Name gun_notify - Optional event notification
+Description {gun_notify, ConnPid, settings_changed, Settings} ConnPid :: pid() Settings :: map() Optional event notification.
+Only two event notifications currently exist:
+settings_changed informs the user that the server has modified its connection settings. ping_ack informs the user that acknowledgement for a user ping was received. Elements ConnPid The pid of the Gun connection process.
+ Event Identifier for the event. Currently can only be settings_changed or ping_ack.</description>
+ </item>
+
+ <item>
<title>gun_push(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_push/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -16122,6 +16859,18 @@ A server-initiated push message always precedes the response to the original req
</item>
<item>
+ <title>gun_push(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_push/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_push/</guid>
+ <description>Name gun_push - Server-initiated push
+Description {gun_push, ConnPid, StreamRef, NewStreamRef, Method, URI, Headers} ConnPid :: pid() StreamRef :: gun:stream_ref() NewStreamRef :: gun:stream_ref() Method :: binary() URI :: binary() Headers :: [{binary(), binary()}] Server-initiated push.
+This message informs the relevant process that the server is pushing a resource related to the effective target URI of the original request.
+A server-initiated push message always precedes the response to the original request.</description>
+ </item>
+
+ <item>
<title>gun_response(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_response/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -16206,6 +16955,20 @@ Elements ConnPid The pid of the Gun connection process.
</item>
<item>
+ <title>gun_response(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_response/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_response/</guid>
+ <description>Name gun_response - Response
+Description {gun_response, ConnPid, StreamRef, IsFin, Status, Headers} ConnPid :: pid() StreamRef :: gun:stream_ref() IsFin :: fin | nofin Status :: non_neg_integer() Headers :: [{binary(), binary()}] Response.
+This message informs the relevant process that the server sent a response to the original request.
+Elements ConnPid The pid of the Gun connection process.
+ StreamRef Identifier of the stream for the original request.
+ IsFin Whether this message terminates the response.</description>
+ </item>
+
+ <item>
<title>gun_trailers(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_trailers/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -16296,6 +17059,21 @@ Elements ConnPid The pid of the Gun connection process.
</item>
<item>
+ <title>gun_trailers(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_trailers/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_trailers/</guid>
+ <description>Name gun_trailers - Response trailers
+Description {gun_trailers, ConnPid, StreamRef, Headers} ConnPid :: pid() StreamRef :: gun:stream_ref() Headers :: [{binary(), binary()}] Response trailers.
+This message informs the relevant process that the server sent response trailers for the response to the original request.
+A trailers message terminates the response.
+Elements ConnPid The pid of the Gun connection process.
+ StreamRef Identifier of the stream for the original request.
+ Headers Trailing headers sent after the response body.</description>
+ </item>
+
+ <item>
<title>gun_tunnel_up(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun_tunnel_up/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -16320,6 +17098,18 @@ If Gun is configured to connect to another SOCKS server, then the connection is
</item>
<item>
+ <title>gun_tunnel_up(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_tunnel_up/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_tunnel_up/</guid>
+ <description>Name gun_tunnel_up - The tunnel is up
+Description {gun_tunnel_up, ConnPid, StreamRef, Protocol} ConnPid :: pid() StreamRef :: gun:stream_ref() | undefined Protocol :: http | http2 | socks The tunnel is up.
+This message informs the owner/calling process that the connection completed through the SOCKS or CONNECT proxy.
+If Gun is configured to connect to another SOCKS server, then the connection is not usable yet. One or more gun_tunnel_up(3) messages will follow.</description>
+ </item>
+
+ <item>
<title>gun_up(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_up/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -16394,6 +17184,19 @@ Otherwise, Gun will start processing the messages it received while waiting for
</item>
<item>
+ <title>gun_up(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_up/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_up/</guid>
+ <description>Name gun_up - The connection is up
+Description {gun_up, ConnPid, Protocol} ConnPid :: pid() Protocol :: http | http2 | raw | socks The connection is up.
+This message informs the owner process that the connection or reconnection completed.
+If Gun is configured to connect to a Socks server, then the connection is not usable yet. One or more gun_tunnel_up(3) messages will follow.
+Otherwise, Gun will start processing the messages it received while waiting for the connection to be up.</description>
+ </item>
+
+ <item>
<title>gun_upgrade(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_upgrade/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -16466,6 +17269,18 @@ The exact semantics of this message depend on the original protocol. HTTP/1.1 up
</item>
<item>
+ <title>gun_upgrade(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_upgrade/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_upgrade/</guid>
+ <description>Name gun_upgrade - Successful protocol upgrade
+Description {gun_upgrade, ConnPid, StreamRef, Protocols, Headers} ConnPid :: pid() StreamRef :: gun:stream_ref() Protocols :: [&amp;lt;&amp;lt;&#34;websocket&#34;&amp;gt;&amp;gt;] Headers :: [{binary(), binary()}] Successful protocol upgrade.
+This message informs the relevant process that the server accepted to upgrade to one or more protocols given in the original request.
+The exact semantics of this message depend on the original protocol. HTTP/1.1 upgrades apply to the entire connection. HTTP/2 uses a different mechanism which allows switching specific streams to a different protocol.</description>
+ </item>
+
+ <item>
<title>gun_ws(3)</title>
<link>https://ninenines.eu/docs/en/gun/1.0/manual/gun_ws/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -16542,6 +17357,18 @@ This message can only be sent on streams that were upgraded to the Websocket pro
</item>
<item>
+ <title>gun_ws(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_ws/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_ws/</guid>
+ <description>Name gun_ws - Websocket frame
+Description {gun_ws, ConnPid, StreamRef, Frame} ConnPid :: pid() StreamRef :: gun:stream_ref() Frame :: close | ping | pong | {text | binary | close, binary()} | {close, non_neg_integer(), binary()} | {ping | pong, binary()} Websocket frame.
+This message informs the relevant process that the server sent the enclosed frame.
+This message can only be sent on streams that were upgraded to the Websocket protocol.</description>
+ </item>
+
+ <item>
<title>gun_ws_protocol(3)</title>
<link>https://ninenines.eu/docs/en/gun/2.0/manual/gun_ws_protocol/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
@@ -16568,6 +17395,19 @@ ReplyTo The pid of the process that owns the stream and to which messages will b
</item>
<item>
+ <title>gun_ws_protocol(3)</title>
+ <link>https://ninenines.eu/docs/en/gun/2.2/manual/gun_ws_protocol/</link>
+ <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
+
+ <guid>https://ninenines.eu/docs/en/gun/2.2/manual/gun_ws_protocol/</guid>
+ <description>Name gun_ws_protocol - Websocket subprotocols
+Description The gun_ws_protocol module provides the callback interface and types for implementing Websocket subprotocols.
+Callbacks Websocket subprotocols implement the following interface.
+init init(ReplyTo, StreamRef, Headers, Opts) -&amp;gt; {ok, State} ReplyTo :: pid() StreamRef :: reference() Headers :: cow_http:headers() Opts :: gun:ws_opts() State :: protocol_state() Initialize the Websocket protocol.
+ReplyTo The pid of the process that owns the stream and to which messages will be sent to.</description>
+ </item>
+
+ <item>
<title>HTTP status codes(7)</title>
<link>https://ninenines.eu/docs/en/cowboy/2.10/manual/http_status_codes/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>