summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-01-28ircbot: irc.ignore_channels config optionGiuseppe Bilotta
In some circumstances the user might want to turn the bot into a pure logbot for some channels. This can now be achieved by adding that channel to the irc.ignore_channels config key, that makes the bot ignore all PRIVMSG to that channel (note that notices and service messages such as joins and parts are still acted on, just like for irc.ignore_users).
2009-01-28imdb plugin: fixed the ratings regexMatthias Hecker
2009-01-28rss plugin: don't warn on rewatchGiuseppe Bilotta
There is no need to warn when calling watchRss on a watched feed; in fact, since watchRss() is called every time a watcher is added, it just spam the channels with a useless message that also provides unnecessary information. So just return.
2009-01-28rss plugin: compact list of rss feedsGiuseppe Bilotta
When lots of rss feeds are defined, the bot will flood the channel on rss list. Fix by showing a compact list when the number of feeds is higher than the maximum output lines.
2009-01-28ircbot: the reconnect must be protectedGiuseppe Bilotta
The reconnect() call in the main loop must be protected in the begin/rescue blocks. Most of the rescue blocks can be fall-through, because the begin/end is wrapped in a loop. The only exception is the ServerError block that issues a retry lest too_fast is reset to false even when it should be true.
2009-01-28dict plugin: ircify html in demauro search resultGiuseppe Bilotta
Demauro's search results can contain some HTML, so clean it up before output.
2009-01-28quotes plugin: remove a done TODO itemGiuseppe Bilotta
2009-01-28* (rss.rb) bypass the http cache on !rss rewatchdmitry kim
2009-01-28* (httputils) get_response must refresh the cached object even if :cache => ↵dmitry kim
false
2009-01-27azgame plugin: use Wordlist providerGiuseppe Bilotta
2009-01-27wordlist: strip UTF-8 BOM on loadGiuseppe Bilotta
Some editors put a BOM at the beginning of UTF-8 files, and it's not stripped by Ruby's String#strip, so we have to get rid of it ourselves.
2009-01-27wordlist: exist? methodGiuseppe Bilotta
The new Wordlist.exist? method can be used to check if a wordlist file exists. It will refuse to check upstream of the wordlist base directory
2009-01-27wordlist: Wordlist.list command and UIGiuseppe Bilotta
Introduce an elementary Wordlist.list() command that accepts an optional :pattern option to restrict the list to wordlists matching the given pattern. Also introduce a wordlist UI to list wordlists from IRC.
2009-01-27hangman plugin: tell who nailed the word/killed the guyGiuseppe Bilotta
2009-01-27hangman plugin: various improvements including support for wordlistsRaine Virta
2009-01-27wordlist providerRaine Virta
2009-01-27url plugin: urls info should work regardless of configGiuseppe Bilotta
The 'urls info' command to manually query for link information should always work, regardless of the setting of the url.only_on_channels config setting. Fix by making the channels list for handle_urls() into an option (defaulting to url.only_on_channels) and passing an empty list from info().
2009-01-27url plugin: option hash for handle_urls()Giuseppe Bilotta
Turn handle_urls() options (other than the message) into a parameter hash.
2009-01-26rss plugin: fix watcher for empty feedGiuseppe Bilotta
2009-01-26rss plugin: parseRss returns the number of found itemsGiuseppe Bilotta
Change the parseRss routine to return the number of found items, or nil in case of error. This helps clearly differentiate between empty feeds (which are still legit) and b0rked feeds. This change in logic does not alter the fact that a feed update with no items will not wipe existing old feed items.
2009-01-24+ (rss.rb) monkey-patch some basic common api over different rss item implsdmitry kim
2009-01-23launch_here: rewrite git revision retrievalGiuseppe Bilotta
Use low-level ('plumbing') git commands to retrieve the current commit/revision/work tree status when we're being launched from a git tree. This is faster (less shell escapes) and should work equally well with all git versions (past, present and future).
2009-01-23launch_here: add commit subject rather than svn id to revisionGiuseppe Bilotta
There are no git-svn-ids in our repository, so don't look for them. Instead, put the last commit subject next to the revision to ease identification of the commit.
2009-01-22hangman pluginRaine Virta
2009-01-22Update AUTHORSGiuseppe Bilotta
2009-01-22Update po filesGiuseppe Bilotta
2009-01-22rss plugin: mangle email in git formatGiuseppe Bilotta
Also fix a comment typo on the flyby
2009-01-22dice, 8ball: always add the nick to the replyGiuseppe Bilotta
2009-01-22+ (userdata) method delete_botdata(key)Simon Hafner
2009-01-22+ (reply) config option to force reply to querySimon Hafner
+ (reply) symbol to bypass the config option * (plugins) fixed url according to the patch The symbols are: :to => :public force the message to be replied in channel (if any) :to => :private force the message to be replied in private :to => :auto takes core.private_replies (default)
2009-01-22* (plugins) changed to the new reply schema (:nick)Simon Hafner
2009-01-22+ (reply) add new option to control nick prefixingSimon Hafner
Message#reply() now accepts a :reply option :nick => false don't prefix nick :nick => true prefix nick :nick => :auto take core.reply_with_nick (default)
2009-01-20bash plugin: bash latest is not brokenGiuseppe Bilotta
2009-01-20bash plugin: document bash searchGiuseppe Bilotta
2009-01-20bash plugin: refactor and localize helpGiuseppe Bilotta
2009-01-15ircbot: fix reconnect() waitingGiuseppe Bilotta
The refactored reconnect() method would only wait when the socket was connected at the time it got called. In case where the socket would have closed earlier (e.g. because of a network I/O error) it would reconnect directly, which would for example fail to prevent fast reconnections. Fix by fencing the wait code with a check for @last_rec (checked before the optional disconnect) rather than keeping it with the socket connect check, and always initializing @last_rec on socket connect. A side effect of this strategy is that reconnect() will only wait if the bot was previously connect, or if it got disconnected by anything but the disconnect() method. Callers of disconnect() should take care of waiting themselves if they plan to reconnect.
2009-01-15ircbot: SIGUSR1 forces a reconnectGiuseppe Bilotta
2009-01-15ircbot: refactor reconnection into its own methodGiuseppe Bilotta
2009-01-15auth: better clarify the allow/deny syntaxGiuseppe Bilotta
2009-01-08auth core botmodule: fix permission view without a specified userGiuseppe Bilotta
2009-01-08fortune: configurable options for the commandGiuseppe Bilotta
2009-01-08fortune plugin: fix autodetectionGiuseppe Bilotta
An empty String is not false in Ruby, so check for it properly. Also, find_fortune needs a message passed to it, to be used when it discovers the correct path.
2009-01-08quakeauth: identify expects Hash for second parameterGiuseppe Bilotta
2009-01-08rot13: convert result to stringGiuseppe Bilotta
When core.reply_with_nick is active, m.reply expects the argument to be a String. Do the conversion explicitly.
2009-01-08rfc2812: better handling of incomplete mode linesGiuseppe Bilotta
Sometimes the bot may receive incomplete or malformed mode lines. This can be seen for example by kicking repeatedly and at very short intervals the bot from a channel with +l set to some numbers (at least on freenode). We (don't) handle these malformed modelines by skipping them rather than crashing.
2009-01-07autorejoin: no-kick listGiuseppe Bilotta
Botusers in the rejoin.no_kick_list config value can kick the bot without risking being kicked when it rejoins
2009-01-07autorejoin: option to kick the kickerGiuseppe Bilotta
2009-01-07autorejoin: standard headerGiuseppe Bilotta
2009-01-07autorejoin: work on password-protected channels tooGiuseppe Bilotta
2009-01-07ircbot: handle 'Trying to reconnect too fast' server ERRORGiuseppe Bilotta