jesopo
|
9920721bc5
|
Pass IRCChannel and IRCUser objects on formatted events where applicable
|
2019-03-06 13:36:18 +00:00 |
|
jesopo
|
bca0d38388
|
Also print private notices
|
2019-03-06 08:08:40 +00:00 |
|
jesopo
|
b5b841033f
|
Do format parsing (color, bold, etc) in format_activity.py
|
2019-03-06 08:08:20 +00:00 |
|
jesopo
|
b549a28bed
|
'pull' -> 'PR' in !ghpull
|
2019-03-05 11:41:24 +00:00 |
|
jesopo
|
11c4d70156
|
add IRCServer.clear_send_buffer() to clear queued lines
|
2019-03-05 11:35:24 +00:00 |
|
jesopo
|
91c2ab03ba
|
add IRCServer.send_enabled, to prevent sending after QUIT in signals.py
|
2019-03-05 11:29:46 +00:00 |
|
jesopo
|
68ebecedfd
|
Don't send random quit quote on SIGINT
|
2019-03-05 11:25:34 +00:00 |
|
jesopo
|
9e98754188
|
Treat our own user as a regular user throughout line_handler
|
2019-03-05 11:20:32 +00:00 |
|
jesopo
|
79930be7a3
|
private notices shouldn't be sent out as formatted.notice.channel
|
2019-03-05 09:52:38 +00:00 |
|
jesopo
|
b4f3ff3344
|
_on_topic doesn't take an IRCChannel param
|
2019-03-05 09:30:50 +00:00 |
|
jesopo
|
2750f29989
|
We need to pass a user object to _privmsg
|
2019-03-05 09:30:36 +00:00 |
|
jesopo
|
0a5ebd0cf4
|
Use utils.ISO8601_PARSE in format_activity
|
2019-03-05 09:30:10 +00:00 |
|
jesopo
|
a9a3ad7abd
|
import datetime in format_activity.py
|
2019-03-05 09:29:54 +00:00 |
|
jesopo
|
db9744a0b5
|
Move formatted lines to loggable format to format_activity.py
|
2019-03-05 09:19:06 +00:00 |
|
jesopo
|
cf262c6d8a
|
We need to import EventManager in line_handler/__init__.py
|
2019-03-03 23:34:39 +00:00 |
|
jesopo
|
4aa86f865c
|
Remove added/removed/modified counts from commits (github)
|
2019-03-03 22:49:06 +00:00 |
|
jesopo
|
2affba99ca
|
Minor refactors across line_handler
|
2019-03-03 22:46:24 +00:00 |
|
jesopo
|
4aa9a06635
|
@utils.hook shouldn't be in line_handler/message.py
|
2019-03-03 22:45:54 +00:00 |
|
jesopo
|
7a3db82300
|
Add IRCServer.has_capability and use it throughout line_handler
|
2019-03-03 22:38:34 +00:00 |
|
jesopo
|
7c654b4475
|
Add COLOR_NEUTRAL, show repo/number/state colours in !ghissue
|
2019-03-02 21:32:08 +00:00 |
|
jesopo
|
a063f54a38
|
Don't show "[]" when there are no labels in !ghissue
|
2019-03-02 21:14:51 +00:00 |
|
jesopo
|
91a7f622b8
|
Don't check github-hide-prefix in !ghwebhook
|
2019-03-02 09:30:53 +00:00 |
|
jesopo
|
6b3b2b6e87
|
pinkify pull request number in !ghpull
|
2019-03-02 08:44:32 +00:00 |
|
jesopo
|
1ad9bd2047
|
Actually use colored state in formatted line
|
2019-03-02 08:40:04 +00:00 |
|
jesopo
|
e4a4b193fe
|
Colour the state of a pull request
|
2019-03-02 08:38:56 +00:00 |
|
jesopo
|
c45fcb34d1
|
Change PR/issue number color to pink
|
2019-03-02 08:38:45 +00:00 |
|
jesopo
|
a30bc92b94
|
We don't need a "-" to separate PR title anymore
|
2019-03-02 08:31:06 +00:00 |
|
jesopo
|
7c63dbcf00
|
Tweak !ghpull format/colours
|
2019-03-02 08:29:45 +00:00 |
|
jesopo
|
b1e40e8d4c
|
Move HTTPWrongContentTypeException catch above Exception catch
|
2019-03-01 23:29:07 +00:00 |
|
jesopo
|
ab0b3be741
|
event doesn't have a "channel" in an API hook
|
2019-03-01 22:21:07 +00:00 |
|
jesopo
|
293b3a8ce3
|
Fix event variable name collision (github)
|
2019-03-01 21:47:00 +00:00 |
|
jesopo
|
88a28352b8
|
Add a setting to hide github repo names
|
2019-03-01 21:20:19 +00:00 |
|
jesopo
|
43eda14267
|
Capitalise 'PR' in issue_comment events for pull requests (github)
|
2019-03-01 21:12:46 +00:00 |
|
jesopo
|
1e9772e578
|
Actually take coins when the house wins (coins)
|
2019-03-01 15:00:56 +00:00 |
|
jesopo
|
4467ba8ab6
|
specifically handle HTTPWrongContentTypeException in title.py
|
2019-02-28 23:30:09 +00:00 |
|
jesopo
|
9193a51c55
|
capitalise "PR" (Pull Request)
|
2019-02-28 23:16:37 +00:00 |
|
jesopo
|
985fc51dea
|
Move issue/PR number to after action description (github)
|
2019-02-28 23:15:13 +00:00 |
|
jesopo
|
1dab3dd07e
|
Change HTTP request logging from INFO to DEBUG
|
2019-02-28 17:51:26 +00:00 |
|
jesopo
|
35ba165e0c
|
Don't use shortened commit hashes to make URLs
|
2019-02-28 17:21:19 +00:00 |
|
jesopo
|
b4fca127d1
|
COLOR_POSITIVE should be green and COLOR_NEGATIVE should be red
|
2019-02-28 17:18:47 +00:00 |
|
jesopo
|
ae95f81c8b
|
Colorise PR/issue numbers (github)
|
2019-02-28 17:10:42 +00:00 |
|
jesopo
|
02c7c4503c
|
Make repo name grey (github)
|
2019-02-28 17:10:31 +00:00 |
|
jesopo
|
58b1e41b5d
|
Make some colours consts per type of content (github)
|
2019-02-28 17:09:52 +00:00 |
|
jesopo
|
cedd080f75
|
only use one "-" to separate text from url in lastfm.py
|
2019-02-28 16:34:22 +00:00 |
|
jesopo
|
bb6b292b6c
|
userplaycount is a str, not an int
|
2019-02-28 16:23:53 +00:00 |
|
jesopo
|
e77d681d7d
|
Don't show lastfm play count if it is 0
|
2019-02-28 16:22:35 +00:00 |
|
jesopo
|
f431fdfd16
|
Put github-hide-prefix check in all github commands
|
2019-02-27 14:56:20 +00:00 |
|
jesopo
|
0ed6d05b03
|
check on github-hide-prefix was put in the wrong function
|
2019-02-27 14:55:28 +00:00 |
|
jesopo
|
e6cb5e3e6b
|
Remove additional ')' (copypaste fail)
|
2019-02-27 14:53:03 +00:00 |
|
jesopo
|
52092cfe28
|
Make github-hide-prefix apply to !gt as well
|
2019-02-27 14:52:10 +00:00 |
|
jesopo
|
120eb03173
|
Show sender of an issue_comment, not the original commenter (for edits)
|
2019-02-26 21:55:34 +00:00 |
|
jesopo
|
5eceb5655c
|
Minor code stylisation in imgur.py
|
2019-02-25 09:59:38 +00:00 |
|
dngfx
|
6471360656
|
Update imgur.py
|
2019-02-25 09:01:52 +00:00 |
|
Dan
|
6771c3fec1
|
Switch to elif
|
2019-02-24 21:14:08 +00:00 |
|
Dan
|
ccd924d9e7
|
Remove superfluous json import and change datetime to match code standards.
|
2019-02-24 21:13:02 +00:00 |
|
Dan
|
4daba2b1ac
|
Remove bold title, set NSFW_TEXT variable, fix bold spacing, fix PEP8 line breaks between definitions. Remove _imgur def and hook straight into code.
|
2019-02-24 21:10:25 +00:00 |
|
dngfx
|
0444f9c0b9
|
Update imgur.py
Remove debug logging cruft
|
2019-02-24 20:37:17 +00:00 |
|
dngfx
|
266cbbfe1e
|
Update imgur.py
Add auto-imgur for auto linking of imgur and make the linking a bit fancier.
|
2019-02-24 20:34:10 +00:00 |
|
jesopo
|
f3f6102dbc
|
Don't duplicate "other-error" (sasl.scram)
|
2019-02-24 09:04:42 +00:00 |
|
jesopo
|
77ab4707b2
|
Send IRCBot.VERSION on a CTCP VERSION (ctcp.py)
|
2019-02-24 08:39:20 +00:00 |
|
jesopo
|
fdce6ef7a6
|
We now need to .send( an IRCLine.ParseLine in perform.py
|
2019-02-24 08:04:35 +00:00 |
|
jesopo
|
1473f41b03
|
Fire preprocess.send per-command - use this to only strip colors from ParsedLine
objects for PRIVMSG and NOTICE
|
2019-02-23 21:40:11 +00:00 |
|
jesopo
|
8c94bcf6ca
|
Move utils.irc.IRCParsedLine to IRCLine.ParsedLine, improve truncation
mechanism, don't convert sent line from ParsedLine to text to ParsedLine for
line_handler handling
|
2019-02-23 21:33:04 +00:00 |
|
jesopo
|
f4a403836b
|
!raw needs to parse the line it's given in to an IRCParsedLine now
|
2019-02-23 16:11:41 +00:00 |
|
jesopo
|
6bdec003a1
|
Split PRIVMSG last param explicitly by " " to make message_split
|
2019-02-23 10:54:17 +00:00 |
|
jesopo
|
ed4643b15d
|
Use new IRCChannel/IRCUser send_tagmsg in message_tracking.py
|
2019-02-22 22:37:27 +00:00 |
|
jesopo
|
9d72cbca73
|
Keep track of a user's away message, not just whether they're away or not
|
2019-02-22 22:26:50 +00:00 |
|
jesopo
|
dec3485071
|
Clear command Out text when there's nothing left to send
|
2019-02-22 17:47:25 +00:00 |
|
jesopo
|
9408cc9487
|
Typo, 'ValuError' -> 'ValueError'
|
2019-02-22 17:44:46 +00:00 |
|
jesopo
|
76c6cc3709
|
Typo, 'taget' -> 'target'
|
2019-02-22 16:31:17 +00:00 |
|
jesopo
|
5cae86333b
|
Typo, 'channels' -> 'channel'
|
2019-02-22 11:27:31 +00:00 |
|
jesopo
|
2b430839f9
|
.on doesn't take kwargs - .call does
|
2019-02-22 11:26:48 +00:00 |
|
jesopo
|
6177d5c984
|
Typo, 'channels' -> 'channel'
|
2019-02-22 11:25:04 +00:00 |
|
jesopo
|
47c2cbb0fa
|
Split line_handler.py out in to different files for different categories
|
2019-02-22 11:23:36 +00:00 |
|
jesopo
|
7469ff5bd6
|
Remove unused threading import in line_handler.py
|
2019-02-22 10:26:31 +00:00 |
|
jesopo
|
1ac8bf6ec1
|
Support echo-message TAGMSG
|
2019-02-22 10:14:23 +00:00 |
|
jesopo
|
fde0838fdc
|
Remove code duplication for checking if a PRIVMSG/NOTICE was sent by us
|
2019-02-22 10:13:49 +00:00 |
|
jesopo
|
46fc552972
|
Add a require_access attribute to !ghwebhook
|
2019-02-21 21:18:07 +00:00 |
|
jesopo
|
0fc2dd8754
|
You can't minus a set from a list (auto_mode.py)
|
2019-02-21 21:14:57 +00:00 |
|
jesopo
|
1da66fb72d
|
Only give users auto_modes they don't already have (auto_mode.py)
|
2019-02-21 21:14:09 +00:00 |
|
jesopo
|
827832b2d2
|
Add channel_access attributes to auto_mode.py commands
|
2019-02-21 21:10:06 +00:00 |
|
jesopo
|
e28885f746
|
Don't handle pull_request_review events when they've not been submitted
|
2019-02-21 11:19:36 +00:00 |
|
jesopo
|
deedab7248
|
Add IRCServer.send_joins, a nicer interface than manually ",".join ing
|
2019-02-20 17:08:30 +00:00 |
|
jesopo
|
7f2b19cee3
|
Only send TAGMSG when it's definitely supported (message_tracking.py)
|
2019-02-20 16:10:37 +00:00 |
|
jesopo
|
ebd02dbfa9
|
IRCv3 message-tags has been ratified
|
2019-02-20 15:59:33 +00:00 |
|
jesopo
|
81d82413d4
|
draft/message-tags-0.3 (JSON tags) was rejected
|
2019-02-20 14:46:40 +00:00 |
|
jesopo
|
807021ecc4
|
Pass key through to _get_settings (rest_api.py)
|
2019-02-19 19:49:13 +00:00 |
|
jesopo
|
a3a75f3480
|
Remove copy-pasted ":" (rest_api.py)
|
2019-02-19 19:47:14 +00:00 |
|
jesopo
|
2691fa52e6
|
Do database-related work on UI thread (rest_api.py)
|
2019-02-19 19:45:26 +00:00 |
|
Jos Ahrens
|
850c717925
|
quit: Fix style but better
Positions the colon consistently, but better.
|
2019-02-19 18:06:24 +01:00 |
|
Jos Ahrens
|
7a7ae615da
|
quit: Fix style
Positions the colon consistently.
|
2019-02-19 18:02:24 +01:00 |
|
Evelyn
|
8879e6416e
|
How can you govern a country that has two hundred and forty-six varieties of cheese?
|
2019-02-19 15:03:31 +00:00 |
|
jesopo
|
cfdb48b3e7
|
Use IRCRecvBatch in line_handler.py
|
2019-02-18 23:01:25 +00:00 |
|
jesopo
|
186b6b82a2
|
Shift formatting protocol data to it's own file: utils.irc.protocol
|
2019-02-18 14:58:27 +00:00 |
|
jesopo
|
cae6d970ca
|
Sometimes lastfm doesn't give us a list of tracks (lastfm.py)
|
2019-02-18 13:22:12 +00:00 |
|
jesopo
|
6da35a899b
|
don't pass around has_arbitrary - we don't need it.
|
2019-02-18 12:42:52 +00:00 |
|
jesopo
|
3a3b197309
|
Default cap_done to True, there's only one scenario were it is false (resume.py)
|
2019-02-17 16:00:33 +00:00 |
|
jesopo
|
dc7cdf31d0
|
Use '<' for '<' in README (permissions)
|
2019-02-17 14:29:50 +00:00 |
|
jesopo
|
5809ff8490
|
Add section about identifying (permissions README.md)
|
2019-02-17 14:28:59 +00:00 |
|
jesopo
|
9f2c501df6
|
Typo, 'BitBo' -> 'BitBot' (permissions)
|
2019-02-17 14:27:56 +00:00 |
|
jesopo
|
ec49140a70
|
Move permissions.py in to a directory and add a README.md for it
|
2019-02-17 14:26:18 +00:00 |
|
jesopo
|
cb0314da67
|
Put a helper function in utils to do iso8601 formatting. change IRCServer's
last-read setting to use it.
|
2019-02-17 14:15:40 +00:00 |
|
jesopo
|
107205d29a
|
Only completely prevent CAP END when we get RESUME SUCCESS (resume.py)
|
2019-02-17 12:48:22 +00:00 |
|
jesopo
|
92349ad696
|
typo, 'server.get_settings' -> 'server.get_setting' (resume.py)
|
2019-02-16 15:53:59 +00:00 |
|
jesopo
|
faf2401069
|
'received.numeric.###' -> 'received.###' throughout project
|
2019-02-16 15:53:14 +00:00 |
|
jesopo
|
342c1afa7e
|
Keep a track of channels we're in, in case we RESUME and need to get channel
information (e.g. `chathistory`) (resume.py)
|
2019-02-16 11:23:40 +00:00 |
|
jesopo
|
716568c21d
|
'src/IRCServer.capabilities' -> 'src/IRCServer.agreed_capabilities'
|
2019-02-16 09:12:43 +00:00 |
|
jesopo
|
3e4f3532a1
|
Put spaces either side of arrow symbol, makes it easier to see (github)
|
2019-02-16 09:06:29 +00:00 |
|
jesopo
|
e1ceed2907
|
Typo in comment, 'of' -> 'or' (sasl.scram)
|
2019-02-15 20:12:13 +00:00 |
|
jesopo
|
686d852e2b
|
SCRAM.error should be within standardised errors (put raw in self.raw_error)
|
2019-02-15 20:09:32 +00:00 |
|
jesopo
|
e51c653c1e
|
Parse and print when we send QUIT commands (line_handler, print_activity)
|
2019-02-15 19:58:51 +00:00 |
|
jesopo
|
f6179c46ab
|
Actually grab resume timestamp before it's overwritten (resume.py)
|
2019-02-15 10:26:33 +00:00 |
|
jesopo
|
a50b8c5694
|
comment typo, 'tage' -> 'tag' (github)
|
2019-02-15 07:49:07 +00:00 |
|
jesopo
|
a7d3fd93fc
|
hmac.digest -> hmac.new (the former is too new) (sasl.scram)
|
2019-02-15 01:21:39 +00:00 |
|
jesopo
|
4e7bfee3a6
|
Only send +draft/delivered and +draft/read on private message
|
2019-02-15 00:07:33 +00:00 |
|
jesopo
|
3efe97f6bb
|
copypaste fail, server -> event["server"] (message_tacking.py)
|
2019-02-14 21:59:00 +00:00 |
|
jesopo
|
52387900bc
|
Support draft/delivered and draft/read (message_tracking.py)
|
2019-02-14 21:51:51 +00:00 |
|
jesopo
|
ec3096fb50
|
Put information about USERPASS in sasl/README.md
|
2019-02-14 12:28:36 +00:00 |
|
jesopo
|
d0ad43b027
|
Support a USERPASS sasl mechanism that picks the best user:pass mech (sasl)
|
2019-02-14 11:57:53 +00:00 |
|
jesopo
|
33cacbb904
|
Don't crash when we try to send a message to channel we're not in
(line_handler.py)
|
2019-02-14 08:36:41 +00:00 |
|
jesopo
|
15fc5f7124
|
raise EventError when no results are found, to avoid double stderr write (youtube.py)
|
2019-02-14 01:00:16 +00:00 |
|
jesopo
|
2794d7235b
|
'current_badges' -> 'badges' (badges.py)
|
2019-02-13 16:33:28 +00:00 |
|
jesopo
|
b5b0464873
|
Typo, 'recieved' -> 'received' (badges.py)
|
2019-02-13 16:32:31 +00:00 |
|
jesopo
|
3834b246d6
|
Add !clearbadges (badges.py)
|
2019-02-13 16:31:32 +00:00 |
|
jesopo
|
acbe02baa6
|
Support IRCv3 draft/setname proposal (#361) (line_handler.py)
|
2019-02-13 10:59:37 +00:00 |
|
jesopo
|
5b561b51f4
|
Fix completely broken chghost code. What on god's earth was I thinking.
|
2019-02-13 10:56:52 +00:00 |
|
jesopo
|
1927c3c8af
|
Catch and propagate IRCv3's FAIL command (#357) (line_handler.py)
|
2019-02-13 10:39:10 +00:00 |
|
jesopo
|
460d56eb74
|
Never allow use of MD2 (sasl.scram)
|
2019-02-12 23:52:09 +00:00 |
|
jesopo
|
ac958384fe
|
SCRAM doesn't need constant_time_compare, nonces prevent replay (scram.py)
|
2019-02-12 23:47:24 +00:00 |
|
jesopo
|
62d2449958
|
MONITOR actually catches NICK changes (nick_regain.py)
|
2019-02-12 21:01:28 +00:00 |
|
jesopo
|
ef43c9aeef
|
Also use ISON even if MONITOR is supported - to catch NICK changes
(nick_regain.py)
|
2019-02-12 20:59:11 +00:00 |
|
jesopo
|
f2a7acfe4d
|
Use RPL_ENDOFMOTD or ERR_NOMOTD to denote end-of-registration and a time to
check if we got MONITOR in 005 at any point (nick_regain.py)
|
2019-02-12 20:48:52 +00:00 |
|
jesopo
|
554b041822
|
Remove debug print (nick_regain.py)
|
2019-02-12 20:43:50 +00:00 |
|
jesopo
|
3fc2fec324
|
Add nick_regain.py, to watch for the bot's desired nick becoming free
|
2019-02-12 20:42:26 +00:00 |
|
jesopo
|
1f1a19b5b6
|
set nick to '<nickname>|' when we get a nickname-in-use error (line_handler.py)
|
2019-02-12 20:40:40 +00:00 |
|
jesopo
|
2e925a6853
|
user is null when we sent a NOTICE non-echo-message (line_handler.py)
|
2019-02-12 17:07:39 +00:00 |
|
jesopo
|
44df8240cc
|
user is null when we're sending a message non-echo-mesasge (line_handler.py)
|
2019-02-12 17:04:55 +00:00 |
|
jesopo
|
e573f9de51
|
We can *receive* PRIVMSG/NOTICE without a prefix (line_handler.py)
|
2019-02-12 17:02:12 +00:00 |
|
jesopo
|
21b2e0bbe7
|
Typo, 'datetme' -> 'datetime' (ctcp.py)
|
2019-02-12 16:55:56 +00:00 |
|
jesopo
|
0e1535a88d
|
Definte channel before trying to use it for event hook constuction
(line_handler.py)
|
2019-02-12 16:50:11 +00:00 |
|
jesopo
|
938495fc3a
|
Refactor how CTCPs are sent through events
|
2019-02-12 16:49:57 +00:00 |
|
jesopo
|
b2d942027e
|
Implement IRCv3 echo-message (line_handler.py)
|
2019-02-12 16:12:15 +00:00 |
|
jesopo
|
e1c81efa6f
|
Add a way to blacklist CAPs per-network (line_handler.py)
|
2019-02-12 15:34:50 +00:00 |
|
jesopo
|
7e4c1cadb1
|
Add !cointoss to random_number.py
|
2019-02-12 15:23:02 +00:00 |
|
jesopo
|
ce23442f4b
|
Use constant-time compare in permissions.py for password identifying
|
2019-02-12 11:59:47 +00:00 |
|
jesopo
|
9667b8a6e0
|
Move constant-time compare function to utils.security
|
2019-02-12 11:57:49 +00:00 |
|
jesopo
|
305b998a52
|
Use hmac.compare_digest to do a constant-time compare (sasl.scram)
|
2019-02-12 11:50:37 +00:00 |
|
jesopo
|
144182868c
|
Upgrade resume.py to draft/resume-0.3 and support sending last-read timestamp
|
2019-02-12 11:14:36 +00:00 |
|
jesopo
|
8c9626f0a9
|
Put an strf format for ISO8601 in utils
|
2019-02-12 11:08:24 +00:00 |
|
jesopo
|
98b82c7f2c
|
Insert label tag to lines in labeled BATCHes (line_handler.py)
|
2019-02-11 22:19:20 +00:00 |
|