From 849fab7227a2fd1ff5fa4d603ba89037e1c462b4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= <essen@ninenines.eu>
Date: Tue, 26 May 2020 09:54:54 +0200
Subject: Cowboy 2.8.0

---
 .../cowboy/2.8/guide/migrating_from_2.3.asciidoc   | 66 ++++++++++++++++++++++
 1 file changed, 66 insertions(+)
 create mode 100644 docs/en/cowboy/2.8/guide/migrating_from_2.3.asciidoc

(limited to 'docs/en/cowboy/2.8/guide/migrating_from_2.3.asciidoc')

diff --git a/docs/en/cowboy/2.8/guide/migrating_from_2.3.asciidoc b/docs/en/cowboy/2.8/guide/migrating_from_2.3.asciidoc
new file mode 100644
index 00000000..6a604f97
--- /dev/null
+++ b/docs/en/cowboy/2.8/guide/migrating_from_2.3.asciidoc
@@ -0,0 +1,66 @@
+[appendix]
+== Migrating from Cowboy 2.3 to 2.4
+
+Cowboy 2.4 focused on improving the HTTP/2 implementation.
+All existing tests from RFC7540 and the h2spec test suite
+now all pass. Numerous options have been added to control
+SETTINGS and related behavior. In addition experimental
+support for Websocket over HTTP/2 was added.
+
+=== Features added
+
+* Add experimental support for Websocket over HTTP/2.
+  You can use the `enable_connect_protocol` option to
+  enable. It implements the following draft:
+  https://tools.ietf.org/html/draft-ietf-httpbis-h2-websockets-01
+
+* Add options `max_decode_table_size` and
+  `max_encode_table_size` to restrict the size of the
+  HPACK compression dictionary.
+
+* Add option `max_concurrent_streams` to restrict the
+  number of HTTP/2 streams that can be opened concurrently.
+
+* Add options `initial_connection_window_size` and
+  `initial_stream_window_size` to restrict the size of
+  the HTTP/2 request body buffers for the whole connection
+  and per stream, respectively.
+
+* Add options `max_frame_size_received` and
+  `max_frame_size_sent` to restrict the size of
+  HTTP/2 frames.
+
+* Add option `settings_timeout` to reject clients that
+  did not send a SETTINGS ack. Note that this currently
+  may only occur at the beginning of the connection.
+
+* Update Ranch to 1.5.0
+
+* Update Cowlib to 2.3.0
+
+=== Bugs fixed
+
+* Fix the END_STREAM flag for informational responses
+  when using HTTP/2.
+
+* Receive and ignore HTTP/2 request trailers if any
+  for HTTP/2 requests. Request trailer information will
+  be propagated to the user code in a future release.
+
+* Reject WINDOW_UPDATE frames that are sent after the
+  client sent an RST_STREAM. Note that Cowboy will not
+  keep state information about terminated streams
+  forever and so the behavior might differ depending
+  on when the stream was reset.
+
+* Reject streams that depend on themselves. Note that
+  Cowboy currently does not implement HTTP/2's priority
+  mechanisms so this issue was harmless.
+
+* Reject HTTP/2 requests where the body size is different
+  than the content-length value. Note that due to how Cowboy
+  works some requests might go through regardless, for
+  example when the user code does not read the request body.
+
+* Fix all existing test failures from RFC7540. This was
+  mostly incorrect test cases or intermittent failures.
-- 
cgit v1.2.3

