aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md82
-rw-r--r--ROADMAP.md34
2 files changed, 100 insertions, 16 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2c25385..8041d1f 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,88 @@
CHANGELOG
=========
+0.10.0
+------
+
+ * Update Ranch to 0.10 and Cowlib to 0.6.2
+
+ * Update the body reading API to allow controlling rate of transfer
+
+ The lack of this feature was causing various timeout issues
+ in some environments.
+
+ The body/2 function now takes a Req and a list of options. The older
+ interface can still be used until Cowboy 1.0.
+
+ The body_qs/2, part/2 and part_body/2 also accept this list of
+ options, and pass it down to the body/2 call. The default options
+ vary between the different functions.
+
+ The return value of the function has changed. Older code should work
+ without modification but you should definitely still test it.
+
+ All functions appropriately decode transfer and content encoding.
+ There is no need to have a special case for that anymore.
+
+ The body/1,2 function supports streaming, with the same interface
+ as the part_body/1,2 function.
+
+ * Deprecate the cowboy_req:init_stream, stream_body and skip_body functions
+
+ They will be removed in Cowboy 1.0.
+
+ * Add support for multipart
+
+ The cowboy_req:part/1,2 and cowboy_req:part_body/1,2 can be
+ used for reading a multipart body.
+
+ Documentation has been added.
+
+ The old undocumented multipart functions were removed.
+
+ * Allow the onresponse hook to override only status and headers
+
+ Previously it wasn't possible to override them without also
+ overriding the body. The new return value is currently marked
+ as experimental.
+
+ * Make loop handlers work with SPDY
+
+ * Fix a race condition with loop handlers and keepalive requests
+
+ * Fix parsing of accept-language header
+
+ * Fix parsing of authorization header with empty passwords
+
+ * Fix multiline headers handling
+
+ * Various optimizations
+
+ All code that is moved to cowlib is optimized at the same time
+ and benchmarks get added for all functions.
+
+ The parsing of connection, content-length and transfer-encoding
+ has been optimized.
+
+ Chunked transfer decoding has been optimized.
+
+ * Enable +warn_missing_spec by default and fix specs
+
+ * Remove the non-documented cowboy_client module; use gun instead
+
+ * Numerous documentation updates and tweaks
+
+ The guide now has a REST principles chapter and revised
+ and completed Websocket chapters, alongside a new multipart chapter.
+
+ * Add a multipart file upload example
+
+ * Test suites are being reworked and greatly improved
+ * Test Cowboy across all releases from R15B01 to 17.0, plus maint and master
+ * The Autobahn test suite is now always ran (as long as it's installed)
+ * Expected error reports are now silenced (but still logged)
+ * Applications are now only started once from a ct hook
+
0.9.0
-----
diff --git a/ROADMAP.md b/ROADMAP.md
index 31f44ac..452e6b9 100644
--- a/ROADMAP.md
+++ b/ROADMAP.md
@@ -6,30 +6,32 @@ list of planned changes and work to be done on the Cowboy
server. It is intended to be exhaustive but some elements
might still be missing.
-1.0
----
+1.0 (R16 and R17)
+-----------------
- * Parse support for all standard HTTP/1.1 headers
+We are now in the final push to Cowboy 1.0. Further changes
+are expected to be bug fixes and documentation improvements.
- * Support for multipart requests and responses
+2.0 (R17 and R18)
+-----------------
- * Add Range support to REST
+ * HTTP/2.0
- * Complete the user guide
+ * Websocket permessage deflate compression
-1.1
----
+ * Better cowboy_req usability
- * Check if using maps instead of a record improves performance
+ The number one usability concern with Cowboy today is
+ the need to keep the Req object. Most functions in
+ cowboy_req don't actually modify it and probably never
+ will. This change will make sure that only the required
+ function return a new Req.
-2.0
----
+ At the same time, some of the functions that cache their
+ results will stop to do so. This will save memory and
+ allow us to not modify the Req.
- * Support for HTTP/2.0
-
- * Simplify cowboy_req access functions
-
- They do not need to return Req. So let's not.
+ * Start experimenting with maps.
Under consideration
-------------------