Closed panesofglass closed 6 years ago
@Tarmil I'm happy to update this if you have any interest. If not, I'll close it.
We need to discuss with @granicz if this is the route we want to take. In particular if we do switch away from Katana, do we do the same for websharper.owin.websocket and how much work would that take?
@panesofglass @jeroldhaas See WIP to adapt this PR on WebSharper 4 beta at https://github.com/intellifactory/websharper.owin/tree/raw-owin
Thanks, @Tarmil! Great question wrt web sockets. I don't know for certain, but I am aware that 1) Katana is no longer maintained and 2) the web sockets implementation apparently had a memory leak, per a blog post by Ayende. There are other implementations, e.g. https://github.com/bryceg/Owin.WebSocket, though I can't speak to how well that one works.
This removes the library dependency on Microsoft.Owin in favor of raw OWIN and a bit of Arachne for query strings and cookies. Because Arachne is built with F# 3.1, I bumped WebSharper.Owin to F# 3.1, as well. Please let me know if you think this is a useful update.
I would also like to explore making the conversions between OWIN environments and the WebSharper Context public with sensible defaults. I'm happy to help with this effort.