Add Cowboy 0.6.1 support
haspadar opened this issue · 12 comments
Cowboy API running fast, it's better to target 0.8.0
Bad news: This release drops R14 compatibility
. I can't do that.
Related: sockjs/sockjs-protocol#57
cowboy_http_req
got renamed to cowboy_req
. This is quite bad as changing that would break compatibility with older cowboy. Quick workaround:
$ sed -i 's/cowboy_http_req/cowboy_req/g' src/sockjs_http.erl
Also @yrashk had already done the port: https://github.com/spawngrid/sockjs-erlang/tree/cowboy-master
Yep, it's in the testing now but so far it seems to work.
I have an idea how to do a port that will work for both versions of cowboy, but it is not going to be too pretty.
Basically, we should utilize the dispatching already in place and for old cowboy use {cowboy, Req} and for new cowboy use {cowboy1, Req} (for example). Then you can easily copy over changes from my port line by line and keep both versions.
The changes seem to be:
- cowboy_http_req -> cowboy_req
- new dependency - ranch
- instead of cowboy:start_http we have cowboy:start_listener
- casing of headers (camelcase vs lowercase) (can you explain this?)
- cowboy_req:path vs cowboy_http_req:raw_path
Did I miss anything?
- vice versa
- few return values changed, like body_qs
On Tue, Oct 30, 2012 at 12:32 PM, Marek Majkowski
notifications@github.comwrote:
The changes seem to be:
- cowboy_http_req -> cowboy_req
- new dependency - ranch
- instead of cowboy:start_http we have cowboy:start_listener
- casing of headers (camelcase vs lowercase) (can you explain this?)
- cowboy_req:path vs cowboy_http_req:raw_path
Did I miss anything?
—
Reply to this email directly or view it on GitHubhttps://github.com//issues/37#issuecomment-9919762.
@yrashk I've noticed you forked master
branch, not dev
, therefore sockjs-protocol-dev.py fails in few more places. Could you take a look? I don't think there are many changes included on dev.
I am trying to understand what changes at
master...dev are important
On Tue, Oct 30, 2012 at 1:06 PM, Marek Majkowski
notifications@github.comwrote:
@yrashk https://github.com/yrashk I've noticed you forked masterbranch, not
dev, therefore sockjs-protocol-dev.py fails in few more places. Could you
take a look? I don't think there are many changes included on dev.—
Reply to this email directly or view it on GitHubhttps://github.com//issues/37#issuecomment-9920835.