Commit Graph

153 Commits

Author SHA1 Message Date
tali b0e1b10868 make pretty logging configurable 2024-01-31 12:40:03 -05:00
tali 0711561c0d refactor ansi colors in pretty logger 2024-01-31 12:28:47 -05:00
tali c3ea3aea6d implement WHOWAS using Cache to store history 2024-01-31 11:55:23 -05:00
tali 41b7fde963 fix handling non-integer arguments to +l 2024-01-31 11:50:17 -05:00
tali 5c43d23dd5 attempt to fix handle_client error and cleanup 2024-01-31 11:48:52 -05:00
tali 4e8381ea35 add List.iter_up_to 2024-01-31 11:27:27 -05:00
tali fde89493b2 add rotating cache data structure 2024-01-31 11:26:38 -05:00
tali 5bc37c132b clean up some annots 2024-01-31 10:42:22 -05:00
tali bfa22c6dbd add WHOIS command 2024-01-31 10:39:48 -05:00
tali 65b3dc6672 add WHO command 2024-01-31 01:11:07 -05:00
tali 2e15ae3aac hmmb 2024-01-31 01:07:56 -05:00
tali eecd915d27 add command todolist 2024-01-31 00:42:30 -05:00
tali cdbb445319 away reply cleanup 2024-01-31 00:38:03 -05:00
tali b5bec6c601 implement periodic server->client pings, timeouts 2024-01-30 22:35:18 -05:00
tali 277af4202f create wheel data structure for implementing pings 2024-01-30 22:24:24 -05:00
tali 8348f2dc1f respond to client PING messages 2024-01-30 21:38:31 -05:00
tali 7de285524a add AWAY command 2024-01-30 21:30:54 -05:00
tali a57d5b532a add KICK command and clean up KICK/PART/QUIT reason param 2024-01-30 19:34:43 -05:00
tali 4aaa96c6c1 make "Router.membership" easier to type 2024-01-30 19:21:47 -05:00
tali d8ef67310a create some basic server unit tests 2024-01-30 19:12:57 -05:00
tali 2d9aaff4ef TMC optimize List.flat_map 2024-01-30 19:05:35 -05:00
tali 7d4fa61935 refactor MODE reports errors about missing users 2024-01-30 18:56:44 -05:00
tali eec24d1602 write List.flat_map 2024-01-30 18:54:41 -05:00
tali 2ecef57faa improve mode parsing yet again, more graceful failures 2024-01-30 18:21:02 -05:00
tali 3ab60bc4c0 add member count, check +l or error on join 2024-01-30 17:32:00 -05:00
tali e7978a01f3 add validation of topics and protected topic mode 2024-01-27 15:56:11 -05:00
tali d5cdc71ac0 add validation of channel modes in some cases
- only +o may set channel mods
- only +v/+o may talk in moderated channels
- filter NAMES reply by channel +s and user +i
2024-01-27 15:34:30 -05:00
tali 5f573c98e7 disallow "*" as a channel key 2024-01-27 15:33:35 -05:00
tali c35c90fcb1 add handling +o/+v/-o/-v commands in channels 2024-01-25 18:55:03 -05:00
tali d66cd93152 parse priv (+o, +v) modes in chan mode strings 2024-01-25 18:53:30 -05:00
tali 2bea08d04f add Mode.Parse.chan_modes tests 2024-01-25 18:30:44 -05:00
tali b49b1db26b op users joining a fresh channel; list user prefixes 2024-01-24 13:17:59 -05:00
tali 5a463382d3 dont force :trailing on all 324 (RPL_CHANNELMODEIS) replies 2024-01-24 12:58:34 -05:00
tali 8e711970e7 clean up set_chan_* functions 2024-01-24 12:54:53 -05:00
tali 7d8807318b support "JOIN 0" command 2024-01-24 12:47:20 -05:00
tali 130f79163d add line to help remind me to add validation 2024-01-24 12:40:20 -05:00
tali 3658be9fe4 support TOPIC command 2024-01-24 12:38:20 -05:00
tali f057eb1648 get channel symbol correct in NAMES reply 2024-01-24 12:35:34 -05:00
tali 04ad9c6ed7 cover some edge cases such as join a channel twice 2024-01-24 12:12:44 -05:00
tali 67024c572e field accessors are ok, dont use methods in Server_info 2024-01-23 14:31:31 -05:00
tali 7dbd997b92 slight connection.welcome refactor 2024-01-23 14:28:57 -05:00
tali b58e690cfc remove Irc. prefix from everything!!!! 2024-01-23 14:24:35 -05:00
tali aeeefeaf04 move server info and config to Server_info 2024-01-23 14:21:43 -05:00
tali d3763b1204 add back Irc.Mode.of_list 2024-01-23 14:00:40 -05:00
tali 7f34e5643a add PART reason 2024-01-23 13:46:54 -05:00
tali 7762c40a22 fix User.is_registered !! 2024-01-23 13:46:48 -05:00
tali 4fca26cc8a refactor quit 2024-01-23 13:31:06 -05:00
tali d6385ab852 big huge refactor of channel join/part logic 2024-01-23 13:18:12 -05:00
tali 0cabfe5dc1 invert is_nick_available lol 2024-01-23 13:10:23 -05:00
tali ec0deb9667 refactor set_nick flow 2024-01-22 12:48:44 -05:00