X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=ChangeLog;h=bcfd7a45ec2e44a817c1cc3d53ff7fbbae807032;hb=0118b777ea7eeef59d4210ed7b32016517f5a9e0;hp=1fe41b3d86055d03dbb6a7eb29b4b905b27cc497;hpb=b5f5b2a9b7db77898bf585c9f11f9a99a61ab854;p=user%2Fhenk%2Fcode%2Fruby%2Frbot.git diff --git a/ChangeLog b/ChangeLog index 1fe41b3d..bcfd7a45 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,280 @@ +2006-08-20 Giuseppe Bilotta + + * Topic plugin: fix a bug that prevented it from loading + correctly. + +2006-08-17 Giuseppe Bilotta + + * Fix help: It got broken while rearranging the plugin stuff, now it's + properly fixed. + * New Auth Framework: forgot to create the InvalidPassword exception. + It's a RuntimeError now. + * Fix help: this time for real (or so I hope). + * New IRC Framework: topic plugin now works correctly. + * New Auth Framework: nickserv plugin now defaults to false for its + auth, so that only owner can do stuff with it + * New Auth Framework: fix horrible typo, assignment instead of + equality test when checking for the username during login. + * Keywords plugin: tell and forget work again without 'keyword' before + them. + +2006-08-12 Giuseppe Bilotta + + * Subregistry: force prefix to be a String with to_s + +2006-08-11 Giuseppe Bilotta + + * AutoOp plugin: adapted to the new IRC framework. + * AutoOp plugin: trigger autoop on nick change too. + * New Auth Framework: allow? method now informs a user when they don't + have permission to do what they asked for. + * New nickreply and nickokay methods: they act like the old reply + method, but include the nick of the user the bot is replying to when + talking in public. The usual reply method can be configured to act + like this as default. + +2006-08-10 Giuseppe Bilotta + + * Fix a bug in new IRC Framework: the list of channels a quitting user was + on was not built correctly, causing an exception when the user was not + in the first channel in the list of channels. + * Fix a bug in new Auth Framework: BotUser's name is changed via + username=, not name=. + * New HalfLife 2 plugin from ocr: queries online servers for online + status and number of users. + +2006-08-07 Giuseppe Bilotta + + * Add kick method to kernel: plugins can now use + @bot.kick channel, user, reason + to kick a user from a channel + * RSS plugin: fix rewatch_rss method + * RSS plugin: the different ways to represent channels before and + after the New IRC Framework was causing strange problems such as + watched feed not being listed as such, undeletable watches, double + watches etc. Fix this by checking both for the Channel objects and + their to_s form when checking for watches or deleting them. + +2006-08-06 Giuseppe Bilotta + + * Updating the ChangeLog again: describe the new stuff in trunk which + will be made available in the next release. Use Gnu style for new + changelog entries (yyyy-mm-dd name \n ...): + there's a macro for this since at least Vim 6.x and higher, called by + o (default leader: slash (\)) + * New IRC Framework: Server, Channels, User, Netmasks etc are all + proper Ruby objects. The better organization will allow multi-server + connections to be implemented more easily + * Modularize core: split the internal functionality from what can be + implemented as botmodules (which work just the same as plugins). Move + Configuration, Basics and Auth out of the 'kernel' into core + botmodules. + * New Auth Framework: BotUsers are now Ruby objects with attached + PermissionSets which define what the BotUser can do, by channel if + necessary. The new framework allows very fine-grained control while + still being very easy to manage for elementary usage. BotUser data can + be exported and imported, but no backwards compatibility has been + implemented yet. Most plugins still have to be updated to the new + command-path-based mechanism. + +Sun Aug 06 17:33:55 BST 2006 Tom Gilbert + + * 0.9.10 released + * Changes: Lots of new and updated plugins, including one to poll RSS feeds. + A first step towards a better auth system (total revamp due in 0.9.11). + Improvements to network and server code which should provide greater + stability. A new message queueing mechanism with bitrate throttling. A new + logging framework for debugging and tracing the activities of the bot. A + new split-db registry system for better performance and transactional + usage of bdb for resilience. More integration with Nickserv where + available including optional automatic ghost-killing. + +Wed Sep 07 20:16:46 BST 2005 Tom Gilbert + + * Fixed quit, broke it last commit + * Fixed trap() for win32 + +Sun Aug 21 13:29:55 BST 2005 Tom Gilbert + + * fix for bug in quakenet plugin (trac #14) + * multiple fixes for unescaped bot nick in regexp's (trac #13) + +Fri Aug 12 20:51:38 BST 2005 Tom Gilbert + + * fix up autoop plugin a bit + +Thu Aug 11 00:13:11 BST 2005 Tom Gilbert + + * Added two plugins from Robin Kearney + * Threat (US threat level :P) + * bash (bash.org quotes) + +Thu Aug 11 00:04:31 BST 2005 Tom Gilbert + + * Patches from "Alexey I. Froloff" + * Do not use "/home/#{Etc.getlogin}/" for default home directory, use + "#{Etc.getpwnam(Etc.getlogin).dir}/" instead. + * Do not try to load same plugin from different locations. Added ability + to disable system-wide plugins - create PLUGIN.rb.disabled in user's + plugins directory. + * For example, to disable freshmeat plugin installed in /usr/share/rbot/plugins/freshmeat.rb one can create empty file ~/.rbot/plugins/freshmeat.rb.disabled + +Mon Aug 08 23:08:01 BST 2005 Tom Gilbert + + * new markov plugin for random inane chat + +Sun Aug 07 18:20:24 BST 2005 Tom Gilbert + + * stop insult plugin being used to insult the bot + +Sun Aug 07 17:53:06 BST 2005 Tom Gilbert + + * workaround for people without YAML::load_file + * quit message for restart + +Sun Aug 07 15:11:07 BST 2005 Tom Gilbert + + * fix address_prefix, broken in 0.9.9, reported by ruskie. + +Sat Aug 06 00:54:34 BST 2005 Tom Gilbert + + * Released 0.9.9 + +Fri Aug 05 23:55:20 BST 2005 Tom Gilbert + + * few more tweaks preparing to release 0.9.9 + +Thu Aug 04 23:03:30 BST 2005 Tom Gilbert + + * Improved ircd recognition of rfc2812.rb + * de-string'd, de-cap'd rfc2812.rb, looks less shouty now + * moved the Q auth stuff (for quakenet) into a new qauth plugin (untested!) + * finish fixing the httputil + +Thu Aug 04 00:11:52 BST 2005 Tom Gilbert + + * Tweaked the debug() stuff a bit. Need to do this more cleanly really + * Added a fair bit of documentation for some of the new features + +Wed Aug 03 15:25:07 BST 2005 Tom Gilbert + + * Added french language file (TODO most of the plugins just talk english) + * The way the Enum configs were set up, it wasn't possible to add language + files to rbot at runtime (the directory was only scanned at startup). Now + you can set a values Proc, which is called to return a list of allowed + values whenever it's queried. + * Added Config module for determining where we were installed. + Unfortunately rubygems is a total whore in this regard, and I hope the + current hackery I have to do to support it becomes redundant in the + future. + +Wed Aug 03 00:31:41 BST 2005 Tom Gilbert + + * Added Rakefile, tweaked gemspec + +Tue Aug 02 16:27:36 BST 2005 Tom Gilbert + + * Fixed the new http.proxy* settings, they work! + * Fixed a bug with auth-checking for the config module + * misc tweaks + +Sun Jul 31 02:20:08 BST 2005 Tom Gilbert + + * Updated docgen to generate rdoc again with the new repo structure + * added new restart command to the core bot, quits irc and reexecs the + bot, to pick up new code/libraries etc. + +Sat Jul 30 22:33:36 BST 2005 Tom Gilbert + + * Config items are now objects, various types are available. + * The config wizard will now use registered config items if :wizard is set + to true for those items. It will ask questions in the order they were + registered. + * The config module now works for doing runtime configuration. + * misc refactoring + +Sat Jul 30 01:19:32 BST 2005 Tom Gilbert + + * config module for configuring the running bot via IRC + * BotConfig.register method for various modules and any plugin to register + bot configuration which the new config module will expose for them. + * various other tweaks as I continue to refactor.. + +Fri Jul 29 13:07:56 BST 2005 Tom Gilbert + + * Moved some stuff out of util.rb into the plugins that actually need + them. Those methods didn't belong in util as they were plugin-specific. + * moved a few more plugins to use map() where appropriate + * made the url plugin only store unique urls + +Thu Jul 28 23:45:26 BST 2005 Tom Gilbert + + * Reworked the Timer module. The Timer now has a smart thread manager to + start/stop the tick() thread. This means the timer isn't called every 0.1 + seconds to see what needs doing, which is much more efficient + * reworked the ircsocket queue mechanism to use a Timer + * reworked the nickserv plugin to use maps + * made server.reconnect_wait configurable + * added Class tracing mechanism to bin/rbot, use --trace Classname for + debugging + +Tue Jul 26 14:41:34 BST 2005 Tom Gilbert + + * Prevent multiple plugin registrations of the same name + * reworking the config system to use yaml for persistence + * reworking the config system key names + * on first startup, the bot will prompt for the essential startup config + * new config module for configuring the bot at runtime + * new config module includes new configurables, for example changing the + bot's language at runtime. + * various other fixes + * New way of mapping plugins to strings, using maps. These may be + familiar to rails users. This is to reduce the amount of regexps plugins + currently need to do to parse arguments. The old method (privmsg) is still + supported, of course. Example plugin now: + def MyPlugin < Plugin + def foo(m, params) + m.reply "bar" + end + + def complexfoo(m, params) + m.reply "qux! (#{params[:bar]} #{params[:baz]})" + end + end + plugin = MyPlugin.new + # simple map + plugin.map 'foo' + + # this will match "rbot: foo somestring otherstring" and pass the + # parameters as a hash using the names in the map. + plugin.map 'foo :bar :baz', :action => 'complexfoo' + # this means :foo is an optional parameter + plugin.map 'foo :foo', :defaults => {:foo => 'bar'} + # you can also gobble up into an array + plugin.map 'foo *bar' # params[:bar] will be an array of string elements + # and you can validate, here the first param must be a number + plugin.map 'foo :bar', :requirements => {:foo => /^\d+$/} + + +Sat Jul 23 01:39:08 BST 2005 Tom Gilbert + + * Changed BotConfig to use yaml storage, method syntax instead of hash for + get/set, to allow more flexibility and encapsulation + * Added convenience method Message.okay (m.okay is the same as the + old-style @bot.okay m.replyto) + +Wed Jul 20 23:30:01 BST 2005 Tom Gilbert + + * Move some core plugins to use the new httputil + * fix wserver's redirection handling for relative (i.e. broken) redirects + * fix tube plugin's html parsing + +Wed Jul 20 01:18:06 BST 2005 Tom Gilbert + + * Add new httputil object to the bot object, to be used by plugins etc + that wish to make http requests. It sets up all the proxies etc for them + according to bot config. + Sat Jul 16 02:23:13 BST 2005 Tom Gilbert * Apply most of Rene's patch and fix various plugins.