Skip to content


Fixes Issue #87 - No longer includes : when sending PASS #88

wants to merge 1 commit into from

3 participants


No description provided.


I'm fairly sure that colon is there because the IRC RFC says it should be.

If you apply your patch, then connect to an IRC server, and client.say("#channel", "hello world") you will see what I mean, the last param is all munted (and at least on the IRC server I was connected to it split my message over two lines.

If you're having issues with PASS, it sounds like your IRC server might be a bit broken. Potentially what should be done is something a bit smarter where the colon only appears if there's a space character in the last parameter?

Hmm, Interesting. I actually wondered if that was there due to the RFC. Are you able to recreate what I see w/o the patch? Connect to a PW protected IRC server the : is passed with the password?

I'm using node-irc with hubot on heroku - and it seems to be working fine - when issuing commands the responses (with spaces) get returned back on a single line.

Actually - Done more testing and you are exactly correct - Everything after the first space character gets dropped. What's quite odd is that if you bounce IRC thru znc (for example) it does show the full line (with spaces).

I'm not sure how we would change this to only include a : when there is a space. But would be curious to hear if you can recreate the main problem (connecting to pw protected IRC server).


It's actually been about 20 years now since I've played directly with IRC protocol, but if I remember correctly, the ":" is required for all multiple-word commands.


I've fixed this in 886461c

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Commits on May 11, 2012
  1. Remove colon from send

    Pete Cheslock committed
This page is out of date. Refresh to see the latest.
Showing with 1 addition and 1 deletion.
  1. +1 −1 lib/irc.js
2 lib/irc.js
@@ -600,7 +600,7 @@ Client.prototype.send = function(command) { // {{{
var args = [];
for ( var k in arguments )
- args[args.length-1] = ":" + args[args.length-1];
+ args[args.length-1] = args[args.length-1];
// Remove the command
Something went wrong with that request. Please try again.