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 |
|
jesopo
|
0331b763ff
|
refactor multi-line-to-line normalisation to utils.parse.line_normalise(), use it in rss.py
closes #174
|
2019-10-10 10:33:18 +01:00 |
|
jesopo
|
51a4a4253c
|
-V command line arg should still effect stdout
|
2019-10-09 17:54:12 +01:00 |
|
jesopo
|
f721cf848a
|
stdout output should just be WARN - put INFO in to a daily file
this is because stdout, in something like systemd, will mess up journalctl output.
|
2019-10-09 17:36:17 +01:00 |
|
jesopo
|
ab2701837c
|
we should be catching timer as the output of self._timers.add
|
2019-10-09 12:47:03 +01:00 |
|
jesopo
|
a0870ad118
|
v1.12.0-rc1 release
|
2019-10-09 12:42:22 +01:00 |
|
jesopo
|
6ee2b6cf27
|
self.timers -> self._timers
|
2019-10-08 21:51:58 +01:00 |
|
jesopo
|
f8662ad6e1
|
fix IRCChannel.topic_setter type hint
|
2019-10-08 14:55:46 +01:00 |
|
jesopo
|
7a5edccb98
|
transient timers shouldn't use the event system
|
2019-10-08 13:49:55 +01:00 |
|
jesopo
|
4c02c7c86a
|
refactor anything that effects event poll timeout in to PollHook objects
|
2019-10-08 12:20:08 +01:00 |
|
jesopo
|
68aa89f16f
|
commit FunctionSetting changes i forgot to commit yesterday
|
2019-10-08 11:38:56 +01:00 |
|
jesopo
|
257042ac2c
|
combine find_user_settings() and find_user_settings_prefix()
|
2019-10-07 12:51:44 +01:00 |
|
jesopo
|
50d1eb6b8c
|
combine find_setting() and find_setting_prefix() on user/channel/server/bot
|
2019-10-07 12:46:52 +01:00 |
|
jesopo
|
9ab817ca58
|
parse out content_type in Response ctor
|
2019-10-05 22:56:56 +01:00 |
|
jesopo
|
b2473a4ac4
|
parse content-type out in utils.http.request, put it on Response object
|
2019-10-04 13:07:09 +01:00 |
|
jesopo
|
3466a3c43e
|
Allow utils.Setting_ parse functions to throw detailed errors
|
2019-10-04 10:25:48 +01:00 |
|
jesopo
|
f306213cb8
|
'is_localhost()' -> 'host_permitted()'
|
2019-09-30 15:15:20 +01:00 |
|
jesopo
|
b9c64b7cf1
|
use ipaddress is_loopback etc to do better forbidden ranges
closes #87
|
2019-09-30 15:12:01 +01:00 |
|
jesopo
|
8480309db2
|
only _kill() when there's no servers *and* the event queue is empty
this is so that bitbot doesn't exit when you !reconnect but only have 1 server
|
2019-09-30 11:52:07 +01:00 |
|
jesopo
|
a42a196720
|
only return IRCUser.hostmask() when all needed pieces are available
|
2019-09-27 16:21:59 +01:00 |
|
jesopo
|
82173a7d94
|
add external_modules directory
|
2019-09-27 16:03:06 +01:00 |
|
jesopo
|
16ba52f5dc
|
forgot to commit kwargs for get_user()
|
2019-09-27 15:52:25 +01:00 |
|
jesopo
|
7db17c0962
|
add utils.parse.try_int() because .isdigit() isnt good enough
|
2019-09-26 13:44:38 +01:00 |
|
jesopo
|
accd127ce5
|
add IRCBuffer.find_many_from()
|
2019-09-26 13:44:21 +01:00 |
|
jesopo
|
2f49fb99e9
|
assume http fallback_encoding by content-type (utf8 for json)
|
2019-09-25 15:32:09 +01:00 |
|
jesopo
|
47d38c7d18
|
refactor all checks for channel_type to server.is_channel()
|
2019-09-20 14:52:41 +01:00 |
|
jesopo
|
72649a90c2
|
only BeautifulSoup for finding encoding when it's a html-ish type
|
2019-09-20 13:38:00 +01:00 |
|
jesopo
|
d609bfb16d
|
cache calculated "next expiration" time
|
2019-09-20 11:47:57 +01:00 |
|