X-Git-Url: http://git.hcoop.net/clinton/bobotpp.git/blobdiff_plain/0b7a49e2b886552fe45523069f33fb82f3086f42..672b7d4efd70c3088c182c7836a2ec86107f9a29:/NEWS diff --git a/NEWS b/NEWS index 0ddbeb3..eea086b 100644 --- a/NEWS +++ b/NEWS @@ -10,7 +10,105 @@ IMPORTANT NOTES: ====== The News ===================================================== ===================================================================== +Version 2.1.8: +- Scripting + + Hooks + * Added bot:protection/[none|ban|kick|deop] and bot:aop/[yes|no] + constants to the Scheme scripting interface + * hooks/timer argument is now zero padded instead of space padded + (e.g. "11:01" instead of "11: 1") + * hooks/disconnect is now called when the bot is disconnected from the + server unintentionally (network connection timeout, server died, + etc.) + + Message Sending + * Implemented bot:notice + + Misc + * Added (bobotpp bot) module that modules may use to gain access + to the bobot++ functions + * bot:msg and bot:say may both send to channels and users (instead + of bot:msg for users and bot:say for channels) + * Renamed bot:send-CTCP to bot:send-ctcp + * Added bot:send-ctcp-reply to send a ctcp-reply + + Debugging + * The debugging evaluator is now enabled when --debug is passed to the bot +- Documentation + + Merged documentation patch from Dale Smith (thanks) +- Misc + + NOTICEs and PRIVMSGs are now sent correctly if they contain an + embedded newline + + Max nick length is now configurable via 'maxnicklength' option in + bot.conf (defaults to 9) + + +Version 2.1.7: +- Fixed a number of small bugs and corner cases +- Should compile without warnings (GCC 3.4) + +Version 2.1.6: +- The String class implementation has been redone and replaced by one + based on std::string (eventually String will be gone entirely, but + it a lot of work) +- Patches from Jos Hulzink were applied which fix a + few major bugs in the StringTokenizer (thanks) + +Version 2.1.5: Cleanups +- A DCC CHAT with the bot may now only be initiated if the user is a + Friend of the bot +- Implemented bot:ctcp-quote +- The Bot Configuration section of the manual has been completed. +- Fixed a potential (but unlikely) buffer overflow in Utils::strToTime + (if there were more than 512 digits in part of the string form of + the time the buffer would overflow) +- Misc. Bugfixes + +Version 2.1.4: DCC Support Enhancements +- Internal Change: DCCConnection is now an abstract class +- Internal Change: DCCChatConnection provides the functionality of + the old DCCConnection so that DCC FILE support can be added +- New Scheme Procedure: (bot:sent-to-me? message), checks to see if a + message was addressed to the bot. This is better than using + bot:match-to-me because the hook will continue to function if the + bot's nick changes. The only downside to using it is that there may + be an increased overhead of calling more hooks than could be called, + but that shouldn't be much of a problem. +- New Scheme Procedure: (bot:change-command-level command level), + changes the level a user command to allow a user of `level' level or + above to run it. + +Version 2.1.3: Something +- The flood rate can now be set using !setfloodrate INTEGER. The +default is two messages per second before the bot will ignore +you. (thanks to Björn Gustavsson for requesting this) +- The flood rate may also be set from Scheme using (bot:setfloodrate +integer) +- A very large crash bug has been fixed. Previously, if an undefined +command was called, any attempts to call a subsequent command would +cause the bot to crash. Now the bot doesn't crash. + +Version 2.1.2: Llama + +- match-to-me and match-not-channel are now bot:match-to-me and + bot:match-not-channel. Just use perl -pi -e + "s/match-to-me/bot:match-to-me" SCRIPTS (change to match-not-channel + for match-not-channel). +- Each script is now loaded into its own module so namespace clashes + should no longer occur +- New procedure: (bot:load-module INTERFACE-SPEC) will load a "bot + module" with the specified INTERFACE-SPEC (e.g. (foo bar)). A bot + module is the same as a system module except that you don't use + define-module to define it. The %bot:loadpath is searched for + INTERFACE-SPEC (when converted to a string) with an extension in + %bot:load-extensions. E.g. (foo bar) becomes "foo/bar". +- New procedure: (bot:use-module INTERFACE-SPEC) is the same as + bot:load-module except it will make the exported bindings from + INTERFACE-SPEC available in the current-module. +- Updated example bot and new example scripts included with the bot. + Version 2.1.1: foom + +- Host masks are now case insensitive when matched. At least one other + person thought this was a good idea since IRC is case preserving but + not case sensitive. - You can now "name" a hook using an extra arg to bot:addhook. This name can be used to have multiple hooks of the same type with the same regexp. The default name is "DEFAULT" so don't use that as the @@ -48,12 +146,12 @@ Version 2.1.0: Zug Zug before non-fallthrough hooks. - The default config is read from ~/.bobotpp/config/default/ or /etc/bobotpp/default/ if the user config is not found. Put your - default config is either dir. You may also specify a specific config + default config in either dir. You may also specify a specific config under these dirs using the --config or -c arg to bobotpp (see bobotpp --help for the full list of commands you may use and how to use them). - Scripts are now stored in ~/.bobotpp/scripts/ or - PREFIX/bobotpp/scripts/ (where PREFIX is /usr/local unless you + PREFIX/share/bobotpp/scripts/ (where PREFIX is /usr/local unless you changed it with the --prefix arg to configure). The new function bot-load will take a filename and load it from these dirs, returning #t if the file was loaded and #f if it wasn't. You can modify the