Commit Graph

76 Commits

Author SHA1 Message Date
Liam Stanley
3ded5b433a start working on making state accessible 2017-02-14 07:33:05 -05:00
Liam Stanley
9818cded91 Debug->Debugger; implement client side ping tracking; implement Config.Out; implement Config.PingDelay 2017-02-14 02:14:38 -05:00
Liam Stanley
2a4c9412b2 clean up doc 2017-02-13 22:21:04 -05:00
Liam Stanley
39fd16999d fix misc. bugs; refractor send queue 2017-02-13 21:57:18 -05:00
Liam Stanley
82bafff852 properly handle errors during write operations 2017-02-13 09:28:59 -05:00
Liam Stanley
8c25428024 add doc 2017-02-13 07:56:00 -05:00
Liam Stanley
27efadda57 implement commands 2017-02-13 07:52:29 -05:00
Liam Stanley
9cc4ff46a2 merge connectMessages into connect 2017-02-13 05:38:18 -05:00
Liam Stanley
6820395200 set minimum reconnect delay to 5s 2017-02-13 04:43:30 -05:00
Liam Stanley
7d236adca3 clarify RecoverFunc doc 2017-02-13 04:42:45 -05:00
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