forked from vibe-d/vibe.d
-
Notifications
You must be signed in to change notification settings - Fork 0
/
todo.txt
47 lines (36 loc) · 1.96 KB
/
todo.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
HTTP
====
- (partially done) add limits for header line length, body size, number of headers or request size and request time to avoid DoS
- defer writing the header of server responses to the second written chunk in case of using bodyWriter() - if only one chunk is ever written, write non-chunked instead
- implement generators for http.rest to generate a JavaScript client and "documentation" with all possible requests.
TCP
===
- Find out what makes the libevent event loop continue to run after all connections have been disconnected
- Add a DoS barrier that closes old connections in case of high connection counts
GENERAL
=======
- Asynchronous file I/O
- Load balancer with support for seemless recompile
- Use the event_set_*_callback functions to log libevent messages
- Analyze all code for memory leaks (e.g. SSLContext)
- Add template arguments to API docs
- HTTP server comparison to nginx
- Mention the API used for Diet templates on the /templates page
- Implement a soft-shutdown in case of catching an Error (in conjunction with vibedist)
- Add support for an entry "lowerPriviledges" to package.json which will use the system's 'vibe' user for priviledge lowering
- Document the different -version specifiers that are possible
- Add code to generate a static version of vibed.org suitable for inclusion as docs in the download package
DIET TEMPLATES
==============
- comments
- block default contents
MARKDOWN FILTER
===============
- see markdown.d
- add SmartyPants support
PACKAGE MANAGER
===============
- allow the specification of optional dependencies (the user will just get a message that its possible to extend a package by installing the dependency)
- implement "vibe init" to create a new vibe application skeleton ("vibe init" is in the current dir - warn if not empty!, and "vibe init xx" creates a new dir xx)
- implement outputting of a generated vpm_versions.d module that contains the version of each installed package
- package signing