[erlang-questions] [ANN] Gun 2.0 pre-release 1 + Gun 1.3.1

Loïc Hoguin essen@REDACTED
Fri Sep 27 10:49:29 CEST 2019


Gun 2.0.0-pre.1 has been released!

Gun is an HTTP/1.1, HTTP/2 and Websocket client for Erlang/OTP.

First a heads up: while reviewing the release notes for the 2.0 
pre-release I found that one of the bugs fixed could contribute to 
security vulnerabilities in certain systems (using Gun inside a proxy in 
specific environments) so I urge everyone to upgrade to at least Gun 
1.3.1. See 
https://ninenines.eu/docs/en/gun/1.3/guide/migrating_from_1.3/ for 
details on this issue.

If you can I would highly recommend using the 2.0 pre-release. It 
includes new features such as graceful shutdown of the connection, flow 
control, event handlers (with MANY events) and the HTTP/2 code and 
performance has greatly been improved.

On the proxy side of things, Gun now supports tunneling TLS connections 
over TLS! Socks5 support has also been added and many improvements were 
made to the existing proxy support. Now Gun can connect using TCP/TLS 
through any combination and number of TCP/TLS HTTP/Socks5 proxies.

Gun can also be used for arbitrary protocols. In this case Gun acts more 
like a socket. This can be used to make Gun tunnel data through proxies, 
or to use HTTP/1.1 Upgrade to speak to non-HTTP/Websocket protocols.

The next pre-release will focus on adding HTTP/2 CONNECT support for 
tunneling through HTTP/2 proxies, and at the same time implement 
Websocket over HTTP/2 since that uses the same mechanism.

See the announcement article and the migration guide for details!

* https://ninenines.eu/articles/gun-2.0.0-pre.1/
* https://ninenines.eu/docs/en/gun/2.0/guide/migrating_from_1.3/


Loïc Hoguin

More information about the erlang-questions mailing list