jesopo
|
d627ed49e2
|
Pull "is main thread" logic out to utils, force Database to be accessed on main
thread
|
2019-02-25 10:36:17 +00:00 |
|
jesopo
|
276d753711
|
Change --verbose short to -V, add --version/-v, add IRCBot.VERSION
|
2019-02-24 08:37:42 +00:00 |
|
jesopo
|
137d5b1a58
|
connected status is now tracked by IRCSockets
|
2019-02-11 20:34:02 +00:00 |
|
jesopo
|
9b44b6cd13
|
Shift socket.socket related logic to IRCSocket.py
|
2019-02-11 10:00:41 +00:00 |
|
jesopo
|
312293b221
|
Make block param of queue.get() explicitly refer to block
|
2018-12-10 13:34:53 +00:00 |
|
jesopo
|
50ced296d1
|
Clarify func_queue type (IRCBot.py)
|
2018-12-02 10:08:58 +00:00 |
|
jesopo
|
cbc3ae3432
|
Remove usage of sys.stderr in IRCBot.py, change disconnect logs from info to
`warn`
|
2018-12-02 09:43:57 +00:00 |
|
jesopo
|
9a311c88b6
|
Remove print calls from IRCBot.py, move received data logging to IRCServer
|
2018-12-02 09:41:21 +00:00 |
|
jesopo
|
e1cdd4a353
|
Add type hint for return type of IRCBot.trigger
|
2018-11-27 17:29:38 +00:00 |
|
jesopo
|
9d9deb28b5
|
Raise exceptions back up through .trigger()
|
2018-11-27 15:06:10 +00:00 |
|
jesopo
|
d13a5069e3
|
Grab response from functions asked to be executed on the main thread and feed
them back to the callers, allowing rest_api.py to take the main thread while
it's waiting for the response to give back to the requesting client
|
2018-11-27 14:25:12 +00:00 |
|
jesopo
|
72dca06626
|
Add a way to catch when a writebuffer is emptied so we can e.g. assure a QUIT is
sent before shutting down the bot
|
2018-11-27 11:56:03 +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
|
99c2147512
|
Don't assume a reconnect timer event will always have connection_params
|
2018-11-14 13:08:57 +00:00 |
|
jesopo
|
0a70fda6dc
|
Don't pass connection_params through to reconnect in normal circumstances
|
2018-11-05 20:51:51 +00:00 |
|
jesopo
|
ce3b319bee
|
Only automatically reconnect to a server when we don't already have a server
with the same ID (to make reconnection work)
|
2018-11-05 20:33:45 +00:00 |
|
jesopo
|
d63115440d
|
Fix the order of some connection params, add alias as a seperate argument to
IRCServer.Server
|
2018-11-05 18:30:39 +00:00 |
|
jesopo
|
6b8593a09b
|
Pass connection parameters around in their own object (IRCConnectionParameters)
|
2018-11-05 18:23:02 +00:00 |
|
jesopo
|
aaf0c8cf2a
|
Reschedule STS expiration on disconnect
|
2018-11-05 14:12:21 +00:00 |
|
jesopo
|
10130d7288
|
I forgot the "normal" event hook syntax!
|
2018-11-05 12:34:18 +00:00 |
|
jesopo
|
86bbd370fb
|
'self.events' -> 'self._events' in IRCBot
|
2018-11-05 12:29:13 +00:00 |
|
jesopo
|
fa3fc7e3fb
|
@utils.hook doesn't work outside of modules!
|
2018-11-05 12:27:11 +00:00 |
|
jesopo
|
c2ebc7b5e4
|
Refactor IRCServer .connect() logic
|
2018-11-05 11:53:33 +00:00 |
|
jesopo
|
a4d8d1f855
|
Fix some non-explicit None returns, add type hints to important variables
|
2018-10-31 15:12:46 +00:00 |
|
jesopo
|
b543e31cd2
|
Fix/refactor issues brought up by type hint linting
|
2018-10-30 17:49:35 +00:00 |
|
jesopo
|
e07553c362
|
Add type/return hints throughout src/ and, in doing so, fix some cyclical
references.
|
2018-10-30 14:58:48 +00:00 |
|
jesopo
|
4796d4264c
|
Print lines not [lines] in src/IRCBot.py
|
2018-10-17 17:36:01 +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
|
b144d5e37e
|
Don't continue trying to use None data
|
2018-10-08 23:03:49 +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 |
|
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
|
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
|
b00819d581
|
self.lock.acquire() should be after epoll.poll has returned
|
2018-10-04 14:44:50 +01:00 |
|
jesopo
|
6af738107b
|
Implement client-side bindhost
|
2018-10-01 14:06:50 +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
|
16dc2c39a9
|
Refactor modules/channel_op.py and add !tempban/!tempkickban
|
2018-09-30 13:28:26 +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
|
a8bf3c9300
|
Remove cyclical references to IRCBot
|
2018-09-28 16:51:36 +01:00 |
|
jesopo
|
6b01c8bb04
|
Change IRCBot.reconnect to only pass server_id to IRCBot.add_server
|
2018-09-27 10:22:57 +01:00 |
|
jesopo
|
12f68f55a7
|
IRCBot.bot_directory is no longer used
|
2018-09-24 17:29:06 +01:00 |
|
jesopo
|
ecb9d7cb3f
|
Move most code in root directory to src/
|
2018-09-24 15:13:27 +01:00 |
|