summaryrefslogtreecommitdiffstats
path: root/_build/content/articles/gun-2.0.0-rc.1.asciidoc
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2020-11-20 11:08:59 +0100
committerLoïc Hoguin <[email protected]>2020-11-20 11:08:59 +0100
commit338611332e05e2a35a70f11edd36b050843bcee8 (patch)
tree7d7f76f9e1234b8774bb33aafb7a3fd8a637d5d5 /_build/content/articles/gun-2.0.0-rc.1.asciidoc
parent39edafff315c25d90aa0b264559a5fa14153b62f (diff)
downloadninenines.eu-338611332e05e2a35a70f11edd36b050843bcee8.tar.gz
ninenines.eu-338611332e05e2a35a70f11edd36b050843bcee8.tar.bz2
ninenines.eu-338611332e05e2a35a70f11edd36b050843bcee8.zip
Gun 2.0.0-rc.1
Diffstat (limited to '_build/content/articles/gun-2.0.0-rc.1.asciidoc')
-rw-r--r--_build/content/articles/gun-2.0.0-rc.1.asciidoc71
1 files changed, 71 insertions, 0 deletions
diff --git a/_build/content/articles/gun-2.0.0-rc.1.asciidoc b/_build/content/articles/gun-2.0.0-rc.1.asciidoc
new file mode 100644
index 00000000..3d99038f
--- /dev/null
+++ b/_build/content/articles/gun-2.0.0-rc.1.asciidoc
@@ -0,0 +1,71 @@
++++
+date = "2020-11-19T07:00:00+01:00"
+title = "Gun 2.0 release candidate 1"
+
++++
+
+Gun `2.0.0-rc.1` has been released!
+
+Gun 2.0 adds a ton of features along with a small number
+of breaking changes.
+
+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 ->
+Proxy2 -> Origin are tested and known to work.
+
+You can watch a demo of the tunnel support below. This
+video is the first of its kind. If you like it, or you
+don't like it, please tell me! I intend to continue
+producing those on a semi-regular basis. Watch:
+
+++++
+<video src="/res/gun2_unlimited_proxy_demo.webm" controls
+ width="640" height="360">
+</video>
+++++
+
+Gun 2.0 can now be used to send and receive raw data,
+as if it was just a normal socket. This can be
+useful when needing to connect through a number
+of HTTP/SOCKS5 proxies, allowing the use of Gun's
+great proxying capabilities for non-Web protocols.
+This can also be useful when performing HTTP/1.1
+Upgrade to custom protocols.
+
+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.
+
+Gun 2.0 greatly improves the HTTP/2 performance when it
+comes to receiving large response bodies; and when receiving
+response bodies from many separate requests concurrently.
+
+Gun now shares much of its HTTP/2 code with Cowboy,
+including the HTTP/2 state machine. Numerous issues were
+fixed as a result because the Cowboy implementation was
+much more advanced.
+
+The Gun connection process is now implemented using `gen_statem`.
+
+Gun 2.0 requires Erlang/OTP 22.0 or greater and is tested
+and supported on Linux, FreeBSD, macOS and Windows.
+
+A complete
+list of changes can be found in the migration guide:
+https://ninenines.eu/docs/en/gun/2.0/guide/migrating_from_1.3/[Migrating from Gun 1.3 to 2.0].
+
+At the time of writing my next big task will be implementing
+HTTP/3 and QUIC. In order to maximize the time I spend on
+this task I am looking for funds. You can use the sponsors
+link below or contact me with offers at
+to any and all suggestions.
+
+You can donate to this project via
+https://github.com/sponsors/essen[GitHub Sponsors].
+
+As usual, feedback is appreciated, and issues or
+questions should be sent via Github tickets. Thanks!