aboutsummaryrefslogtreecommitdiffstats
path: root/TODO
blob: bda7ccf1c20f0c379fc9762dec1ee1ca739c1873 (plain) (blame)
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
Before next release - 0.1
===================
- Document available callbacks
- Rework the way irc.lua uses things from modules - there are quite a few things which shouldn't be part of the public user interface which are right now. Probably just use the leading underscore convention for right now, but hopefully a lot of that stuff can be refactored.
- Rework the way CTCP quoting is handled throughout the code... the whole string/table thing is pretty ugly
- Rework callback system to use registration rather than just assigning to stuff inside the irc module, so that we can do things like have multiple handlers automatically

For the future
==============
- Reorganize the modules a bit more... we should have a src/irc/dcc/send.lua, src/irc/ctcp/base.lua, src/irc/ctcp/dcc.lua, etc. also, most (all?) of the handlers should be moved out of irc.lua into, say, src/irc/base.lua
- Separate out the DCC module some more so that the callbacks aren't registered unless the module is loaded
- Also separate out all of the CTCP commands/callbacks into the CTCP module
- Implement callbacks for user mode changes (need to figure out how to represent users in the callback info)
- Allow a server parameter in whois() so that the returned data can include the user's idle time
- chan:ban()/chan:unban() should take a usermask, not a nick, or be able to generate a usermask from a nick, or something like that
- Clean up misc.split
- Implement DCC CHAT
- Implement DCC XMIT/OFFER
- Implement some more of the newer CTCP commands
- Implement more information requests
  - who
  - whowas
  - info
  - stats
  - links
  - trace (not freenode supported)
- Implement XDCC (?)
- Handle endianness in the IP address conversion functions