<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gun.git, branch http2-websocket</title>
<subtitle>HTTP/1.1, HTTP/2 and Websocket client for Erlang/OTP.
</subtitle>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/'/>
<entry>
<title>Initial implementation of Websocket over HTTP/2</title>
<updated>2020-11-02T16:16:57+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2020-10-22T16:48:06+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/commit/?id=d5f1a47e9ab758a51b23440eb72a0251527f3f7b'/>
<id>d5f1a47e9ab758a51b23440eb72a0251527f3f7b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix cookie handling when tunnel and origin schemes mismatch</title>
<updated>2020-10-21T18:17:18+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2020-10-21T17:15:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/commit/?id=465d072abf4a76104d4562ed15345b27fe9a0cff'/>
<id>465d072abf4a76104d4562ed15345b27fe9a0cff</id>
<content type='text'>
The cookie_ignore_informational has been moved to http_opts and
http2_opts.

Also fix an issue when using 'protocols' in gun:open.
When connecting via TLS the protocol's options were
discarded.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The cookie_ignore_informational has been moved to http_opts and
http2_opts.

Also fix an issue when using 'protocols' in gun:open.
When connecting via TLS the protocol's options were
discarded.
</pre>
</div>
</content>
</entry>
<entry>
<title>Disconnect when setopts returns an error</title>
<updated>2020-10-20T09:02:03+00:00</updated>
<author>
<name>Viktor Söderqvist</name>
<email>viktor.soderqvist@est.tech</email>
</author>
<published>2020-10-19T11:12:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/commit/?id=69f19635df64ea48af3120c9685f7ad51b338f8f'/>
<id>69f19635df64ea48af3120c9685f7ad51b338f8f</id>
<content type='text'>
There is a race condition: After receiving data, before setting the
socket back to {active, once}, the server may have closed the socket
or an error may have occurred. Since the socket was in passive mode,
no message is received. Handling the return value of setopts solves
the issue.

Amended by Loïc Hoguin to handle the return value from the active/1
function call.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There is a race condition: After receiving data, before setting the
socket back to {active, once}, the server may have closed the socket
or an error may have occurred. Since the socket was in passive mode,
no message is received. Handling the return value of setopts solves
the issue.

Amended by Loïc Hoguin to handle the return value from the active/1
function call.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix cookies for tunnels</title>
<updated>2020-10-19T16:01:40+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2020-10-19T16:01:40+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/commit/?id=3047f0a5ef1872a1d8533c90bccb434d575d98f0'/>
<id>3047f0a5ef1872a1d8533c90bccb434d575d98f0</id>
<content type='text'>
There are still small issues left to fix. In particular the
set_cookie command should be replaced with doing the same
in the protocol itself so that the scheme is correct. So
CookieStore must be propagated to all callbacks.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There are still small issues left to fix. In particular the
set_cookie command should be replaced with doing the same
in the protocol itself so that the scheme is correct. So
CookieStore must be propagated to all callbacks.
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove commented code</title>
<updated>2020-10-16T09:57:42+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2020-10-16T09:57:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/commit/?id=91c1820b9ad8812b2a8c9960da0a460b0522b6e0'/>
<id>91c1820b9ad8812b2a8c9960da0a460b0522b6e0</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove the transport_changed event</title>
<updated>2020-10-16T09:43:05+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2020-10-16T09:43:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/commit/?id=be93437f45446ef8109538a3614ba538c9ce6715'/>
<id>be93437f45446ef8109538a3614ba538c9ce6715</id>
<content type='text'>
It doesn't provide any new information compared to the other
events.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It doesn't provide any new information compared to the other
events.
</pre>
</div>
</content>
</entry>
<entry>
<title>Add or fix events inside or related to CONNECT tunnels</title>
<updated>2020-10-16T09:33:31+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2020-10-16T09:33:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/commit/?id=356bf47edeb5b78765200e78d9b7a48aa98b97f5'/>
<id>356bf47edeb5b78765200e78d9b7a48aa98b97f5</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Propagate timeouts to the right layer in HTTP/2 tunnels</title>
<updated>2020-10-07T14:35:17+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2020-10-07T14:35:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/commit/?id=f2e8d103dd7827251fa726c42e307e42cef8a3dc'/>
<id>f2e8d103dd7827251fa726c42e307e42cef8a3dc</id>
<content type='text'>
This temporarily depends on Cowlib master.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This temporarily depends on Cowlib master.
</pre>
</div>
</content>
</entry>
<entry>
<title>Update Erlang.mk</title>
<updated>2020-10-07T11:45:14+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2020-10-07T11:45:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/commit/?id=4496f8e25702810a910fdc8d7a5edaf04bf54690'/>
<id>4496f8e25702810a910fdc8d7a5edaf04bf54690</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Default keepalive to infinity for all protocols</title>
<updated>2020-10-07T09:47:02+00:00</updated>
<author>
<name>Loïc Hoguin</name>
<email>essen@ninenines.eu</email>
</author>
<published>2020-10-07T09:44:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.ninenines.eu/gun.git/commit/?id=556645d8d73b1de8ba453ee2fba2bc659a7962f6'/>
<id>556645d8d73b1de8ba453ee2fba2bc659a7962f6</id>
<content type='text'>
For HTTP/2 some servers are not fond of receiving pings,
especially if there's no stream at the time. (particularly
gRPC servers). This is an odd decision for sure. Rather
than trying to accomodate for their logic the ping is no
longer sent by default.

For Websocket sending a ping is a new feature in Gun 2.0
so I'm just being conservative there.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For HTTP/2 some servers are not fond of receiving pings,
especially if there's no stream at the time. (particularly
gRPC servers). This is an odd decision for sure. Rather
than trying to accomodate for their logic the ping is no
longer sent by default.

For Websocket sending a ping is a new feature in Gun 2.0
so I'm just being conservative there.
</pre>
</div>
</content>
</entry>
</feed>
