Commit Graph

45 Commits

Author SHA1 Message Date
Alex Bramley 1c62354cb8 Rewrite flood limiting for new time behaviour. 2012-02-04 01:13:07 +00:00
Alex Bramley dfb6f94b56 Manually managing deadlines is going to *suck*. 2012-02-04 01:12:41 +00:00
Alex Bramley b23215d09b Gofix run. 2012-02-04 00:51:06 +00:00
Alex Bramley e0a5a57fe1 Merge branch 'master' into weekly
Conflicts:
	client/connection.go  # MERGED
	event/registry.go     # DELETED
	logging/mock_test.go  # DELETED
2011-11-13 14:13:55 +00:00
Alex Bramley 907560b599 Migrate to split event pkg. 2011-11-13 14:07:19 +00:00
Alex Bramley 4e4c4b6798 Migrate to split logging pkg. 2011-11-13 14:02:12 +00:00
Alex Bramley 9d5159a220 gofix weekly fixes for client. 2011-11-13 13:34:32 +00:00
Alex Bramley f62470c091 Test rateLimit(). Move call to time.After to write() for ease of testing.
Complete test coverage! Well, for things that matter. I think.
2011-11-11 11:17:18 +00:00
Alex Bramley dc524420b0 Test write(). Fix bug where return of Flush() was not checked. 2011-11-11 10:17:17 +00:00
Alex Bramley aa75e0e0c6 Make enabling/disabling state-tracking easier. Improve constructors. 2011-11-07 13:34:13 +00:00
Alex Bramley 85097043cf Epic final commit for nick/chan/logging/testing refactor.
* Brings logging changes to client library.
* Brings state tracker to client library.
* Rewrites all tests to use mock logger and mock state tracker.
* Makes state tracking optional, finally.
* Shaves yaks until they are almost completely bald.
2011-11-06 04:56:46 +00:00
Alex Bramley e36caa3a3d Merge branch 'logging' into nickchan-refactor
Conflicts:
	client/nickchan.go

Fix up some inconsistencies in the beginning of the nickchan refactor too.
2011-10-06 22:33:06 +01:00
Alex Bramley de66051d07 Convert conn.Err into logging.
Also, remove all error-side-effect testing cos it was a bit shit.
First step on the long road to refactoring the nick/chan state tracking
and making everything more testable and mockable with interfaces.
2011-09-29 22:54:54 +01:00
Alex Bramley eb6ac4ce05 Tracking wip. 2011-09-28 20:48:58 +01:00
Alex Bramley c400a2141a Run gofmt over code, it's been a while. 2011-09-12 23:25:09 +01:00
Alex Bramley 7d9b8c3099 Add tests for explicit and implicit (via EOF) shutdown; fix bug ;-) 2011-08-23 10:53:52 +01:00
Alex Bramley f3a2cf6fa6 Make connected externally accessible, per issues/8. 2011-08-22 17:09:48 +01:00
Alex Bramley fb91caeccf Fix comment for Conn struct. 2011-08-21 13:57:47 +01:00
Alex Bramley 045679dd42 Split Connect() into two pieces for testing purposes. 2011-08-21 13:31:18 +01:00
Alex Bramley 9c94b0b3e0 Impolite to break the 'IRC event provides Conn, Line' contract. 2011-07-30 19:34:55 +01:00
Alex Bramley 8fed417dce Oh wait event isn't local. 2011-07-28 00:41:47 +01:00
Alex Bramley 303d3724e2 Break out unboxing code; pass conn/line objects for other events. 2011-07-28 00:24:07 +01:00
Alex Bramley 8e6de2f3c7 Add an overridable Dispatcher to Conn, and use that to dispatch events. 2011-07-27 21:40:56 +01:00
Alex Bramley 900afb5c48 Put nil checking in correct place. 2011-07-27 21:15:09 +01:00
Alex Bramley 33a5bff35b Move line parsing done in dispatchEvent into ParseLine(). 2011-07-27 21:10:37 +01:00
Alex Bramley 5e814babc7 Move to using the new event registry internally. 2011-07-27 21:10:01 +01:00
Alex Bramley ddd913547c Add field in Conn to allow external state to be propagated to event handlers. 2011-07-25 22:27:09 +01:00
Alex Bramley c3715be829 Use second constant in SetTimeout(). 2011-07-22 01:20:25 +01:00
Alex Bramley 07d5c0676e Fix compile error when NewNick() is called before initialise(). 2011-07-22 01:20:07 +01:00
Alex Bramley 6634869fe6 Use connected bool properly to ensure shutdown() can't be called twice. 2011-07-22 01:17:35 +01:00
Alex Bramley 291132cab5 Refactor recv() since we needed to rewrite send(). 2011-07-22 01:11:15 +01:00
Alex Bramley 0200b741dc Fix for issues/6 (2/2): Move to using control channels and select. 2011-07-22 01:08:42 +01:00
Alex Bramley eb51558009 Fix for issues/6 (1/2): Don't close channels when disconnected. 2011-07-21 23:03:11 +01:00
Alex Bramley a5a4f989ac Update SSL connectivity to use tls.Dial now it supports a config arg. 2011-07-21 22:00:45 +01:00
Alex Bramley 9748f9c47e Oops, timeouts are int64 nanoseconds. 2011-07-21 21:59:01 +01:00
Alex Bramley 5027646478 gofix run 2011-07-18 09:14:58 +01:00
Alex Bramley 83b482f8ce Make socket timeouts a configurable thingy. 2011-07-17 13:48:12 +01:00
raylu a19bce5998 Make a timeout so that Conn.Err closes when the connection is lost 2011-07-17 13:35:15 +01:00
Alex Bramley 2a3ff18d73 Properly fix formatting. Bleh bleh bleh. 2010-12-20 22:14:22 +00:00
Alex Bramley 1d587cd3fc Helps if you add the damn element to the struct... 2010-12-19 15:22:40 +00:00
Alex Bramley bea2395160 Make timestamp format twiddleable; cosmetic re-arrangement of *Conn struct. 2010-11-23 22:18:08 +00:00
Graham Lyon 623247c995 Generalise timestamp code and default to using time.LocalTime 2010-11-23 22:08:25 +00:00
Alex Bramley 08b7d63c27 Refactor to remove line.Text and use line.Args[-1] instead. 2010-11-23 22:07:21 +00:00
Graham Lyon 8ad6e67467 Added timestamps to irc.Line and debug output 2010-11-23 20:22:35 +00:00
Alex Bramley bedbfc2899 Move irc/ to client/ and set up for goinstall. 2010-11-21 19:53:14 +00:00
Renamed from irc/connection.go (Browse further)