jesopo
|
0a93e76333
|
Use Timers.get_timers() instead of Timers.timers
|
2018-10-12 18:15:22 +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
|
cb94fa9ae4
|
Add TimersContext, to be able to purge timers when modules are unloaded
|
2018-10-12 17:54:15 +01:00 |
|
jesopo
|
d460375629
|
Use decimal.Decimal in utils.parse_number
|
2018-10-12 11:28:14 +01:00 |
|
jesopo
|
d427e29936
|
Actually pass format args to ValueErrors in utils.parse_number
|
2018-10-12 11:21:57 +01:00 |
|
jesopo
|
a810d273d1
|
int(number) after we've checked .isdigit() in utils.parse_number
|
2018-10-12 11:19:04 +01:00 |
|
jesopo
|
9771fc9f7a
|
Add utils.parse_number, to turn 1k/1m/1b in to 1_000/1_000_000/1_000_000_000
|
2018-10-12 11:16:39 +01:00 |
|
jesopo
|
e6a55b2b22
|
Improve "non-complete line" TRACE log
|
2018-10-11 18:07:11 +01:00 |
|
jesopo
|
dceed3d439
|
TRACE log when we receive and buffer a non-complete line
|
2018-10-11 17:56:19 +01:00 |
|
jesopo
|
23b7223fae
|
Add !syncmodes in modules/auto_mode.py, fire internal.identified in
modules/permissions.py and catch it in modules/auto_mode.py to give users modes
when they identify using the internal identity mechanism
|
2018-10-11 11:20:53 +01:00 |
|
jesopo
|
c655668bbe
|
Add fallback_encoding to utils.http.get_url, in case a page has no implicit
encoding
|
2018-10-10 23:49:59 +01:00 |
|
jesopo
|
f286f3bf48
|
.decode data prior to json.loads in utils.http.get_url
|
2018-10-10 15:25:08 +01:00 |
|
jesopo
|
951c315cec
|
Fix syntax error for throwing a timeout when signal.alarm fires
|
2018-10-10 15:07:04 +01:00 |
|
jesopo
|
015fa8ddff
|
.decode plaintext returns from utils.http.get_url
|
2018-10-10 15:06:30 +01:00 |
|
jesopo
|
5b9ffe013d
|
Use signal.alarm to Deadline utils.http.get_url and throw useful exceptions
|
2018-10-10 14:25:44 +01:00 |
|
jesopo
|
be75f72356
|
Set a max size of 100mb for utils.http.get_url
|
2018-10-10 14:05:15 +01:00 |
|
jesopo
|
68f5626189
|
Change utils.http to use requests
|
2018-10-10 13:41:58 +01:00 |
|
jesopo
|
c28a41ad21
|
Remove debug print in src.utils.http
|
2018-10-09 22:39:34 +01:00 |
|
jesopo
|
f69a1ce7c1
|
Return response code from utils.http.get_url when code=True and soup=True
|
2018-10-09 22:16:04 +01:00 |
|
jesopo
|
b144d5e37e
|
Don't continue trying to use None data
|
2018-10-08 23:03:49 +01:00 |
|
jesopo
|
383767c7fb
|
Support post_data in utils.http.get_url
|
2018-10-08 12:43:31 +01:00 |
|
jesopo
|
681866339c
|
Support multiple types of comments in utils.get_hashflags
|
2018-10-07 11:24:13 +01:00 |
|
jesopo
|
29d8549da1
|
clear _trigger_functions after we've called all the waiting functions
|
2018-10-07 08:06:41 +01:00 |
|
jesopo
|
a77a985d5d
|
Optionally take a function in IRCBot.trigger, a function to be called on the
main thread
|
2018-10-07 08:01:54 +01:00 |
|
jesopo
|
472d745401
|
Socket on_read functions take 2 args (socket, string)
|
2018-10-07 07:56:11 +01:00 |
|
jesopo
|
bb533ab9e8
|
This is a far less complicated way of triggering epoll.poll
|
2018-10-07 07:54:10 +01:00 |
|
Evelyn
|
661199aa54
|
Research suggests _config and config are not synonymous
|
2018-10-06 22:58:59 +01:00 |
|
jesopo
|
825fb15c87
|
Add control-socket to bot.conf.example, only start up control socket is a unix
domain socket location is provided
|
2018-10-06 18:31:00 +01:00 |
|
jesopo
|
9458d9fee2
|
'control_socket_client' -> '_control_client' in src/IRCBot.py
|
2018-10-06 16:42:38 +01:00 |
|
jesopo
|
90680c11ef
|
Remove debug print in src/ControlSocket.py
|
2018-10-06 15:46:58 +01:00 |
|
jesopo
|
79aff93b5d
|
Add a ControlSocket client to IRCBot.py, use it to trigger the epoll loop when a
github webhook has been caught!
|
2018-10-06 15:45:56 +01:00 |
|
jesopo
|
0794a5173a
|
Add a way to track non-IRC sockets within the main epoll loop; use this for a
unix domain control socket!
|
2018-10-06 15:37:05 +01:00 |
|
jesopo
|
df94020ef5
|
Add database.find_by_setting, send github commits to interested channels
|
2018-10-06 09:54:21 +01:00 |
|
jesopo
|
60ec6fe2db
|
'ssl-certificate'/'ssl-key' -> 'tls-certificate'/'tls-key'
|
2018-10-05 23:01:12 +01:00 |
|
jesopo
|
096fd05cee
|
Typo in utils, 'line.replace[3:]' -> 'line[3:]'
|
2018-10-04 16:01:34 +01:00 |
|
jesopo
|
f2d9ff9d3b
|
Checking for the presence of the seperator in the return from .partition is a
more "correct" way of doing this
|
2018-10-04 15:27:52 +01:00 |
|
jesopo
|
feed251f82
|
Non-present hashflag values should be None, not empty string
|
2018-10-04 15:23:35 +01:00 |
|
jesopo
|
8d3255c46d
|
Simplify hashflag parsing
|
2018-10-04 15:22:09 +01:00 |
|
jesopo
|
c0fbe963a5
|
Try calling module.unload() (if it exists) when unloading a module
|
2018-10-04 14:45:32 +01:00 |
|
jesopo
|
72602e13f9
|
IRCChannel.send_part should have a self param!
|
2018-10-04 14:45:14 +01:00 |
|
jesopo
|
b00819d581
|
self.lock.acquire() should be after epoll.poll has returned
|
2018-10-04 14:44:50 +01:00 |
|
jesopo
|
75f25db4cd
|
Move 'top 10' logic to utils, add !wordiest to modules/words.py
|
2018-10-04 05:33:15 +01:00 |
|
jesopo
|
934ee7bf8e
|
Typo in src/IRCChannel.py. 'del self.user_modes' -> 'del self.user_modes[user]'
|
2018-10-04 04:41:28 +01:00 |
|
jesopo
|
ce2231900d
|
Print user status symbols in modules/print_activity.py
|
2018-10-03 16:44:44 +01:00 |
|
jesopo
|
98207be7b1
|
'mode_prefixes' -> prefix_modes and prefix_symbols
|
2018-10-03 16:44:00 +01:00 |
|
jesopo
|
6c1ac52fde
|
Use docstring key, not value, as a key.
|
2018-10-03 16:00:53 +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
|
69d58eede2
|
Move src/Utils.py in to src/utils/, splitting functionality out in to modules of
related functionality
|
2018-10-03 13:22:37 +01:00 |
|
jesopo
|
760c9d8844
|
Add a way to not add a user automatically in IRCServer.get_user
|
2018-10-03 11:32:31 +01:00 |
|
jesopo
|
2b349105aa
|
Move parsing IRC lines to src/Utils.py, added base support for parsing outgoing
messages
|
2018-10-03 11:31:51 +01:00 |
|