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
|
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
|
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
|
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
|
a3a61d2e86
|
Log server name when we see a _send failure
|
2019-05-30 15:46:01 +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
|
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
|
0be9046669
|
Pass str object to BeautifulSoup, not bytes. closes #56
|
2019-05-28 10:22:35 +01:00 |
|
jesopo
|
69a780b596
|
append ".py" when doing find_module on ModuleType.FILE
|
2019-05-27 16:56:13 +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 |
|
jesopo
|
5b780672a8
|
Enable TCP keepalives
|
2019-05-27 07:58:24 +01:00 |
|
jesopo
|
2a93a8f1dd
|
Only check for unknown dependencies once
|
2019-05-26 20:27:17 +01:00 |
|
jesopo
|
38dd69a71e
|
Only iterate a module's deps, not all modules, when checking for circular deps
|
2019-05-26 14:47:05 +01:00 |
|
jesopo
|
4048f63538
|
'cicular' -> 'circular', words are hard
|
2019-05-26 11:25:52 +01:00 |
|
jesopo
|
9815ddac8a
|
'cycular' -> 'cicular'
|
2019-05-26 06:54:29 +01:00 |
|
jesopo
|
69a1f42ecc
|
Add basic comments for dependency-sorting system
|
2019-05-25 21:47:28 +01:00 |
|
jesopo
|
bb475d5cc8
|
Implement ordering modules by depends-on hashflag
|
2019-05-25 21:43:32 +01:00 |
|
jesopo
|
eeee2458d3
|
Fix utils.parse.hashflags type hints
|
2019-05-25 21:42:42 +01:00 |
|
jesopo
|
552902d462
|
Refactor ModuleManager
|
2019-05-25 18:24:50 +01:00 |
|
jesopo
|
d0634bb54e
|
Don't store hashflags as a dict before returning them - allow duplicate keys
|
2019-05-25 12:58:07 +01:00 |
|
jesopo
|
a3a2c1e5a4
|
Store IRCSocket connect_time, show bytes read/write per second in stats.py
|
2019-05-24 17:32:59 +01:00 |
|
jesopo
|
503969abfd
|
Bump version to v1.7.1
|
2019-05-24 06:52:25 +01:00 |
|
jesopo
|
b12298135e
|
Bump version to v1.7.0
|
2019-05-23 19:10:22 +01:00 |
|
jesopo
|
6678076490
|
Remove column from server.add SQL (leftover from removing 'ipv4' column)
|
2019-05-21 10:45:24 +01:00 |
|
jesopo
|
ab1074cf4d
|
Remove mention of ipv4 - detect address family automatically
|
2019-05-21 10:11:09 +01:00 |
|
jesopo
|
db33e12c8c
|
Remove Capability.enabled() - it's unused
|
2019-05-20 16:36:02 +01:00 |
|
jesopo
|
b12c38c326
|
typing.List -> typing.Sequence
|
2019-05-20 16:35:50 +01:00 |
|
jesopo
|
bdd161256d
|
has_capability -> has_capability_str , add new has_capability
|
2019-05-20 16:33:32 +01:00 |
|
jesopo
|
3ad83655d5
|
ParsedLine already deals with preventing newlines
|
2019-05-20 16:19:37 +01:00 |
|
jesopo
|
e752b60f6c
|
use fnmatchcase( so the strings are not case-"normalised"
|
2019-05-19 16:28:46 +01:00 |
|
jesopo
|
c607a0e67c
|
Implement utils.irc.hostmask_match for glob-like hostmask matching
|
2019-05-19 16:24:38 +01:00 |
|
jesopo
|
58d6b16744
|
Remove _name and _draft_name (unused) and add Capability.copy()
|
2019-05-19 11:00:58 +01:00 |
|
jesopo
|
7671dd2086
|
Switch back to events.name defaulting to None, use typing.cast to fix linting
error
|
2019-05-18 21:14:28 +01:00 |
|
jesopo
|
105351d6f3
|
Add a timestamp to recent_sends for EACH line sent
|
2019-05-18 19:08:34 +01:00 |
|
jesopo
|
d64d12f8fd
|
give EventCallbacks their event name
|
2019-05-18 18:35:23 +01:00 |
|
jesopo
|
eccd43d357
|
Add a way to not put spaces between docstring lines when stripping \n
|
2019-05-18 18:34:27 +01:00 |
|
jesopo
|
bea8556329
|
Bump version to v1.6.0
|
2019-05-17 13:39:55 +01:00 |
|
jesopo
|
7547eee96d
|
Catch server version string, from RPL_MYINFO
|
2019-05-15 17:12:21 +01:00 |
|
jesopo
|
a80eda614d
|
Add IRCBot.SOURCE, use it in ctcp.py
|
2019-05-15 10:30:36 +01:00 |
|
jesopo
|
38ba656bda
|
Add type hints to utils.irc.MessageTag
|
2019-05-14 23:07:42 +01:00 |
|
jesopo
|
421d9c10c7
|
Add utils.irc.MessageTag and use it for both draft and ratified msgid
|
2019-05-14 13:02:45 +01:00 |
|