Commit graph

58 commits

Author SHA1 Message Date
jesopo
1c792f0194 move PoolHook registrations to start.py 2019-10-10 13:58:45 +01:00
jesopo
2c19bdb949 add a fairly basic file locking mechanism with src/LockFile.py
closes #96
2019-10-10 12:11:03 +01:00
jesopo
51a4a4253c -V command line arg should still effect stdout 2019-10-09 17:54:12 +01:00
jesopo
b4e65b6a73 update bot.find_settings_prefix() call in start.py 2019-10-07 12:52:57 +01:00
jesopo
69bf622d2d remove external_modules/ and replace with bot.conf and cli arg 2019-09-27 16:18:12 +01:00
jesopo
514b0126f2 Revert "add !msg"
This reverts commit ddaf8a3890.
2019-09-27 16:16:50 +01:00
jesopo
ddaf8a3890 add !msg 2019-09-27 16:14:39 +01:00
jesopo
82173a7d94 add external_modules directory 2019-09-27 16:03:06 +01:00
jesopo
89c12e845a add --remove-server/-R cli arg 2019-07-12 09:30:22 +01:00
jesopo
d7e18b1826 Add -D cli arg to tolerate disconnections on startup 2019-07-04 13:32:08 +01:00
jesopo
bb749b111f Refactor EventManager to only hold hooks on a root object 2019-06-26 11:01:09 +01:00
jesopo
72ce880478 Only panic() when a server connection is part of bot init. closes #69 2019-06-17 14:20:11 +01:00
jesopo
3456bb561c module.load_module takes a ModuleDefinition these days! 2019-05-30 17:28:07 +01:00
jesopo
480bbb604f Move python version check to the top of start.py 2019-05-30 17:15:40 +01:00
jesopo
abccdbb52e Check sys.version_info is greater-than-or-equal-to v3.6.0 2019-05-30 17:11:08 +01:00
jesopo
123671aac9 Log BitBot and Python version at startup 2019-05-30 17:05:46 +01:00
jesopo
1c296826d7 Move module black/white list to IRCBot, allow "safe" loading of all modules 2019-05-12 14:10:59 +01:00
jesopo
b43a5a7c74 Add -N to start.py to disable to-file logging 2019-03-04 19:35:18 +00:00
jesopo
41cc90cb72 Add -m/-M help strings, move --version/-v to stop of argparser 2019-02-24 10:45:54 +00:00
jesopo
faa305f2e8 Add -m/-M args to ./start.py that call command_line on individual modules 2019-02-24 10:43:46 +00:00
jesopo
276d753711 Change --verbose short to -V, add --version/-v, add IRCBot.VERSION 2019-02-24 08:37:42 +00:00
jesopo
d8244ccae3 Add faulthandler (and faulthandler.enable()) to start.py 2019-02-11 11:43:14 +00:00
jesopo
14db95601c Add an -L argument to start.py, to explicity specify log level 2019-02-09 16:40:23 +00:00
jesopo
9e8db0ec62 Log any unhandled (critical) exceptions that happen under bot.run() in
start.py
2018-11-26 14:07:01 +00:00
jesopo
426c6ff1c9 'args.log' -> 'args.log_dir' in start.py 2018-11-26 11:13:48 +00:00
jesopo
8cd069d37d 'bot.log' -> 'trace.log' and add a 'warn.log' log file that only catches
warn-and-worse
2018-11-26 11:09:43 +00:00
Evelyn
8cd7393d17 Regression: Don't connnect if a server's 'connect' setting is false 2018-11-24 12:14:36 +00:00
jesopo
ca965e20cc bool_input moved to utils.cli 2018-11-14 10:27:15 +00:00
jesopo
73c0c911d4 Move logic for adding a server to the database out to utils.cli and add a
--add-server flag for start.py, to add new server
2018-11-13 10:40:49 +00:00
jesopo
28a00e01de Don't load modules if we don't have any servers configured 2018-11-05 21:39:30 +00:00
jesopo
e901f105dd Actually pass timers to src/ModuleManager.py 2018-10-12 18:13:48 +01:00
jesopo
819f4e0680 Pass context-wrapped timers to each module, add ModuleManager.BaseModule.on_load 2018-10-12 18:07:23 +01:00
jesopo
0a5aef09b4 Fix start.py not giving the right arguments to database.servers.add 2018-10-03 16:00:25 +01:00
jesopo
120acf54ec Add 'trace' logging level for src/Database.py and src/EventManager.py very
verbose debugging
2018-10-01 13:48:22 +01:00
jesopo
c87728a87d Move src/IRCLineHandler.py to modules/line_handler.py 2018-09-30 19:43:20 +01:00
jesopo
47ec11bbef Add src/Cache.py, use it in modules/coins.py 2018-09-29 12:53:39 +01:00
jesopo
dfe5cb0be8 Add IRCBot.directory, in case we need it. 2018-09-29 09:24:26 +01:00
jesopo
c5c2c50bc4 Correctly access bot_settings in Timers.py 2018-09-28 17:01:20 +01:00
jesopo
a8bf3c9300 Remove cyclical references to IRCBot 2018-09-28 16:51:36 +01:00
jesopo
af2b34b92b Don't give IRCBot instance to things that don't need it, use a better way of
doing default locations for config/database/log
2018-09-27 11:07:29 +01:00
jesopo
bb641b0870 Move log and database files to their own folders 2018-09-24 15:26:31 +01:00
jesopo
ecb9d7cb3f Move most code in root directory to src/ 2018-09-24 15:13:27 +01:00
jesopo
9b5c6b030c Ask for alias of first server in start.py 2018-09-23 10:40:19 +01:00
jesopo
62df014b29 Don't pass around full server details more than we have to. 2018-09-21 11:34:38 +01:00
jesopo
fcbb7c960c Refactor everything to use delimited events 2018-09-19 13:25:12 +01:00
jesopo
1eed727bc5 Add !enablemodule and !disablemodule to modules.py 2018-09-13 13:35:05 +01:00
jesopo
9874f79b49 Give modules event objects with "context"s, to facilitate purging all the event
hooks for a module
2018-08-31 12:55:52 +01:00
jesopo
b6eae3220c Database.add_server -> Database.servers.add 2018-08-30 17:08:21 +01:00
jesopo
01a5032e87 Load whitelist in start.py, pass to ModuleManager.load_modules 2018-08-30 11:41:02 +01:00
jesopo
568d714fb2 Return config from Config.load_config instead of setting it on bot 2018-08-30 11:40:41 +01:00