Commit graph

804 commits

Author SHA1 Message Date
jesopo
9958c9169d fix _line() related type hinting issues in IRCServer.py 2019-10-30 13:46:29 +00:00
jesopo
3634b72622 add utils.date_human() - use it in badges.py 2019-10-30 10:25:07 +00:00
jesopo
4d85c3d1e0 utils.parse doesn't need to import utils 2019-10-29 18:03:03 +00:00
jesopo
080bcef3a0 'from src.utils import' -> 'from . import' 2019-10-29 18:02:50 +00:00
jesopo
9b349f8cc0 move typing.Callable def so Event doesn't have to be in " " 2019-10-29 18:00:59 +00:00
jesopo
40a340e94f utils.cli shouldn't know about Database 2019-10-29 18:00:38 +00:00
jesopo
46e4b75f6b utils.irc doesn't need to know about the whole of utils 2019-10-29 18:00:19 +00:00
jesopo
9f48dfb1f1 send_mode() args is already a list 2019-10-29 10:23:47 +00:00
jesopo
8983338680 move src/utils/irc/__init__.py to src/utils/irc.py 2019-10-28 10:57:19 +00:00
jesopo
7ee65f8f8c remove src/utils/irc/protocol.py 2019-10-28 10:56:33 +00:00
jesopo
1bddc3b37f Revert "remove unneeded import"
This reverts commit 8425c11c97.
2019-10-27 10:32:13 +00:00
jesopo
8425c11c97 remove unneeded import 2019-10-27 10:25:37 +00:00
jesopo
8f4b5a0e70 move IRCLine related code from utils.irc to IRCLine.py 2019-10-27 10:19:00 +00:00
jesopo
3a755bb15f don't consume past 2nd digit in e.g. "\03033,123" 2019-10-25 17:12:24 +01:00
jesopo
877287291a reason arg of panic() shouldn't be optional, detect current exception 2019-10-25 14:31:09 +01:00
jesopo
b3f43a6721 remove bot.panic() throw kwarg 2019-10-25 14:27:12 +01:00
jesopo
226ebe1f1f DEBUG log IRCBot.connect failure stacktrace 2019-10-25 14:18:22 +01:00
jesopo
7d4c6b6941 bot.panic() should just call sys.exit() 2019-10-25 14:14:30 +01:00
jesopo
9d1b640db4 re-add list moving CAP objects from capability_queue to capabilities_requested 2019-10-25 11:52:11 +01:00
Valentin Lorentz
d8c48fa98f Make send_capability_queue split 'CAP REQ' message based on string length.
Instead of sending caps by groups of 10.
2019-10-23 21:20:56 +02:00
jesopo
062290704c explicitly break event loop on Kill 2019-10-22 14:26:40 +01:00
jesopo
00e85c7573 bitbotctl stop should be keepalive so it exits when bitbotd exits 2019-10-18 11:29:59 +01:00
jesopo
f64131a10f support utf8 hostnames by punycode (idna) encoding 2019-10-18 10:58:24 +01:00
jesopo
a1b8a4033a hook_handler should be catching TRACE logging 2019-10-17 17:49:49 +01:00
jesopo
aa2511baaa add IRCBot.stop() - use it for !shutdown and './bitbotctl stop' 2019-10-17 16:53:48 +01:00
jesopo
417c4f302e default to using a "data directory" for bitbot (~/.bitbot/) 2019-10-17 12:39:56 +01:00
jesopo
b895958f09 remove debug prints from IRCBot 2019-10-15 16:16:29 +01:00
jesopo
aa3906dfa3 fix type linting issues for client in Control.is_readable 2019-10-14 18:17:15 +01:00
jesopo
88ffa421c1 add bitbotctl reload command to reload all modules 2019-10-14 14:52:58 +01:00
jesopo
99b4663ce7 run Control callbacks on main thread
closes #180
2019-10-14 14:51:53 +01:00
jesopo
e50290046a remove safe arg from ModuleManager.load_modules() - try_reload_modules covers this now 2019-10-14 13:02:16 +01:00
jesopo
a9111c7241 add ModuleManager.try_reload_modules(), to try reloading in a transaction
if any of the modules fails to reload, rollback and use the already loaded modules. closes #179
2019-10-14 12:56:04 +01:00
jesopo
4940aff877 refactor out chosing loadable modules in to _list_valid_modules() 2019-10-14 11:37:04 +01:00
jesopo
2ca702b787 don't have version 'v' prefix in VERSION 2019-10-11 17:27:36 +01:00
jesopo
82f77472c6 'test_handler' -> 'hook_handler' 2019-10-11 17:17:43 +01:00
jesopo
14f5ec38ed hold current version in it's own file: VERSION 2019-10-11 17:03:14 +01:00
jesopo
85a8ddf2d1 kill bitbotctl connection after rehash 2019-10-11 15:58:47 +01:00
jesopo
6a4cdabc93 add "rehash" bitbotctl command 2019-10-11 15:54:43 +01:00
jesopo
22b6a19054 try/except Control socket writes 2019-10-11 15:16:39 +01:00
jesopo
de389b34b8 add first real cli functionality: showing log 2019-10-11 15:12:26 +01:00
jesopo
cefde48e42 first draft of infrastructure for unix domain control socket 2019-10-11 14:00:26 +01:00
jesopo
daeb37226a LockFile doesn't need to hold on to _database_location 2019-10-11 14:00:02 +01:00
jesopo
175f90f6a2 add "poll sources" - objects that can provide additional filenos for polling 2019-10-11 13:59:28 +01:00
jesopo
b7b045eadb Don't exit when there are no connected servers
closes #175
2019-10-11 13:06:52 +01:00
jesopo
fd0baff093 only .call() PollHooks when they're "due" 2019-10-10 14:12:58 +01:00
jesopo
1c792f0194 move PoolHook registrations to start.py 2019-10-10 13:58:45 +01:00
jesopo
e624292608 v1.12.0 release 2019-10-10 13:36:55 +01:00
jesopo
a2b73469e6 v1.12.0-rc2 release 2019-10-10 12:43:19 +01:00
jesopo
5be01a45c4 'server.conncect_time' -> 'server.connect_time' 2019-10-10 12:31:24 +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