[erlang-questions] [ANN] Cowboy 0.6.0

Loïc Hoguin <>
Wed May 23 18:54:12 CEST 2012


To get rid of the atom+binaries mixed together, a limitation on case 
sensitivity of header names for header names > 22 characters, get a more 
straightforward HTTP protocol code, maybe others I forgot. Most of the 
current inconsistencies in request data happens because of decode_packet.

decode_packet can do a lot of things, and we use so few of them it's not 
giving us much for our money anymore.

I'm also interested in seeing the performance differences of a full 
Erlang HTTP parsing stack vs one that uses decode_packet. This will be 
investigated this summer by my students.

On 05/23/2012 05:16 PM, John-Paul Bader wrote:
> Quick question:
>
> why do you move away from decode_packet and what will you use instead of
> it?
>
> I saw it is being used in a number of projects and I'm curious what your
> motivation / goal is.
>
> ~ John
>
> Loïc Hoguin wrote:
>> Hello,
>>
>> Long awaited Cowboy 0.6.0 is finally available.
>>
>> Cowboy is a small, fast, modular HTTP server and socket acceptor pool.
>> The 0.6.0 version is the last to include the socket acceptor pool
>> directly in the project. Future versions will simply depend on the ranch
>> project which is the socket acceptor pool code split from Cowboy.
>>
>> Many additions have been made, along with a few bugfixes. The test suite
>> has been completely reworked. There is still no user guides. Read more
>> here:
>> * https://github.com/extend/cowboy/blob/master/CHANGELOG.md
>>
>> Effort is ongoing to add user guides to both Ranch and Cowboy projects,
>> starting with Ranch. Examples will be added to both projects this summer.
>> * https://gist.github.com/2397647
>> * https://gist.github.com/2600398
>>
>> Cowboy can be found at https://github.com/extend/cowboy
>>
>> Next version will switch the acceptor code to Ranch. The dependence on
>> the erlang:decode_packet/3 BIF will be removed. Methods and header names
>> will be uniformized as binaries, there won't be a mix of atoms and
>> binary names anymore. Various changes will be made to REST to improve
>> its semantics with regards to full and partial updates. A new API to
>> generate dispatch tables easily will be added.
>>
>> This version includes an experimental and entirely undocumented HTTP
>> client in cowboy_client. It uses binaries. We do not recommend using it
>> at this point. We hope to add transfer encodings and websocket support
>> in the next version and finally document it for 0.8.0.
>>
>> As always I'm interested in any feedback you may have, good or bad. Feel
>> free to drop me a mail about the project!
>>
>> If you need features added, please open a ticket and describe *what you
>> want to do with it*, chances are that you can already do it and you just
>> don't know it.
>>
>> Thanks.
>>
> _______________________________________________
> erlang-questions mailing list
> 
> http://erlang.org/mailman/listinfo/erlang-questions


-- 
Loïc Hoguin
Erlang Cowboy
Nine Nines



More information about the erlang-questions mailing list