[project @ 2002-08-02 04:31:30 by unknown_lamer]
[clinton/bobotpp.git] / ChangeLog
1 2002-08-01 Clinton Ebadi <clinton@unknownlamer.org>
2
3 * source/Bot.C (set_log_file): Oops! Fixed logging. Now the bot
4 logs again.
5
6 * source/Socket.C (readLine): Now uses a static std::string that
7 starts out with 512 chars. This will never need to be resized for
8 usualy IRC messages, but might be for DCC messages
9
10 2002-07-31 Clinton Ebadi <clinton@unknownlamer.org>
11
12 * scripts/bobot-utils.scm (not-from-me): New syntax.
13
14 * source/ScriptCommands.C (AddHook): Now takes another optional
15 arg--name that will name the hook (see the hooks section in the
16 manual for what this does).
17
18 * source/BotInterp.H: Added name field to Hook
19
20 2002-07-29 Clinton Ebadi <clinton@unknownlamer.org>
21
22 * source/ServerQueue.C (sendPrivmsg): Now calls hooks on own
23 PRIVMSGes because the IRC server doesn't echo them back to the
24 bot. This could be useful for something (e.g. log script).
25
26 2002-07-27 Clinton Ebadi <clinton@unknownlamer.org>
27
28 * source/Interp.C (Shutdown): Runs bot:exit-hook hooks
29 (Startup): New var for Scheme: bot:exit-hook. Calls the thunks
30 associated with the hook when Interp::Shutdown is called (bot exit).
31
32 2002-07-23 Clinton Ebadi <clinton@unknownlamer.org>
33
34 * source/BotInterp.H (Hook<): Changed behavior of Hook's <. If a
35 hook is greater than or less than the other hook, only the
36 priority is considered. However, if both hooks have the same
37 priority, then the fallthru-ness is considered, with fallthru
38 hooks being greater than non-fallthru hooks.
39
40 * source/BotInterp.C (hptr_lt): Added this static function to be
41 used to sort the hooks list (now hooks should be sorted using
42 Hook's operator < instead of using pointer comparision, meaning
43 the new hook system will work correctly)
44
45 * scripts/bobot-utils.scm: Make bot:log use for-each instead of
46 map because we don't need the result of the displays (this would
47 just be a list of #<undefined> values and is a waste of memory).
48
49 2002-07-13 Clinton Ebadi <clinton@unknownlamer.org>
50
51 * source/Bot.C (Bot): userFunctions is now a map for efficiency
52 (worst case search is now NlogN instead of N). This improvement is
53 not as drastic as the one gained by making the Parser functions
54 list a map (because we don't scan this map for every message), but
55 it helps to clean up the code
56
57 2002-07-12 Clinton Ebadi <clinton@unknownlamer.org>
58
59 * source/Parser.H: Removed userFunctionsStruct
60
61 * source/Interp.C (Startup): ScriptCommands::sendCTCP registered
62 as bot:send-CTCP for Scheme
63
64 * source/ScriptCommands.C (sendCTCP): Wrote sendCTCP
65
66 2002-07-11 Clinton Ebadi <clinton@unknownlamer.org>
67
68 * source/ServerQueue.C (sendUser): Changed . . in USER command to
69 0 * (which is the Right Way to because <mode> must be a number...)
70
71 * source/Parser.C (init): New method of Parse. This initalizes the
72 functions map. functions replaces the old functions array, and
73 should yield better performance (since the functions array had to
74 be scanned for every incoming message)
75
76 * source/Parser.H: New member, functions (private)
77
78 2002-07-10 Clinton Ebadi <clinton@unknownlamer.org>
79
80 * source/Interp.C (Startup): New symbols: bot:user-*
81 [none|user|trusted|friend|master] are defined in Scheme as the
82 different levels of the users.
83 (Startup): All bot-* variables are now bot:*
84
85 2002-07-09 Clinton Ebadi <clinton@unknownlamer.org>
86
87 * source/Bot.H: Made some variables private because they shouldn't
88 be changed at runtime
89
90 * source/Parser.C (parseCTCP): Reneabled DCC CHAT (I want to test
91 this out to see if it works and make it work)
92
93 * source/Bot.C (Bot::Bot): New var: logs_dir. Set to the log file
94 dir.
95
96 * scripts/bobot-utils.scm: Fixed a typo (I forgot the / after
97 scripts in the user scripts dir) that made bobot++ not able to
98 load scripts from the user scripts dir
99
100 2002-07-08 Clinton Ebadi <clinton@unknownlamer.org>
101
102 * source/BotInterp.C (RunHooks): Changed iterators to
103 reverse_iterators because the hooks list is sorted in ascending
104 order--higher priority and fallthrough hooks appear _after_ the
105 lower priority and non-fallthrough hooks.
106
107 * source/Main.C (print_long_help): Added function
108 (print_short_help): Renamed from printUsage
109 (namespace): Most stuff in here is now defined in an anonymouse
110 namespace so it doesn't have external linkage
111 (real_main): Uses getopt_long instead of getopt. Added several
112 command line arguments (bobotpp --help for a full list).
113
114 * scripts/bobot-utils.scm (bot-load): Function moved from
115 bobot-scheme.scm
116
117 * source/Interp.C (Startup): Autoloads
118 PREFIX/bobotpp/scripts/bobot-utils.scm now
119 (Startup): New Scheme variable: bot-sys-scripts-dir (system
120 scripts dir)
121
122 * source/bobot-scheme.scm.in: Removed
123
124 * source/Makefile.am: Removed bobot-scheme.scm compiliation
125
126 * configure.ac (PREFIX): configure.ac defined prefix now
127
128 * source/Main.C (real_main): Default configuration is now read
129 from /etc/bobotpp/default
130 * source/bobot-scheme.scm.in: Added file. This defines the
131 'bot-load' procedure which will load a file from
132 $HOME/.bobotpp/scripts/ or @datadir@/bobotpp/scripts/ if the
133 script doesn't exist in the user script dir.
134
135 2002-07-01 Clinton Ebadi <clinton@unknownlamer.org>
136
137 * bobot++.texinfo: Started docs (just a skeleton right now)
138
139 * source/ScriptCommands.C (AddHook): Now takes pri and fall opt
140 args to set a hooks priority and whether or not it will
141 fallthrough. These args are optional.
142
143 * source/Interp.C (Startup): addhook now takes 3 req and 2 opt args
144
145 * source/BotInterp.C (AddHook): Now uses priority and fallthrough
146 (RunHooks): exec fallthrough hooks first.
147
148 * source/BotInterp.H: Changed Hooks to have priority
149 Added fhooksMap to BotInterp (fallthrough)
150
151 * source/UserCommands.C (AddShit): Converted to use Commands
152
153 2002-06-21 Clinton Ebadi <clinton@unknownlamer.org>
154
155 * source/Commands.C (AddUser): Fixed a one-off (function call was
156 before a brace instead of after one) that caused a segfault when
157 the user mask was a wildcard
158
159 2002-06-20 Clinton Ebadi <clinton@unknownlamer.org>
160
161 * all files: Updated address of the FSF
162
163 * source/UserCommands.C (AddUser): Uses Commands now instead of
164 manipulating the bot directly
165
166 2002-06-18 Clinton Ebadi <clinton@unknownlamer.org>
167
168 * source/ScriptCommands.C (AddShit): Filled in function.
169
170 * source/Interp.C (Startup): Bind bot-adduser to
171 ScriptCommands::AddUser instead of Action
172 (Startup): Bind bot-addshit to ScriptCommands::AddShit
173
174 * source/ScriptCommands.C (AddUser): Filled in function
175
176 * source/ServerList.C (delServer): Changed (n - 1) to n...n-1
177 would have caused problems if you used more than one server
178
179 * source/Parser.H: Changed const char* to String in userFunctionStruct
180
181 * source/String.H: Added std::string compatibility members
182
183 * configure.ac: You can now disable Crypt and scripting
184
185 * source/*: Added #include "config.h" where needed
186
187 * configure.ac: Added AM_CONFIG_HEADER
188
189 * config.h.in: added file
190
191 * source/Queue.C: Didn't notice iostream.h here! Fixed
192
193
194 Copyright 2002 Clinton Ebadi
195 Copying and distribution of this file, with or without modification, are
196 permitted provided the copyright notice and this notice are preserved.