Commit Graph

417 Commits

Author SHA1 Message Date
Louis Bettens b294365fc1
change implementation of handler dispatching
This implementation has lockless handler lists, which reduces the time
during which the handler map lock must be held.  It doesn't unlink empty
lists from the map, but as long as the set of events to handle is fixed
and finite it's arguably better that way.
2017-03-04 21:42:09 +01:00
Alex Bramley 329a62d7d9 Don't hold conn.mu during REGISTER. Fixes #94. 2016-12-18 14:22:12 +00:00
Alex Bramley 64ad58533d Test ERROR handling and add constant. Fixes #92. 2016-11-28 22:50:19 +00:00
Alex Bramley be9257d323 Fix example code, oops. 2016-09-16 19:43:45 +01:00
Alex Bramley 82bcd7aded Rename Shutdown to Close; implement io.Closer. 2016-09-16 19:40:27 +01:00
Alex Bramley 734da36009 Make Conn's Shutdown method public. 2016-09-12 20:55:10 +01:00
Alex Bramley a2223065b2 Actually perform SSL handshake when we claim to. Fixes #89. 2016-08-24 08:28:48 +01:00
Alex Bramley 20e4ea9b00 TestPing needs a different timer resolution on windows. Fixes #88. 2016-06-10 19:37:51 +01:00
Jason Keene aad5dbe821 Obfuscate PASS in debug logs. (#87) 2016-05-14 09:12:49 +01:00
Alex Bee 8d77d1625c Merge pull request #86 from bob-smith/patch-1
Travis icon in README.md
2016-03-06 19:40:27 +00:00
John R Barker f2d906c0e0 Travis icon in README.md 2016-03-06 19:38:35 +00:00
Alex Bee ace6a89147 Merge pull request #85 from bob-smith/travis
Enable travis-ci for goirc
2016-03-06 19:35:13 +00:00
John Barker 9ffd7740ec Enable travis-ci for goirc 2016-03-06 13:37:58 +00:00
Alex Bramley ba9b75dd46 Update README.md with additional credits. 2016-03-02 21:53:04 +00:00
Alex Bee 19d79b5351 Merge pull request #84 from bob-smith/patch-2
Syntax highlighting for source code in README.md
2016-03-02 21:40:21 +00:00
John Barker 0b121522bb Syntax highlighting for source code in README.md
Markdown knows about golang, so use the source (formatting) luke
2016-03-02 18:19:47 +00:00
Alex Bee 6277eb6e2d Merge pull request #81 from stapelberg/patch-1
README: add SSLConfig to make connecting work
2016-02-25 22:19:41 +00:00
Alex Bee 6eefee83e9 Merge pull request #82 from stapelberg/patch-2
ParseLine: ignore empty lines (instead of crashing)
2016-02-25 22:18:06 +00:00
Michael Stapelberg 07446c2595 ParseLine: ignore empty lines (instead of crashing) 2016-02-25 08:51:54 +01:00
Michael Stapelberg 51e6046a09 README: add SSLConfig to make connecting work
Without an SSLConfig, I get the following error:

```
E0225 08:43:12.384793   28687 connection.go:406] irc.recv(): tls: either ServerName or InsecureSkipVerify must be specified in the tls.Config
```
2016-02-25 08:50:53 +01:00
Alex Bee 8be75dd9d4 Merge pull request #76 from jakebailey/master
Add IRCv3 tag parsing and CAP command.

http://ircv3.net/specs/core/capability-negotiation-3.1.html
http://ircv3.net/specs/core/message-tags-3.2.html
2016-01-24 14:54:39 +00:00
Jake Bailey 4c6842acba link to spec 2016-01-12 20:02:46 -06:00
Jake Bailey 20ef362b1d skip empty tags, allow = in tag values, better clarify ; split, add IRCv3 tag parsing comment to ParseLine() 2016-01-12 20:00:40 -06:00
Jake Bailey 73f523f252 use a list of capabilities instead, as the spec defines space seperated caps 2016-01-11 16:50:32 -06:00
Jake Bailey 32ae1211bb check bad tag inputs 2016-01-11 16:43:19 -06:00
Jake Bailey e670ca970c fix comment 2016-01-11 16:25:17 -06:00
Jake Bailey 46ce56c580 don't add spaces and instead make message optional, let the user decide 2016-01-11 16:24:01 -06:00
Jake Bailey f6a94cc3a3 add tags parsing and CAP command, with parsing tests 2016-01-11 16:20:06 -06:00
Alex Bramley 5cf08f7e9c Remove race test in state tracker, go1.5 broke it. 2015-12-12 19:41:36 +00:00
Alex Bramley 21c4c24f6e Add soul9 to contributors. 2015-12-03 07:59:57 +00:00
Alex Bee b38d16353c Merge pull request #72 from soul9/master
handlers: check array bounds before indexing
2015-12-03 07:57:32 +00:00
John Soros f0ae9bb509 handlers: check array bounds before indexing 2015-12-02 21:51:44 +01:00
Alex Bramley 1e190eb233 Run gofmt to fix some trailing whitespace &c. 2015-11-02 21:41:41 +00:00
Alex Bramley e935d78bb7 Fix for the deadlock condition. 2015-11-02 21:16:07 +00:00
Alex Bramley 0436afaf76 Contrived test for a deadlock condition. 2015-11-02 21:01:36 +00:00
Alex Bee 038549c7e6 Merge pull request #70 from ripcurld00d/privmsg_enhanced
Add variadic Privmsg functions.
2015-10-15 20:36:05 +01:00
ripcurld00d af8bd35c8a Add variadic Privmsg functions
Privmsgln and Privmsgf are variadic versions of the Privmsg function.
They format a message according to fmt.Sprintln and fmt.Sprintf
respectively and send it using Privmsg.

Note: Although the Privmsgln function's name infers that a new-line
character is added at the end of the message, it does not do that.

For example, the following send "golang is # 1 IMHO" to #go-nuts:

    c.Privmsgln("#go-nuts", "golang is #", 1, " IMHO")
    c.Privmsgf("#go-nots", "%s %d %s", "golang is #", 1, "IMHO")
2015-10-15 11:49:05 +03:00
Alex Bramley 7aa4a15773 Update contributors list in README. 2015-09-20 18:15:27 +01:00
Alex Bee 71e0f84256 Merge pull request #69 from scrapbird/master
Add support for connecting to IRC servers via a proxy.
2015-09-20 14:06:48 +01:00
Brenton Morris f90b498ac4 Removed the config.Proxy variable and renamed config.ProxyServer to config.Proxy. Client now connects over the specified proxy if config.Proxy isn't an empty string. 2015-09-20 19:37:26 +12:00
Alex Bee 2c26d1db08 Merge pull request #68 from ripcurld00d/readme_update
Update the README.md file to reflect current reality.
2015-09-19 13:46:43 +01:00
Brenton Morris 866e8dac8a Added proxy support 2015-09-14 16:32:23 +12:00
Boaz Shuster 7252b8c67e Update the README.md file
I am assuming the code given in the "Using the framework" should run.

* Using client's consts, such as CONNECTED.
* In Go 1.4, `error` implements only the `Error()` function.
* The `c` variable is already declared in line 5, no need for `:=` in line 12
2015-08-19 10:24:05 +03:00
Alex Bramley fdb1c8229d Support other chantypes in (*Line).Public. Fixes #65. 2015-07-28 18:10:23 +01:00
Alex Bee 8101dbaedd Merge pull request #64 from tmcarr/patch-1
Fixed a typo in Readme.md
2015-07-28 17:54:09 +01:00
Travis Carr d5ece47310 Fixed a typo in Readme.md
Just noticed a typo, thought I'd fix that right up. s/hander/handler
2015-07-26 16:59:05 -07:00
Alex Bee 876b70baa9 Merge pull request #63 from Gentux/pr
Change "gomock" repository URL
2015-06-16 07:42:22 +01:00
Alex Bee f577524d46 Merge pull request #62 from kidanger/master
Gomock moved to an official repository.
2015-06-16 07:42:02 +01:00
Romain Soufflet 2db4b19502 Change "gomock" repository URL 2015-06-15 13:59:14 +02:00
kidanger ce963dc793 fix gmock url 2015-06-13 10:43:59 +01:00