Commit graph

4173 commits

Author SHA1 Message Date
jesopo
133ff1c0f6 only count "\n"s (not "\r\n") that hit the wire, incase \r\n gets cut in half 2019-06-17 18:23:38 +01:00
jesopo
4bcc02f32d WARN log for soft SASL failure 2019-06-17 18:22:12 +01:00
jesopo
ee9a67730a _end_sasl takes a server param 2019-06-17 18:11:02 +01:00
jesopo
7df8082e72 Update help/usage strings for vote.py 2019-06-17 18:08:02 +01:00
jesopo
966515bd24 Make sure new random ids are unique 2019-06-17 17:54:41 +01:00
jesopo
96d2a1fae6 Support multiple concurrent votes 2019-06-17 17:51:42 +01:00
jesopo
d4391cc6c5 Fix Database.ChannelSettings.find SQL 2019-06-17 17:51:27 +01:00
jesopo
738a353c52 support recalling results of old votes 2019-06-17 16:36:48 +01:00
jesopo
933668f0a3 Allow admin users to start/end votes 2019-06-17 16:30:23 +01:00
jesopo
31503f3f75 first draft of vote.py 2019-06-17 16:29:14 +01:00
jesopo
5c325d9b23 'break' instead of 'continue' so that things in the event queue get discarded 2019-06-17 16:19:20 +01:00
jesopo
47acd4adc3 Add a setting to disable "hard" sasl failure 2019-06-17 14:22:08 +01:00
jesopo
72ce880478 Only panic() when a server connection is part of bot init. closes #69 2019-06-17 14:20:11 +01:00
jesopo
0c02368023 panic() if a sasl dance fails on first connection, disconnect on reconnect sasl
fail
2019-06-17 14:07:44 +01:00
jesopo
9121a868a8 Make sure we exit event loop when there's no servers left 2019-06-17 14:07:06 +01:00
jesopo
dbe0b1f43b Tell servers objects when they are the result of a reconnection 2019-06-17 13:53:17 +01:00
jesopo
ec733e200c Default IRCBot.running to false, set to true at the top of .run() 2019-06-17 11:35:45 +01:00
jesopo
76a2c66b3e Show what the given context was when it's unknown 2019-06-17 11:29:36 +01:00
jesopo
99a314ed01 Catch _to_context ValueError and show pretty error 2019-06-17 11:27:48 +01:00
jesopo
da5d48400d Change panic() reason log from ERROR to CRITICAL 2019-06-17 11:12:04 +01:00
jesopo
9ea356bc49 Raise a BitBotPanic() exception in panic() 2019-06-17 11:11:35 +01:00
jesopo
f8fa529ca5 Add IRCBot.panic() - a nicer interface for killing the whole application 2019-06-17 11:06:03 +01:00
jesopo
ced59a0f74 Allow channel-access and channel-mode check for channels people are not in 2019-06-16 20:48:31 +01:00
jesopo
73aa55b866 Support 'channel-access' check request referencing current channel 2019-06-16 20:45:14 +01:00
jesopo
98e1202c78 Allow command.regex hooks to opt-in to being triggered from a /me
closes #68
2019-06-16 18:40:25 +01:00
jesopo
18004c23e1 Don't fail get_kwarg when self.kwarg[name] is falsey 2019-06-16 18:39:56 +01:00
jesopo
77126e5807 Update CHANGELOG.md 2019-06-16 17:20:47 +01:00
jesopo
75f60caaf8 'multi-line' -> 'multiline' 2019-06-16 17:20:31 +01:00
jesopo
4b61f837fb 'timeout' -> 'cooldown'. closes #60 2019-06-16 17:05:40 +01:00
jesopo
002e1333a4 Add auto-github-timeout to prevent duplicate auto-githubs 2019-06-16 16:57:22 +01:00
jesopo
b4d61ecd55 Update CHANGELOG.md 2019-06-16 15:37:16 +01:00
jesopo
5fa3d66a39 Return all caps through received.cap.ls|new and check if valid in line_handler,
remove server.cap_started
2019-06-16 15:33:20 +01:00
jesopo
3a18229a73 Parse inbound bitbot.dev/multi-line batches 2019-06-16 10:03:46 +01:00
jesopo
ef10207a73 Send target as batch argument 2019-06-16 10:03:28 +01:00
jesopo
33de403685 Implement bitbot.dev/multi-line 2019-06-16 09:53:12 +01:00
jesopo
919a488e86 Implement client-to-server BATCHes 2019-06-16 09:52:54 +01:00
jesopo
055eed24fd Type annotate ParsedLine.tags, add ParsedLine.add_tag() 2019-06-16 09:52:25 +01:00
jesopo
5b58cc05b6 Check that we have enough PRIVMSG args for strip_color.py 2019-06-16 09:52:04 +01:00
jesopo
c9de95f44a forgot to pass stdout and stderr to command callbacks! 2019-06-16 09:51:45 +01:00
jesopo
fff4f89a50 Update CHANGELOG.md 2019-06-15 18:46:09 +01:00
jesopo
8ab4880c5c Change from yield checks to a func in events that pass up EventErrors 2019-06-15 18:42:14 +01:00
jesopo
cb2cab627f Remove debug yield check 2019-06-15 18:41:04 +01:00
jesopo
8392ee571a Update CHANGELOG.md 2019-06-15 00:51:48 +01:00
jesopo
fd35acb01b Request draft/event-playback when available 2019-06-15 00:49:14 +01:00
jesopo
b5a467552f CRITICAL log exceptions caught in _loop_catch() 2019-06-15 00:39:52 +01:00
jesopo
04f3e98515 Update CHANGELOG.md 2019-06-14 18:12:54 +01:00
jesopo
1d8173f607 copypaste fail, setting_info -> export_settings[setting] 2019-06-14 17:39:11 +01:00
jesopo
e814494777 Show example (when available) for "invalid value" error 2019-06-14 17:35:12 +01:00
jesopo
229a45a491 Change prviate channel_access commands to use a "channel-access" yield check 2019-06-14 17:23:22 +01:00
jesopo
f8b086b095 "saved a duck" -> "befriended a duck" 2019-06-14 17:11:44 +01:00