+2002-08-18 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * bobot++.texinfo (Hook Types): Fixed a typo (I wrote
+ user!nick@host instead of the correct nick!user@host).
+
+ * source/Interp.C (Startup): Register bot:DCC-chat-send
+
+ * source/ScriptCommands.C (sendDCCChatMessage): Added method again
+
+2002-08-08 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * source/String.C (String): The std::string copy constructor now
+ extracts the c_str of the std::string and then takes the strlen of
+ that before copying it. This fixes a bug with DCC where if you did
+ e.g. "!help" the bot would reply with "No TOPIC PRIVMSG FOUND" or
+ something like that, depending on what the last message was
+ because Socket will insert a \0 into its semi-static buffer, so
+ the len of the String will not equal the strlen of its char*.
+
+2002-08-07 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * source/DCCPerson.H: Removed destructor (I = idiot)
+
+ * source/DCCConnection.H: DCCManager is now a friend of
+ DCCConnection (ugh, the bot has way too many friends).
+
+ * source/DCCPerson.H: Added DCC member that returns a const
+ DCCConnection* (the dcc connection). This isn't saved anywhere
+ because when a DCCPerson is destroyed, its connection is also
+ destroyed.
+
+ * source/Bot.H: dccConnections is now a DCCManager
+
+ * source/DCCPerson.H: Added destructor
+ Added handleInput method
+
+ * source/DCCManager.C: New file
+ (addConnection): Wrote method, add a DCCConection to the manager
+
+ * source/DCCManager.H: New file
+
+ * source/Interp.C (Startup): Register bot:DCC-chat-send
+ (Startup): Removed sendDCCChatMessage stuff
+
+ * source/ScriptCommands.C (sendDCCChatMessage): New method:
+ sendDCCChatMessage (to, message) sends message to to.
+
+ * source/DCCConnection.C (connect): Run DCC_CHAT_BEGIN hook with
+ one arg: from (user!nick@host).
+
+ * source/DCCParser.C (parseLine): Runs DCC_CHAT_MESSAGE hook with
+ two args: from (user!nick@host) and line
+
+2002-08-06 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * source/Interp.C (Startup): Two new Scheme values:
+ hooks/dcc/chat-begin and hooks/dcc/chat-message for the
+ DCC_CHAT_BEGIN and DCC_CHAT_MESSAGE hooks.
+
+ * source/BotInterp.H: Added two new enum values to Hook:
+ DCC_CHAT_BEGIN and DCC_CHAT_MESSAGE for the DCC chat start and DCC
+ chat message hooks
+
+2002-08-05 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * source/Parser.C (parseCTCP): Removed call to htonl and fixed
+ DCC! Ack, sockets take their arguments in network byte order so
+ there is no need to convert to host...now DCC _sort of_ works.
+
+2002-08-04 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * source/UserList.C (save): Increment iterator twice to get around
+ bug (see BUGS #2)
+
+ * source/ServerQueue.C: Now sends SEND_* hooks instead of
+ triggered general hooks.
+
+ * source/Interp.C (Startup): New scheme side defines: hooks/send/*
+ (* = the new SEND_ hooks, but lowercase).
+
+ * source/BotInterp.H: New hook types (SEND_..., ... = ACTION,
+ CTCP, PUBLIC, MESSAGE). These are triggered on send messages.
+
+2002-08-01 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * source/Bot.C (set_log_file): Oops! Fixed logging. Now the bot
+ logs again.
+
+ * source/Socket.C (readLine): Now uses a static std::string that
+ starts out with 512 chars. This will never need to be resized for
+ usualy IRC messages, but might be for DCC messages
+
+2002-07-31 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * scripts/bobot-utils.scm (not-from-me): New syntax.
+
+ * source/ScriptCommands.C (AddHook): Now takes another optional
+ arg--name that will name the hook (see the hooks section in the
+ manual for what this does).
+
+ * source/BotInterp.H: Added name field to Hook
+
+2002-07-29 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * source/ServerQueue.C (sendPrivmsg): Now calls hooks on own
+ PRIVMSGes because the IRC server doesn't echo them back to the
+ bot. This could be useful for something (e.g. log script).
+
+2002-07-27 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * source/Interp.C (Shutdown): Runs bot:exit-hook hooks
+ (Startup): New var for Scheme: bot:exit-hook. Calls the thunks
+ associated with the hook when Interp::Shutdown is called (bot exit).
+
+2002-07-23 Clinton Ebadi <clinton@unknownlamer.org>
+
+ * source/BotInterp.H (Hook<): Changed behavior of Hook's <. If a
+ hook is greater than or less than the other hook, only the
+ priority is considered. However, if both hooks have the same
+ priority, then the fallthru-ness is considered, with fallthru
+ hooks being greater than non-fallthru hooks.
+
+ * source/BotInterp.C (hptr_lt): Added this static function to be
+ used to sort the hooks list (now hooks should be sorted using
+ Hook's operator < instead of using pointer comparision, meaning
+ the new hook system will work correctly)
+
+ * scripts/bobot-utils.scm: Make bot:log use for-each instead of
+ map because we don't need the result of the displays (this would
+ just be a list of #<undefined> values and is a waste of memory).
+
2002-07-13 Clinton Ebadi <clinton@unknownlamer.org>
* source/Bot.C (Bot): userFunctions is now a map for efficiency