+++
date = "2018-06-04T10:00:00+01:00"
title = "Gun 1.0 release candidate 1"

+++

Gun `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
https://salt.bountysource.com/teams/ninenines[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!
