1.0.0-rc.1 has been released!
Gun is an HTTP/1.1, HTTP/2 and Websocket client for Erlang/OTP.
Gun provides an asynchronous interface and will keep the connection open to the server, reconnecting as necessary.
Gun has existed for many years as the test client for Cowboy and is now mature enough to receive a proper version. Gun is battle tested by customers and other users but is not the most well tested client there is.
This release candidate differs from previous tags in the way Websocket-related messages are handled: the
gun_ws_upgrade message is now
gun_upgrade, and the
gun_ws message has an extra element. The dependency on Ranch has also been removed. In addition some undocumented features have been modified; they will be documented in future releases.
I have given the Cowboy treatment to the Gun manual: a separate page per function call with all kind of useful information, including examples. Since Gun provides an asynchronous interface, each message also has a separate manual page. Check it out: https://ninenines.eu/docs/en/gun/1.0/manual/
Gun 1.0 will be released once customers projects are updated and I confirm everything works as intended.
You can donate to this project via BountySource. These funds are used to pay for additional servers for testing. A new server was added last month and allows me to test with additional Linux distributions Alpine, CentOS and Debian. Thanks in advance!
As usual, feedback is appreciated, and issues or questions should be sent via Github tickets. Thanks!