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