]> jfr.im git - erebus.git/blobdiff - TODO
admin_config - add !getconfig, remove some unused functions
[erebus.git] / TODO
diff --git a/TODO b/TODO
index 23851c9c7dcee57b99d49d6707fba0f933fb5bfe..b849f98c10a5aea59a36dcfe45e2f93fa6d30b96 100644 (file)
--- a/TODO
+++ b/TODO
@@ -2,11 +2,14 @@ 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...
+- ability for modules to register additional sockets to monitor
+  - this is basically done but needs more testing on non-TCP and error conditions
+    the module interface should probably be simplified too
+  - 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...
+
+- add optional message wrapping in the core (instead of just truncation)
 
 - 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.
@@ -47,3 +50,15 @@ vim: expandtab sw=2 ts=2
     parent (i.e. delayed resolution)
 
 - weather module using accuweather API, forecasts
+
+- fix softdeps, if they're used through lib.mod() or parent.module() they break, need a `'mod' in modules` check somewhere
+
+- ctlmod.unload: track what modules are unloaded and return that info to caller
+
+- lookup User object by auth
+  modules should be able to (attempt to) look up a User object by auth, that way if the user is online
+  !clevel and !glevel can look up their existing object and adjust the permissions there
+
+- sockets module: wrapping should operate on byte-level not string-level
+  sentences with unicode text get wrapped wrong
+  ... but the wrapping point needs to be determined at the string-level ugh