4
0
mirror of https://github.com/jesopo/ircrobots synced 2024-06-19 06:17:05 +00:00
Commit Graph

173 Commits

Author SHA1 Message Date
jesopo
8245a411c0 hmm no this isnt how you ask for cert validation apparently 2022-01-20 21:24:54 +00:00
jesopo
80b941fa53 handle ERR_UNAVAILRESOURCE for prereg NICK failure too 2022-01-16 15:24:22 +00:00
jesopo
9ba5b2b90f add transport (ITCPTransport) param to bot.add_server 2021-12-18 16:48:01 +00:00
jesopo
05750f00d9 make sure 'tls' is defined 2021-12-09 23:49:40 +00:00
jesopo
6c91ebc7ec add ConnectionParams.from_hoststring("nick", "host:+port") 2021-11-29 16:09:26 +00:00
jesopo
7b6a845927 don't infinitely loop SASLUserPass attempts on FAIL or ABORT 2021-09-19 21:34:57 +00:00
jesopo
ab65e39ab9 handle ERR_SASLABORTED 2021-09-18 17:34:52 +00:00
jesopo
c7604686a2 channel_user.modes is now a set 2021-09-11 15:42:47 +00:00
jesopo
64935c7a8d react to pre-reg ERR_ERRONEUSNICKNAME the same as ERR_NICKNAMEINUSE 2021-09-11 15:40:18 +00:00
jesopo
ab17645d83 catch reconnection failures, do exponential backoff 2021-06-26 15:08:48 +00:00
jesopo
dd41b0dbde parse tokens in wait_for - waity things expect state change 2021-05-22 08:43:11 +00:00
jesopo
6fddfb7fe9 reset ping_sent in wait_for too 2021-05-12 12:34:06 +00:00
jesopo
bdfb91b51d invert ping check 2021-05-12 11:52:33 +00:00
jesopo
3574868458 reset ping timer when we read a line 2021-05-12 11:24:54 +00:00
jesopo
6a05370a12 simplify wait_for 2021-05-12 10:52:39 +00:00
jesopo
fc0e8470cc change pre-001 throttle to 100 lines in 1 second 2021-03-26 12:35:02 +00:00
jesopo
d0e0314169 _check_regain wants a string list, not a string 2020-12-20 00:42:18 +00:00
jesopo
a15e2bd1fb "001" literal -> RPL_WELCOME 2020-12-20 00:40:31 +00:00
jesopo
7a59ece687 try to regain nick on servers that have WATCH or MONITOR 2020-12-20 00:40:11 +00:00
jesopo
805b247375 successful pre-reg NICK has no ack, so we can't await a result 2020-10-10 22:56:45 +00:00
jesopo
70476c9fc9 _pending_who.pop() -> _pending_who.popleft(), or we WHO the same chan 2020-09-30 11:11:06 +00:00
jesopo
8495838541 sent_ping wasn't be used for some reason 2020-09-30 11:03:17 +00:00
jesopo
bfdae87b36 handle ERR_NICKNAMEINUSE pre-registration (add alt-nicknames param) 2020-09-30 10:06:47 +00:00
jesopo
99254abc9c also query MODE +beIq on JOIN, don't hold the thread for ENDOFWHO 2020-09-29 12:14:15 +00:00
jesopo
cdad0895e1 add very basic autojoin support 2020-09-25 18:03:02 +00:00
jesopo
a264e4e347 scrap deferred wait_for, actually catch server disconnection 2020-09-24 19:43:03 +00:00
jesopo
6d2cf3f465 rename wait_for()'s timeout param, actually use it 2020-08-09 21:04:49 +00:00
jesopo
28faec42fa update ircstates to v0.11.1, manually parse_tokens() 2020-08-07 15:00:02 +00:00
jesopo
b3a667fc71 ChannelUser objects take Names now 2020-07-01 17:52:44 +01:00
jesopo
4152f4d281 _collapse(s) was moved to collapse(s) 2020-07-01 17:52:29 +01:00
jesopo
839debff93 glob._collapse -> glob.collapse 2020-06-29 10:30:59 +01:00
jesopo
0fc66f7f7b add a timeout (wtimeout) param to wait_for 2020-06-23 22:23:52 +01:00
jesopo
a08f53b7f7 ping timeout giveup shouldn't hit continue too 2020-06-23 10:36:06 +01:00
jesopo
a102230495 python3.7 asyncio.Task has no .get_name() 2020-06-21 16:53:05 +01:00
jesopo
883f09e31c switch _next_lines and _read_lines to generators. taskgroup wait_fors! 2020-06-21 16:47:53 +01:00
jesopo
75c12d83e8 put a 20 second timeout on wait_for calls 2020-06-15 11:13:52 +01:00
jesopo
d85f359293 SHA-1 scram name should be SHA1 (and fix typo in error rethrow) 2020-06-14 18:37:11 +01:00
jesopo
67e6064b67 move serialised who mechanism in to Server. dont rely on exclusive wait_for 2020-06-14 18:36:37 +01:00
jesopo
383d3acc8d don't leave old _wait_for_futs lying around 2020-06-13 00:28:27 +01:00
jesopo
b9a543031a simplify reading lines, simplify wait_for, wait_for from outside reads 2020-06-13 00:21:39 +01:00
jesopo
db851e0ba2 whois.idle is an int, change whois.channels to ChannelUser objects (modes!) 2020-06-12 14:23:04 +01:00
jesopo
c4df2e2175 replace List with Sequence in matching/responses.py 2020-06-12 14:22:39 +01:00
jesopo
8f552a7d6f update ircstates to v0.9.18, catch ERR_NOSUCHSERVER (remote whois) 2020-06-07 20:46:05 +01:00
jesopo
544d5de023 again, ERR_NOSUCHUSER -> ERR_NOSUCHNICK 2020-06-07 20:31:07 +01:00
jesopo
2245ba23a2 ERR_NOSUCHUSER -> ERR_NOSUCHNICK 2020-06-07 19:41:26 +01:00
jesopo
06afec2738 WHOIS should have nick, user/host/real are required, handle NOSUCHUSER 2020-06-07 17:46:38 +01:00
jesopo
17ecd1416a glob.py.compile should have a return type 2020-06-07 17:45:47 +01:00
jesopo
63878e75cd :Optional, not =Optional 2020-06-03 21:38:27 +01:00
jesopo
5b04a5d1fd allow Formatless and Folded to be nested 2020-06-01 14:17:19 +01:00
jesopo
97c4a616c9 channels needs to be a list and needs enumerate() 2020-06-01 11:04:22 +01:00