jesopo
|
1c296826d7
|
Move module black/white list to IRCBot, allow "safe" loading of all modules
|
2019-05-12 14:10:59 +01:00 |
|
jesopo
|
d291cd5063
|
Revamp how CAPs are tracked through REQ and ACK/NAK etc
|
2019-05-11 18:22:40 +01:00 |
|
jesopo
|
295f7a751c
|
Refactor CAPs in to objects
|
2019-05-11 15:11:09 +01:00 |
|
jesopo
|
091818fa32
|
Hold context in EventCallback objects, add name<->context translation in
ModuleManager
|
2019-05-10 16:11:22 +01:00 |
|
jesopo
|
f7eae1a978
|
Tokenize IRC data as soon as it comes out of IRCServer
|
2019-05-09 10:36:33 +01:00 |
|
jesopo
|
920dce0221
|
Add IRCServer.has_user_id, to check if we've seen a user before
|
2019-05-05 00:16:37 +01:00 |
|
Patrick Nappa
|
2c344c9ddd
|
forgot the beautiful %
|
2019-05-03 13:50:51 +10:00 |
|
Patrick Nappa
|
471c11e229
|
ensure that non-url characters not separated by whitespace aren't consumed
|
2019-05-03 13:43:08 +10:00 |
|
jesopo
|
e844004ba1
|
Fix reconnect() type hint issues
|
2019-05-01 17:13:55 +01:00 |
|
jesopo
|
aa1b457632
|
Change TRIGGER_RETURN and TRIGGER_EXCEPTION to an enum
|
2019-05-01 17:13:41 +01:00 |
|
jesopo
|
992ab15394
|
Bump version to v1.5.0
|
2019-04-30 12:05:59 +01:00 |
|
jesopo
|
280e647a84
|
Only pass through args from connection params when reconnecting
|
2019-04-30 12:05:36 +01:00 |
|
jesopo
|
0afe798b83
|
Support parsing iso8601 with microseconds
|
2019-04-28 12:11:48 +01:00 |
|
jesopo
|
74c16a1bbe
|
Actually respect default return in Exports.get_one
|
2019-04-27 14:49:18 +01:00 |
|
jesopo
|
bdcb4b5db2
|
Add missing ":"
|
2019-04-25 17:50:41 +01:00 |
|
jesopo
|
1240b154cb
|
Support interfaces that don't have AF_INET and/or AF_INET6
|
2019-04-25 17:48:51 +01:00 |
|
jesopo
|
7643a962bd
|
Refuse to get the title for any url that points locall
|
2019-04-25 15:58:58 +01:00 |
|
jesopo
|
dffee4d223
|
Move REGEX_URL out of isgd.py and title.py in to utils.http
|
2019-04-24 15:46:54 +01:00 |
|
jesopo
|
e095c56f77
|
Record and show when a !to was created
|
2019-04-24 14:32:56 +01:00 |
|
jesopo
|
dc102f258d
|
Add Database.servers.get_by_alias, move IRCBot.get_server to
IRCBot.get_server_by_id, add IRCBot.get_server_by_alias and change
!connect/!disconnect to take aliases instead of IDs
|
2019-04-24 12:07:30 +01:00 |
|
jesopo
|
bd4fdfdc7b
|
Add UNIQUE constraint for alias on servers table
|
2019-04-24 11:49:54 +01:00 |
|
jesopo
|
032f6fbc3b
|
IRCServer.alias is no longer optional
|
2019-04-24 11:45:21 +01:00 |
|
jesopo
|
87340bcbf9
|
change utils.iso8601_format to default to no milliseconds, switch to using
utils.iso8601 functions in badges.py
|
2019-04-23 21:27:43 +01:00 |
|
jesopo
|
ee8c7813f7
|
Add IRCServer.send_raw so modules don't have to parse messages before sending
them
|
2019-04-16 13:47:45 +01:00 |
|
jesopo
|
34848324d5
|
Bump version to v1.4.0
|
2019-04-16 09:59:40 +01:00 |
|
jesopo
|
272b60842e
|
'IRCChannels._get_id' -> 'IRCChannels.get_id'
|
2019-04-07 13:59:53 +01:00 |
|
jesopo
|
0eaeca8f83
|
Put spaces between units in output from utils.to_pretty_time
|
2019-03-21 17:59:42 +00:00 |
|
jesopo
|
10ca8a1219
|
Add IRCUser.hostmask() to format nick/user/host in to a hostmask
|
2019-03-12 10:39:54 +00:00 |
|
jesopo
|
5d7f017c9c
|
Enum values shouldn't be all upper case
|
2019-03-10 13:14:25 +00:00 |
|
jesopo
|
1fcbdd305c
|
'failed to connect' log line needs 2 "%s"s
|
2019-03-09 20:21:15 +00:00 |
|
jesopo
|
5c5b4ef139
|
Handle negative (end-relative) indexes being given to IRCArgs.get
|
2019-03-08 23:35:52 +00:00 |
|
jesopo
|
f1348e5679
|
Handle IRCArgs being empty strings (e.g. 'PRIVMSG #test :')
|
2019-03-08 23:23:09 +00:00 |
|
jesopo
|
b3472c009a
|
Only log exception message, not full stacktrace, when a connect fails
|
2019-03-08 10:12:01 +00:00 |
|
jesopo
|
6b59830a6e
|
Only print ANSI reset characters when appropriate
|
2019-03-06 21:48:31 +00:00 |
|
jesopo
|
1b7a8bc896
|
Log content of lines that need fallback encoding
|
2019-03-06 17:19:37 +00:00 |
|
jesopo
|
c842c459f4
|
Specifically only catch UnicodeDecodeError in IRCSocket.read
|
2019-03-06 17:02:58 +00:00 |
|
jesopo
|
11c4d70156
|
add IRCServer.clear_send_buffer() to clear queued lines
|
2019-03-05 11:35:24 +00:00 |
|
jesopo
|
91c2ab03ba
|
add IRCServer.send_enabled, to prevent sending after QUIT in signals.py
|
2019-03-05 11:29:46 +00:00 |
|
jesopo
|
b43a5a7c74
|
Add -N to start.py to disable to-file logging
|
2019-03-04 19:35:18 +00:00 |
|
jesopo
|
7a3db82300
|
Add IRCServer.has_capability and use it throughout line_handler
|
2019-03-03 22:38:34 +00:00 |
|
jesopo
|
197ae2e053
|
Raise a specific exception in utils.http.request for "wrong content type"
|
2019-02-28 23:28:45 +00:00 |
|
jesopo
|
948c86adbc
|
Need to str() Hostmask objects in ParsedLine.format()
|
2019-02-28 16:22:17 +00:00 |
|
jesopo
|
9335ca5d16
|
Treat both a and a= as None for message-tags
|
2019-02-27 22:20:01 +00:00 |
|
jesopo
|
d16046fb49
|
Simplify ParsedLine._tag_str and ParsedLine.format()
|
2019-02-27 22:14:53 +00:00 |
|
jesopo
|
846b881e52
|
Throw ValueError when utils.http.request tries to soup non-html/xml data
|
2019-02-27 15:16:08 +00:00 |
|
jesopo
|
cfaf6864fc
|
Don't try to parse non-html/xml stuff with BeautifulSoup
|
2019-02-26 11:18:50 +00:00 |
|
jesopo
|
5aaf6eb7df
|
Bump version to v1.2.1
|
2019-02-25 21:47:36 +00:00 |
|
jesopo
|
56f6511ad3
|
Critical security fix: truncate IRCLine.ParsedLine.format() at newline
|
2019-02-25 21:46:23 +00:00 |
|
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
|
faa305f2e8
|
Add -m/-M args to ./start.py that call command_line on individual modules
|
2019-02-24 10:43:46 +00:00 |
|