New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WAI 2.0 #178
Comments
Recent The new logging code implemented by me depends on blaze-builder. So, this decision is also fine with me. |
|
Currently, WAI 2.0 does not provide To get wai-app-file-cgi uses both to specify |
If you look at the current version of parseRequest', the
The approach I took for this in Yesod is to require the user to provide the application root, which addresses this issue as well as determining whether a request was on a secure connection or not. |
@snoyberg Can you find the issue in which we discussed support for HTTP 1.0? I cannot find it but should read it to tell whether or not HTTP 1.0 support is still necessary at this moment. |
I don't remember discussing HTTP 1.0, and searching the issue tracker produced no results. |
Uhhm. What do you think of HTTP 1.0 support? Do you think we can drop it? |
I don't think we need to, there will just be some specific cases (like a missing Also, looking at the host header spec, it seems like your redirecting would be better handled by just using the raw |
Did you mean "not need to support" or "not need to drop"? Thank you for letting me know aboutt the Host header! |
I meant that we don't need to explicitly drop any support in Warp; I think its current behavior works well for HTTP 1.0, even if there are some corner cases which will cause problems for specific applications. |
OK. Thanks. I agree. |
@snoyberg I'm trying to catch up the internal-state branch of wai/warp in wai-app-file-cgi. To do this, I made the internal-state2 branch: https://github.com/kazu-yamamoto/wai-app-file-cgi/tree/internal-state2 I cannot resolve two things. So, I need your advice. In
In |
For runInternalState (register yourAction) (resourceInternalState req) This might give you an idea of how to use http-conduit: https://github.com/fpco/http-reverse-proxy/blob/wai-2.0/Network/HTTP/ReverseProxy.hs#L227 But I think it would make sense to start a version of http-conduit that isn't dependent on ResourceT, and thus clean up these complications. That was part of my motivation for starting the http-client that I mentioned in a different ticket. |
One question I have about blaze-builder's Builder monoid vs bytestring's: what kind of performance gains would there be from utilizing bytestring Builder's ability to be written directly to a handle? Assuming that the Haskell Platform release timetable is followed, bytestring's Builder ought to be available in the new Haskell Platform in November. |
The HTTP/1.1 spec says that you have to support it. |
@iand675 In theory, we'd get no benefits, since Warp writes directly to sockets, not handles. |
@gregorycollins Good point. |
What decision was made regarding exporting/not exporting the |
It's being exported from the .Internal module. |
@snoyberg Ok. I guess I can just import .Internal in all of my apps... |
@iand675 My new logger (which is much faster than fast-logger) does not use |
@singpolyma Constructors are hide by default so that we can modify internals with less impact. |
@kazu-yamamoto if you only add fields, the impact is minimal anyway. If you remove them, that's going to affect users either way. |
@singpolyma You are right. :-) |
@snoyberg Thanks. I succeeded to modify |
Awesome. I'll continue my conduit research/benchmarks and work on http-client a bit more. I'll probably send an email to web-devel about it. |
@gregorycollins Which section of RFC 2616 does say so? If you refer to 19.6, we need to implement 0.9, too. :-( |
I will study HTTP/2.0, too. http://tools.ietf.org/html/draft-ietf-httpbis-http2-06 |
@kazu-yamamoto I seem to remember reading that but can't find it in the spec now. In any event dropping support for HTTP/1.0 is not really feasible, there are clients that still use it :( |
@gregorycollins, I agreed @snoyberg with not dropping HTTP/1.0 support. I just wanted which section of RFC 2616 says so. Also, I have no plan to support HTTP/0.9. But I will try HTTP/2.0. :-) |
This issue is to discuss WAI 2.0 (the internal-state branch). Please read http://www.haskell.org/pipermail/web-devel/2013/002646.html first.
The text was updated successfully, but these errors were encountered: