]> jfr.im git - erebus.git/blobdiff - TODO
urls - allow to block channels in config
[erebus.git] / TODO
diff --git a/TODO b/TODO
index 08bab6eb2f538fb2d56142a0759a981d99add5d1..3fc9933051f7322ea2f3d45a1422b8d51de32d76 100644 (file)
--- a/TODO
+++ b/TODO
@@ -1,17 +1,31 @@
-== trivia ==
-v1:
-       ability to modify parameters (HINTNUM, etc) & store in db instead of code
-       voting for next round target points
-v2:
-       multi-channel
-       team play
-       statistics
-
-== other ==
-module for user management
-module for channel management
-
-
-== ?????? ==
-- Store User and Channel objects
-- Add no-such-command error to Bot().parsemsg
+vim: expandtab sw=2 ts=2
+
+- add (optional) timeout for wait_for_hidden_host
+
+- add ability for modules to register additional sockets to monitor
+  (and socket_listener example module)
+  also FDs so the bot can monitor a pipe
+  - add a pipe which allows to input commands even when IRC connection is gone
+    this might be difficult since there won't be a bot or user or chan object...
+
+- implement timers in the core and/or modlib, by adjusting the select timeout whenever a timer is pending.
+  call timers as part of the event loop.
+  this has the potential to remove a LOT of the threading.
+
+- a module to set config settings at runtime
+  or at least commands to set some config settings like autoloading a module
+
+- fix crash when joining a channel that is forwarded (or otherwise force-joined by the server)
+
+- fix urls:
+  - disallow private addresses as much as possible
+  - add a time limit if possible
+
+- add module with !join / !part / is there clevel management? etc
+
+- add SQL "migrations" support to core for modules
+  and store module data in SQL instead of json's
+
+- better config... or better yet just move non-DB-related config into the database
+  - needs a better format if its used for generic module data; particularly because /\s#/ starts a comment instead of naming a channel
+  - needs to retain comments when config file is saved