Tom Gilbert [Sat, 21 Jan 2006 21:22:41 +0000 (21:22 +0000)]
bunch of changes.
Another of Chris' plugins. A contributed russian.lang from ruskie (honest,
that's his nick!). Some tweaks to error handling. Some modified user/auth
handling (from DevRandom) still a bit more to do on that tho..
Tom Gilbert [Tue, 30 Aug 2005 14:25:37 +0000 (14:25 +0000)]
reconnect one connect failures too. Examples are temporary failures in DNS
resolution etc (one user is on a modem which occasionally redials, for
example).
Tom Gilbert [Wed, 24 Aug 2005 21:26:02 +0000 (21:26 +0000)]
egads, Etc.getlogin returns the real login, so if you su to another user and
run rbot, it'll still use you homedir. I am getting really pissed with the
complete lack of documentation I keep running into :/ The Etc module is
*completely* undocumented, for example.
Tom Gilbert [Wed, 24 Aug 2005 19:12:14 +0000 (19:12 +0000)]
applied patch from ticket #15, and added .inspect to try and work out what
exception "reset by peer" gives you.
One thing I'm finding troublesome with ruby is working out what exceptions
things are going to throw. Especially poorly documented stuff implemented in
C. Why the Socket module throws an exception for "reset by peer" which
*isn't* a SocketError I don't know, but apparently it does.
Tom Gilbert [Wed, 10 Aug 2005 23:04:16 +0000 (23:04 +0000)]
patch from Alexey Froloff:
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
Tom Gilbert [Thu, 4 Aug 2005 22:44:35 +0000 (22:44 +0000)]
Thu Aug 04 23:03:30 BST 2005 Tom Gilbert <tom@linuxbrit.co.uk>
* 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
Tom Gilbert [Wed, 3 Aug 2005 20:07:14 +0000 (20:07 +0000)]
Wed Aug 03 15:25:07 BST 2005 Tom Gilbert <tom@linuxbrit.co.uk>
* 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.
Tom Gilbert [Sun, 31 Jul 2005 01:21:02 +0000 (01:21 +0000)]
Sun Jul 31 02:20:08 BST 2005 Tom Gilbert <tom@linuxbrit.co.uk>
* 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.
Tom Gilbert [Sat, 30 Jul 2005 21:35:57 +0000 (21:35 +0000)]
Sat Jul 30 22:33:36 BST 2005 Tom Gilbert <tom@linuxbrit.co.uk>
* 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
Tom Gilbert [Sat, 30 Jul 2005 00:22:21 +0000 (00:22 +0000)]
Sat Jul 30 01:19:32 BST 2005 Tom Gilbert <tom@linuxbrit.co.uk>
* 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..
Tom Gilbert [Fri, 29 Jul 2005 13:44:33 +0000 (13:44 +0000)]
Fri Jul 29 13:07:56 BST 2005 Tom Gilbert <tom@linuxbrit.co.uk>
* 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
Tom Gilbert [Thu, 28 Jul 2005 23:55:59 +0000 (23:55 +0000)]
Thu Jul 28 23:45:26 BST 2005 Tom Gilbert <tom@linuxbrit.co.uk>
* 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