jesopo
|
932d596660
|
if there's more than 1 error message, give generic error
|
2020-02-27 18:00:13 +00:00 |
|
jesopo
|
8c9bfe9a2d
|
insert decorator kwargs because decorators are run innermost first
|
2020-02-27 17:58:06 +00:00 |
|
jesopo
|
c3720ce4fa
|
by default, do not prune inactive channels we have modes in
|
2020-02-27 12:37:25 +00:00 |
|
jesopo
|
4d38639742
|
allow individual channels to opt out of inactivity pruning
|
2020-02-27 10:33:15 +00:00 |
|
jesopo
|
5a78f03aa7
|
v1.19.0-rc2
|
2020-02-27 10:11:37 +00:00 |
|
jesopo
|
7293243429
|
fix type hinting issues in send_modes/send_kicks (IRCChannel)
|
2020-02-27 10:09:28 +00:00 |
|
jesopo
|
74b53f1765
|
add !badge show <name>
|
2020-02-26 21:02:10 +00:00 |
|
jesopo
|
d24442587c
|
prefix can be None - null-coalesce it to empty string
|
2020-02-26 17:38:00 +00:00 |
|
jesopo
|
02e734824f
|
move accept_invite.py to core modules, default to not accepting invites bot-wide
|
2020-02-26 17:30:56 +00:00 |
|
jesopo
|
f82e3536f0
|
move bot_channel.py to core_modules, default to no bot channel
|
2020-02-26 17:30:36 +00:00 |
|
jesopo
|
5be9450628
|
commands module no longer relies on pemissions module
|
2020-02-26 17:21:36 +00:00 |
|
jesopo
|
e485632359
|
kick bitbot last if he's covered by !kick/!kickban
|
2020-02-26 17:15:35 +00:00 |
|
jesopo
|
6c5258d037
|
v1.19.0-rc1
|
2020-02-26 16:49:52 +00:00 |
|
jesopo
|
725c1d3bfa
|
masks should be a list, otherwise we iterate a string
|
2020-02-26 16:47:30 +00:00 |
|
jesopo
|
fef1c47626
|
support !aban and !akickban for account bans
|
2020-02-26 16:46:39 +00:00 |
|
jesopo
|
192bcc27c2
|
fix typo in v1.18.2's CHANGELOG entry
|
2020-02-26 13:39:52 +00:00 |
|
jesopo
|
7ebad30c2f
|
convert & in sed to \g<0> so python handles full-match replacements
|
2020-02-26 13:26:06 +00:00 |
|
jesopo
|
e84c75e266
|
update CHANGELOG.md
|
2020-02-26 11:08:00 +00:00 |
|
jesopo
|
d39babf0b5
|
only call internal.identified when an account tag is first seen
closes #249
|
2020-02-26 10:29:01 +00:00 |
|
jesopo
|
5608c1cdc7
|
show !g snippet when available, title when not
|
2020-02-25 16:50:17 +00:00 |
|
jesopo
|
1ecbacefc2
|
send_modes takes list[tuple[s,s]], add !down, !deop yourself last
|
2020-02-25 14:27:56 +00:00 |
|
jesopo
|
a1dd8dd22f
|
!op/!deop and !voice/!devoice should assume own user without args
|
2020-02-25 11:45:55 +00:00 |
|
jesopo
|
d3711a639f
|
only voice/op people that dont have it already
|
2020-02-25 11:32:40 +00:00 |
|
jesopo
|
a3ffc70bbc
|
send KICK in max chunk of 4, MODE in max chunk of 6
|
2020-02-25 11:29:02 +00:00 |
|
jesopo
|
ee9415daef
|
unmode timer should use send_modes
|
2020-02-25 11:25:51 +00:00 |
|
jesopo
|
5ebcb9582d
|
add !invex, refactor all channel_op mode-type commands
|
2020-02-25 11:19:12 +00:00 |
|
jesopo
|
d1bd3f4920
|
deduplicate spec arg names
|
2020-02-25 09:43:14 +00:00 |
|
jesopo
|
2a2fe00c4f
|
handle stdout being closed before we're finished
|
2020-02-24 18:17:03 +00:00 |
|
jesopo
|
bb975f8e60
|
support reading from stdin in bin/bitbot-log
|
2020-02-24 17:58:00 +00:00 |
|
jesopo
|
36fd91f009
|
we need to manually flush log files
|
2020-02-24 17:21:35 +00:00 |
|
jesopo
|
22a2bead7f
|
for some reason, __ variables disappear from hasattr
|
2020-02-24 17:10:43 +00:00 |
|
jesopo
|
175c0a285c
|
open possibly-utf8 files with forced utf8
|
2020-02-24 15:24:39 +00:00 |
|
jesopo
|
fc32a907a5
|
use "latin-1" consitently (not "iso-8859-1")
|
2020-02-24 13:28:23 +00:00 |
|
jesopo
|
6535ec731c
|
change encrypted channel logs to use RSA -> AES (CBC)
closes #248
|
2020-02-24 13:14:05 +00:00 |
|
jesopo
|
9d120dcd2c
|
fix security.py typehints
|
2020-02-24 11:46:37 +00:00 |
|
jesopo
|
cca3817537
|
move permissions module password hashing to utils/security.py
|
2020-02-24 11:43:55 +00:00 |
|
jesopo
|
9ce21a30eb
|
fix utils.datetime.format.to_pretty_time typehinting
|
2020-02-24 10:38:58 +00:00 |
|
jesopo
|
eb60e09a23
|
add isodate requirement for parsing iso8601 durations
|
2020-02-24 10:30:59 +00:00 |
|
jesopo
|
5a2e4db608
|
easier to read requirements.txt
|
2020-02-24 10:20:25 +00:00 |
|
jesopo
|
8f9c063114
|
only do to_pretty_time as relative when requested
|
2020-02-24 10:18:55 +00:00 |
|
jesopo
|
a2c8d7080e
|
command doesn't exist - use event["spec"][2]
|
2020-02-23 17:02:40 +00:00 |
|
jesopo
|
9c1b98ef29
|
channel.users changes during iteration. copy() it
|
2020-02-22 08:03:31 +00:00 |
|
jesopo
|
db2f27a771
|
support user (as well as cuser ) for user object mask banning
|
2020-02-21 20:34:54 +00:00 |
|
jesopo
|
fe4972bc03
|
update channel_op.py ban formatting to use ${}
|
2020-02-21 15:43:52 +00:00 |
|
jesopo
|
98b7529605
|
security issue: 'permissions'->'permission' (message_filters.py)
|
2020-02-21 11:44:29 +00:00 |
|
jesopo
|
7b7a67bc45
|
add markov-chance, 0 to 100 percent chance of randomly triggered markov chains
|
2020-02-20 18:51:20 +00:00 |
|
jesopo
|
8a6270fc97
|
cryptography is in requirements.txt; we dont need to check for it
|
2020-02-20 15:12:00 +00:00 |
|
jesopo
|
b260c80c31
|
add bin/bitbot-log to read/decrypt channel_log files
|
2020-02-20 15:07:52 +00:00 |
|
jesopo
|
0667ac8c5f
|
add option to encrypt channel_log log files line-by-line
|
2020-02-20 14:56:04 +00:00 |
|
jesopo
|
3ccb594e10
|
silence.py's is-silenced export is no longer used
|
2020-02-19 17:29:34 +00:00 |
|