summaryrefslogtreecommitdiff
path: root/lib/rbot/irc.rb
AgeCommit message (Collapse)Author
2015-06-13logging, irc fix loglevel i messed upMatthias Hecker
2015-06-13logging improved in ircMatthias Hecker
2015-03-09ruby 2.2: fix a obscure regexp escaping bugMatthias H
2010-09-30IRC framework: Server#to_s must always return a StringGiuseppe Bilotta
Having Server#to_s alias the hostname would cause problems when the hostname was nil (e.g. after a disconnect). Fix by making sure that to_s always returns a string instead.
2010-06-15New IRC Framework: don't raise on unknown casemapGiuseppe Bilotta
This allows us to support servers that (ab)use the CASEMAPPING to indicate the set of allowed characters for nicks (e.g. Inspire IRCd).
2010-03-29IRC: support 'CASEMAPPING=charset' from some idiotic serversGiuseppe Bilotta
2009-11-01IRC Framework: Channel.npname()Giuseppe Bilotta
Returns the unprefixed part of a channel name
2009-11-01Ruby 1.9 compat: use String#[0,1] for channel prefixesGiuseppe Bilotta
This ensures that checks are correct in both Ruby 1.8 and 1.9
2009-08-26ruby 1.9: disable the Singleton monkeypatch for 1.9franz
this monkeypatch doesn't work on 1.9 - Singleton has no _load method
2009-03-06irc: monkeypatch Singleton to make _load and _dump public.Spencer Rinehart
This is to fix a possible bug in newer versions of ruby where _load was declared private in singletons. This would lead to errors where Marshal could not restore the Singleton. This "bug" was introduced to ruby in revisions 16659 and 17396.
2009-02-19remove whitespaceRaine Virta
2009-01-29IRC Framework: fix wrong rfc casemapsGiuseppe Bilotta
The RFC1459 casemaps had the non-letter casemapping the wrong way around. Fix by swapping them.
2008-09-24irc.rb: User#channels methodGiuseppe Bilotta
2008-08-10+ handle WHOIS queriesGiuseppe Bilotta
The bot now exposes a whois(nick) method to make WHOIS queries to the server. The extended syntax whois(nick, server) is also supported, allowing another server to be queried (this is useful to retrieve info which is only available on nick's server, such as idle time and signon date). Most if not all RFC-compliant replies are handled, although some of the data received is currently ignored. Non-RFC extended replies such as nickserv identification status are not hanlded yet, since they are highly server-specific, both in numeric reply choice (e.g. 307 vs 320) and in reply message syntax and meaning. A new WhoisMessage is also introduced, for plugin delegation. The source is the originating server, the target is the user for which information was requested. A #whois() method is provided holding all retrieved information.
2008-08-09+ support channel URL and creation timeGiuseppe Bilotta
2008-08-03* fix ominous bug in Regexp::IP_ADDRGiuseppe Bilotta
2008-07-16Revert "* use to_irc_netmask(:force => true) to unlink Netmasks from their ↵Giuseppe Bilotta
Server to prevent errors when dumping users" This reverts commit 9a1cf6a11b12c06cd925dd6a789ec98fe750c8ad, since it was a hack to work around the undumpable Channel (and consequently Server and Netmask) caused by 847a977b228b35f5ab281a31dd3724a4db887dff "#any? and #all? methods for Channel#mode to check if modes are set" and fixed by 8f8205310518e7b0626d657ba9667f7bfc745371 "Dumpable definition of #any? and #all? methods for Channel#mode"
2008-07-16Dumpable definition of #any? and #all? methods for Channel#modeGiuseppe Bilotta
Commit 847a977b228b35f5ab281a31dd3724a4db887dff "#any? and #all? methods for Channel#mode to check if modes are set" turned Channel into a non-marshallable object because of singleton methods. Revert the commit and define an ad-hoc ModeHash class with the any? and all? methods, to make Channel#mode of that class.
2008-07-14* use to_irc_netmask(:force => true) to unlink Netmasks from their Server to ↵Giuseppe Bilotta
prevent errors when dumping users
2008-06-23#any? and #all? methods for Channel#mode to check if modes are setGiuseppe Bilotta
2008-04-22Licensing uniformity: dual-license rbot core under MIT+acknowledgement and GPLv2Giuseppe Bilotta
2008-03-04Unixify all line endings.Giuseppe Bilotta
Some files had DOS-style line endings. Change all of them to Unix-style.
2008-02-13* fix a bug in the definition of Object#nil_or_empty?Giuseppe Bilotta
2007-12-14maskdb: be case insenstiveGiuseppe Bilotta
2007-12-07New Irc Framework: netmask generalization now takes into consideration ↵Giuseppe Bilotta
AzzurraNet host shadowing
2007-11-21New IRC Framework: warn, don't raise, on case mismatchGiuseppe Bilotta
2007-11-06Improved inspect methods all aroundGiuseppe Bilotta
2007-11-06New Irc Framework: methods to convert channel user modes (op, voice, etc) ↵Giuseppe Bilotta
from mode (o, v, ...) to prefix (@, +, ...) and back
2007-11-06New Irc Framework: fix channel creation when topic=nilGiuseppe Bilotta
2007-09-22+ (irc) generalize() method for Netmask classDmitry Kim
2007-09-13more rdoc-ificationGiuseppe Bilotta
2007-09-04New Irc Framework: Netmask-to-Netmask conversion should offer a default ↵Giuseppe Bilotta
server and casemap
2007-09-04New Irc Framework: ident methods synonyms for user for Irc::NetmaskGiuseppe Bilotta
2007-09-02New Irc Framework: make Netmask.new(somenetmask) workGiuseppe Bilotta
2007-08-22New Irc Framework: optimize Channel#has_user?()Giuseppe Bilotta
2007-08-22New Irc Framework: channel add_user was adding users indiscriminately when ↵Giuseppe Bilotta
silent
2007-07-31Store the real_name information from WHO repliesGiuseppe Bilotta
2007-07-31New IRC Framework: store a User's real_nameGiuseppe Bilotta
2007-07-29User mode-checking methods now accept channel names and will try to resolve ↵Giuseppe Bilotta
the corresponding Channel automatically
2007-07-26Mode-checking methohds for User tooGiuseppe Bilotta
2007-07-26Channel methods to check for user modes, with quickies to check for op and voiceGiuseppe Bilotta
2007-04-11New IRC Framework: move #full_irc_downcase() and #full_downcase() methods to ↵Giuseppe Bilotta
Irc::Netmask from Irc::User, and use them in Netmask conversion
2007-04-11New IRC Framework: fix critical bug in Irc::Netmask to Regexp conversionGiuseppe Bilotta
2007-04-06New IRC Framework: topic setter should be a Netmask, not a User. Also ↵Giuseppe Bilotta
improve display of Netmasks with unknown (generic) user/host components
2007-04-04New IRC Framework: use #reverse_each() instead of #each() when clearing the ↵Giuseppe Bilotta
list of users and channels on a server, otherwise only half of the items get deleted
2007-03-14Improved handling of server limitsGiuseppe Bilotta
2007-03-08Previous attempt at cleaning up the prefix matcher were too restrictive, try ↵Giuseppe Bilotta
using a different approach
2007-03-05Previous commit wasn't that good, too restrictive. Relax, and differentiate ↵Giuseppe Bilotta
between user id and mask
2007-03-05Rework netmask/hostname detection code to work around non-RFC-compliant serversGiuseppe Bilotta
2007-02-18More fixes for nickname handling on connectionGiuseppe Bilotta