jesopo
|
b88fa51907
|
should be checking self.hostname , not self.hostmask (func pointer!)
|
2020-04-15 21:10:02 +01:00 |
|
jesopo
|
68054eacd5
|
support PASS from ConnectionParams
|
2020-04-13 19:10:02 +01:00 |
|
jesopo
|
8656f63d09
|
support labeled-response (but don't REQ it yet)
|
2020-04-13 18:23:05 +01:00 |
|
jesopo
|
bd424d11ff
|
Future[Line], not Awaitable[Line] in self._wait_for
|
2020-04-13 17:32:39 +01:00 |
|
jesopo
|
cb3439e674
|
also match wait_fors that were in progress when a new one was triggered
|
2020-04-13 17:30:14 +01:00 |
|
jesopo
|
7cb2457136
|
add util functions to join a channel and whois a user
|
2020-04-12 13:54:27 +01:00 |
|
jesopo
|
a44d77af6d
|
update ircstates to 0.8.8
|
2020-04-12 13:54:10 +01:00 |
|
jesopo
|
d571ad7ff9
|
self.recv() can return an empty array
|
2020-04-12 13:53:39 +01:00 |
|
jesopo
|
923809ab43
|
add async_stagger reference for backported happy eyeballs open_connection
|
2020-04-11 11:33:53 +01:00 |
|
jesopo
|
c4009e1c07
|
on ERR_SASLFAIL, pop from matches
|
2020-04-10 21:37:26 +01:00 |
|
jesopo
|
3700ba4ab6
|
on RPL_SASLMECHS, we should still wait_for the ERR_SASLFAIL after it
|
2020-04-10 21:36:17 +01:00 |
|
jesopo
|
5da82e7d66
|
check for PLAIN should use match[0] not match
|
2020-04-10 21:36:03 +01:00 |
|
jesopo
|
a546a468b7
|
remove premature import for future work
|
2020-04-09 11:12:02 +01:00 |
|
jesopo
|
85ee8e95e0
|
WHO ourselves on 001 to get our realname
|
2020-04-09 11:09:44 +01:00 |
|
jesopo
|
9f832df2f1
|
allow Numerics() with params use NUMERICS list from ircstates
|
2020-04-09 11:09:15 +01:00 |
|
jesopo
|
9265fd0c48
|
remove py3.6 .travis.yml target - i think we'll be 3.7-or-above
|
2020-04-06 13:33:00 +01:00 |
|
jesopo
|
985e95c37d
|
remove duplicate "Server" in examples/sasl.py
|
2020-04-06 13:28:16 +01:00 |
|
jesopo
|
fb99d97bca
|
add anyio to requirements.txt
|
2020-04-06 13:24:38 +01:00 |
|
jesopo
|
179a2ca93a
|
refactor TCP logic in to ITCPTransport (we can mock this for unittests)
|
2020-04-06 13:22:17 +01:00 |
|
jesopo
|
750fbd8acc
|
comment about why server CAP/USER/NICK send() calls are not awaited
|
2020-04-05 23:57:02 +01:00 |
|
jesopo
|
730fef38f3
|
server.send() should be sync and return a Future - no nead for double await
|
2020-04-05 23:54:57 +01:00 |
|
jesopo
|
899d4821f0
|
add asyncs.MaybeAwait() - optionally awaitable coroutines
|
2020-04-05 23:37:54 +01:00 |
|
jesopo
|
72dc3ebd04
|
Bot does not have line_read()/line_send() any more
|
2020-04-05 17:47:02 +01:00 |
|
jesopo
|
84b374f43d
|
FoldString -> ParamFolded
|
2020-04-05 17:40:22 +01:00 |
|
jesopo
|
d837529698
|
next_line() doesn't need wait_for param
|
2020-04-05 17:22:33 +01:00 |
|
jesopo
|
423623fec1
|
add a Response subclass just to take RPL_/ERR_ names along with params
|
2020-04-05 17:16:19 +01:00 |
|
jesopo
|
0829fd9499
|
refactor and simplify normal reading vs wait_for
|
2020-04-05 17:11:04 +01:00 |
|
jesopo
|
b8ddc6883d
|
oops; add missing return statement from server.send
|
2020-04-05 13:19:19 +01:00 |
|
jesopo
|
1c7caf9039
|
use Server.registerd to detect handshake CAP LS; handle non-handshake CAP LS
|
2020-04-05 13:18:23 +01:00 |
|
jesopo
|
2a9d658207
|
return Future from async send() to *optionally* wait for it to hit the wire
|
2020-04-05 13:17:53 +01:00 |
|
jesopo
|
e470d57780
|
pass IServer to Response so we can have FoldString (match with casefold rules)
|
2020-04-05 13:00:13 +01:00 |
|
jesopo
|
f70932ac44
|
move more CAP related stuff to CAPContext
|
2020-04-05 12:48:29 +01:00 |
|
jesopo
|
afe9ec359d
|
update ircstates to 0.8.2
|
2020-04-05 12:47:19 +01:00 |
|
jesopo
|
404154e6a2
|
add __repr__ for matching.py objects
|
2020-04-03 13:05:38 +01:00 |
|
jesopo
|
688418df04
|
dont tg.spawn() for each message, allow wait_for to read
|
2020-04-03 13:04:02 +01:00 |
|
jesopo
|
45ac3be550
|
ssl/ssl_verify -> tls/tls_verify
|
2020-04-03 09:50:30 +01:00 |
|
jesopo
|
2d93e27feb
|
maybe_sasl() -> sasl_auth(SASLParms)
|
2020-04-03 09:49:46 +01:00 |
|
jesopo
|
8cc3db5e58
|
ensure server nonce .startswith() our nonce
|
2020-04-03 00:07:48 +01:00 |
|
jesopo
|
99d55de170
|
fix JOIN emit typehint issue (emit.channel may be None)
|
2020-04-02 23:53:47 +01:00 |
|
jesopo
|
b34e4fcc22
|
await server.send() should block until it hits the wire
|
2020-04-02 23:53:32 +01:00 |
|
jesopo
|
8dde7b7216
|
codestyle in ircv3.py
|
2020-04-02 23:07:09 +01:00 |
|
jesopo
|
5b4714ca1e
|
query channel MODEs on-JOIN
|
2020-04-02 22:57:22 +01:00 |
|
jesopo
|
63fa470a3f
|
add ConnectionParams.ssl_verify
|
2020-04-02 22:43:34 +01:00 |
|
jesopo
|
331cadfb39
|
use ConnectionParams.bindhost
|
2020-04-02 22:39:03 +01:00 |
|
jesopo
|
94c501d4de
|
do CAP LS 302 (not just CAP LS )
|
2020-04-02 22:38:02 +01:00 |
|
jesopo
|
60e601aa81
|
implement SASL SCRAM
|
2020-04-02 22:37:51 +01:00 |
|
jesopo
|
a4f5d8045f
|
add numerics.py to translate names, remove Response(errors=)
|
2020-04-02 20:55:01 +01:00 |
|
jesopo
|
06a4d20fc8
|
make handshake CAP dance happen in one async task. move to ircv3.py
|
2020-04-02 20:16:07 +01:00 |
|
jesopo
|
1b3c537e0a
|
only try SASL on CAP NEW when one of the new CAPs is SASL
|
2020-04-02 18:43:59 +01:00 |
|
jesopo
|
61f1cdba9d
|
don't try SASL twice, try SASL on CAP NEW
|
2020-04-02 18:38:37 +01:00 |
|