Robin H. Johnson [Sat, 1 Nov 2008 00:56:36 +0000 (00:56 +0000)]
Shrink the penalty calc for Gentoo.
Robin H. Johnson [Sat, 1 Nov 2008 00:55:47 +0000 (00:55 +0000)]
Abstract out penalty min/max.
Robin H. Johnson [Sat, 1 Nov 2008 00:48:26 +0000 (00:48 +0000)]
Merge branch 'master' into feature
Giuseppe Bilotta [Mon, 27 Oct 2008 21:59:07 +0000 (22:59 +0100)]
UNO plugin: give cards to correct player at endgame
If the winner played a Reverse in response to a picker, the previous
player should pick the cards, and not the next one. This is not really
important at the moment because we score by giving points to the winner
instead of taking them from losers, but we fix it for correctness. It'll
be especially useful when we'll implement the other scoring too.
Casey Link [Mon, 27 Oct 2008 19:54:16 +0000 (15:54 -0400)]
* (lastfm) fix a bug resulting in the change of the lastfm api output. now_playing works again
Lastfm removed the <date> element from track's which are currently being played, which caused the plugin to die. Now we detect if the <date> element exists.
Casey Link [Mon, 27 Oct 2008 19:53:26 +0000 (15:53 -0400)]
* (lastfm) change the interface for associating an irc nick with a lastfm user. this way it is more intuitive.
Casey Link [Sat, 25 Oct 2008 17:46:35 +0000 (13:46 -0400)]
* (grouphug) fix for grouphug layout changes
Giuseppe Bilotta [Mon, 27 Oct 2008 13:34:50 +0000 (14:34 +0100)]
url plugin: only handle URls that have something past the protocol
Giuseppe Bilotta [Fri, 17 Oct 2008 16:01:23 +0000 (18:01 +0200)]
Start working on 0.9.15
Giuseppe Bilotta [Fri, 17 Oct 2008 07:42:46 +0000 (09:42 +0200)]
irclog: timestamp_format config option
Giuseppe Bilotta [Thu, 16 Oct 2008 19:35:52 +0000 (21:35 +0200)]
tag-release: abort on error
Giuseppe Bilotta [Thu, 16 Oct 2008 19:17:39 +0000 (21:17 +0200)]
Version 0.9.14
Giuseppe Bilotta [Thu, 16 Oct 2008 19:16:23 +0000 (21:16 +0200)]
Version rbot-0.9.14
Giuseppe Bilotta [Thu, 16 Oct 2008 10:55:24 +0000 (12:55 +0200)]
rss plugin: 'headlines' uses date if handle not present
When the feed handle is empty or not used (e.g. during rss show), the
headlines output filter will display the date before the title.
Giuseppe Bilotta [Thu, 16 Oct 2008 10:31:56 +0000 (12:31 +0200)]
rss plugin: strip feed title of initial/final whitespace
Giuseppe Bilotta [Thu, 16 Oct 2008 10:20:36 +0000 (12:20 +0200)]
rss plugin: 'headlines' output format
A simple output format that only provides feed titles, skipping all
other data, including the feed link. Requested by step on #rbot.
Giuseppe Bilotta [Thu, 16 Oct 2008 10:07:41 +0000 (12:07 +0200)]
rss plugin: use %{at} instead of @ in output filters
Giuseppe Bilotta [Tue, 14 Oct 2008 10:52:47 +0000 (12:52 +0200)]
UNO plugin: fix playable cards during picks
A bug in the logic allowed a +2 to be playable on a Reverse of the wrong
color (e.g. g+2, gr, r+2).
Giuseppe Bilotta [Mon, 13 Oct 2008 16:18:43 +0000 (18:18 +0200)]
httputil: don't raise on HTTPServer/ClientError
Robin H. Johnson [Fri, 10 Oct 2008 21:33:23 +0000 (21:33 +0000)]
Merge branch 'feature' of git+ssh://robbat2@speedracer-250.orbis-terrarum.net/var/gitroot/dev/rbot into feature
Robin H. Johnson [Fri, 10 Oct 2008 21:33:18 +0000 (21:33 +0000)]
Merge branch 'master' of git+ssh://robbat2@speedracer-250.orbis-terrarum.net/var/gitroot/dev/rbot into feature
Robin H. Johnson [Fri, 10 Oct 2008 21:30:52 +0000 (21:30 +0000)]
Merge branch 'feature' of git+ssh://robbat2@speedracer-250.orbis-terrarum.net/var/gitroot/dev/rbot into feature
Robin H. Johnson [Fri, 10 Oct 2008 21:30:29 +0000 (21:30 +0000)]
Merge branch 'master' into feature
Giuseppe Bilotta [Mon, 6 Oct 2008 20:05:17 +0000 (22:05 +0200)]
figlet: strip first and last empty line(s)
Giuseppe Bilotta [Fri, 3 Oct 2008 21:15:56 +0000 (23:15 +0200)]
PO update
Giuseppe Bilotta [Wed, 24 Sep 2008 16:25:17 +0000 (18:25 +0200)]
IRC logging: only log nick/quits on the channels the bot is in
Giuseppe Bilotta [Wed, 24 Sep 2008 16:17:03 +0000 (18:17 +0200)]
ircbot.rb: fill was_on info when delegating sent QUIT
Giuseppe Bilotta [Wed, 24 Sep 2008 16:11:00 +0000 (18:11 +0200)]
irc.rb: User#channels method
Giuseppe Bilotta [Wed, 24 Sep 2008 15:42:13 +0000 (17:42 +0200)]
seen plugin: don't update seen info on topic info
dmitry kim [Fri, 5 Sep 2008 18:42:00 +0000 (22:42 +0400)]
+ plugins/games/quiz: '!quiz stop' command implemented
Giuseppe Bilotta [Fri, 5 Sep 2008 18:07:38 +0000 (20:07 +0200)]
quiet exception list
Keep a track of exceptions to a global 'quiet' command so that user can
use !quiet and !talk in here to make the bot only talk in one channel
without quiet-ing it by hand in each one of the other channels.
Giuseppe Bilotta [Fri, 5 Sep 2008 17:35:49 +0000 (19:35 +0200)]
message.rb: fix the fix to message addressing logic
This reverts commit
b6bd9a24014ac9fbc822e9051f216f0506f24cd5
"message.rb: fix message addressing logic" since it actually breaks the
validity for address? in a number of cases.
Instead, add proper @address setting to NickMessage which is the only
one getting it wrong presently.
Giuseppe Bilotta [Thu, 4 Sep 2008 12:43:53 +0000 (14:43 +0200)]
launch_here: fix svn version codepath
'up' was a leftover variabled since the code was in bin/rbot. Use
SCM_DIR instead.
Giuseppe Bilotta [Tue, 2 Sep 2008 12:55:36 +0000 (14:55 +0200)]
Version 0.9.13
Giuseppe Bilotta [Fri, 22 Aug 2008 15:57:13 +0000 (17:57 +0200)]
iplookup plugin: fix brokage from IPv6 support
Commit
ff949fe1c9dd0c179ecdce9340c04c05242d3a48 "iplookup plugin:
support IPv6 too" broke the main iplookup method by forgetting to
initialize reply correctly.
Fix it, and replace String#+= usage with String#<< which is more
efficient speed- and memory-wise.
Giuseppe Bilotta [Thu, 21 Aug 2008 18:34:22 +0000 (20:34 +0200)]
geoip plugin: only retrieve host info once on WHOIS
Giuseppe Bilotta [Thu, 21 Aug 2008 18:32:27 +0000 (20:32 +0200)]
geoip plugin: thread command
Giuseppe Bilotta [Tue, 19 Aug 2008 18:31:44 +0000 (20:31 +0200)]
IRC Socket: documentation cleanup
Giuseppe Bilotta [Tue, 19 Aug 2008 18:30:14 +0000 (20:30 +0200)]
IRC socket: minor flood_send logic fixes
Giuseppe Bilotta [Tue, 19 Aug 2008 18:19:45 +0000 (20:19 +0200)]
IRC socket: get rid of delay/burst
The penalty system should be enough to prevent the bot from being
disconnected because of excess flood, making the old sendq delay/burst
code unnecessary. So get rid of the latter altogether.
(If the penalty system as implemented ever happens to be insufficient as
implemented, it should just get fixed rather than rely on the sendq
delay/burst assistance.)
Robin H. Johnson [Sun, 10 Aug 2008 17:38:16 +0000 (17:38 +0000)]
Include the channel in !seen messages.
Robin H. Johnson [Sun, 10 Aug 2008 17:32:50 +0000 (17:32 +0000)]
Only show channels we are actually in.
Robin H. Johnson [Wed, 6 Aug 2008 23:32:07 +0000 (23:32 +0000)]
basics: when doing a mass join, only join channels that we are NOT already present in.
Robin H. Johnson [Wed, 6 Aug 2008 23:16:36 +0000 (23:16 +0000)]
basics: implement a channel list status query.
Robin H. Johnson [Wed, 6 Aug 2008 22:37:01 +0000 (22:37 +0000)]
basics: Add support to allow rejoin of all channels in the configuration.
Raine Virta [Wed, 13 Aug 2008 13:31:49 +0000 (16:31 +0300)]
geoip plugin: fixed host regex
Raine Virta [Wed, 13 Aug 2008 13:00:55 +0000 (16:00 +0300)]
geoip plugin: had to change host name of the new lookup server
Giuseppe Bilotta [Wed, 13 Aug 2008 04:38:43 +0000 (06:38 +0200)]
nickrecover plugin: work more than once per session
Giuseppe Bilotta [Wed, 13 Aug 2008 04:06:33 +0000 (06:06 +0200)]
message.rb: fix message addressing logic
IRC messages which are not PRIVMSG or NOTICE (i.e. not UserMessage) are
'addressed' to the bot when they originate from it.
Rather than putting this logic in each one of them (and forgetting about
it for some, e.g. NICK messages), put it in BasicUserMessage. Compensate
by always setting @address in UserMessage to test against target
instead.
Raine Virta [Wed, 13 Aug 2008 01:31:31 +0000 (04:31 +0300)]
geoip plugin: new service for geoip-lookup along with some other enhancements
Raine Virta [Mon, 11 Aug 2008 17:19:51 +0000 (20:19 +0300)]
geoip plugin: now stacking whois requests to prevent overlaps
Raine Virta [Mon, 11 Aug 2008 16:11:27 +0000 (19:11 +0300)]
geoip plugin: added nick based network-wide lookup and fixed some charset issues
Giuseppe Bilotta [Mon, 11 Aug 2008 07:10:23 +0000 (09:10 +0200)]
rfc2812: always return the actual Channel or User when handled
For consistency, all delegations now return the actual Channel object in
data[:channel] and the actual User object in data[:nick].
Giuseppe Bilotta [Mon, 11 Aug 2008 07:00:18 +0000 (09:00 +0200)]
rfc2812: handle ERR_NOSUCHNICK and ERR_NOSUCHCHANNEL
Delete the corresponding user/channel from the server list (if present),
and notify the client about the error.
Giuseppe Bilotta [Mon, 11 Aug 2008 06:49:35 +0000 (08:49 +0200)]
rfc2812: create channels and users for al commands when needed
Always create a user or channel when we receive information about it.
This makes server message parsing much more robust (no more crashes
about NilClass not having user/channel methods) but has a few subtle
implications about the server state: for example, channels may exist in
the Server object even when the bot is not in the channel itself.
Raine Virta [Mon, 11 Aug 2008 01:08:49 +0000 (04:08 +0300)]
geoip plugin
Robin H. Johnson [Sun, 10 Aug 2008 17:38:16 +0000 (17:38 +0000)]
Include the channel in !seen messages.
Robin H. Johnson [Sun, 10 Aug 2008 17:32:50 +0000 (17:32 +0000)]
Only show channels we are actually in.
Robin H. Johnson [Wed, 6 Aug 2008 23:32:07 +0000 (23:32 +0000)]
basics: when doing a mass join, only join channels that we are NOT already present in.
Robin H. Johnson [Wed, 6 Aug 2008 23:16:36 +0000 (23:16 +0000)]
basics: implement a channel list status query.
Robin H. Johnson [Wed, 6 Aug 2008 22:37:01 +0000 (22:37 +0000)]
basics: Add support to allow rejoin of all channels in the configuration.
Giuseppe Bilotta [Sun, 10 Aug 2008 12:42:11 +0000 (14:42 +0200)]
irclog core module: rename old logs when switching from dir to file
It may happen that a user changes from an irclog.filename_format where
some components are files to a format where they are directories (e.g.
from '%%{where}' to '%%{where}/%Y') or conversely. In this case, we
rename the existing file/dir by appending '.old.atime' to it (atime is
the actual file/dir access time).
Giuseppe Bilotta [Sun, 10 Aug 2008 12:12:08 +0000 (14:12 +0200)]
irclog core module: skip, don't die when unable to open logfile
Giuseppe Bilotta [Sat, 9 Aug 2008 23:43:32 +0000 (01:43 +0200)]
+ handle WHOIS queries
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.
Giuseppe Bilotta [Sat, 9 Aug 2008 22:08:42 +0000 (00:08 +0200)]
rfc2812.rb: support RPL_AWAY reply
Giuseppe Bilotta [Sat, 9 Aug 2008 21:26:03 +0000 (23:26 +0200)]
+ support channel URL and creation time
Giuseppe Bilotta [Sat, 9 Aug 2008 21:07:37 +0000 (23:07 +0200)]
quakeauth plugin: don't identify on connect if we're not on quakenet
Giuseppe Bilotta [Sat, 9 Aug 2008 21:03:44 +0000 (23:03 +0200)]
quakeauth plugin: don't error out when identifying with m == nil
Giuseppe Bilotta [Sat, 9 Aug 2008 18:25:41 +0000 (20:25 +0200)]
message.rb: correct @plainmessage and @message for CTCP messages
After CTCP parsing, @plainmessage was not defined correctly (as it still
contained the CTCP command), and @plainmessage and @message were not
being cleaned up correctly.
This manifested itself e.g. with spurious \001ACTION and other strange
unusual byte sequence popping up in markov-generated text.
Fix by redefining @plainmessage and @message appropriately in CTCP
handling.
Giuseppe Bilotta [Sat, 9 Aug 2008 18:23:58 +0000 (20:23 +0200)]
Start working on 0.9.13
Giuseppe Bilotta [Fri, 8 Aug 2008 14:14:59 +0000 (16:14 +0200)]
Version 0.9.12
Giuseppe Bilotta [Fri, 8 Aug 2008 12:13:10 +0000 (14:13 +0200)]
lastfm plugin: support 'lastfm username' as the help suggests
Raine Virta [Fri, 8 Aug 2008 11:49:38 +0000 (14:49 +0300)]
quakeauth plugin v2
This patch introduces the ability for the bot to register itself
to the Q bot, together with a number of other enhancements.
Giuseppe Bilotta [Fri, 8 Aug 2008 08:18:24 +0000 (10:18 +0200)]
irclog core module: double-percent the {where} in irclog.filename_format
strftime in Ruby versions before 1.8.7 gobbles % which are not part of a
known format directives, so %{where} must be double-escaped into
%%{where}.
Giuseppe Bilotta [Fri, 8 Aug 2008 07:36:21 +0000 (09:36 +0200)]
markov plugin: always plain replies when chipping in
Giuseppe Bilotta [Fri, 8 Aug 2008 07:26:39 +0000 (09:26 +0200)]
plugins.rb: use IO.read instead of readlins+join gimmicks
Giuseppe Bilotta [Fri, 8 Aug 2008 07:18:10 +0000 (09:18 +0200)]
wow plugin: return String form of realm from get_realm_status
This is needed to prevent an error from being raised when
core.reply_with_nick is true
Giuseppe Bilotta [Wed, 6 Aug 2008 22:08:56 +0000 (00:08 +0200)]
wow plugin: fix realm extraction xpath
Giuseppe Bilotta [Wed, 6 Aug 2008 21:54:43 +0000 (23:54 +0200)]
wow plugin: message tweaks
Giuseppe Bilotta [Wed, 6 Aug 2008 21:53:47 +0000 (23:53 +0200)]
wow plugin: rbotify XML retrieval
Giuseppe Bilotta [Wed, 6 Aug 2008 21:23:34 +0000 (23:23 +0200)]
qauth plugin: stricter default permissions on commands
Giuseppe Bilotta [Wed, 6 Aug 2008 21:18:12 +0000 (23:18 +0200)]
qauth plugin: typos in help
Giuseppe Bilotta [Wed, 6 Aug 2008 20:02:13 +0000 (22:02 +0200)]
PO update
Giuseppe Bilotta [Wed, 6 Aug 2008 19:53:46 +0000 (21:53 +0200)]
nickserv plugin: regexp tweaks and case insensitivity
Giuseppe Bilotta [Wed, 6 Aug 2008 19:36:41 +0000 (21:36 +0200)]
basics: option to join channel after identification is confirmed
Sometimes it is necessary to wait for identification to be confirmed
before certain channels may be joined. In this case the option
irc.join_after_identify can be set to true, and the bot will wait for
nickserv to confirm the identification before joining any channels.
This solution is actually a rather ugly hack, but I can't think of a
better way to approach the problem without rewriting the whole
framework.
Giuseppe Bilotta [Wed, 6 Aug 2008 18:40:40 +0000 (20:40 +0200)]
markov plugin: don't echo a line a line that is just a substring of the input line
Giuseppe Bilotta [Wed, 6 Aug 2008 18:31:16 +0000 (20:31 +0200)]
markov plugin: configurable maximum number of words
Giuseppe Bilotta [Wed, 6 Aug 2008 07:00:04 +0000 (09:00 +0200)]
markov plugin: use symbol when deleting obsolete config key
Giuseppe Bilotta [Tue, 5 Aug 2008 20:39:28 +0000 (22:39 +0200)]
irclog core module: log rotation
Giuseppe Bilotta [Sun, 3 Aug 2008 08:06:26 +0000 (10:06 +0200)]
iplookup plugin: userip is not implemented yet, say it
Giuseppe Bilotta [Sun, 3 Aug 2008 08:03:36 +0000 (10:03 +0200)]
iplookup plugin: support IPv6 too
This is achieved by moving the check for IP vs hostname in the
iplookup() method itself, and using the existing regexps to check if a
string is an IP or not.
Giuseppe Bilotta [Sun, 3 Aug 2008 08:03:06 +0000 (10:03 +0200)]
* fix ominous bug in Regexp::IP_ADDR
Giuseppe Bilotta [Sun, 3 Aug 2008 07:24:51 +0000 (09:24 +0200)]
nickrecover plugin: improve logic to start/stop recovery
Giuseppe Bilotta [Sun, 3 Aug 2008 07:13:26 +0000 (09:13 +0200)]
iplookup plugin: don't block
Giuseppe Bilotta [Sat, 2 Aug 2008 23:08:17 +0000 (01:08 +0200)]
markov plugin: add ability to ignore channels and not just single users
Giuseppe Bilotta [Sat, 2 Aug 2008 12:17:03 +0000 (14:17 +0200)]
+ tell git that *.rb files are Ruby scripts
Recent git versions allow custom hunk headers when using diff, so tell
git to use the ruby funcname for diffs on *.rb files.
Giuseppe Bilotta [Thu, 31 Jul 2008 23:10:02 +0000 (01:10 +0200)]
quotes plugin: lastquote command
Giuseppe Bilotta [Wed, 30 Jul 2008 21:45:53 +0000 (23:45 +0200)]
PO update
Giuseppe Bilotta [Wed, 30 Jul 2008 20:44:50 +0000 (22:44 +0200)]
nickrecover plugin: help
Giuseppe Bilotta [Wed, 30 Jul 2008 20:39:17 +0000 (22:39 +0200)]
nickrecover plugin: single irc.nick_retry config instead of multiple nickrecover.* entries