Giuseppe Bilotta [Mon, 26 Jan 2009 00:34:58 +0000 (01:34 +0100)]
rss plugin: fix false 'using old data'
Store the actual fetch and parse success in the feed itself
TODO: doesn't work because e.g. on my machine the reschedule triggers
AFTER, and not before, the rest of the show code.
Giuseppe Bilotta [Mon, 26 Jan 2009 00:05:59 +0000 (01:05 +0100)]
rss plugin: fix watcher for empty feed
Giuseppe Bilotta [Sun, 25 Jan 2009 23:47:04 +0000 (00:47 +0100)]
rss plugin: parseRss returns the number of found items
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.
dmitry kim [Sat, 24 Jan 2009 00:36:37 +0000 (03:36 +0300)]
+ (rss.rb) monkey-patch some basic common api over different rss item impls
Giuseppe Bilotta [Fri, 23 Jan 2009 01:34:23 +0000 (02:34 +0100)]
launch_here: rewrite git revision retrieval
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).
Giuseppe Bilotta [Thu, 22 Jan 2009 22:29:50 +0000 (23:29 +0100)]
launch_here: add commit subject rather than svn id to revision
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.
Raine Virta [Thu, 22 Jan 2009 21:36:28 +0000 (23:36 +0200)]
hangman plugin
Giuseppe Bilotta [Thu, 22 Jan 2009 15:49:02 +0000 (16:49 +0100)]
Update AUTHORS
Giuseppe Bilotta [Thu, 22 Jan 2009 15:34:03 +0000 (16:34 +0100)]
Update po files
Giuseppe Bilotta [Thu, 22 Jan 2009 14:28:45 +0000 (15:28 +0100)]
rss plugin: mangle email in git format
Also fix a comment typo on the flyby
Giuseppe Bilotta [Thu, 22 Jan 2009 02:09:07 +0000 (03:09 +0100)]
dice, 8ball: always add the nick to the reply
Simon Hafner [Wed, 21 Jan 2009 20:58:02 +0000 (21:58 +0100)]
+ (userdata) method delete_botdata(key)
Simon Hafner [Wed, 21 Jan 2009 15:49:31 +0000 (16:49 +0100)]
+ (reply) config option to force reply to query
+ (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)
Simon Hafner [Wed, 21 Jan 2009 15:02:08 +0000 (16:02 +0100)]
* (plugins) changed to the new reply schema (:nick)
Simon Hafner [Wed, 21 Jan 2009 14:53:01 +0000 (15:53 +0100)]
+ (reply) add new option to control nick prefixing
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)
Giuseppe Bilotta [Tue, 20 Jan 2009 22:38:31 +0000 (23:38 +0100)]
bash plugin: bash latest is not broken
Giuseppe Bilotta [Tue, 20 Jan 2009 22:35:06 +0000 (23:35 +0100)]
bash plugin: document bash search
Giuseppe Bilotta [Tue, 20 Jan 2009 22:33:13 +0000 (23:33 +0100)]
bash plugin: refactor and localize help
Giuseppe Bilotta [Thu, 15 Jan 2009 19:30:06 +0000 (20:30 +0100)]
ircbot: fix reconnect() waiting
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.
Giuseppe Bilotta [Thu, 15 Jan 2009 03:46:50 +0000 (04:46 +0100)]
ircbot: SIGUSR1 forces a reconnect
Giuseppe Bilotta [Thu, 15 Jan 2009 03:32:56 +0000 (04:32 +0100)]
ircbot: refactor reconnection into its own method
Giuseppe Bilotta [Thu, 15 Jan 2009 03:31:46 +0000 (04:31 +0100)]
auth: better clarify the allow/deny syntax
Giuseppe Bilotta [Thu, 8 Jan 2009 20:49:10 +0000 (21:49 +0100)]
auth core botmodule: fix permission view without a specified user
Giuseppe Bilotta [Thu, 8 Jan 2009 16:04:02 +0000 (17:04 +0100)]
fortune: configurable options for the command
Giuseppe Bilotta [Thu, 8 Jan 2009 15:36:26 +0000 (16:36 +0100)]
fortune plugin: fix autodetection
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.
Giuseppe Bilotta [Thu, 8 Jan 2009 14:15:19 +0000 (15:15 +0100)]
quakeauth: identify expects Hash for second parameter
Giuseppe Bilotta [Thu, 8 Jan 2009 13:46:30 +0000 (14:46 +0100)]
rot13: convert result to string
When core.reply_with_nick is active, m.reply expects the argument to be a
String. Do the conversion explicitly.
Giuseppe Bilotta [Wed, 7 Jan 2009 22:39:33 +0000 (23:39 +0100)]
rfc2812: better handling of incomplete mode lines
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.
Giuseppe Bilotta [Wed, 7 Jan 2009 21:48:46 +0000 (22:48 +0100)]
autorejoin: no-kick list
Botusers in the rejoin.no_kick_list config value can kick the bot without
risking being kicked when it rejoins
Giuseppe Bilotta [Wed, 7 Jan 2009 21:26:08 +0000 (22:26 +0100)]
autorejoin: option to kick the kicker
Giuseppe Bilotta [Wed, 7 Jan 2009 21:00:59 +0000 (22:00 +0100)]
autorejoin: standard header
Giuseppe Bilotta [Wed, 7 Jan 2009 20:25:04 +0000 (21:25 +0100)]
autorejoin: work on password-protected channels too
Giuseppe Bilotta [Wed, 7 Jan 2009 01:03:15 +0000 (02:03 +0100)]
ircbot: handle 'Trying to reconnect too fast' server ERROR
Giuseppe Bilotta [Wed, 7 Jan 2009 01:02:56 +0000 (02:02 +0100)]
rfc2812: handle server ERROR
Giuseppe Bilotta [Wed, 7 Jan 2009 00:38:52 +0000 (01:38 +0100)]
twitter: appropriate messages when failing to get friends' status
Giuseppe Bilotta [Wed, 7 Jan 2009 00:17:23 +0000 (01:17 +0100)]
twitter: auth when checking friends timeline
Fixes issue #20.
Giuseppe Bilotta [Sun, 4 Jan 2009 21:02:07 +0000 (22:02 +0100)]
del.icio.us plugin: bailout early if not configured
Giuseppe Bilotta [Sun, 4 Jan 2009 01:28:54 +0000 (02:28 +0100)]
dict plugin: update De Mauro URL
The old dictionary has moved to old.demauroparavia.it; update URLs
accordingly.
Raine Virta [Wed, 31 Dec 2008 12:39:40 +0000 (14:39 +0200)]
url plugin: added a config option for displaying link info only on specific channels
Giuseppe Bilotta [Sun, 28 Dec 2008 12:36:13 +0000 (13:36 +0100)]
rss plugin: typo in help
dmitry kim [Mon, 29 Dec 2008 01:38:00 +0000 (04:38 +0300)]
* (timer) ignore blocked actions .next() :/
dmitry kim [Mon, 29 Dec 2008 00:57:42 +0000 (03:57 +0300)]
* (timer.rb) race condition on @actions.each() fixed (thanks, Mike`)
Giuseppe Bilotta [Sun, 28 Dec 2008 12:07:39 +0000 (13:07 +0100)]
plugins: raise a descriptive LoadError when the db is corrupt on load
Giuseppe Bilotta [Tue, 16 Dec 2008 00:55:44 +0000 (01:55 +0100)]
utils.rb: Utils.age_string to replace distance_of_time_in_words
We define a new age_string function which is a cleaner version of
distance_of_time_in_words. The latter gets removed as its only
in-tree usage was from timeago (which is the UI version that should
be used by plugins anyway).
Utils.timeago gets a revamp too, exploiting the new age_string function.
Giuseppe Bilotta [Tue, 16 Dec 2008 00:25:03 +0000 (01:25 +0100)]
utils.rb: fix Utils.timeago for explicit date output
Giuseppe Bilotta [Tue, 16 Dec 2008 00:18:17 +0000 (01:18 +0100)]
utils.rb: fix Utils.distance_of_time_in_words for negative offsets
Giuseppe Bilotta [Fri, 12 Dec 2008 19:59:34 +0000 (20:59 +0100)]
ircsocket: tunable IRC penalty
Giuseppe Bilotta [Fri, 12 Dec 2008 20:32:34 +0000 (21:32 +0100)]
ircsocket: clean up opt parsing
Irc::Socket initialization now always has opt as last parameter, so
don't bother checking if it's a Hash.
dmitry kim [Wed, 10 Dec 2008 18:42:27 +0000 (21:42 +0300)]
* (httputil) provide an informative error message for non-http urls
dmitry kim [Thu, 20 Nov 2008 22:24:54 +0000 (01:24 +0300)]
* (core/unicode) validate encoding.charsets with Iconv
dmitry kim [Thu, 20 Nov 2008 22:27:38 +0000 (01:27 +0300)]
* fix config validation diagnostics for ArrayValue
Giuseppe Bilotta [Thu, 20 Nov 2008 14:17:27 +0000 (15:17 +0100)]
rss plugin: prevent double UTF-8 deconding
The rss parser looks at the encoding specified into the XML file and
converts everything to UTF-8. Since we do the UTF-8 conversion
ourselves, monkey-patch the XML 'encoding' declaration to claim it's
UTF-8 already (as it actually is).
Giuseppe Bilotta [Mon, 17 Nov 2008 15:37:57 +0000 (16:37 +0100)]
azgame plugin: support autoadding words to wordlist
When the game is started with a wordlist it's possible to specify a
language to use for existence of words. When a word is not found in the
wordlist, it's checked against the given language check function, and if
present it's added to a specific file (autoadd-#{language}), which is
also used on load to choose the word to pick.
Giuseppe Bilotta [Mon, 17 Nov 2008 14:46:39 +0000 (15:46 +0100)]
azgame plugin: sort wordlist on load
Giuseppe Bilotta [Mon, 17 Nov 2008 00:34:36 +0000 (01:34 +0100)]
azgame plugin: strip BOM during wordlist loading
Giuseppe Bilotta [Mon, 17 Nov 2008 00:07:22 +0000 (01:07 +0100)]
azgame plugin: borked wordlist loading with previous patch
Giuseppe Bilotta [Sun, 16 Nov 2008 23:30:36 +0000 (00:30 +0100)]
azgame plugin: show available languages and wordlists in help
Giuseppe Bilotta [Sun, 16 Nov 2008 23:06:08 +0000 (00:06 +0100)]
azgame plugin: generic wordlist mechanism
Make the wordlist mechanism general. Any language which has no special
support can be used, as long as a wordlist is provided.
Giuseppe Bilotta [Tue, 11 Nov 2008 19:29:29 +0000 (20:29 +0100)]
geoip plugin: add localization files to the repo
Giuseppe Bilotta [Tue, 11 Nov 2008 19:27:30 +0000 (20:27 +0100)]
Update PO files
Giuseppe Bilotta [Tue, 11 Nov 2008 19:21:29 +0000 (20:21 +0100)]
UNO plugin: handle empty top lists
Giuseppe Bilotta [Tue, 11 Nov 2008 19:13:41 +0000 (20:13 +0100)]
UNO plugin: add top and topwin commands to help
Giuseppe Bilotta [Mon, 3 Nov 2008 22:05:01 +0000 (23:05 +0100)]
script plugin: improve help
Giuseppe Bilotta [Mon, 3 Nov 2008 22:01:45 +0000 (23:01 +0100)]
script plugin: script allow/deny high level UI
Giuseppe Bilotta [Mon, 3 Nov 2008 21:38:35 +0000 (22:38 +0100)]
auth botmodule: auth_allow_deny() accepts an optional :auth_path parameter
Giuseppe Bilotta [Mon, 3 Nov 2008 21:33:19 +0000 (22:33 +0100)]
script plugin: per-script permissions
Giuseppe Bilotta [Mon, 3 Nov 2008 20:37:34 +0000 (21:37 +0100)]
script plugin: hook on message() rather than listen()
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
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.)