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