Commit graph

2628 commits

Author SHA1 Message Date
jesopo
5f8c93ea92 use last-seen msgid to prevent duplicate messages in chathistory BATCH 2019-06-02 15:19:05 +01:00
jesopo
c44424b5a1 Track last-seen msgid per-channel (add msgid.py) 2019-06-02 15:18:49 +01:00
jesopo
c212d70b68 Hold on to BATCH args, allow event hooks to manipulate batches 2019-06-02 15:18:36 +01:00
jesopo
5204ac3300 fix some CAP related type hints 2019-06-02 10:14:09 +01:00
jesopo
f9f637e084 Remove IRCSendBatch, fix some batch-related type hints 2019-06-02 10:13:51 +01:00
jesopo
ccf863a8a7 Update CHANGELOG 2019-06-02 07:23:49 +01:00
jesopo
20c027fd0b check if we should enable write throttling before writing, clear _recent_sends
when we turn on throttling and only "turn on" throttling once
2019-06-01 22:28:57 +01:00
jesopo
b84d133500 add __str__ and __repr__ defs to IRCLine.ParsedLine 2019-06-01 22:28:37 +01:00
jesopo
777098a67b Update CHANGELOG 2019-06-01 15:09:02 +01:00
jesopo
e5c11f4aef add 'module-blacklist/whitelist' to bot.conf - use that as well as DB setting 2019-06-01 15:06:57 +01:00
jesopo
5077bad522 list()-ify filter() return, otherwise boolean checks against it are wrong 2019-06-01 15:05:57 +01:00
jesopo
c3454f2bfe available_capability returns str - fix type hint for this 2019-06-01 15:02:38 +01:00
jesopo
5ab64b1fdf Update CHANGELOG 2019-05-31 18:00:13 +01:00
jesopo
dc284bab4a Only enable write throttling when _write_buffer is empty
closes #59
2019-05-31 15:49:34 +01:00
jesopo
f2cf86b8c0 More explicitly require throttle_done() only for _queued_lines 2019-05-31 15:32:55 +01:00
jesopo
4698ea6f78 'draft/resume-0.4' -> 'draft/resume-0.5' 2019-05-31 10:28:00 +01:00
jesopo
ea83e14dbf typo, 'serivce' - 'service' 2019-05-30 22:40:45 +01:00
jesopo
3456bb561c module.load_module takes a ModuleDefinition these days! 2019-05-30 17:28:07 +01:00
jesopo
f7f476e40b Remove empty _random_string declaration 2019-05-30 17:27:48 +01:00
jesopo
0e6bcb5af0 Hex-encode master passwords, instead of b64, to avoid "strange" chars 2019-05-30 17:25:24 +01:00
jesopo
480bbb604f Move python version check to the top of start.py 2019-05-30 17:15:40 +01:00
jesopo
5f8483c691 Update CHANGELOG 2019-05-30 17:13:01 +01:00
jesopo
abccdbb52e Check sys.version_info is greater-than-or-equal-to v3.6.0 2019-05-30 17:11:08 +01:00
jesopo
123671aac9 Log BitBot and Python version at startup 2019-05-30 17:05:46 +01:00
jesopo
17ee70cdd6 'alias' -> 'str(server)' as alias does not exist in the current context 2019-05-30 16:17:39 +01:00
jesopo
a3a61d2e86 Log server name when we see a _send failure 2019-05-30 15:46:01 +01:00
jesopo
322776bd2d Update CHANGELOG 2019-05-30 15:38:49 +01:00
jesopo
367eb1c60e Make labeled-resposnes it's own module, tag and track every sent line 2019-05-30 15:36:10 +01:00
jesopo
f0dee5ebd6 Immutable arg default values leads to weird data persistence 2019-05-30 15:30:15 +01:00
jesopo
34f9ee3c9c Update CHANGELOG 2019-05-30 07:45:49 +01:00
jesopo
58aea4b3b4 draft/labeled-response -> draft/labeled-response-0.2 2019-05-30 07:44:53 +01:00
jesopo
d225f08b9d labeled-response is not ratified yet 2019-05-29 17:54:43 +01:00
jesopo
b8f778d7bd Only try to send QUITs on ctrl+c when we're connected - sys.exit otherwise 2019-05-29 16:11:47 +01:00
jesopo
768059fcf4 Switch resume.py to use the last server-time it saw, not last .recv() 2019-05-29 15:53:20 +01:00
jesopo
240faa03fb Move IRCv3 server-time code in to it's own module, save last @time tag 2019-05-29 15:52:21 +01:00
jesopo
2f6dda9030 First draft of following/unfollowing tweets in channels 2019-05-29 12:19:53 +01:00
jesopo
6ef995bbf2 Better CHANGELOG line about #56 2019-05-28 13:51:58 +01:00
jesopo
2b4cbf26bf Update CHANGELOG 2019-05-28 10:47:31 +01:00
jesopo
4543f0a439 Switch from bot-url metadata to bot+homepage (https://git.io/fjlSn) 2019-05-28 10:28:48 +01:00
jesopo
0be9046669 Pass str object to BeautifulSoup, not bytes. closes #56 2019-05-28 10:22:35 +01:00
jesopo
113a3b6405 re.escape nicknames for highlight prevention 2019-05-28 08:18:42 +01:00
jesopo
e483d4574b 'bot' -> 'self.bot' 2019-05-27 17:04:21 +01:00
jesopo
69a780b596 append ".py" when doing find_module on ModuleType.FILE 2019-05-27 16:56:13 +01:00
jesopo
86d46c9917 re-add _reload function 2019-05-27 16:55:02 +01:00
jesopo
7b6905454f Don't include module-unload numbers in "success" numbers 2019-05-27 16:54:44 +01:00
jesopo
850ddd0ab4 Use self.bot.load_modules in modules.py 2019-05-27 15:47:47 +01:00
jesopo
5b90a1a1d4 ModuleManager's load_module function now takes a ModuleDefinition 2019-05-27 14:57:16 +01:00
jesopo
76b268e60e Switch to using tweepy for tweets module 2019-05-27 14:52:08 +01:00
jesopo
786f04ea16 set changed = True when we pop a module with no dependencies left 2019-05-27 14:50:15 +01:00
jesopo
ce3a0668c6 Throw an exception when we detect a complex circular dependency 2019-05-27 11:42:47 +01:00