David Schultz
1fe8cb677e
make karmawho case insensitive
2021-01-11 11:12:46 -06:00
David Schultz
b046c36052
make karmawho work better
2021-01-11 11:04:57 -06:00
David Schultz
cb43a6ae2b
RSS custom format ( #286 )
...
* Update rss.py
* add even more customization options
2020-11-28 22:45:26 +00:00
jess
2d39421aeb
Merge pull request #290 from shreyasminocha/master
...
Weather formatting nit
2020-11-26 21:30:39 +00:00
Shreyas Minocha
86520b31f9
Improve weather formatting
...
Example: `14.8km/h/9.2mi/h` → `14.8km/h (9.2mi/h)`
2020-11-27 02:32:40 +05:30
jess
b3dc46a030
Merge pull request #289 from attwater/master
...
Change example pronouns to neutral pronouns
2020-11-21 21:13:48 +00:00
jesopo
538d6ca5b0
Merge branch 'master' into develop
2020-11-18 14:35:10 +00:00
jesopo
b15cba2ca2
Revert "Update translate.py"
...
This reverts commit eff99aff05
.
2020-11-18 14:34:56 +00:00
jesopo
8cc47a9321
refuse setting location to timezones we can't understand
2020-11-09 23:32:44 +00:00
Dax
fcbeaf3114
[Tweets] Fix tweet age calc for TZ!=UTC
...
dt is a naive datetime object, so its timezone is assumed to be the system timezone. However, the actual timezone from the API is UTC. Therefore, we need to set tzinfo before doing the calculation. See the note at https://docs.python.org/3/library/datetime.html#datetime.datetime.timestamp for more info.
Ideally this would be fixed in tweepy, but there's a report of this on forums from 7 years ago so let's just fix it in BitBot.
This bug found by an anonymous contributor. Thank you 😺 !
2020-11-05 06:00:45 +00:00
Alma Attwater
aa4b5d91ee
Change example pronouns to neutral pronouns
2020-11-01 20:26:44 +00:00
David Vo
5fb2fb8421
Handle music.youtube.com URLs
2020-10-31 20:34:35 +11:00
jesopo
d6c1bea702
Merge branch 'master' into develop
2020-10-28 11:20:17 +00:00
jesopo
a91c03421f
show PRs on check_run output where possible
2020-10-18 00:37:05 +00:00
jesopo
c4c6fdde1c
support check_run.status as a category+[status]
2020-10-17 17:13:52 +00:00
jesopo
2f5d001a79
shorturl-any shouldn't need a server
2020-10-17 16:46:37 +00:00
jesopo
09cfae75b8
github.py needs exports from git_webhooks
2020-10-17 14:07:02 +00:00
jess
99dff71475
Merge pull request #269 from dngfx/patch-1
...
Update translate.py
2020-10-08 16:36:13 +01:00
David Schultz
2d76365214
Update ban_enforce.py
2020-10-04 19:24:45 -05:00
David Schultz
84aa7d1bd5
add ban-enforce-max config option
2020-10-04 17:44:17 -05:00
jesopo
777c14b680
sort karma reversed and by abs()
2020-09-29 15:36:43 +00:00
jesopo
e50c4ecbe2
add !karmawho <target> to see who gave karma to <target>
2020-09-29 15:06:37 +00:00
jesopo
09fc00b5da
fix !cmute +time
2020-09-25 18:09:10 +00:00
jess
dc7040fbad
Merge pull request #276 from alyx/master
...
None Webhook with Left Beef
2020-09-23 15:33:21 +01:00
Alyx Wolcott
027b9d75f8
Add parameter checking so bitbot doesn't add a None webhook and break webhooks until restart
2020-09-23 09:25:43 -05:00
jesopo
f7a1c12cfa
add torexit.dan.me.uk to dnsbls
2020-09-18 01:02:31 +00:00
jesopo
5c1942a35a
handle unknown Zen Spamhaus results
2020-09-17 14:23:11 +00:00
jesopo
68939b7ee0
update dnspython lib, use new .resolve
2020-09-14 13:52:54 +00:00
jesopo
6d99a9fae6
support dnsbl TXT records
2020-09-14 13:32:59 +00:00
jesopo
b6e8f668c4
better dronebl descriptions, show category in all list descriptions
2020-09-08 15:48:14 +00:00
jesopo
c32e073c35
explicit support for dronebl type 19 (abused vpn)
2020-09-08 13:55:45 +00:00
jesopo
4fa05245b3
return raw result, not "unknown" for ad-hoc dnsbls
2020-08-07 16:43:45 +00:00
jesopo
1f5b7a6f41
strip @ from @dnsbl
2020-08-07 16:42:28 +00:00
jesopo
e4ad911511
_lists, not lists
2020-08-07 16:37:56 +00:00
jesopo
00e7d24388
add AbuseAtCBL to dnsbl module
2020-08-06 14:12:36 +00:00
Ben Harris
d7e9714cec
fix shorturl.py
...
this module provides a botset export but doesn't check that
setting later when looking up configured shorteners
check bot_settings if context and server values are not set
2020-07-14 02:48:33 -04:00
dngfx
eff99aff05
Update translate.py
...
Uses the new google v2 translate service which is more accurate. Also reduces code ugliness by quite a bit.
2020-07-12 00:30:10 +01:00
jesopo
74abbe7e5c
rename channel_save.py to autojoin.py
2020-07-03 13:14:52 +01:00
jesopo
208b0ca464
remove channels from autojoin when they are ERR_LINKCHANNEL (470)
2020-07-03 13:14:15 +01:00
jesopo
32e1e40cd2
strip ':' and ',' from titles too
2020-06-26 13:43:14 +01:00
jesopo
dc8ece9f95
!cfilter should be accessible by channel admins
2020-06-12 18:25:08 +01:00
jesopo
c2c584d1c0
show what quote was deleted, do partial match, fix qdel for last
2020-06-10 22:53:00 +01:00
jesopo
f70cb2f0cd
cant remove a target-specific quote from zipped up mixed quotes. duh
2020-06-10 22:36:01 +01:00
jesopo
6ce20e3562
quote grab category shouldn't be a server/channel object. wtf
2020-06-03 12:48:49 +01:00
jesopo
83f0eacb1c
rewrite quote search categories to account name when possible
2020-06-03 12:48:27 +01:00
jesopo
3d4d20872b
add ban_enforce.py, to kick people affected by new bans
2020-05-31 02:16:59 +01:00
jesopo
1dbc700cdc
+draft/typing has been ratified
2020-05-20 16:36:40 +01:00
jesopo
2ff3a7bb6e
again, there may be more than one (nick,count)
2020-05-12 01:20:47 +01:00
jesopo
158e936ad2
turing (chan_id,count) in to a dict loses different days
2020-05-12 01:16:34 +01:00
jesopo
4dc44720e8
log youtube API usage
2020-05-07 22:40:44 +01:00
jesopo
8d932ccc34
disable !np youtube urls by default
2020-05-07 22:23:04 +01:00
jesopo
73371b5571
sent messages should mark channels 'active'
2020-05-06 16:35:54 +01:00
jesopo
4a9ac33a2f
add channel mlock (mode lock) functionality to channel_op.py
2020-04-13 20:59:58 +01:00
jesopo
74146f20bd
fix rss bindhost implementation
2020-04-09 18:26:54 +01:00
jesopo
b19e956f68
experimental support for rss bindhost
2020-04-09 15:47:20 +01:00
jesopo
7fdb9a1e55
fix regression of message filters not matching without formatting
2020-04-08 18:19:06 +01:00
jesopo
2b0dfcc155
add ${BNICK} (bot's own nick) and ${CTRIGGER} (command trigger) to aliases
2020-04-07 19:30:32 +01:00
jesopo
8a3f10e360
handle http redirects ourselves, to prevent redirect to localhost
2020-04-05 22:41:33 +01:00
jesopo
0a3f316cb5
masks
-> args
2020-03-10 23:09:51 +00:00
jesopo
1acd8158b9
remove debug print
2020-03-10 00:07:12 +00:00
jesopo
0cdd234c5c
don't skip already "short" urls in yourls.py - can't predict output length
2020-03-09 00:07:30 +00:00
jesopo
11b2853832
post_data -> get_params
2020-03-09 00:04:08 +00:00
jesopo
46dcf0e6c2
URL -> shortener_url
2020-03-09 00:02:45 +00:00
jesopo
b3a18da182
_call_shortener should take 2 more args
2020-03-08 23:59:31 +00:00
jesopo
0cdd3d5b6c
urllib was meant for yourls.py not shorturl.py
2020-03-08 23:58:24 +00:00
jesopo
042688ce77
add urllib import
2020-03-08 23:56:00 +00:00
jesopo
843d9fb77f
add (as yet untested) Your Own URL Shortener support in yourls.py
2020-03-08 23:34:54 +00:00
jesopo
e41ea90c62
support extended url shorteners that take server and optional context
(channel)
2020-03-08 23:34:41 +00:00
jesopo
d4ce93cf84
Merge pull request #251 from fndax/issue-210
...
Make !words work in PM (fixes #210 )
2020-03-08 22:16:55 +00:00
Dax
c965a7860a
Make !words work in PM
...
Closes : #210
2020-03-08 22:12:25 +00:00
jesopo
1da222794c
args_split[0] -> user.nickname (seen.py)
2020-03-08 21:42:31 +00:00
jesopo
fc0b5eb46e
switch inactive_channels.py settings to be days, defaulting to None (no prune)
2020-03-08 21:38:13 +00:00
jesopo
d8d9a90f11
use ban-mask export in badwords.py
2020-03-08 18:45:57 +00:00
jesopo
d5d097d8ee
give str(Exception) when webfinger fails
2020-03-08 18:45:15 +00:00
jesopo
142d181048
tolerate a server not having a host-meta
2020-03-08 18:43:49 +00:00
jesopo
1d384dfd8b
move _get_hostmask logic out in to banmask.py core module, for reuse
2020-03-08 14:14:34 +00:00
jesopo
49d9cbdb87
exports.get_one() -> exports.get()
2020-03-08 14:14:00 +00:00
jesopo
1654fafd7e
default inactive_channel.py timer to 4 weeks, not 2
2020-03-05 13:50:59 +00:00
jesopo
2dfaa7e162
KMh and MPh changed to km/h and mi/h
2020-03-04 14:27:48 +00:00
jesopo
262e3e512d
ban-format-account is no longer relevant
2020-03-04 12:03:47 +00:00
jesopo
de8bb22ffa
change !seen to command specs
2020-02-28 22:57:16 +00:00
jesopo
8b4b600f4b
change relay.py to use command specs
2020-02-27 18:06: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
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
e485632359
kick bitbot last if he's covered by !kick/!kickban
2020-02-26 17:15:35 +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
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
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
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