From eb808a3f8bbd97d2a2ea0114b43b708a17b44066 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Fri, 11 Apr 2025 14:34:51 +0200 Subject: Gun 2.2.0 --- articles/asciideck/index.html | 4 + articles/cowboy-2.0.0-pre.4/index.html | 4 + articles/cowboy-2.0.0-rc.1/index.html | 4 + articles/cowboy-2.0.0-rc.2/index.html | 4 + articles/cowboy-2.0.0/index.html | 4 + articles/cowboy-2.1.0/index.html | 4 + articles/cowboy-2.11.0/index.html | 4 + articles/cowboy-2.12.0/index.html | 4 + articles/cowboy-2.13.0-performance/index.html | 4 + articles/cowboy-2.13.0/index.html | 4 + articles/cowboy-2.2.0/index.html | 4 + articles/cowboy-2.3.0/index.html | 4 + articles/cowboy-2.4.0/index.html | 4 + articles/cowboy-2.5.0/index.html | 4 + articles/cowboy-2.6.0/index.html | 4 + articles/cowboy-2.7.0/index.html | 4 + articles/cowboy-2.8.0/index.html | 4 + articles/cowboy-2.9.0/index.html | 4 + articles/cowboy2-qs/index.html | 4 + articles/discord-server/index.html | 4 + articles/dont-let-it-crash/index.html | 4 + .../erlang-meetup-10-septembre-2019/index.html | 4 + articles/erlang-scalability/index.html | 4 + articles/erlang-validate-utf8/index.html | 4 + articles/erlang.mk-and-relx/index.html | 4 + .../index.html | 4 + articles/erlanger-playbook/index.html | 4 + articles/farwest-funded/index.html | 4 + articles/github-sponsors/index.html | 4 + articles/gun-1.0.0-rc.1/index.html | 4 + articles/gun-1.0.0/index.html | 4 + articles/gun-1.2.0/index.html | 4 + articles/gun-1.3.0/index.html | 4 + articles/gun-2.0.0-pre.1/index.html | 4 + articles/gun-2.0.0-pre.2/index.html | 4 + articles/gun-2.0.0-rc.1/index.html | 4 + articles/gun-2.0.0/index.html | 4 + articles/gun-2.2.0/index.html | 381 +++++++++++++++++++++ articles/index.html | 36 +- articles/index.xml | 14 +- articles/january-2014-status/index.html | 4 + articles/joe_the_rubber_duck/index.html | 4 + articles/merry-christmas-2018/index.html | 4 + articles/merry-christmas-2019/index.html | 4 + articles/ml-archives/index.html | 4 + articles/on-open-source/index.html | 4 + articles/otp-26/index.html | 4 + articles/page/2/index.html | 34 +- articles/page/3/index.html | 35 +- articles/page/4/index.html | 18 + articles/ranch-1.3/index.html | 4 + articles/ranch-1.6.0/index.html | 4 + articles/ranch-1.7.0/index.html | 4 + articles/ranch-2.0.0-rc.1/index.html | 4 + articles/ranch-2.0.0/index.html | 4 + articles/ranch-2.1.0/index.html | 4 + articles/ranch-2.2.0/index.html | 4 + articles/ranch-ftp/index.html | 4 + articles/the-elephant-in-the-room/index.html | 4 + articles/the-gateway-trilogy/index.html | 4 + articles/the-story-so-far/index.html | 4 + articles/tictactoe/index.html | 4 + articles/website-update/index.html | 4 + articles/xerl-0.1-empty-modules/index.html | 4 + articles/xerl-0.2-two-modules/index.html | 4 + articles/xerl-0.3-atomic-expressions/index.html | 4 + articles/xerl-0.4-expression-separator/index.html | 4 + articles/xerl-0.5-intermediate-module/index.html | 4 + 68 files changed, 713 insertions(+), 53 deletions(-) create mode 100644 articles/gun-2.2.0/index.html (limited to 'articles') diff --git a/articles/asciideck/index.html b/articles/asciideck/index.html index ccfc586a..cc8489dd 100644 --- a/articles/asciideck/index.html +++ b/articles/asciideck/index.html @@ -109,6 +109,10 @@ http://www.gnu.org/software/src-highlite --> +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.0.0-pre.4/index.html b/articles/cowboy-2.0.0-pre.4/index.html index a9851d44..485cd940 100644 --- a/articles/cowboy-2.0.0-pre.4/index.html +++ b/articles/cowboy-2.0.0-pre.4/index.html @@ -128,6 +128,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.0.0-rc.1/index.html b/articles/cowboy-2.0.0-rc.1/index.html index dd909d01..a12f6317 100644 --- a/articles/cowboy-2.0.0-rc.1/index.html +++ b/articles/cowboy-2.0.0-rc.1/index.html @@ -99,6 +99,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.0.0-rc.2/index.html b/articles/cowboy-2.0.0-rc.2/index.html index 3027b9af..4a1f11af 100644 --- a/articles/cowboy-2.0.0-rc.2/index.html +++ b/articles/cowboy-2.0.0-rc.2/index.html @@ -92,6 +92,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.0.0/index.html b/articles/cowboy-2.0.0/index.html index 2742e197..f3ef2a8a 100644 --- a/articles/cowboy-2.0.0/index.html +++ b/articles/cowboy-2.0.0/index.html @@ -98,6 +98,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.1.0/index.html b/articles/cowboy-2.1.0/index.html index 29ac1887..2880ce5d 100644 --- a/articles/cowboy-2.1.0/index.html +++ b/articles/cowboy-2.1.0/index.html @@ -95,6 +95,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.11.0/index.html b/articles/cowboy-2.11.0/index.html index f78364a5..e9e52b70 100644 --- a/articles/cowboy-2.11.0/index.html +++ b/articles/cowboy-2.11.0/index.html @@ -88,6 +88,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.12.0/index.html b/articles/cowboy-2.12.0/index.html index 118d825f..9f8d123c 100644 --- a/articles/cowboy-2.12.0/index.html +++ b/articles/cowboy-2.12.0/index.html @@ -89,6 +89,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.13.0-performance/index.html b/articles/cowboy-2.13.0-performance/index.html index fb1a0c59..178c78ae 100644 --- a/articles/cowboy-2.13.0-performance/index.html +++ b/articles/cowboy-2.13.0-performance/index.html @@ -103,6 +103,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.13.0/index.html b/articles/cowboy-2.13.0/index.html index 0aec7b32..cbbb4a86 100644 --- a/articles/cowboy-2.13.0/index.html +++ b/articles/cowboy-2.13.0/index.html @@ -88,6 +88,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.2.0/index.html b/articles/cowboy-2.2.0/index.html index 871dc33c..e7d3bf2d 100644 --- a/articles/cowboy-2.2.0/index.html +++ b/articles/cowboy-2.2.0/index.html @@ -93,6 +93,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.3.0/index.html b/articles/cowboy-2.3.0/index.html index ad41bb42..c47739af 100644 --- a/articles/cowboy-2.3.0/index.html +++ b/articles/cowboy-2.3.0/index.html @@ -85,6 +85,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.4.0/index.html b/articles/cowboy-2.4.0/index.html index a71d8046..efb0b980 100644 --- a/articles/cowboy-2.4.0/index.html +++ b/articles/cowboy-2.4.0/index.html @@ -87,6 +87,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.5.0/index.html b/articles/cowboy-2.5.0/index.html index e6f6be96..6bb89dc8 100644 --- a/articles/cowboy-2.5.0/index.html +++ b/articles/cowboy-2.5.0/index.html @@ -91,6 +91,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.6.0/index.html b/articles/cowboy-2.6.0/index.html index 6cf18362..97dc5d90 100644 --- a/articles/cowboy-2.6.0/index.html +++ b/articles/cowboy-2.6.0/index.html @@ -88,6 +88,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.7.0/index.html b/articles/cowboy-2.7.0/index.html index 604508be..325dc752 100644 --- a/articles/cowboy-2.7.0/index.html +++ b/articles/cowboy-2.7.0/index.html @@ -89,6 +89,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.8.0/index.html b/articles/cowboy-2.8.0/index.html index 8df53254..ab6562f3 100644 --- a/articles/cowboy-2.8.0/index.html +++ b/articles/cowboy-2.8.0/index.html @@ -88,6 +88,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy-2.9.0/index.html b/articles/cowboy-2.9.0/index.html index 105fd467..d915ec37 100644 --- a/articles/cowboy-2.9.0/index.html +++ b/articles/cowboy-2.9.0/index.html @@ -87,6 +87,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/cowboy2-qs/index.html b/articles/cowboy2-qs/index.html index 6202e813..0807bf78 100644 --- a/articles/cowboy2-qs/index.html +++ b/articles/cowboy2-qs/index.html @@ -129,6 +129,10 @@ http://www.gnu.org/software/src-highlite --> +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/discord-server/index.html b/articles/discord-server/index.html index 8009c348..013679b6 100644 --- a/articles/discord-server/index.html +++ b/articles/discord-server/index.html @@ -85,6 +85,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/dont-let-it-crash/index.html b/articles/dont-let-it-crash/index.html index 42524da9..ddb01724 100644 --- a/articles/dont-let-it-crash/index.html +++ b/articles/dont-let-it-crash/index.html @@ -104,6 +104,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/erlang-meetup-10-septembre-2019/index.html b/articles/erlang-meetup-10-septembre-2019/index.html index 409f0b81..f6901661 100644 --- a/articles/erlang-meetup-10-septembre-2019/index.html +++ b/articles/erlang-meetup-10-septembre-2019/index.html @@ -84,6 +84,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/erlang-scalability/index.html b/articles/erlang-scalability/index.html index 9a1aa8d6..77064a99 100644 --- a/articles/erlang-scalability/index.html +++ b/articles/erlang-scalability/index.html @@ -116,6 +116,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/erlang-validate-utf8/index.html b/articles/erlang-validate-utf8/index.html index 7e44c1dd..23ac359c 100644 --- a/articles/erlang-validate-utf8/index.html +++ b/articles/erlang-validate-utf8/index.html @@ -232,6 +232,10 @@ http://www.gnu.org/software/src-highlite --> +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/erlang.mk-and-relx/index.html b/articles/erlang.mk-and-relx/index.html index d1385ad0..464d3fe2 100644 --- a/articles/erlang.mk-and-relx/index.html +++ b/articles/erlang.mk-and-relx/index.html @@ -118,6 +118,10 @@ cowboy-0.8.5 erlydtl-0.7.0 ninenines-0.2.0 stdlib-1.19.1 +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/erlanger-playbook-september-2015-update/index.html b/articles/erlanger-playbook-september-2015-update/index.html index 016cd9e3..d10fa7a2 100644 --- a/articles/erlanger-playbook-september-2015-update/index.html +++ b/articles/erlanger-playbook-september-2015-update/index.html @@ -87,6 +87,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/erlanger-playbook/index.html b/articles/erlanger-playbook/index.html index 7f917449..ba18fd2d 100644 --- a/articles/erlanger-playbook/index.html +++ b/articles/erlanger-playbook/index.html @@ -128,6 +128,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/farwest-funded/index.html b/articles/farwest-funded/index.html index f1f867df..f9dba26c 100644 --- a/articles/farwest-funded/index.html +++ b/articles/farwest-funded/index.html @@ -88,6 +88,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/github-sponsors/index.html b/articles/github-sponsors/index.html index e7910dc0..83f77f28 100644 --- a/articles/github-sponsors/index.html +++ b/articles/github-sponsors/index.html @@ -85,6 +85,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/gun-1.0.0-rc.1/index.html b/articles/gun-1.0.0-rc.1/index.html index b26375f3..0dd68793 100644 --- a/articles/gun-1.0.0-rc.1/index.html +++ b/articles/gun-1.0.0-rc.1/index.html @@ -89,6 +89,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/gun-1.0.0/index.html b/articles/gun-1.0.0/index.html index 7731c63c..9ad2fa24 100644 --- a/articles/gun-1.0.0/index.html +++ b/articles/gun-1.0.0/index.html @@ -88,6 +88,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/gun-1.2.0/index.html b/articles/gun-1.2.0/index.html index 2219e622..ba71b510 100644 --- a/articles/gun-1.2.0/index.html +++ b/articles/gun-1.2.0/index.html @@ -88,6 +88,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/gun-1.3.0/index.html b/articles/gun-1.3.0/index.html index 15246fe7..cbd76a3c 100644 --- a/articles/gun-1.3.0/index.html +++ b/articles/gun-1.3.0/index.html @@ -86,6 +86,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/gun-2.0.0-pre.1/index.html b/articles/gun-2.0.0-pre.1/index.html index 8635550e..fb3537b6 100644 --- a/articles/gun-2.0.0-pre.1/index.html +++ b/articles/gun-2.0.0-pre.1/index.html @@ -93,6 +93,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/gun-2.0.0-pre.2/index.html b/articles/gun-2.0.0-pre.2/index.html index 9aa8cca4..ae2b7fc3 100644 --- a/articles/gun-2.0.0-pre.2/index.html +++ b/articles/gun-2.0.0-pre.2/index.html @@ -91,6 +91,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/gun-2.0.0-rc.1/index.html b/articles/gun-2.0.0-rc.1/index.html index 10b3e94c..32c675ff 100644 --- a/articles/gun-2.0.0-rc.1/index.html +++ b/articles/gun-2.0.0-rc.1/index.html @@ -96,6 +96,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/gun-2.0.0/index.html b/articles/gun-2.0.0/index.html index 3053cf81..c426e3f6 100644 --- a/articles/gun-2.0.0/index.html +++ b/articles/gun-2.0.0/index.html @@ -98,6 +98,10 @@ +
  • Gun 2.2
  • + + +
  • Cowboy 2.13
  • diff --git a/articles/gun-2.2.0/index.html b/articles/gun-2.2.0/index.html new file mode 100644 index 00000000..79d967ff --- /dev/null +++ b/articles/gun-2.2.0/index.html @@ -0,0 +1,381 @@ + + + + + + + + + + Nine Nines: Gun 2.2 + + + + + + + + + + + + + + + +
    +
    +
    +
    + +
    +
    +

    Gun 2.2

    +

    + 2025 + 11 Apr +

    +
    + +

    Gun 2.2.0 has been released!

    +

    Gun 2.2 contains many features and fixes, including an experimental HTTP/3 implementation.

    +

    Gun 2.2 is the first release that includes an experimental support for the HTTP/3 protocol. Note that unlike Cowboy, Gun 2.2 does not yet support Websocket over HTTP/3.

    +

    Gun 2.2 now sets the appropriate ssl options to perform wildcard certificate matching, which is a requirement for HTTP and previously had to be configured by users.

    +

    Gun 2.2 also enables users to send HTTP/2 pings directly, including over tunnels, enabling use cases such as measuring the latency with the server. These pings are separate from the keepalive functionality.

    +

    Gun 2.2 also contains various fixes, the most significant of which is a better handling of TLS 1.3 alerts in mTLS scenarios. TLS 1.3 may perform certificate validation after the handshake has completed, leading to the alerts often arriving asynchronously. When an ssl function call returns {error, closed} or equivalent, Gun will now check whether the closure was a result of a TLS alert, and in that case propagate the alert as the error reason to the user. This has also been made to work over tunnels.

    +

    HTTP/2 tunneling has also seen a number of improvements.

    +

    Gun 2.0 requires Erlang/OTP 24.0 or greater and is tested and supported on Linux, macOS and Windows.

    +

    A complete list of changes can be found in the migration guide: Migrating from Gun 2.1 to 2.2.

    +

    I will now focus on implementing HTTP/3 WebTransport in Cowboy and Gun.

    +

    You can donate to this project via GitHub Sponsors.

    +

    As usual, feedback is appreciated, and issues or questions should be sent via Github tickets. Thanks!

    + + +
    +
    + +
    +

    More articles

    + + +

    Feedback

    +

    Feel free to email us +if you found any mistake or need clarification on any of the +articles.

    + +
    +
    +
    +
    + + + + + + + + diff --git a/articles/index.html b/articles/index.html index d1cf2a6a..4f10d828 100644 --- a/articles/index.html +++ b/articles/index.html @@ -63,6 +63,25 @@

    Articles

    +
    +
    +

    Gun 2.2

    +

    + 2025 + 11 Apr +

    +
    + +

    Gun 2.2.0 has been released! +Gun 2.2 contains many features and fixes, including an experimental HTTP/3 implementation. +Gun 2.2 is the first release that includes an experimental support for the HTTP/3 protocol. Note that unlike Cowboy, Gun 2.2 does not yet support Websocket over HTTP/3. +Gun 2.2 now sets the appropriate ssl options to perform wildcard certificate matching, which is a requirement for HTTP and previously had to be configured by users.

    + +

    + Read More +

    +
    +

    Cowboy 2.13

    @@ -410,23 +429,6 @@ Before listing the features please note that this pre-release includes a fix for

    -
    -
    -

    Erlang meetup: 10 septembre 2019

    -

    - 2019 - 22 Aug -

    -
    - -

    Erlang meetups are resuming and I will be present at the next one in Paris on the 10th of September. As the meetup and my talk about Gun will be in French the rest of this post will be in French as well. If you are around Paris that night, you are welcome to join and chat, even if you don't speak the language! -Je serai au meetup Erlang le 10 septembre chez Datadog à Paris.

    - -

    - Read More -

    -
    -