diff options
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 118 |
1 files changed, 61 insertions, 57 deletions
@@ -1,54 +1,14 @@ | |||
1 | * should be interrupt-safe | 1 | ajeitar os README.* |
2 | * notice the change in callback conventions | 2 | ajeitar select. upvalue nao tem nada a ver... |
3 | * new mime module replacing old code module (faster, more functionality) | ||
4 | * new socket options (many) | ||
5 | * only allocate in case of success | ||
6 | * optimize for success (only call select if fails) | ||
7 | * add proxy support to http | ||
8 | * add gethostname | ||
9 | * local connect | ||
10 | * connect with timeout | ||
11 | * change code to mime | ||
12 | * change stay to redirect | ||
13 | * add shutdown | ||
14 | * change send/recv to avoid using select | ||
15 | * O location do "redirect" pode ser relativo ao servidor atual (não pode, | ||
16 | mas os servidores fazem merda...) | ||
17 | * Ajeitar para Lua 5.0 | ||
18 | * Padronizar os retornos de funccao | ||
19 | * Separar as classes em arquivos | ||
20 | * Retorno de sendto em datagram sockets pode ser refused | ||
21 | * select sets are now associative | ||
22 | * colocar pump.all, pump.step | ||
23 | * mudar ltn12.html e usar o exemplo source.cat que está muito melhor. | ||
24 | * break smtp.send into c = smtp.open, c:send() c:close() | ||
25 | * fazer com que a socket.source e socket.sink sejam "selectable". | ||
26 | * change mime.eol to output marker on detection of first candidate, instead | ||
27 | of on the second. that way it works in one pass for strings that end with | ||
28 | one candidate. | ||
29 | * unify backbone of smtp and ftp | ||
30 | * unify filter and send/receive callback. new sink/source/pump idea. | ||
31 | * get rid of aux_optlstring | ||
32 | * get rid of unpack in mime.lua | ||
33 | * create socket.(sink|source).simplify | ||
34 | * break chain into a simpler binary chain and a complex (recursive) one. | ||
35 | * Create a passive mode option for the FTP (good for firewall). | ||
36 | * Modules should return their namespace table in the end of the chunk. | ||
37 | |||
38 | |||
39 | get.lua precisa de ftp.get com url e sink | ||
40 | make sure filter.chain fails gracefully. | 3 | make sure filter.chain fails gracefully. |
41 | ajeitar o manual sobre select, mais liberal agora | 4 | ajeitar o manual sobre select, mais liberal agora |
42 | conjunto associativo | ||
43 | 5 | ||
44 | falar sobre encodet/wrapt/decodet no manual sobre mime | 6 | falar sobre encodet/wrapt/decodet no manual sobre mime |
45 | 7 | ||
46 | |||
47 | RECEIVE MUDOU!!! (partial stuff) COLOCAR NO MANUAL. | 8 | RECEIVE MUDOU!!! (partial stuff) COLOCAR NO MANUAL. |
48 | HTTP.lua mudou bastante também. | 9 | HTTP.lua mudou bastante também. |
49 | pump.step usado em todo mundo que recebe source ou sink | 10 | pump.step usado em todo mundo que recebe source ou sink |
50 | 11 | ||
51 | colocar um userdata com gc metamethod pra chamar sock_close (WSAClose); | ||
52 | sources ans sinks are always simple in http and ftp and smtp | 12 | sources ans sinks are always simple in http and ftp and smtp |
53 | expose encode/decode tables to provide extensibility for mime module | 13 | expose encode/decode tables to provide extensibility for mime module |
54 | use coroutines instead of fancy filters | 14 | use coroutines instead of fancy filters |
@@ -60,6 +20,7 @@ pop3??? | |||
60 | add socket.TIMEOUT to be default timeout? | 20 | add socket.TIMEOUT to be default timeout? |
61 | 21 | ||
62 | manual | 22 | manual |
23 | compatibility: select sets are associative | ||
63 | add socket.connect and socket.bind to the manual | 24 | add socket.connect and socket.bind to the manual |
64 | say what a nil callback does for http | 25 | say what a nil callback does for http |
65 | check all occurences of it's | 26 | check all occurences of it's |
@@ -87,24 +48,9 @@ tests | |||
87 | check for interrupts | 48 | check for interrupts |
88 | 49 | ||
89 | wrp can't break lines in the middle of a line break. | 50 | wrp can't break lines in the middle of a line break. |
90 | call select before accept, not after, dumbass! | ||
91 | get rid of setnonblocking/setblocking in the bind function | ||
92 | close has to block... | ||
93 | fmt is not a good name | ||
94 | change wrap() to accept a number and default to "character" | ||
95 | move gethostname to dns table | ||
96 | get rid of _cb in name of functions? | ||
97 | trust character constants in mime.c? noooooo. | ||
98 | smtp.lua needs stuff filter | ||
99 | 51 | ||
100 | add comments into each C module. | 52 | add comments into each C module. |
101 | new option.c module to put all options (TCP and UDP share...)? | ||
102 | testar os options! | 53 | testar os options! |
103 | add _tostring methods! | ||
104 | change all modules to use the new namespace scheme | ||
105 | |||
106 | write some utilities that use the code.lua module and put them | ||
107 | in etc, modify the README.etc file and makefile.dist (eol.lua is done) | ||
108 | 54 | ||
109 | use gethostname it in SMTP | 55 | use gethostname it in SMTP |
110 | 56 | ||
@@ -150,3 +96,61 @@ Ajeitar o protocolo da luaopen_socket()... sei lá qual é. | |||
150 | 96 | ||
151 | - unix 92 bytes maximo no endereço, incluindo o zero | 97 | - unix 92 bytes maximo no endereço, incluindo o zero |
152 | - unix 9216 maximo de datagram size | 98 | - unix 9216 maximo de datagram size |
99 | |||
100 | -------------- | ||
101 | these are done | ||
102 | -------------- | ||
103 | |||
104 | * should be interrupt-safe | ||
105 | * notice the change in callback conventions | ||
106 | * new mime module replacing old code module (faster, more functionality) | ||
107 | * new socket options (many) | ||
108 | * only allocate in case of success | ||
109 | * optimize for success (only call select if fails) | ||
110 | * add proxy support to http | ||
111 | * add gethostname | ||
112 | * local connect | ||
113 | * connect with timeout | ||
114 | * change code to mime | ||
115 | * change stay to redirect | ||
116 | * add shutdown | ||
117 | * change send/recv to avoid using select | ||
118 | * O location do "redirect" pode ser relativo ao servidor atual (não pode, | ||
119 | mas os servidores fazem merda...) | ||
120 | * Ajeitar para Lua 5.0 | ||
121 | * Padronizar os retornos de funccao | ||
122 | * Separar as classes em arquivos | ||
123 | * Retorno de sendto em datagram sockets pode ser refused | ||
124 | * select sets are now associative | ||
125 | * colocar pump.all, pump.step | ||
126 | * mudar ltn12.html e usar o exemplo source.cat que está muito melhor. | ||
127 | * break smtp.send into c = smtp.open, c:send() c:close() | ||
128 | * fazer com que a socket.source e socket.sink sejam "selectable". | ||
129 | * change mime.eol to output marker on detection of first candidate, instead | ||
130 | of on the second. that way it works in one pass for strings that end with | ||
131 | one candidate. | ||
132 | * unify backbone of smtp and ftp | ||
133 | * unify filter and send/receive callback. new sink/source/pump idea. | ||
134 | * get rid of aux_optlstring | ||
135 | * get rid of unpack in mime.lua | ||
136 | * create socket.(sink|source).simplify | ||
137 | * break chain into a simpler binary chain and a complex (recursive) one. | ||
138 | * Create a passive mode option for the FTP (good for firewall). | ||
139 | * Modules should return their namespace table in the end of the chunk. | ||
140 | * get.lua precisa de ftp.get com url e sink | ||
141 | * conjunto associativo | ||
142 | * colocar um userdata com gc metamethod pra chamar sock_close (WSAClose); | ||
143 | * call select before accept, not after, dumbass! | ||
144 | * get rid of setnonblocking/setblocking in the bind function | ||
145 | * close has to block... | ||
146 | * fmt is not a good name | ||
147 | * change wrap() to accept a number and default to "character" | ||
148 | * move gethostname to dns table | ||
149 | * get rid of _cb in name of functions? | ||
150 | * trust character constants in mime.c? yup. | ||
151 | * smtp.lua needs stuff filter | ||
152 | * new option.c module to put all options (TCP and UDP share...)? | ||
153 | * add _tostring methods! | ||
154 | * change all modules to use the new namespace scheme | ||
155 | * write some utilities that use the code.lua module and put them | ||
156 | * in etc, modify the README.etc file and makefile.dist (eol.lua is done) | ||