mirror of
https://github.com/ninenines/cowboy.git
synced 2025-07-14 20:30:23 +00:00
Update CHANGELOG and ROADMAP
This commit is contained in:
parent
c81b94160e
commit
0a27247a91
2 changed files with 100 additions and 16 deletions
82
CHANGELOG.md
82
CHANGELOG.md
|
@ -1,6 +1,88 @@
|
||||||
CHANGELOG
|
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
|
0.9.0
|
||||||
-----
|
-----
|
||||||
|
|
||||||
|
|
34
ROADMAP.md
34
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
|
server. It is intended to be exhaustive but some elements
|
||||||
might still be missing.
|
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
|
* Start experimenting with maps.
|
||||||
|
|
||||||
* Simplify cowboy_req access functions
|
|
||||||
|
|
||||||
They do not need to return Req. So let's not.
|
|
||||||
|
|
||||||
Under consideration
|
Under consideration
|
||||||
-------------------
|
-------------------
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue