Thomas Jager
da78ed515c
BREAKING CHANGES: Run callbacks in main thread and int callback id.
...
Execute callbacks in main thread. This will break callbacks that
use a long time to execute. Create your own thread in AddCallback
using gorutines on long running callbacks.
Use deterministic IDs for AddCallback. Changes the id from SHA-hash
to int.
2016-02-06 21:38:53 +01:00
peted
5a16c2581e
revert some changes but also update err chan for new connection so further errors are received in Loop
2015-11-14 23:51:15 +10:00
peted
937f84605b
fix reconnection logic
2015-11-14 23:10:39 +10:00
Luke Evers
f0c83dc012
Add support for specifying a quit message.
2015-10-28 08:58:41 -04:00
Thomas Jager
8b3e6a50ac
Fix ident
2015-07-31 08:29:20 +02:00
Keno Schwalb
4e1ebe0162
minor adjustments for multiple connections
2014-11-03 15:21:48 +00:00
Wesley Dawson
30608bd31c
Use tls.DialWithDialer instead of tls.Client and remove irc.netsock
2014-08-13 18:35:37 -07:00
Chance Zibolski
846881130f
Remove pread
2014-07-14 17:05:06 -07:00
alsm
f27b0b53e2
Close channel to signal goroutines to quit and waitgroup to confirm that they have
2014-05-02 23:20:51 +01:00
tpltnt
499007f2d7
wording fix
2014-02-14 17:10:06 +01:00
tpltnt
eef65b116e
some doc on structs
2014-02-14 15:40:25 +01:00
Thomas Jager
bbbdd715fa
Merge pull request #24 from darkliquid/callback-tweaks
...
Looks good to me. The id generating code may need some tweaking but should work fine as is :)
2014-02-12 08:17:43 +01:00
Andrew Montgomery-Hurrell
6edb7ec06e
Added unique id to callbacks so they can be referenced. Since Go doens't actually provide unique function pointers, we use the closest we can get by grabbing the pointer for the function and slapping a random int on the end. Does it guarantee there will never be a collision? No, but it makes it's pretty damn unlikely that you'll get one during the lifetime of an app unless you are generating millions and millions of callbacks and never, ever deleting them, in which case you probably have something else to worry about
2014-02-11 23:35:13 +00:00
Kaleb Elwert
ea57336e8f
Replaces the Event.Message field with a function
...
Note that this purposefully breaks backwords compatibility. Because of
how Arguments are now handled, this will force users using this library
to update anything using this.
This is not bad, as it seems, because otherwise (just updating the
Event.Arguments to include the Message) the change could cause silent,
strange breakages.
2014-02-12 00:02:58 +01:00
Andrew Montgomery-Hurrell
847ce8faa2
Make IRC logger public. No reason for disallowing overrides.
2014-02-10 19:56:16 +00:00
Andrew Montgomery-Hurrell
0b6c954b52
try to shutdown more safely so callbacks, etc don't try and use the read/write channels after they are closed
2014-02-10 19:54:07 +00:00
Andrew Montgomery-Hurrell
c0e6d50e0c
Added configurable timeouts and overridable version string
2014-02-09 10:20:58 +00:00
joe
c10849b4c0
Loop: catch reconnection errors; writeLoop: only log.Print if Debug
2013-09-25 23:37:11 -04:00
Philipp Schroer
655a41f804
Some improvements
...
* Remove unused struct elements
* Rename some things
* Reuse more code
* Use 512 byte read buffer
2013-04-02 19:09:45 +02:00
Thomas Jager
0bc57f9d68
Formatting
2013-03-13 12:54:00 +01:00
Thomas Jager
9e880ef476
SSL -> TLS
2012-11-07 21:55:33 +01:00
Thomas Jager
c8f78ebf45
Change the way the pinger works.
...
Fix syning threads before reconnections
Formatting
2012-11-07 21:51:24 +01:00
Thomas Jager
e05c098519
Merge changes from other fork
2012-11-06 00:39:31 +01:00
Thomas Jager
be3afcc796
Merge branch 'master' of git://github.com/lye/cleanirc
...
Conflicts:
irc.go
irc_callback.go
irc_struct.go
Merge Interesting changes from fork
2012-11-06 00:38:20 +01:00
Thomas Jager
a5f3a91fd1
go get not working quite as i thought
2012-11-05 23:46:47 +01:00
Thomas Jager
ddf0508cdb
Cleanup old files
2012-11-05 23:41:04 +01:00
Reynir Reynisson
670fd99fb4
Rename IRC{Connection,Event} -> {Connection,Event}
...
I don't feel it's necessary to tag the types with IRC, as a client would
tag it with the module name anyway. Example:
var conn irc.IRCConnection
// ...
vs.
var conn irc.Connection
// ...
2012-05-11 13:35:25 +02:00
lye
4f82a31c9c
Minor tweaks to play nicely with the new go tool
2012-03-28 01:15:26 -05:00
lye
5fe3fea8c0
Hurrah, starting a real fork.
...
The old codebase is too messy for my taste and doesn't provide a clean
enough API. I don't like the name either, so I'm also rebranding it. I
don't care.
2012-03-21 22:38:22 -05:00
lye
07b619e8f2
Temporarily use my tls fixes until they're merged
2012-03-20 23:08:05 -05:00
lye
52c17040d5
Make the SSL config app-configurable
2012-03-18 17:08:05 -05:00
Michael Jard
a0256382be
Fixes against weekly.2012-02-22
...
Convert time/duration variables
Clean up duration math
2012-02-25 00:52:19 -08:00
tj
4e661a3954
Gofix
2011-11-07 01:26:12 +01:00
Michael Jard
78a4c71736
Add ability to silence callback handler
2011-05-21 21:06:22 -07:00
tj
ea8495857e
Better nick recapture
2011-02-03 01:16:13 +01:00
tj
79ac1741ea
Add irccon.Quit() and irccon.Cycle()
...
Quit() Sends QUIT to server and exits the main loop.
Cycle() Sends QUIT to server and reconnects.
2010-10-18 21:46:34 +02:00
tj
9fa6bbdeca
Avoid changing interface for password support
2010-09-29 09:52:43 +02:00
tj
c64043c75b
Merge
2010-09-29 09:00:16 +02:00
tj
998e1c3050
Add support for server PASSWORD
2010-09-29 08:58:32 +02:00
tj
1165a7fbf2
Fix compile + bit more robust reconnect code
2010-09-23 18:54:34 +02:00
tj
7019ec3d0e
Rewritten to use callbacks, bit easier to use.
2010-01-06 19:32:35 +01:00
tj
82d1050496
Add reconnect
2009-11-25 19:17:08 +01:00
tj
85b62f6a9a
LICENSE, Same as go itself.
2009-11-18 16:03:14 +01:00
tj
1c060814f3
first
2009-11-18 01:28:12 +01:00