[project @ 2005-05-31 05:59:57 by unknown_lamer]
[clinton/bobotpp.git] / ChangeLog
1 2005-05-31 Clinton Ebadi <clinton@unknownlamer.org>
2
3 * source/String.C (operator): Made index signed again, it's not
4 worth fixing this warning
5
6 * source/Bot.C: Add casts to make this compile with unsigned int
7 as operator[] in String
8
9 * source/String.C (operator): Made index unsigned
10
11 * source/Utils.C: Made a few things unsigned to kill warnings
12
13 * source/Socket.C (readLine): Made pos unsigned
14
15 * source/Bot.C (Bot): Fixed initializer list order to kill warnings
16
17 * source/BotInterp.C (RunTimers): Removed unused variable (Timer *t)
18
19 * source/StringTokenizer.C (count_tokens): Changed return type to
20 unsigned int
21 (more_tokens_p): Made counter unsigned
22
23 * source/StringTokenizer.H (class StringTokenizer): Made pos
24 std::string::size_type instead of int
25
26 * source/Commands.C (TBan): Returns Ok is the ban is done instead
27 of falling off the end (oops)
28
29 * source/BotInterp.H: Add general catch case (false)
30
31 2005-03-11 Clinton Ebadi <clinton@unknownlamer.org>
32
33 * configure.ac: Release 2.1.6
34 Changed version to 2.1.7CVS
35
36 2005-02-28 Clinton Ebadi <clinton@unknownlamer.org>
37
38 * source/Parser.C (parseLine): use map<>::find and an iterator to
39 find the IRC command instead of map<>::operator[] to avoid a
40 potential segfault
41
42 * source/Bot.C (waitForInput): Removed commented out code
43
44 * source/Socket.C (readLine): return String (buf.c_str ()) instead
45 of String (buf) so that only the buffer up to the first null is returned
46 (readLine): Added a comment explaining the usage of buf
47 (readLine): Changed type of length (std::string::size_type instead
48 of std::size_t)
49
50 * source/String.C: Reimplemented String on top of std::string to
51 fix a few bugs and potential memory leaks
52 (toLower): use Utils::to_lower
53 (toUpper): Use Utils::to_upper
54 (trim): Use Utils::trim_str
55
56 * source/String.H: removed srep, replaced it with a std::string (my_string)
57
58 * source/Utils.C (to_upper): Applied patch from Jos Hulzink
59 <josh@stack.nl>
60 (trim_str): Appled patch from Jos Hulzink <josh@stack.nl> (fixes
61 counters and substr call)
62
63 * source/StringTokenizer.C (next_token): Applied patch from Jos
64 Hulzink <josh@stack.nl> (fixes substr call)
65 (rest): Applied patch from Jos Hulzink <josh@stack.nl> (fixes
66 substr call)
67
68 2005-02-27 Clinton Ebadi <clinton@unknownlamer.org>
69
70 * source/Bot.H (COPYRIGHT_STRING): Remove Michael Wilson because
71 he is a lazy bum and never submitted the String replacing patch
72
73 2005-01-23 Clinton Ebadi <clinton@unknownlamer.org>
74
75 * configure.ac: Remove CC++ test
76 Changed version to 2.1.6CVS (2.1.5 released)
77
78 * bobot++.texinfo: Updated copyright
79
80 2005-01-16 Clinton Ebadi <clinton@unknownlamer.org>
81
82 * TODO (General): Added TODO items
83 (2.2): Moved a few items here from 2.4
84
85 * README (NOTE): Mention boost requirement
86
87 2005-01-13 Clinton Ebadi <clinton@unknownlamer.org>
88
89 * ChangeLog Updated copryight
90
91 * source/User.H: Removed forward declaration of Utils
92
93 * source/Bot.H: Removed forward declaration of Utils
94
95 * source/ChannelList.H: Removed forward declaration of Utils
96
97 * source/UserListItem.H: Removed forward declaration of Utils
98
99 * source/Utils.H: Removed class Utils, replaced with a namspace
100 (it only contained static methods)
101
102 * source/Bot.H (COPYRIGHT_STRING): Added 2005 and Michael Wilson
103 (he is replacing String)
104
105 2005-01-12 Clinton Ebadi <clinton@unknownlamer.org>
106
107 * source/BotConfig.C (set_option_value): Put watcher calling
108 inside of if (cf_iter != end()) to fix a segfault (if the cf_iter
109 = end then there are no watchers since this is a new value and
110 references cf_iter->second segfaults)
111
112 * source/Utils.C (trim_str): Fixed bug (last non-space character
113 was being cut off)
114
115 * source/BotConfig.C (read_config): Made to use set_option_value
116 instead of manipulating options_db directly
117
118 * source/BotConfig.H (class BotConfig): Add set_option_value that
119 takes a t_value instead of t_value_list (most uss of
120 set_option_value will be to add a single value so this is very useful)
121
122 * source/BotConfig.C (set_option_value): Implemented
123
124 * source/UserList.C: Made to work with new Utils/StringTokenizer names
125
126 * source/UserCommands.C: Made to work with new
127 Utils/StringTokenizer names
128
129 * source/ShitList.C: Uses Utils.H now (Utils::trim_str & friends)
130
131 2005-01-11 Clinton Ebadi <clinton@unknownlamer.org>
132
133 * source/ShitList.C: Made to work with new StringTokenizer names
134
135 * source/ServerQueueItem.C: Made to work with new StringTokenizer names
136
137 * source/ServerQueue.C: Made to work with new Utils names
138
139 * source/ScriptCommands.C: Made work with new Utils names
140
141 * source/Person.C (getNick): Made work with new Utils names
142
143 * source/String.H: Added substr prototypes
144
145 * source/String.C (substr): Added substr as an alias of subString
146 (for compat with std::string before the transition)
147
148 * source/Parser.C: Made to work with new Utils/StringTokenizer names
149
150 * source/DCCParser.C: Made to work with new Utils names
151
152 * source/DCCChatConnection.C: Made to work new Utils names
153
154 * source/Commands.C: Made to work with new Utils names
155
156 * source/Channel.C: Made to work with new Utils names
157
158 * source/BotInterp.C: Made to work with new Utils
159
160 * source/Bot.C: Made to work with new Utils/StringTokenizer names
161
162 * source/String.C (operator=): Unremoved operator=(std::string)
163
164 * source/String.H: Unremoved operator=(std::string)
165
166 * source/BotConfig.C (read_config): Use Utils::trim_str
167
168 * source/String.C (trim): Fixed bug (p->s[i] == '\r', s/i/j/)
169
170 * source/Utils.C (trim_str): Implemented
171
172 * source/Utils.H: Added tim_str (replaces String::trim)
173
174 * source/BotConfig.C: Made everything work with new
175 StringTokenizer and Utils names
176
177 * source/Utils.H: Added to_lower
178 Added to_upper
179
180 * source/StringTokenizer.C (rest): uses std::isspace instead of
181 checking st[pos] against ' ' and '\t'
182
183 * source/StringTokenizer.H: Removed CamelCasing
184 Renamed hasMoreTokens to more_tokens_p
185
186 * source/StringTokenizer.C: Converted to use std::string
187
188 * source/StringTokenizer.H: Converted to use std::string
189
190 * source/String.C: Removed operator=(std::string)
191
192 * source/String.H: Removed operator=(std::string)
193
194 * source/Utils.C: Added copyright
195 Reformatted to match GNU coding standard more closely
196 Converted everything to use std::string
197 (get_nick): Renamed from getNick
198 (get_userhost): Renamed from getUserHost
199 (get_key): Renamed from getKey
200 (IP_p): Renamed from isIP
201 (make_wildcard): Renamed from makeWildcard
202 (channel_p): Renamed from isChannel
203 (wildcard_p): Renamed from isWildcard
204 (valid_channel_name_p): Renamed from isValidChannelName
205 (valid_nickname_p): Renamed from isValidNickName
206 (get_level): Renamed from getLevel
207 (str2time): Renamed from strToTime
208 (str2time): Fixed potential buffer overflow (num[512] => std::string)
209 (level2str): Renamed from levelToStr
210 (prot2str): Renamed from protToStr
211 (bool2str): Renamed from boolToStr
212 (long2str): Implemented
213 (scm2str): Renamed from scm2String
214 (str2scm): Renamed from string2SCM
215
216 * source/BotConfig.C: Reformatted to fit GNU coding style more closely
217
218 * source/Utils.H: Added long2str (long int -> std::string)
219
220 * source/String.H: Added 2003 copyright (the year I last modified
221 it in)
222
223 * source/String.C: Added 2002 copyright (the year I last modified
224 it in)
225
226 * source/Utils.H: Updated Copyright
227 s/String/std::string/g
228 Removed camel casing and is* = *_p
229 xToY = x2y
230
231 * source/BotConfig.C: Updated Copyright
232
233 * source/BotConfig.H: Updated copyright
234
235 2005-01-08 Clinton Ebadi <clinton@unknownlamer.org>
236
237 * source/BotConfig.C (set_option_value): Take care of the case
238 where key is not already in the db
239 (add_watcher): Implemented
240 (read_config): Removed ',' token parsing (not needed)
241
242 * configure.ac: Add AC_LANG([C++]) so we can check for C++ libs
243 AC_CHECK_LIB ccgnu2 (CommonC++2)
244
245 * README: Updated README (reformatted, adding info, etc.)
246
247 2005-01-07 Clinton Ebadi <clinton@unknownlamer.org>
248
249 * source/BotConfig.C (set_option_value): call watcher list
250 (run_fun_): Added to support watcher list calling
251
252 2005-01-06 Clinton Ebadi <clinton@unknownlamer.org>
253
254 * source/BotConfig.C (set_option_value): Fuck you STL
255 (push_back_): Reimplemented so that it doesn't need std::bind1st
256 because the STL is being stupid
257
258 2004-12-26 Clinton Ebadi <clinton@unknownlamer.org>
259
260 * source/BotConfig.C (read_config): Implemented properly
261 (get_option_values): Implemented properly
262 (set_config_file): Fixed
263
264 2004-07-10 Clinton Ebadi <clinton@unknownlamer.org>
265
266 * bobot++.texinfo (Built-In Commands): Added empty stubs to the
267 list of commands
268
269 2004-06-22 Clinton Ebadi <clinton@unknownlamer.org>
270
271 * source/BotConfig.C: New file (implementation of configuration database)
272
273 * source/BotConfig.H: New File (semi-generic configuration database)
274
275 2004-06-17 Clinton Ebadi <clinton@unknownlamer.org>
276
277 * bobot++.texinfo (Starting the Bot): New section
278
279 2004-06-14 Clinton Ebadi <clinton@unknownlamer.org>
280
281 * bobot++.texinfo (Protection): Added Section
282 (User Levels): Rewrote section to be useful
283 (bot.users): Added section
284
285 2004-06-12 Clinton Ebadi <clinton@unknownlamer.org>
286
287 * source/DCCChatConnection.C (connect): Checks to make sure the
288 person initiating a DCC CHAT with the bot is at least a FRIEND of
289 the bot.
290
291 * README: Fixed a typo
292
293 * scripts/bobot-utils.scm (ctcp-quote): Implemented ctcp-quote
294 (bot:ctcp-quote): Renamed ctcp-quote to bot:ctcp-quite (whoops)
295
296 2004-05-28 Clinton Ebadi <clinton@unknownlamer.org>
297
298 * bobot++.texinfo (bot.conf): Finished section
299 (server syntax): New section, documents the bot.conf SERVER syntax
300 (channel syntax): New section, documentes the bot.conf CHANNEL syntax
301
302 2004-05-13 Clinton Ebadi <clinton@unknownlamer.org>
303
304 * source/Main.C (real_main): std::exit instead of exit
305
306 2004-05-12 Clinton Ebadi <clinton@unknownlamer.org>
307
308 * source/DCCConnection.C (DCCConnection): Intialized `nuh' in the
309 constructor with `n' This should fix the segfaulting.
310
311 2004-01-28 Clinton Ebadi <clinton@unknownlamer.org>
312
313 * ChangeLog: Updated copyright notice
314
315 2004-01-09 Clinton Ebadi <clinton@unknownlamer.org>
316
317 * source/Interp.C (interp_init_helper): Register
318 bot:change-command-level
319
320 * source/ScriptCommands.C (ChangeCommandLevel): Added
321 ChangeCommandLevel to change the level a user needs to be to run a
322 command
323
324 * source/ScriptCommands.H: Added ChangeCommandLevel
325
326 2003-10-12 Clinton Ebadi <clinton@unknownlamer.org>
327
328 * source/String.H: Changed #define STRING_H to BSTRING_H
329
330 2003-08-04 Clinton Ebadi <clinton@unknownlamer.org>
331
332 * scripts/bobot-utils.scm (bot:sent-to-me?): New procedure, used
333 to see if a message was sent to the bot (this is better than
334 bot:match-to-me because the hook isn't invalidated when the bot's
335 nickname changes)
336
337 * source/DCCConnection.H: Added `nuh' back and added an
338 accessor (get_nuh)
339 Added setter `set_autoRemove(bool)'
340
341 * source/DCCConnection.H: Removed all friends
342 Added accessors (get_bot, get_lastSpoken, get_autoRemove; get_bot
343 reveals the pointer to the bot [PRIVATE POINTER] which probably
344 isn't so nice, but there isn't much to be done about it with the
345 current design of the bot)
346
347 * source/DCCChatConnection.H: Removed all friends
348
349 * source/DCCConnection.H: DCCConnection is now a pure virtual
350 class with the subclass DCCChatConnection
351
352 2003-07-29 Clinton Ebadi <clinton@unknownlamer.org>
353
354 * source/Socket.C (connect): log errors to the bot log instead of
355 printing to stderr
356
357 2003-07-23 Clinton Ebadi <clinton@unknownlamer.org>
358
359 * source/Parser.C (parseMessage): use the find method of std::map
360 to find the command to call instead of [] and then extract the
361 pointer to the userFunction from that if it exists. This appears
362 to fix the crash when one uses an undefined command followed by
363 any defined command.
364
365 2003-04-09 Clinton Ebadi <clinton@unknownlamer.org>
366
367 * source/Interp.C (interp_init_helper): Bind bot:setfloodrate to
368 ScriptCommands::SetFloodRate
369
370 * source/ScriptCommands.C (SetFloodRate): New Method: SetFloodRate
371
372 * source/Bot.C (init_user_functions): Make SETFLOODRATE available
373 to bot master
374
375 * source/Bot.H: Made MAX_MESSAGES writeable
376
377 * source/UserCommands.H: New method: SetFloodRate
378
379 * source/Commands.H: New method: SetFloodRate
380
381 2003-04-03 Clinton Ebadi <clinton@unknownlamer.org>
382
383 * configure.ac: Merged all AC_OUTPUTs at the end
384
385 2003-04-02 Clinton Ebadi <clinton@unknownlamer.org>
386
387 * scripts/bobot-utils.scm: Make exported symbols from
388 the-bot-module available in the guile-user module so that scripts
389 loaded with Interp::Load function.
390
391 2003-03-30 Clinton Ebadi <clinton@unknownlamer.org>
392
393 * scripts/bobot-utils.scm (bot:load-module): Loads a file from the
394 %bot:loadpath into its own module and returns that (unnamed) module
395 (bot:use-module): Calls bot:load-module and then adds the newly
396 loaded module to the (current-module)'s use-list
397
398 * source/Interp.C (interp_init_helper): New procedure to initialize
399 the-bot-module (this is the old Interp::Startup verbatim)
400 (interp_post_startup_helper): New procedure to export
401 the-bot-module from bot_module
402 (Startup): Now calls interp_init_helper and
403 interp_post_startup_helper to initalize the bot module system
404
405 * source/Interp.H: Added private variable bot_module to Interp
406
407 2002-11-04 Clinton Ebadi <clinton@unknownlamer.org>
408
409 * scripts/bobot-utils.scm: Added bot: to regex functions (yes,
410 this breaks existing scripts, this is the unstable tree after all)
411
412 2002-11-03 Clinton Ebadi <clinton@unknownlamer.org>
413
414 * source/Mask.C (match): Made Mask::match case insensitive
415
416 2002-09-23 Clinton Ebadi <clinton@unknownlamer.org>
417
418 * source/Interp.C (scm_apply_wrapper): turned off locking of
419 Interp::mutex to see if this makes the bot work again...and it
420 does!
421
422 2002-09-07 Clinton Ebadi <clinton@unknownlamer.org>
423
424 * configure.ac: Removed arguments to AM_INIT_AUTOMAKE and updated
425 everything to use aclocal/automake 1.6
426
427 2002-08-27 Clinton Ebadi <clinton@unknownlamer.org>
428
429 * source/DCCPerson.H (class DCCPerson): Added
430 UserCommands::DCCList as a friend (friends are better than the old
431 DCC() function at least).
432
433 * source/DCCManager.H (class DCCManager): Added
434 UserCommands::DCCList as a friend
435
436 * source/Interp.H (class Interp): Made function scm_apply_wrapper
437 a friend so it can lock Interp::mutex
438
439 * source/Interp.C (scm_apply_wrapper): Lock Interp::mutex if
440 MULTITHREAD is defined (it is always defined when scripting is
441 enabled) so that Sockets can be made multithreaded using
442 CommonC++.
443
444 * source/DCCPerson.H: Removed DCC method and made Bot a friend
445 Made DCCManager a friend
446
447 * source/DCCManager.H (class DCCManager): Removed MAP() method
448 and made Bot a friend of DCCManager
449
450 2002-08-18 Clinton Ebadi <clinton@unknownlamer.org>
451
452 * source/Interp.C (Startup): Renamed bot:DCC-chat-send to
453 bot:dcc-chat-send.
454
455 * bobot++.texinfo (Hook Types): Fixed a typo (I wrote
456 user!nick@host instead of the correct nick!user@host).
457
458 * source/Interp.C (Startup): Register bot:DCC-chat-send
459
460 * source/ScriptCommands.C (sendDCCChatMessage): Added method again
461
462 2002-08-08 Clinton Ebadi <clinton@unknownlamer.org>
463
464 * source/String.C (String): The std::string copy constructor now
465 extracts the c_str of the std::string and then takes the strlen of
466 that before copying it. This fixes a bug with DCC where if you did
467 e.g. "!help" the bot would reply with "No TOPIC PRIVMSG FOUND" or
468 something like that, depending on what the last message was
469 because Socket will insert a \0 into its semi-static buffer, so
470 the len of the String will not equal the strlen of its char*.
471
472 2002-08-07 Clinton Ebadi <clinton@unknownlamer.org>
473
474 * source/DCCPerson.H: Removed destructor (I = idiot)
475
476 * source/DCCConnection.H: DCCManager is now a friend of
477 DCCConnection (ugh, the bot has way too many friends).
478
479 * source/DCCPerson.H: Added DCC member that returns a const
480 DCCConnection* (the dcc connection). This isn't saved anywhere
481 because when a DCCPerson is destroyed, its connection is also
482 destroyed.
483
484 * source/Bot.H: dccConnections is now a DCCManager
485
486 * source/DCCPerson.H: Added destructor
487 Added handleInput method
488
489 * source/DCCManager.C: New file
490 (addConnection): Wrote method, add a DCCConection to the manager
491
492 * source/DCCManager.H: New file
493
494 * source/Interp.C (Startup): Register bot:DCC-chat-send
495 (Startup): Removed sendDCCChatMessage stuff
496
497 * source/ScriptCommands.C (sendDCCChatMessage): New method:
498 sendDCCChatMessage (to, message) sends message to to.
499
500 * source/DCCConnection.C (connect): Run DCC_CHAT_BEGIN hook with
501 one arg: from (user!nick@host).
502
503 * source/DCCParser.C (parseLine): Runs DCC_CHAT_MESSAGE hook with
504 two args: from (user!nick@host) and line
505
506 2002-08-06 Clinton Ebadi <clinton@unknownlamer.org>
507
508 * source/Interp.C (Startup): Two new Scheme values:
509 hooks/dcc/chat-begin and hooks/dcc/chat-message for the
510 DCC_CHAT_BEGIN and DCC_CHAT_MESSAGE hooks.
511
512 * source/BotInterp.H: Added two new enum values to Hook:
513 DCC_CHAT_BEGIN and DCC_CHAT_MESSAGE for the DCC chat start and DCC
514 chat message hooks
515
516 2002-08-05 Clinton Ebadi <clinton@unknownlamer.org>
517
518 * source/Parser.C (parseCTCP): Removed call to htonl and fixed
519 DCC! Ack, sockets take their arguments in network byte order so
520 there is no need to convert to host...now DCC _sort of_ works.
521
522 2002-08-04 Clinton Ebadi <clinton@unknownlamer.org>
523
524 * source/UserList.C (save): Increment iterator twice to get around
525 bug (see BUGS #2)
526
527 * source/ServerQueue.C: Now sends SEND_* hooks instead of
528 triggered general hooks.
529
530 * source/Interp.C (Startup): New scheme side defines: hooks/send/*
531 (* = the new SEND_ hooks, but lowercase).
532
533 * source/BotInterp.H: New hook types (SEND_..., ... = ACTION,
534 CTCP, PUBLIC, MESSAGE). These are triggered on send messages.
535
536 2002-08-01 Clinton Ebadi <clinton@unknownlamer.org>
537
538 * source/Bot.C (set_log_file): Oops! Fixed logging. Now the bot
539 logs again.
540
541 * source/Socket.C (readLine): Now uses a static std::string that
542 starts out with 512 chars. This will never need to be resized for
543 usualy IRC messages, but might be for DCC messages
544
545 2002-07-31 Clinton Ebadi <clinton@unknownlamer.org>
546
547 * scripts/bobot-utils.scm (not-from-me): New syntax.
548
549 * source/ScriptCommands.C (AddHook): Now takes another optional
550 arg--name that will name the hook (see the hooks section in the
551 manual for what this does).
552
553 * source/BotInterp.H: Added name field to Hook
554
555 2002-07-29 Clinton Ebadi <clinton@unknownlamer.org>
556
557 * source/ServerQueue.C (sendPrivmsg): Now calls hooks on own
558 PRIVMSGes because the IRC server doesn't echo them back to the
559 bot. This could be useful for something (e.g. log script).
560
561 2002-07-27 Clinton Ebadi <clinton@unknownlamer.org>
562
563 * source/Interp.C (Shutdown): Runs bot:exit-hook hooks
564 (Startup): New var for Scheme: bot:exit-hook. Calls the thunks
565 associated with the hook when Interp::Shutdown is called (bot exit).
566
567 2002-07-23 Clinton Ebadi <clinton@unknownlamer.org>
568
569 * source/BotInterp.H (Hook<): Changed behavior of Hook's <. If a
570 hook is greater than or less than the other hook, only the
571 priority is considered. However, if both hooks have the same
572 priority, then the fallthru-ness is considered, with fallthru
573 hooks being greater than non-fallthru hooks.
574
575 * source/BotInterp.C (hptr_lt): Added this static function to be
576 used to sort the hooks list (now hooks should be sorted using
577 Hook's operator < instead of using pointer comparision, meaning
578 the new hook system will work correctly)
579
580 * scripts/bobot-utils.scm: Make bot:log use for-each instead of
581 map because we don't need the result of the displays (this would
582 just be a list of #<undefined> values and is a waste of memory).
583
584 2002-07-13 Clinton Ebadi <clinton@unknownlamer.org>
585
586 * source/Bot.C (Bot): userFunctions is now a map for efficiency
587 (worst case search is now NlogN instead of N). This improvement is
588 not as drastic as the one gained by making the Parser functions
589 list a map (because we don't scan this map for every message), but
590 it helps to clean up the code
591
592 2002-07-12 Clinton Ebadi <clinton@unknownlamer.org>
593
594 * source/Parser.H: Removed userFunctionsStruct
595
596 * source/Interp.C (Startup): ScriptCommands::sendCTCP registered
597 as bot:send-CTCP for Scheme
598
599 * source/ScriptCommands.C (sendCTCP): Wrote sendCTCP
600
601 2002-07-11 Clinton Ebadi <clinton@unknownlamer.org>
602
603 * source/ServerQueue.C (sendUser): Changed . . in USER command to
604 0 * (which is the Right Way to because <mode> must be a number...)
605
606 * source/Parser.C (init): New method of Parse. This initalizes the
607 functions map. functions replaces the old functions array, and
608 should yield better performance (since the functions array had to
609 be scanned for every incoming message)
610
611 * source/Parser.H: New member, functions (private)
612
613 2002-07-10 Clinton Ebadi <clinton@unknownlamer.org>
614
615 * source/Interp.C (Startup): New symbols: bot:user-*
616 [none|user|trusted|friend|master] are defined in Scheme as the
617 different levels of the users.
618 (Startup): All bot-* variables are now bot:*
619
620 2002-07-09 Clinton Ebadi <clinton@unknownlamer.org>
621
622 * source/Bot.H: Made some variables private because they shouldn't
623 be changed at runtime
624
625 * source/Parser.C (parseCTCP): Reneabled DCC CHAT (I want to test
626 this out to see if it works and make it work)
627
628 * source/Bot.C (Bot::Bot): New var: logs_dir. Set to the log file
629 dir.
630
631 * scripts/bobot-utils.scm: Fixed a typo (I forgot the / after
632 scripts in the user scripts dir) that made bobot++ not able to
633 load scripts from the user scripts dir
634
635 2002-07-08 Clinton Ebadi <clinton@unknownlamer.org>
636
637 * source/BotInterp.C (RunHooks): Changed iterators to
638 reverse_iterators because the hooks list is sorted in ascending
639 order--higher priority and fallthrough hooks appear _after_ the
640 lower priority and non-fallthrough hooks.
641
642 * source/Main.C (print_long_help): Added function
643 (print_short_help): Renamed from printUsage
644 (namespace): Most stuff in here is now defined in an anonymouse
645 namespace so it doesn't have external linkage
646 (real_main): Uses getopt_long instead of getopt. Added several
647 command line arguments (bobotpp --help for a full list).
648
649 * scripts/bobot-utils.scm (bot-load): Function moved from
650 bobot-scheme.scm
651
652 * source/Interp.C (Startup): Autoloads
653 PREFIX/bobotpp/scripts/bobot-utils.scm now
654 (Startup): New Scheme variable: bot-sys-scripts-dir (system
655 scripts dir)
656
657 * source/bobot-scheme.scm.in: Removed
658
659 * source/Makefile.am: Removed bobot-scheme.scm compiliation
660
661 * configure.ac (PREFIX): configure.ac defined prefix now
662
663 * source/Main.C (real_main): Default configuration is now read
664 from /etc/bobotpp/default
665 * source/bobot-scheme.scm.in: Added file. This defines the
666 'bot-load' procedure which will load a file from
667 $HOME/.bobotpp/scripts/ or @datadir@/bobotpp/scripts/ if the
668 script doesn't exist in the user script dir.
669
670 2002-07-01 Clinton Ebadi <clinton@unknownlamer.org>
671
672 * bobot++.texinfo: Started docs (just a skeleton right now)
673
674 * source/ScriptCommands.C (AddHook): Now takes pri and fall opt
675 args to set a hooks priority and whether or not it will
676 fallthrough. These args are optional.
677
678 * source/Interp.C (Startup): addhook now takes 3 req and 2 opt args
679
680 * source/BotInterp.C (AddHook): Now uses priority and fallthrough
681 (RunHooks): exec fallthrough hooks first.
682
683 * source/BotInterp.H: Changed Hooks to have priority
684 Added fhooksMap to BotInterp (fallthrough)
685
686 * source/UserCommands.C (AddShit): Converted to use Commands
687
688 2002-06-21 Clinton Ebadi <clinton@unknownlamer.org>
689
690 * source/Commands.C (AddUser): Fixed a one-off (function call was
691 before a brace instead of after one) that caused a segfault when
692 the user mask was a wildcard
693
694 2002-06-20 Clinton Ebadi <clinton@unknownlamer.org>
695
696 * all files: Updated address of the FSF
697
698 * source/UserCommands.C (AddUser): Uses Commands now instead of
699 manipulating the bot directly
700
701 2002-06-18 Clinton Ebadi <clinton@unknownlamer.org>
702
703 * source/ScriptCommands.C (AddShit): Filled in function.
704
705 * source/Interp.C (Startup): Bind bot-adduser to
706 ScriptCommands::AddUser instead of Action
707 (Startup): Bind bot-addshit to ScriptCommands::AddShit
708
709 * source/ScriptCommands.C (AddUser): Filled in function
710
711 * source/ServerList.C (delServer): Changed (n - 1) to n...n-1
712 would have caused problems if you used more than one server
713
714 * source/Parser.H: Changed const char* to String in userFunctionStruct
715
716 * source/String.H: Added std::string compatibility members
717
718 * configure.ac: You can now disable Crypt and scripting
719
720 * source/*: Added #include "config.h" where needed
721
722 * configure.ac: Added AM_CONFIG_HEADER
723
724 * config.h.in: added file
725
726 * source/Queue.C: Didn't notice iostream.h here! Fixed
727
728
729 Copyright 2002,2003,2004,2005 Clinton Ebadi
730 Copying and distribution of this file, with or without modification, are
731 permitted provided the copyright notice and this notice are preserved.