Giuseppe Bilotta [Sun, 1 Apr 2007 16:46:05 +0000 (16:46 +0000)]
Stringlib/rbot/core/utils/extends.rbutfy_xml() method that tries to transcode a webpage to UTF-8; HTTP headers are attached to bodies returned by HttpUtil methods to ease charset detection
Giuseppe Bilotta [Sun, 1 Apr 2007 15:04:53 +0000 (15:04 +0000)]
httputil: reinstate partial_body
Giuseppe Bilotta [Sun, 1 Apr 2007 13:19:24 +0000 (13:19 +0000)]
search plugin: let the user know when no body was found and no error was raised
Dmitry Kim [Sat, 31 Mar 2007 13:22:45 +0000 (13:22 +0000)]
+ reflect the httputil changes in ChangeLog
Giuseppe Bilotta [Sat, 31 Mar 2007 01:30:57 +0000 (01:30 +0000)]
rss plugin: code cleanup. add support for slashdot feeds, with RDF extension and custom feed type
Dmitry Kim [Fri, 30 Mar 2007 23:44:02 +0000 (23:44 +0000)]
*** (httputil) major rework, new caching implementation, unified request
processing
+ (httputil) post support, partial request support, other features
- (httputil) removed partial_body() and get_cached() [merged into get()]
* (plugins/, utils) minimal changes to accomodate for the new http_utils
* (utils, ircbot) moved utils initialization into utils.rb
* (tube.rb) (partially) accomodate for upstream site layout changes
Dmitry Kim [Fri, 30 Mar 2007 18:38:34 +0000 (18:38 +0000)]
* an ugly quickfix for sending non-unicode strings :/
(some http-aware plugins kill the bot without it)
Giuseppe Bilotta [Fri, 30 Mar 2007 13:39:45 +0000 (13:39 +0000)]
Utils: the array returned by get_first_pars now contains nil for pages where no first par was found. Also rearrange some code to keep relevant code together
Dmitry Kim [Fri, 30 Mar 2007 08:08:19 +0000 (08:08 +0000)]
* (utils.rb) reflect the api/semantics changes in comments
Dmitry Kim [Fri, 30 Mar 2007 07:52:44 +0000 (07:52 +0000)]
- (utils.rb) removed http_get, since it's obsoleted
+ (utils.rb) added @@bot class variable
* (utils.rb) get_first_pars should return a value
* (plugins) no need to pass http_util to the Utils.get_first_pars
Dmitry Kim [Thu, 29 Mar 2007 22:32:44 +0000 (22:32 +0000)]
* (rss.rb) we didn't really mean to create a Mutex inner class, right?
Dmitry Kim [Thu, 29 Mar 2007 22:19:06 +0000 (22:19 +0000)]
+ support for non-iso-8859-1 languages (ru, zt, ja, ko, el)
Giuseppe Bilotta [Mon, 26 Mar 2007 23:04:50 +0000 (23:04 +0000)]
HttpUtils: inline rescue doesn't rescue LoadError, rewrite code to require rubygems before retrying htmlentities
Giuseppe Bilotta [Mon, 26 Mar 2007 12:44:14 +0000 (12:44 +0000)]
Utils: more first par enhancements
Giuseppe Bilotta [Mon, 26 Mar 2007 09:50:14 +0000 (09:50 +0000)]
url plugins: when echoing first par, be more clear on what's being done and don't spam with overlong messages
Giuseppe Bilotta [Sun, 25 Mar 2007 22:03:37 +0000 (22:03 +0000)]
Utils: fix a stupid bug in rubygems require and add more first_html_par code
Giuseppe Bilotta [Sun, 25 Mar 2007 21:23:11 +0000 (21:23 +0000)]
Utils: retry after requiring rubygems if htmlentities failed to load; when grabbing first pars, try filtering out too short paragraphs
Giuseppe Bilotta [Sun, 25 Mar 2007 20:34:29 +0000 (20:34 +0000)]
Utils: cleanup first html par code
Giuseppe Bilotta [Sun, 25 Mar 2007 20:21:21 +0000 (20:21 +0000)]
Utils: convert unknown numering HTML entities to the corresponding UTF-8 characters, when not using htmlentities
Giuseppe Bilotta [Sun, 25 Mar 2007 20:10:15 +0000 (20:10 +0000)]
url plugin: url.first_par option. when enabled, the url plugin will attempt to retrieve the first paragraph of a linked web page
Giuseppe Bilotta [Sun, 25 Mar 2007 20:08:56 +0000 (20:08 +0000)]
HttpUtil: fix partial_body when no body was given, and increase default info_bytes to 8k
Giuseppe Bilotta [Sun, 25 Mar 2007 19:30:29 +0000 (19:30 +0000)]
Utils: try non-paragraphs if no paragraphs was found
Giuseppe Bilotta [Sun, 25 Mar 2007 18:16:36 +0000 (18:16 +0000)]
Utils: when looking for the first par in a web page, look after any header, not just h1; also, be stricter on what's included in a paragraph
Giuseppe Bilotta [Sun, 25 Mar 2007 18:04:12 +0000 (18:04 +0000)]
Utils: fix ircify_html (the final stripsvn diff lib/rbot/core/utils/extends.rb could cause it to return nil) and improve whitespace handling
Giuseppe Bilotta [Sun, 25 Mar 2007 04:39:29 +0000 (04:39 +0000)]
rss plugin: attempt data recovery when marshalling fails
Giuseppe Bilotta [Sun, 25 Mar 2007 04:38:38 +0000 (04:38 +0000)]
registry: allow plugins to provide a recovery proc in case data marshalling fails
Giuseppe Bilotta [Sun, 25 Mar 2007 01:16:10 +0000 (01:16 +0000)]
rss plugin: nil the mutex when dumping, to prevent cross-version marshalling problems
Giuseppe Bilotta [Sun, 25 Mar 2007 00:22:00 +0000 (00:22 +0000)]
url plugin: customizable max amount of data to retrieve to look for a title. return standard header info if no title found
Giuseppe Bilotta [Sat, 24 Mar 2007 20:54:55 +0000 (20:54 +0000)]
httputil and url plugin improvements, see ChangeLog
Giuseppe Bilotta [Sat, 24 Mar 2007 11:20:26 +0000 (11:20 +0000)]
url plugin: when reading body chunks, don't discard read material
Giuseppe Bilotta [Thu, 22 Mar 2007 12:01:58 +0000 (12:01 +0000)]
keywords plugin: there is no rescan method for plugins. Remove leftover from when keywords was part of the core
Dmitry Kim [Wed, 21 Mar 2007 23:53:57 +0000 (23:53 +0000)]
* french, german and russian lang files converted to utf-8
Dmitry Kim [Wed, 21 Mar 2007 15:28:05 +0000 (15:28 +0000)]
* apparently, synthetic privmsgs for remotectl are hard. may need some massive rework later.
Giuseppe Bilotta [Tue, 20 Mar 2007 10:55:43 +0000 (10:55 +0000)]
shiritori plugin: only load rulesets on request
Giuseppe Bilotta [Tue, 20 Mar 2007 09:48:13 +0000 (09:48 +0000)]
rss plugin: 0.9 feeds don't work, so we just patch them to pretend they are actually 1.0 RDF feeds
Dmitry Kim [Tue, 20 Mar 2007 01:14:35 +0000 (01:14 +0000)]
* tidying up 'help ignored plugins' output
Dmitry Kim [Tue, 20 Mar 2007 00:37:22 +0000 (00:37 +0000)]
* don't set @failures_shown on debug(status)
Giuseppe Bilotta [Tue, 20 Mar 2007 00:27:55 +0000 (00:27 +0000)]
rss plugin: lock the mutex on more occasions
Giuseppe Bilotta [Mon, 19 Mar 2007 22:50:54 +0000 (22:50 +0000)]
plugins: only show number of ignored and/or failed plugins only the first time a user asks for help
Dmitry Kim [Mon, 19 Mar 2007 18:41:54 +0000 (18:41 +0000)]
* config value hook :on_change wasn't called from unset()
Giuseppe Bilotta [Mon, 19 Mar 2007 18:21:25 +0000 (18:21 +0000)]
chanserv plugin: currently only manages opping etc via chanserv
Dmitry Kim [Mon, 19 Mar 2007 15:05:50 +0000 (15:05 +0000)]
* duh, operator precedence error in serverlist patch
Dmitry Kim [Sun, 18 Mar 2007 03:02:07 +0000 (03:02 +0000)]
+ lazy behavior for plugin registries (don't create a BDB file until the registry is accessed by plugin for the first time)
Dmitry Kim [Sat, 17 Mar 2007 19:42:48 +0000 (19:42 +0000)]
+ added support for multiple servers to try (round-robin) for unreliable ircnets
* changed server.name/port to server.list (with config upgrade automation, too)
Giuseppe Bilotta [Sat, 17 Mar 2007 19:36:41 +0000 (19:36 +0000)]
Plugins: rename Plugins::pluginmanager to Plugins::manager
Giuseppe Bilotta [Fri, 16 Mar 2007 20:48:28 +0000 (20:48 +0000)]
Plugins: move games into their own directory
Giuseppe Bilotta [Fri, 16 Mar 2007 15:45:21 +0000 (15:45 +0000)]
remotectl: ensure that source and destination of synthetical message are proper Irc classes. Use illegal '-remote.client-' nick for the remote user
Giuseppe Bilotta [Fri, 16 Mar 2007 15:42:46 +0000 (15:42 +0000)]
Use m.source instead of m.sourcenick whenever possible to ensure messages from servers don't cause stupid backtraces
Giuseppe Bilotta [Fri, 16 Mar 2007 15:41:12 +0000 (15:41 +0000)]
Server hostname was not being set properly
Dmitry Kim [Thu, 15 Mar 2007 18:24:31 +0000 (18:24 +0000)]
* fixed a regexp for "identify-msg" server capability ("^" was missing)
Giuseppe Bilotta [Thu, 15 Mar 2007 16:18:54 +0000 (16:18 +0000)]
Forgot to add the actual unicode I/O filter to the repository (see [753])
Dmitry Kim [Thu, 15 Mar 2007 01:12:23 +0000 (01:12 +0000)]
+ Added remotectl plugin and an example druby API client implementation
Giuseppe Bilotta [Thu, 15 Mar 2007 00:11:06 +0000 (00:11 +0000)]
config was not being saved after unsetting a value
Chris Gahan [Wed, 14 Mar 2007 06:50:39 +0000 (06:50 +0000)]
Added config option: "url.titles_only"
Giuseppe Bilotta [Wed, 14 Mar 2007 01:19:01 +0000 (01:19 +0000)]
Socket IO filtering: rbot can now assume UTF-8 internally.
Giuseppe Bilotta [Wed, 14 Mar 2007 00:14:34 +0000 (00:14 +0000)]
Improved handling of server limits
Giuseppe Bilotta [Tue, 13 Mar 2007 23:18:33 +0000 (23:18 +0000)]
imdb plugin: update to the new site layout, use rbot headers
Giuseppe Bilotta [Sat, 10 Mar 2007 12:58:13 +0000 (12:58 +0000)]
Update changelog
Giuseppe Bilotta [Sat, 10 Mar 2007 12:55:33 +0000 (12:55 +0000)]
Allow customization of the plugins load path
Giuseppe Bilotta [Sat, 10 Mar 2007 01:37:06 +0000 (01:37 +0000)]
Option to change the bot IRC name, thanks to jsn-
Giuseppe Bilotta [Thu, 8 Mar 2007 10:42:05 +0000 (10:42 +0000)]
Previous attempt at cleaning up the prefix matcher were too restrictive, try using a different approach
Giuseppe Bilotta [Wed, 7 Mar 2007 21:15:05 +0000 (21:15 +0000)]
quiz plugin: don't crash when the answer is entirely made of sepators
Giuseppe Bilotta [Mon, 5 Mar 2007 22:58:10 +0000 (22:58 +0000)]
autorejoin plugin: insult on rejoin now optional
Giuseppe Bilotta [Mon, 5 Mar 2007 22:45:10 +0000 (22:45 +0000)]
quiz plugin: new cleanup command to remove players with 0 points and 0 jokers
Giuseppe Bilotta [Mon, 5 Mar 2007 21:59:51 +0000 (21:59 +0000)]
Previous commit wasn't that good, too restrictive. Relax, and differentiate between user id and mask
Giuseppe Bilotta [Mon, 5 Mar 2007 09:47:01 +0000 (09:47 +0000)]
Rework netmask/hostname detection code to work around non-RFC-compliant servers
Giuseppe Bilotta [Sat, 24 Feb 2007 11:26:59 +0000 (11:26 +0000)]
Try to give a meaningful quit message when quitting because of problems
Giuseppe Bilotta [Fri, 23 Feb 2007 21:34:02 +0000 (21:34 +0000)]
Utils.secs_to_string now convert seconds to integers instead of displaying ridiculously long floating values
Giuseppe Bilotta [Tue, 20 Feb 2007 23:02:35 +0000 (23:02 +0000)]
Use ASCII KCODE to prevent problems like missing characters or matching failures when clients send messages in something else than UTF-8
Giuseppe Bilotta [Tue, 20 Feb 2007 23:01:14 +0000 (23:01 +0000)]
Minor message optimizations
Giuseppe Bilotta [Tue, 20 Feb 2007 10:55:28 +0000 (10:55 +0000)]
shiritori plugin, thanks to hagabaka
Giuseppe Bilotta [Tue, 20 Feb 2007 08:46:00 +0000 (08:46 +0000)]
New IRC Framework: bot now keeps track of his nick correctly across disconnects
Giuseppe Bilotta [Tue, 20 Feb 2007 08:19:03 +0000 (08:19 +0000)]
remind plugin: fix for repeated reminders failing after [717].
Giuseppe Bilotta [Tue, 20 Feb 2007 08:15:59 +0000 (08:15 +0000)]
Fix timer handling when Actions raise errors
Giuseppe Bilotta [Sun, 18 Feb 2007 21:03:26 +0000 (21:03 +0000)]
Initial steps towards a namespace rationalization
Giuseppe Bilotta [Sun, 18 Feb 2007 21:01:39 +0000 (21:01 +0000)]
nickserv plugin: previous commit had a line wrong
Giuseppe Bilotta [Sun, 18 Feb 2007 20:44:40 +0000 (20:44 +0000)]
nickserv plugin: export information on current identification status
Giuseppe Bilotta [Sun, 18 Feb 2007 14:27:43 +0000 (14:27 +0000)]
Plugin header boilerplating.
New plugin.header file provided, to be used as model for the header of new plugins. Many existing plugins have been adjusted to provide the same info the same way. I might have misplaced some information, so please let me know if this is the case.
Also augmented a couple of copyright notices to include the 'rbot development team' alongside Tom Gilbert.
Giuseppe Bilotta [Sun, 18 Feb 2007 11:11:44 +0000 (11:11 +0000)]
nickserv plugin: better nickname recovery handling
Giuseppe Bilotta [Sun, 18 Feb 2007 10:51:43 +0000 (10:51 +0000)]
Minor optimization to Auth.random_password
Giuseppe Bilotta [Sun, 18 Feb 2007 10:10:17 +0000 (10:10 +0000)]
More fixes for nickname handling on connection
Giuseppe Bilotta [Sun, 18 Feb 2007 09:14:34 +0000 (09:14 +0000)]
basics: respond to public pings too (i.e. to /ping lib/rbot/rfc2812.rbchannel)
Giuseppe Bilotta [Sat, 17 Feb 2007 13:44:52 +0000 (13:44 +0000)]
New IRC Framework: optimize processing of server messages by using Symbols instead of Strings, and try a better fix for mismatching nicks on Welcome messages
Giuseppe Bilotta [Sat, 17 Feb 2007 13:24:17 +0000 (13:24 +0000)]
New IRC Framework: fix initial handling and guessing of nick/user/host for the bot on connection
Giuseppe Bilotta [Sat, 17 Feb 2007 10:28:42 +0000 (10:28 +0000)]
bans plugin: fix badword regular expression creation
Giuseppe Bilotta [Fri, 16 Feb 2007 20:50:08 +0000 (20:50 +0000)]
quiz plugin: remove debug stuff
Giuseppe Bilotta [Fri, 16 Feb 2007 20:49:30 +0000 (20:49 +0000)]
quiz plugin: sometimes cmd_hint was not busting even when it should have
Chris Gahan [Fri, 16 Feb 2007 06:28:21 +0000 (06:28 +0000)]
* Fixed roshambo (the bot would always tie if it picked scissors)
* Fixed figlet (if you didn't have the font "rectangles", it wouldn't work)
Giuseppe Bilotta [Fri, 16 Feb 2007 00:14:23 +0000 (00:14 +0000)]
keywords plugin: more fixes to 'reply-on-question' code
Giuseppe Bilotta [Thu, 15 Feb 2007 23:40:54 +0000 (23:40 +0000)]
autoop plugin: auto-opping on nick change can now be disabled
Giuseppe Bilotta [Thu, 15 Feb 2007 23:31:41 +0000 (23:31 +0000)]
remind plugin: one-shot reminders gave a reminder time with an extra period added. Remove it, and add some minor optimizations
Giuseppe Bilotta [Thu, 15 Feb 2007 17:24:52 +0000 (17:24 +0000)]
Regexp: IP address regexps where missing an octet
Giuseppe Bilotta [Thu, 15 Feb 2007 16:00:09 +0000 (16:00 +0000)]
More Regexp madness. Fixes, optimizations, and a new method to parse channel lists
Giuseppe Bilotta [Thu, 15 Feb 2007 13:58:15 +0000 (13:58 +0000)]
New unreplied() method for plugins that want to handle PRIVMSGs unreplied by any other plugin. Use it in the keywords plugin
Giuseppe Bilotta [Thu, 15 Feb 2007 12:58:34 +0000 (12:58 +0000)]
autoop plugin: make it work again when no channel is specified
Giuseppe Bilotta [Thu, 15 Feb 2007 12:47:50 +0000 (12:47 +0000)]
More minor plugin optimizations
Giuseppe Bilotta [Thu, 15 Feb 2007 12:41:45 +0000 (12:41 +0000)]
Start implementing common regular expressions to be used by plugin map() requirements
Giuseppe Bilotta [Thu, 15 Feb 2007 11:05:02 +0000 (11:05 +0000)]
New IRC Framework: set default capabilities to RFC's values
Giuseppe Bilotta [Thu, 15 Feb 2007 00:30:32 +0000 (00:30 +0000)]
Allow all printable 7-bit ASCII characters in passwords
Giuseppe Bilotta [Thu, 15 Feb 2007 00:11:17 +0000 (00:11 +0000)]
Stringify password when creating botuser. Useful when e.g. conf.yaml contains a master password which is numeric and unquoted