Commit Graph

66 Commits

Author SHA1 Message Date
Liam Stanley
63ae092b97 minor documentation cleanup 2017-02-13 03:11:50 -05:00
Liam Stanley
4ddf9663e7 switch to x/net/context for backwards compatibility 2017-02-13 01:45:25 -05:00
Liam Stanley
d8423fc605 implement DefaultRecoverHandler 2017-02-13 01:27:57 -05:00
Liam Stanley
88057bed20 implement ability to catch panics in handlers 2017-02-13 01:15:53 -05:00
Liam Stanley
8fd2c7ba4a fix printf 2017-02-12 14:39:20 -05:00
Liam Stanley
383e1300bb implement Client.String() 2017-02-12 14:31:57 -05:00
Liam Stanley
5527fcdff5 ignore reconnect delay if Reconnect() is called directly 2017-02-12 02:24:35 -05:00
Liam Stanley
ed6e266cba split out connection info and throttling into ircConn; move conn from state to client 2017-02-12 02:22:41 -05:00
Liam Stanley
1090fd92a8 move connection logic into conn.go 2017-02-12 02:06:09 -05:00
Liam Stanley
94cceb64e7 remove Config.Conn; implement Config.Proxy, Config.Bind, and Config.SSL; closes #3 and #4 2017-02-12 01:39:55 -05:00
Liam Stanley
2c7fffa496 Builtin -> Builtins 2017-02-11 23:54:42 -05:00
Liam Stanley
69a6d77ac8 Callbacks -> Handlers 2017-02-11 22:51:05 -05:00
Liam Stanley
b06fb6e930 lots of refactoring: remove data races, cleanup connection handling, goroutine leaks, rate limiting 2017-02-11 22:00:01 -05:00
Liam Stanley
43495a17ef don't panic if reconnect() is called internally 2017-02-11 18:06:08 -05:00
Liam Stanley
c609a55864 implement Config.HandleError 2017-02-08 03:08:13 -05:00
Liam Stanley
82f34d9777 remove ability to disable default CTCP; config->Config, move Disable* fields into functions 2017-02-08 02:55:38 -05:00
Liam Stanley
775435b722 update documentation 2017-02-08 01:44:37 -05:00
Liam Stanley
3caa790524 correct socket timeout bug 2017-02-07 06:21:56 -05:00
Liam Stanley
5dc6abca2a rename MaxRetries -> Retries 2017-02-07 06:12:30 -05:00
Liam Stanley
9593d1caea panic when client used after Stop(); cleanup goroutine cleanup to help garbage collection 2017-02-07 05:44:21 -05:00
Liam Stanley
52e05d3c15 success -> ok 2017-02-06 03:53:05 -05:00
Liam Stanley
ba03de710d update copyright to remove year 2017-02-06 02:45:31 -05:00
Liam Stanley
5aa9303fd3 remove SUCCESS, add INITIALIZED for use with validating socket connection 2017-02-05 07:42:59 -05:00
Liam Stanley
37b380a564 rename Client.Config to client.config to prevent potential raceconditions or silly behavior 2017-02-05 07:11:59 -05:00
Liam Stanley
af22c0a64c remove unneeded c.IsConnected() checks; implement Whois(), Ping(), Pong(), Oper(), Kick(), Invite(), Away(), Back(), and List() 2017-02-05 07:09:48 -05:00
Liam Stanley
1eb80a05db Client.Who should support channels/users/nicks 2017-02-05 06:12:49 -05:00
Liam Stanley
2a7ace18d2 log callback registration/removal/execution to debug output 2017-02-05 06:09:35 -05:00
Liam Stanley
20686a735d remove no longer needed ErrCallbackTimedout 2017-02-05 05:35:00 -05:00
Liam Stanley
151dc5161f remove Config.Logger 2017-02-05 05:23:05 -05:00
Liam Stanley
310d0052d6 re-implement Config.Logger; add Config.Debugger, and implement Event.Pretty(). 2017-02-03 08:54:44 -05:00
Liam Stanley
6b4a3e6359 change logging format for debugging 2017-01-27 02:41:38 -05:00
Liam Stanley
42092970a7 remove Event.String(); rename Raw() to String() 2017-01-20 06:48:42 -05:00
Liam Stanley
aeef5a8774 rewrite capability ack functionality 2017-01-19 06:58:08 -05:00
Liam Stanley
a4b0396d65 add CAP NEW and CAP DEL checking and responding 2017-01-19 03:33:49 -05:00
Liam Stanley
87ad996733 use internal writer to prevent delays during connect 2017-01-19 02:33:19 -05:00
Liam Stanley
0a9c72d992 send cap request as early as possible 2017-01-19 01:56:30 -05:00
Liam Stanley
8bf23fd61f implement default rate limiting for events; update readme 2017-01-12 04:19:35 -05:00
Liam Stanley
3a576d1db9 implement version config option to override default ctcp version 2017-01-12 02:34:29 -05:00
Liam Stanley
e6b6a4b5a0 update documentation 2017-01-06 09:00:29 -05:00
Liam Stanley
30c87f3968 update documentation; minor bug fixes 2017-01-06 08:53:41 -05:00
Liam Stanley
631f950d56 implement server MOTD tracking; implement ServerMOTD 2017-01-06 08:40:01 -05:00
Liam Stanley
687e2753a1 implement GetServerOption, ServerName, NetworkName, ServerVersion, and ISUPPORT tracking; update todos 2017-01-06 08:30:09 -05:00
Liam Stanley
683485f34c fix bug with capabilities breaking after reconnect 2017-01-06 01:09:18 -05:00
Liam Stanley
5dde6d1797 rename various symbols; update todos; implement account tracking under account-notify 2017-01-03 21:13:05 -05:00
Liam Stanley
714a315ef0 yay new year 2017-01-03 11:05:27 -05:00
Liam Stanley
f3b1c1e940 initial support for message tags 2017-01-03 11:02:24 -05:00
Liam Stanley
3d0a75e389 add basic support for capability tracking; add chghost and away, as well as configuration for more 2016-12-30 08:51:31 -05:00
Liam Stanley
e4a7f88a12 fix count bugwith Caller.String() 2016-12-30 06:13:44 -05:00
Liam Stanley
85fca26b9f drop send->fetch support, too clunky and messy 2016-12-30 06:00:44 -05:00
Liam Stanley
c6dbf08c59 implement support to respond to CTCP events; minor bug fixes; overhaul CTCP docs; implement DisableDefaultCTCP; implement CTCPEvent.Reply 2016-12-26 03:51:42 -05:00