Skip to content
Newer
Older
100644 72 lines (50 sloc) 2.45 KB
15f58ce @stash Update roadmap
authored
1 CPAN!
04795e6 @stash update TODO for Sep 19, yaarr!
authored
2 * do developer-preview as 0.91_1
15f58ce @stash Update roadmap
authored
3 * remove AnyEvent::HTTP dep?
4 * finish v1.0 tasks
5
7ec9e2d @stash More TODOs
authored
6 Timeouts
7 * slow responses? (feasable? just let TCP do it?)
8
8b52471 @stash Limit methods to GET/HEAD/DELETE/POST/PUT, add TODOs
authored
9 psgi.input streaming
10
d236d16 @stash read timeouts
authored
11 * add a "poll_cb()" method to the psgi.input handle as an extension? EV
8b52471 @stash Limit methods to GET/HEAD/DELETE/POST/PUT, add TODOs
authored
12 gets to schedule the watcher in that case rather than bleeding the fd to
13 the handler.
7ec9e2d @stash More TODOs
authored
14 * related: Connection: close bodies
15 * related: Transfer-Encoding: chunked bodies
16
0500d3c @stash More TODO
authored
17 IO::Handle-like responses
18
15f58ce @stash Update roadmap
authored
19 * pump the getline() method when connection-writable (v1.0)
20 * check if it's got a real file descriptor, optimize (libeio or similar
21 for non-blocking sendfile?) (v1.1)
0500d3c @stash More TODO
authored
22
d236d16 @stash read timeouts
authored
23 streamed responses
8b52471 @stash Limit methods to GET/HEAD/DELETE/POST/PUT, add TODOs
authored
24
d236d16 @stash read timeouts
authored
25 * allow streaming responses to be HTTP/1.0 "Connection: close" rather than
15f58ce @stash Update roadmap
authored
26 HTTP/1.1 "Transfer-Encoding: chunked". Match up the streaming flavour
04795e6 @stash update TODO for Sep 19, yaarr!
authored
27 with the request version. (v1.0)
90a0763 @stash State via psgix.body.scalar_refs that we support refs in the body
authored
28 * instead of an implicit "low water mark" of 0 for the poll_cb
29 writer-object callback, a configurable number of bytes can be used.
8b52471 @stash Limit methods to GET/HEAD/DELETE/POST/PUT, add TODOs
authored
30
7ec9e2d @stash More TODOs
authored
31 Handle requests that don't require a body (optional entities).
8b52471 @stash Limit methods to GET/HEAD/DELETE/POST/PUT, add TODOs
authored
32
d236d16 @stash read timeouts
authored
33 * Related: allow overriding the "if entity has a C-L, wait for it" during request
34 start (not sure if there's a PSGI-compatible way to do this)
0500d3c @stash More TODO
authored
35 * different request timeout logic will be needed.
d236d16 @stash read timeouts
authored
36
15f58ce @stash Update roadmap
authored
37 Audit EV-callback error handling. (v1.0)
7ec9e2d @stash More TODOs
authored
38
39 Lazy I/O watcher initialization?
40
41 Per-client "drain" and "completion" callbacks?
42
15f58ce @stash Update roadmap
authored
43 * drain sorta done as the $w->poll_cb()
44 * completion_cb is called when finished sending a full HTTP response. For
45 non-KA a guard on the conn object is sufficient, but for KA a callback is
46 needed.
0500d3c @stash More TODO
authored
47
7ec9e2d @stash More TODOs
authored
48 Per-client data (for attaching guards).
49
15f58ce @stash Update roadmap
authored
50 Translate sockaddr/etc. and put in env-hash for PSGI
51
52 Optimize env-hash
7ec9e2d @stash More TODOs
authored
53
04795e6 @stash update TODO for Sep 19, yaarr!
authored
54 * allow Feersum apps to specify which vars will be needed (v1.1)
55 * maybe use uvar magic for PSGI if using Perl v5.10.0 (Variable::Magic
56 style?) (v1.1)
7ec9e2d @stash More TODOs
authored
57
15f58ce @stash Update roadmap
authored
58 Perf idea: Un-corked reads - should newly accepted handles wait or just try
59 read right away?
7ec9e2d @stash More TODOs
authored
60
61 multiple Feersum threads, one Perl thread?
0500d3c @stash More TODO
authored
62
15f58ce @stash Update roadmap
authored
63 WebSocket support (v1.1)
0500d3c @stash More TODO
authored
64
65 * http://www.whatwg.org/specs/web-socket-protocol/
66 * Do the handshake in C/XS, call request_handler once request is complete.
67 * I/O is done using the streaming interface (buffered)
68 * requires random numbers (drand48?) and an MD5 implementation (link
69 openssl? use the guts of Digest::MD5 somehow?)
70 * make this a separate module since if it brings in an openssl deps.
04795e6 @stash update TODO for Sep 19, yaarr!
authored
71 * will this work for PSGI? psgix.web_socket or something?
Something went wrong with that request. Please try again.