HTTP
HTTP copied to clipboard
support HTTPS
I'm interested in this feature, I want to help but I don't know anything about to implement it. is it possible to help you anyway? did you have a roadmap to implement https? maybe I can help in some steps.
Thanks
No roadmap, I'm afraid. I did have a vague idea of using https://github.com/vincenthz/hs-tls, but nothing more than that.
Fwiw, http-enumerator already supports https (which might serve as an TLS API usage example)
I vote against, I like to see a strict separation of secure tunnels and the HTTP protocol. This keeps the set of dependencies small, and thus the size of resulting binaries. However, the HTTP package is really in need of some improvement.
I think the main problem is that the HTTP package isn't very aware of tunneling. Well, it was with the now pretty much deprecated Stream
interface (which uses String
s but can be extended for tunneling), but not with the HStream
interface (which can't be extended for tunneling, but can be extended to support multiple types of buffers). I'll commit a pull request at https://github.com/vincenthz/hs-tls-extra for my implementation of a Stream instance for TLS, which can then be used in conjunction with Network.HTTP.Stream
, but I hope the main developers of the HTTP package fix the API to truly support tunneling.
HTTP doesn't have any really active developers, I'm afraid. I'm happy to accept patches (after review/discussion), or to discuss handing over maintainership if someone with more time for the package than me comes along.
I'm interested in adding HTTPS support; just wanted to check in to make sure that a) nobody's working on it already and b) it's still a desired feature by the package maintainers. Any objections/comments?
I don't know of anyone working on it and it's definitely desired by me as maintainer!
BTW I should have added that one obstacle to getting HTTPS support merged to the mainline HTTP package will be getting any dependencies (like hs-tls or whatever) into the Haskell Platform.
However, if that proves to be difficult, we could maintain a branch and release a "HTTPS" package from that branch or something along those lines in the meantime.
This is still an issue.