Is there interest in a std.http?

2012-11-19 Thread Tyler Jameson Little
I'd like to see an HTTP module in Phobos, but I wanted to gauge interest first and see if this has been discussed before. An example of how I would like to interface with it (for creating a server): interface HTTPHandler { void serveHTTP(Request, Response); } class Custom

Re: Is there interest in a std.http?

2012-11-19 Thread Adam D. Ruppe
On Monday, 19 November 2012 at 20:38:56 UTC, Tyler Jameson Little wrote: I'd like to see an HTTP module in Phobos, but I wanted to gauge interest first and see if this has been discussed before. I've been asked to put my cgi.d in phobos before (which includes a http server as well as a cgi, fa

Re: Is there interest in a std.http?

2012-11-19 Thread Tyler Jameson Little
I've been asked to put my cgi.d in phobos before (which includes a http server as well as a cgi, fastcgi, and scgi implementation of its common interface), so there's probably some interest. I haven't put mine in just because I'm not particularly motivated to go through the red tape. The fi

Re: Is there interest in a std.http?

2012-11-19 Thread Pragma Tix
Before you spend too much time : https://github.com/rejectedsoftware/vibe.d/tree/master/source/vibe/http On Monday, 19 November 2012 at 20:38:56 UTC, Tyler Jameson Little wrote: I'd like to see an HTTP module in Phobos, but I wanted to gauge interest first and see if this has been discussed b

Re: Is there interest in a std.http?

2012-11-19 Thread Vladimir Panteleev
On Monday, 19 November 2012 at 20:38:56 UTC, Tyler Jameson Little wrote: * HTTP body is a stream No Content-Size, no multiple requests per connection (unless you use chunked encoding?). * User settable size limits * Size of request line (1024 bytes by default) * Size of each header (102

Re: Is there interest in a std.http?

2012-11-19 Thread Adam D. Ruppe
On Monday, 19 November 2012 at 23:57:35 UTC, Tyler Jameson Little wrote: Awesome. I assume this hasn't gone through rigorous testing, but has it been used in production? I've been using it for almost all my work apps for the last... I think three years now. None of them so far have huge userba

Re: Is there interest in a std.http?

2012-11-19 Thread Tyler Jameson Little
* HTTP body is a stream No Content-Size, no multiple requests per connection (unless you use chunked encoding?). Not sure what you mean. I meant incoming stream. There would be a request object with access to all other headers, it just wouldn't be read in until the user actually wanted it.

Re: Is there interest in a std.http?

2012-11-19 Thread Andrei Alexandrescu
On 11/19/12 3:38 PM, Tyler Jameson Little wrote: I'd like to see an HTTP module in Phobos, but I wanted to gauge interest first and see if this has been discussed before. I can say the following. We sorely need a server expert on board with the time and inclination to write a good server-side

Re: Is there interest in a std.http?

2012-11-19 Thread Andrei Alexandrescu
On 11/19/12 11:26 PM, Andrei Alexandrescu wrote: On 11/19/12 3:38 PM, Tyler Jameson Little wrote: I'd like to see an HTTP module in Phobos, but I wanted to gauge interest first and see if this has been discussed before. I can say the following. We sorely need a server expert on board with the

Re: Is there interest in a std.http?

2012-11-19 Thread Jacob Carlborg
On 2012-11-19 21:38, Tyler Jameson Little wrote: I think the following are necessary: * Access to underlying TcpSocket (for protocol upgrades, like WebSocket) * HTTP body is a stream * Simple HTTP requests * Errors can be recovered from (allow user-defined error handlers): * User settable size

Re: Is there interest in a std.http?

2012-11-20 Thread Nicolas Sicard
On Tuesday, 20 November 2012 at 03:49:57 UTC, Tyler Jameson Little wrote: Would a minor refactor of vibe.d be acceptable? This is pretty much what I'm looking for: https://github.com/rejectedsoftware/vibe.d/blob/master/source/vibe/http/common.d https://github.com/rejectedsoftware/vibe.d/blob/ma

Re: Is there interest in a std.http?

2012-11-20 Thread Adam D. Ruppe
On Tuesday, 20 November 2012 at 04:26:02 UTC, Andrei Alexandrescu wrote: We sorely need a server expert on board with the time and inclination to write a good server-side networking framework. I agree with this but it really should be generic; working at probably the file descriptor level, so

Re: Is there interest in a std.http?

2012-11-20 Thread Pragma Tix
On Tuesday, 20 November 2012 at 12:12:27 UTC, Nicolas Sicard wrote: On Tuesday, 20 November 2012 at 03:49:57 UTC, Tyler Jameson Little wrote: Would a minor refactor of vibe.d be acceptable? This is pretty much what I'm looking for: https://github.com/rejectedsoftware/vibe.d/blob/master/source/

Re: Is there interest in a std.http?

2012-11-20 Thread H. S. Teoh
On Tue, Nov 20, 2012 at 03:09:23PM +0100, Adam D. Ruppe wrote: > On Tuesday, 20 November 2012 at 04:26:02 UTC, Andrei Alexandrescu > wrote: > >We sorely need a server expert on board with the time and > >inclination to write a good server-side networking framework. > > I agree with this but it rea

Re: Is there interest in a std.http?

2012-11-20 Thread jerro
whereas libev is Linux-specific IIRC. Libev is a polling abstraction. It has select, epoll and kqueue backends (and there may be others I don't know about). So it is particulary useful for unices, where epoll (linux) and kqueue (OSX and BSD) are preferred async IO mechanisms. It can also be

Re: Is there interest in a std.http?

2012-11-20 Thread Adam D. Ruppe
On Tuesday, 20 November 2012 at 15:21:12 UTC, H. S. Teoh wrote: It should work at the file descriptor level, perhaps even combining with signal handling (using the self-pipe trick) I was thinking we'd send pointers and a type hash through a pipe. It'd keep the read/write very simple. Now, th

Re: Is there interest in a std.http?

2012-11-20 Thread Adam D. Ruppe
On Tuesday, 20 November 2012 at 16:09:37 UTC, Adam D. Ruppe wrote: But take a gander at this: http://arsdnet.net/dcode/typehash.d I have such a hard time focusing on work when there's something like this to play with updated the link to show the concept actually working, not just hashing.

Re: Is there interest in a std.http?

2012-11-20 Thread Rob T
On Tuesday, 20 November 2012 at 12:12:27 UTC, Nicolas Sicard wrote: BTW, the actual JSON module in viba.data.json in richer in functionality and easier to use than the one in std.json. The module has virtually no dependency on other parts of vibe.d. I whish it was also moved to Phobos or at lea

Re: Is there interest in a std.http?

2012-11-20 Thread Dmitry Olshansky
11/20/2012 11:45 PM, Dmitry Olshansky пишет: [snip] I currently had to work with Java (a painful journey after D) to create a couple of server components and surprisingly found the Netty project to be quite nice. The obligatory link: https://netty.io/ -- Dmitry Olshansky

Re: Is there interest in a std.http?

2012-11-20 Thread Dmitry Olshansky
11/20/2012 8:26 AM, Andrei Alexandrescu пишет: On 11/19/12 3:38 PM, Tyler Jameson Little wrote: I'd like to see an HTTP module in Phobos, but I wanted to gauge interest first and see if this has been discussed before. I can say the following. We sorely need a server expert on board with the ti