Commit graph

897 commits

Author SHA1 Message Date
jesopo
c3c6080117 Don't parse github events when there are no channels listening for the given
repo
2018-11-06 14:01:49 +00:00
jesopo
b6ad57f965 github-hook is an array 2018-11-06 14:01:30 +00:00
jesopo
65b182c9a9 'event["headers"]' -> 'event["headers"]["X-GitHub-Event"]' 2018-11-06 14:01:02 +00:00
jesopo
8789689393 Remove additional 'False' in modules/set.py that was an artefact of the first
attempt to support array setting
2018-11-06 13:48:32 +00:00
jesopo
7d71da47a0 Typo in modules/set.py; '=' -> '==' 2018-11-06 13:44:33 +00:00
jesopo
c3295c4140 Support more than just push actions in modules/github.py 2018-11-06 13:43:06 +00:00
jesopo
bbec7f311d Pass headers through REST API callbacks 2018-11-06 13:02:04 +00:00
jesopo
2921ed77ae Support arrays of user/channel/bot/server settings 2018-11-06 13:01:30 +00:00
jesopo
8930d04567 server should be passed in received.rename in modules/line_handler.py 2018-11-05 21:38:39 +00:00
jesopo
257659aa73 Change modules/sts.py to reference connection_params, fix some typos and logig
issues
2018-11-05 20:51:33 +00:00
jesopo
ea3ed99a9e Explicitly disconnect before reconnecting in modules/sts.py 2018-11-05 20:35:23 +00:00
jesopo
f0f2701386 Do an instant reconnect for !reconnect in modules/admin.py 2018-11-05 20:03:45 +00:00
jesopo
d63115440d Fix the order of some connection params, add alias as a seperate argument to
IRCServer.Server
2018-11-05 18:30:39 +00:00
jesopo
6b8593a09b Pass connection parameters around in their own object (IRCConnectionParameters) 2018-11-05 18:23:02 +00:00
jesopo
e26df7556a Check that a server's STS policy has a duration before doing
rescheduling-on-disconnect
2018-11-05 18:21:43 +00:00
jesopo
7c3a8e7444 Prettyprint channel RENAMEs 2018-11-05 16:42:33 +00:00
jesopo
4936b91273 Support JSON messages tags, as per IRCv'3 message-tags-0.3 #318 pull request 2018-11-05 15:15:08 +00:00
jesopo
90a72eb24d TRACE log when we set an STS policy 2018-11-05 14:57:34 +00:00
jesopo
edbacce1fc Support draft/sts as well as sts 2018-11-05 14:52:25 +00:00
jesopo
5b2c979649 "Applying STS policy" should be TRACE, not DEBUG 2018-11-05 14:16:14 +00:00
jesopo
7408bfc9d3 Add missing ")" in modules/sts.py 2018-11-05 14:13:27 +00:00
jesopo
9b6e3c96ed Add missing "," in modules/sts.py 2018-11-05 14:12:59 +00:00
jesopo
aaf0c8cf2a Reschedule STS expiration on disconnect 2018-11-05 14:12:21 +00:00
jesopo
3fa16fe678 Explicitly *remove* STS policy when we get a duration of 0 2018-11-05 13:26:11 +00:00
jesopo
5fa442c8a5 info does not exist in on_cap_new context in modules/sts.py 2018-11-05 13:25:51 +00:00
jesopo
061a4ede23 One-shot STS policies should still be cleared if a reconnect fails 2018-11-05 13:14:00 +00:00
jesopo
5981bfa04c Made STS policies one-shot when upgrading from plaintext to tls 2018-11-05 13:03:45 +00:00
jesopo
19864a7e13 duration does not exist in the context of _change_duration 2018-11-05 12:59:40 +00:00
jesopo
c3a2ffc48d Add support for IRCv3's STS 2018-11-05 12:39:02 +00:00
jesopo
7baab0f7d7 Update modules/scripts.py to use utils.parse.hashflags instead of
utils.get_hashflags
2018-11-05 12:15:54 +00:00
jesopo
9c233cd4dd Add src.utils.parse.keyvalue, mostly for IRCv3 CAP negotiation 2018-11-05 11:56:28 +00:00
jesopo
5963580cb8 Fix a crash in modules/line_handler.py; QUIT can have an empty reason! 2018-11-05 10:03:31 +00:00
jesopo
58363895f1 Change line parsing to put arbitrary-length args on the end of
`args` so we can get rid of `last`/`arbitrary` and add IRCArgs (with .get())
to help only getting an arg index if it exists
2018-11-04 15:37:06 +00:00
jesopo
6d742f6a74 Implement IRCv3's draft/rename 2018-11-04 14:48:55 +00:00
jesopo
9b2040e280 Show wallet balances in a human format (with ","s) 2018-11-02 13:09:09 +00:00
jesopo
44f3e241d2 Don't let users bet 0 coins 2018-11-02 13:07:46 +00:00
jesopo
2acf9bdd31 Show !coins in a human format (with ","s) 2018-11-02 12:47:00 +00:00
jesopo
24e4e2c5ad Add a way to silently stop commands executing in modules/commands.py
(preprocess.command)
2018-11-02 11:13:43 +00:00
jesopo
4fcb80b834 serverset identity-mechanism should be in modules/permissions.py 2018-11-02 11:08:03 +00:00
jesopo
18d055bb9e Check if a url is a gallery first, 'event' -> 'data' typo, actually return from
_prefix
2018-10-31 17:54:44 +00:00
jesopo
04e369a92d Use gallery API endpoint for gallery urls 2018-10-31 17:44:21 +00:00
jesopo
ff1d4da362 Support galleries in modules/imgur.py 2018-10-31 17:41:12 +00:00
jesopo
60151dc1a0 Comma-delimit numbers in the !richest response 2018-10-31 16:46:40 +00:00
jesopo
8212fc51eb imgur url hashids aren't always 7 characters 2018-10-31 16:29:24 +00:00
jesopo
bf6a740f7b Fix typo in modules/imgur.py that caused headers passed to utils.http.get_url
to be a set, not a dict. (',' -> ':')
2018-10-31 16:17:22 +00:00
jesopo
0066cb313e REGEX_IMAGE should be a compiled regex! 2018-10-31 16:16:31 +00:00
jesopo
f073613848 Add first version of modules/imgur.py 2018-10-31 16:12:28 +00:00
jesopo
b58a3f7329 Update modules/line_handler.py to now not pass a server param to
utils.irc.parse_line
2018-10-30 17:55:05 +00:00
jesopo
e07553c362 Add type/return hints throughout src/ and, in doing so, fix some cyclical
references.
2018-10-30 14:58:48 +00:00
jesopo
705daaf9bb Don't needlessly search a youtube URL before getting the information for it's
video ID when a URL is provided to !yt
2018-10-29 23:13:32 +00:00
jesopo
73077b9bbf 'continue' -> 'return' in moules/badwords.py 2018-10-28 14:02:43 +00:00
jesopo
82f8a23503 badwords shouldn't effect users with +v or above 2018-10-28 14:01:54 +00:00
jesopo
85f86f9d8a Pretend badwords list is zero-indexed 2018-10-28 12:44:48 +00:00
jesopo
73a33633e2 Fix wording for !badwordsdel (copypaste fail!) 2018-10-28 12:41:01 +00:00
jesopo
996df4dc5e Correctly use enumerate() in modules/badwords.py.badwords_list 2018-10-28 12:40:39 +00:00
jesopo
53f027bea1 'pattern' -> 'badword' 2018-10-28 12:37:32 +00:00
jesopo
0ff934d5b9 'received.message.channel' uses 'channel' not 'target' as event kwarg 2018-10-28 12:36:28 +00:00
jesopo
7472079f60 'badowrds' -> 'badwords' 2018-10-28 12:35:35 +00:00
jesopo
27bfe2e23d Yet another typo in modules/badwords.py, 'get_getting' -> 'get_setting' 2018-10-28 12:34:18 +00:00
jesopo
09779ca570 'channel' -> 'target' in modules/badwords.py 2018-10-28 12:33:26 +00:00
jesopo
60421382d4 Fix typo in modules/badwords.py, 'events' -> 'event' 2018-10-28 12:32:24 +00:00
jesopo
c28c85cdd6 Add missing ":" in modules/badwords.py 2018-10-28 12:31:42 +00:00
jesopo
d3563eea69 Add missing ")" in modules/badwords.py 2018-10-28 12:30:53 +00:00
jesopo
c577f9d1ad Add first version of modules/badwords.py 2018-10-28 12:29:35 +00:00
jesopo
b34f4d70a5 Remove extra ) in modules/commands.py 2018-10-28 11:54:55 +00:00
jesopo
5553ac9e49 Typo in modules/command.py, 'is' -> 'if' 2018-10-28 11:53:31 +00:00
jesopo
ec72787f86 Support multiple "usage" values in commands.py 2018-10-28 11:50:56 +00:00
jesopo
c5e1fafeb1 Put a dash between commit message and commit url 2018-10-26 11:28:01 +01:00
jesopo
e9ed153aa3 Put commit urls on github webhook notices in modules/github.py 2018-10-26 11:25:28 +01:00
jesopo
fd9778bd25 Redo lottery timer in modules/coins.py 2018-10-24 16:03:28 +01:00
jesopo
a1e77c40e8 Give page an initial value of None, in case the get_url call fails in
modules/eval_python.py
2018-10-24 13:54:22 +01:00
jesopo
f89b96f373 Move taking a reference to sys.stdout above fail() in modules/eval_python.py 2018-10-24 13:54:03 +01:00
jesopo
46179d2f38 There's no self in eval_python's template! 2018-10-24 13:50:50 +01:00
jesopo
7f9399a925 Specifically catch SyntaxError in modules/eval_python.py 2018-10-24 13:43:34 +01:00
jesopo
99f896ebdd Catch syntax errors with .py/.py2 2018-10-24 13:40:56 +01:00
jesopo
ae0825650e .items() -> .values() 2018-10-23 13:39:40 +01:00
jesopo
1794da1f66 Typo in modules/coins.py, 'amount_amount_total' -> 'bet_amount_total' 2018-10-23 13:38:04 +01:00
jesopo
e9fcd0c5e2 Re-move taking payin to before payout, better logic around win/odds to show it
correctly but still give back your bet amount
2018-10-23 13:36:33 +01:00
jesopo
7508b0f5e7 Switch back to only taking losses when they're losses, instead of taking payin
and then giving it back after the roulette spin
2018-10-23 13:20:13 +01:00
jesopo
db5d9fdb42 _take already gives back to pool 2018-10-23 13:19:51 +01:00
jesopo
7c04ff2e89 Don't try to parse wallet args as a bet amount in modules/coins.py 2018-10-23 00:36:02 +01:00
jesopo
69ebba27bb Roulette wins should include the payin 2018-10-22 20:23:28 +01:00
jesopo
046e8935df When deleting a wallet, shift funds to default 'in' wallet instead of assuming a
user has a 'default' named wallet
2018-10-22 16:49:20 +01:00
jesopo
e4be2cf339 Fix indication of optionalness of wallet param of !defaultwallet 2018-10-22 16:23:56 +01:00
jesopo
2e6db95574 Copypaste fail in modules/coins.py, 'row' -> 'i' 2018-10-22 14:23:09 +01:00
jesopo
1614ad9c48 Add lcorner/rcorner bets to !roulette in modules/coins.py 2018-10-22 14:22:10 +01:00
jesopo
84b4a064b8 Add double streets to !roulette in modules/coins.py 2018-10-22 14:11:32 +01:00
jesopo
399e20acc7 Fix copypaste fail in modules/coins.py.move_coins 2018-10-22 14:01:34 +01:00
jesopo
ddcd99405a Add !movecoins in modules/coins.py 2018-10-22 13:59:25 +01:00
jesopo
77cf1a6afe Dict are immutable, duh. 2018-10-22 13:14:08 +01:00
jesopo
c6b8e4487d Typo in help string in modules/coins.py, 'By' -> 'Buy' 2018-10-22 13:13:54 +01:00
jesopo
ec96eda1a3 _default_wallet is not _default_wallet_for 2018-10-22 13:13:30 +01:00
jesopo
8e2a3be90d _default_wallets takes a user param 2018-10-22 13:13:13 +01:00
jesopo
d4aef86f7e _default_wallet_for is for find the default type of a given wallet, not the
wallet for a given default type
2018-10-21 12:16:05 +01:00
jesopo
da5a53c9e0 Add missing .items() to dict iteration in modules/coins.py 2018-10-21 12:14:09 +01:00
jesopo
dd99460390 Show default wallet for wallet types when you don't specify 2 args to
!defaultwallet
2018-10-21 12:13:08 +01:00
jesopo
e614eb8e75 'DEFAULT_WALLETS' -> 'WALLETS_DEFAULTS' 2018-10-21 12:10:44 +01:00
jesopo
42123442dc Add missing "," in modules/coins.py 2018-10-21 12:09:35 +01:00
jesopo
4dbad92f3b use default "interest" wallet for interest and default "lottery" wallet for
lottery winnings
2018-10-21 12:08:29 +01:00
jesopo
30a1631edc 'WALLET_DEFAULT' -> 'WALLET_DEFAULT_NAME' 2018-10-21 12:00:19 +01:00