]> git.donarmstrong.com Git - infobot.git/blob - ChangeLog
3257231e99b91ec77d4e64cd2532294b23b4fe8c
[infobot.git] / ChangeLog
1 2007-03-13      troubled
2
3         * src/IRC/IrcHelpers.pl: Fixed bug in "+sed" that caused the bot
4           to flood itself off the network when passed large s///g;. A
5           temporary limit of 255 charaters on the output has been enabled.
6
7 2007-03-11 22:00  troubled
8
9         * src/{Process.pl,UserExtra.pl}: Fixed bug with karma stats. It
10           wasnt supplying the channel and causing a dupe pkey issue and
11           also resulted in global stats instead of per channel. Stats
12           are now per channel again. As a result, you should probably:
13           DELETE FROM stats WHERE channel = 'PRIVATE' AND "type" = 'karma';
14           to clean up since they will never match now, or be pointless to
15           keep track of because karma can only be done in channel.
16
17 2007-03-08 00:00  troubled
18
19         * files/sample/blootbot.config: set tempDir changed to /tmp and
20           changed pgsql to SUPPORTED!
21         * src/dbi.pl: Fixed SQL comments (--) bug that prevented tables
22           from being created during startup.
23         * src/Modules/Factoids.pl: Typo for "factstats locked in selColHash
24           was preventing it from finding the func. Also addressed a !WARN!
25           issue about sorting a scalar.
26         * src/dbi.pl: Altered checkTables() to pass $dbtype when creating
27           tables. Table sql now called from setup/<$dbtype>/$table.sql
28         * src/Modules/Topic.pl: Fixed topicAuthor when no topic existed
29           and cleaned up original if statement to remove redundancy
30         * Reorganized the setup/ dir. Put schema SQL for each db type
31           into its own dir to allow customization. See the README file
32         * src/dbi.pl: Simplified the pgsql "SHOW TABLES" SQL
33
34 2007-03-07 14:06  troubled
35
36         * setup/pgsql/: Added pgsql specific dir. To be completed later
37         * setup/pgsql/pgsql-schema.sql: Import this file into an precreated
38           database as per blootbot.config and pgsql should be good to go
39         * INSTALL.pgsql: Changes to reflect semi-function pgsql progress
40
41 2007-03-06 00:00  troubled
42
43         * src/Process.pl: sqlReplace switched to sqlSet to fix pgsql.
44           sqlReplace should be removed since its not pg friendly. 
45           There is no matching REPLACE INTO in pgsql.
46         * src/Factoids/DBCommon.pl: &setFactInfo during ~unlock set
47           time to NULL which Pgsql wants "0" since NOT NULL
48         * src/Factoids/Update.pl: see Process.pl change
49         * src/Misc.pl: see Process.pl change
50         * src/dbi.pl: Added working PostgreSQL support! yay! ;)
51         * src/Modules/botmail.pl: &sqlReplace -> &sqlSet; removed 
52           &sqlQuote (data already quoted and broke 1 msg only)
53         * src/IRC/IrcHooks.pl: see Process.pl change
54         * src/IRC/Schedulers.pl: see Process.pl change
55
56 2005-02-18 00:00  timriker
57
58         * CMD: is now cmd:
59
60 2005-02-18 00:00  timriker
61
62         * src/Factoids/Question.pl: minVolunteerLength now per channel
63         * src/core.pl: getChanConf checks _default too
64         * src/: "s/hasParam/IsChanConfOrWarn/"
65         * src/: add handling for channel specific factoids:
66           "#botpark logs" -> http://ibot.rikers.org/botpark
67           factoidSearch is a space delimited list of prefixes to try
68         * src/: kill %myModules - loadMyModule expects the CORRECT CASE basename
69         * .: a ton of other crap that TimRiker never documented here
70
71 2001-04-28 22:04  dms
72
73         * src/IRC/: IrcHelpers.pl, IrcHooks.pl, Schedulers.pl: hookMode:
74         change chan to nick.  if deopped by chanserv, check it dont change
75         channel limits during netsplit.
76
77 2001-04-26 22:37  dms
78
79         * src/: DynaConfig.pl, Process.pl, UserExtra.pl, core.pl,
80         Factoids/Statement.pl, IRC/Irc.pl, IRC/IrcHelpers.pl,
81         IRC/IrcHooks.pl, IRC/Schedulers.pl, Modules/News.pl: "~forget blah"
82         now works. thanks to ElectricElf documented user flags
83         public/private/notice send limit now configurable. thanks to EE
84         added "countrystats" command.
85         "blootbot: are you fixed now? :)" -- fixed. found by greycat
86         use hasParam instead of IsParam in UserExtra.pl/userCommands()
87         command "ord" handling fixed.
88
89 2001-04-24 20:58  dms
90
91         * src/: logger.pl, IRC/Irc.pl, IRC/IrcHelpers.pl, IRC/IrcHooks.pl,
92         IRC/Schedulers.pl: fix more warnings
93         set $ident in nick()
94
95 2001-04-23 20:14  dms
96
97         * src/: Process.pl, UserExtra.pl, logger.pl, IRC/Irc.pl,
98         IRC/IrcHooks.pl, IRC/Schedulers.pl: allow join to join irrelevent of being on chan
99         chanstats: count stats if exist - make perl happy
100         misc cleanup of status()
101         add time taken to join all channels, useless stats.
102         disable notify code
103         leakCheck: show stats on hash chanstats
104         mkBackup: show age of file.
105
106 2001-04-22 22:58  dms
107
108         * src/IRC/IrcHooks.pl: fix on_targettoofast once and for all, hopefully.
109
110 2001-04-22 22:01  dms
111
112         * src/: UserExtra.pl, logger.pl: make sure chanstats don't flood
113         don't throttle if it's a perl warn message
114
115 2001-04-22 21:52  dms
116
117         * src/Factoids/Reply.pl: woops... forgot this aswell
118
119 2001-04-22 21:48  dms
120
121         * src/Factoids/Reply.pl: disabled literal if factoid is requested via /msg by author; use literal
122         instead
123
124 2001-04-22 20:25  dms
125
126         * src/IRC/: Irc.pl, IrcHooks.pl, Schedulers.pl: don't call chanservcheck in joinnextchan
127         call chanservcheck in on_endofnames
128         ircCheck "resets" itself if it thinks so
129
130 2001-04-22 20:17  dms
131
132         * src/: Factoids/Question.pl, Factoids/Reply.pl, IRC/Irc.pl,
133         Modules/UserDCC.pl: part now warns if we're on a channel - allow it anyway.
134         added "reset" to DCC CHAT
135
136 2001-04-21 22:37  dms
137
138         * TODO: todo list, for those who want to know what "new" features will be coming
139
140 2001-04-20 21:27  dms
141
142         * src/: Process.pl, IRC/Schedulers.pl: we didn't set modified_time for deleted factoids - fixed
143         also... if final delete factoid list is >50... don't do it!
144
145 2001-04-20 21:16  dms
146
147         * src/: UserExtra.pl, IRC/Irc.pl: chagned notice lines/sec to 3
148         made connectivity percentage 5 significant decimal places.
149
150 2001-04-20 20:54  dms
151
152         * src/: CommandStubs.pl, DynaConfig.pl, Misc.pl, Process.pl,
153         UserExtra.pl, Factoids/Question.pl, Factoids/Reply.pl,
154         Factoids/Statement.pl, IRC/Irc.pl, IRC/IrcHelpers.pl,
155         IRC/IrcHooks.pl, IRC/Schedulers.pl, Modules/Debian.pl,
156         Modules/DebianExtra.pl, Modules/Factoids.pl, Modules/Topic.pl,
157         Modules/Units.pl, Modules/Uptime.pl, Modules/UserDCC.pl: converted %{$blah{$blah}} to %{ $blah{$blah} }
158         added IRC hooks to catch failed channel joins
159         chanserv function moved to joinNextChan
160         created chanserv function for "common" use, chanServCheck
161         changed cache{chanlimitChange} hash a little
162         chanserv check removed from on_endofnames
163         typo on on_invite - fixed.
164         chanserv/ops removed from ircCheck()
165         joinNextChan removed from ircCheck()
166         added preliminary debian BTS frontend support
167
168 2001-04-19 20:11  dms
169
170         * src/Modules/News.pl: news: don't list new items if they don't have Text.
171
172 2001-04-18 23:07  dms
173
174         * src/: CommandStubs.pl, IRC/Irc.pl, IRC/IrcHooks.pl,
175         IRC/Schedulers.pl: fixed seen ""
176         added where debugging messages came from (functions)
177         fixed reversed use of % in if statement, stupid me :)
178         changed backup times for files again
179
180 2001-04-18 22:51  dms
181
182         * src/IRC/Irc.pl: forgot this one
183
184 2001-04-18 22:50  dms
185
186         * src/: UserExtra.pl, core.pl, IRC/Irc.pl, IRC/Schedulers.pl: added flood protection for notice()
187         added connectivity percentage to ircstats.
188         other changes forgotten
189
190 2001-04-18 22:41  dms
191
192         * src/IRC/IrcHooks.pl: fixed the following bugs:
193         [57419] on_ttf: X1 Target change too fast. Please wait 50 seconds.
194         [57604] !WARN! IsChanConf: lowercased chan. (Read error to
195                 boren-[adsl-63-197-68-132.dsl.snfc21.pacbell.net]: EOF from client)
196
197 2001-04-18 22:30  dms
198
199         * src/: core.pl, IRC/IrcHelpers.pl, IRC/Schedulers.pl,
200         Modules/W3Search.pl: fix chanlimitChange time
201         w3search => "blah for blah" fails - fixed.
202
203 2001-04-17 23:56  dms
204
205         * src/IRC/IrcHelpers.pl: ok... use "" around hashes that use _ bare.
206
207 2001-04-17 23:34  dms
208
209         * src/: core.pl, Modules/News.pl: ...
210
211 2001-04-17 22:03  dms
212
213         * src/Modules/News.pl: forgot to use \d+ for read shortcut
214         other changes that the last commit missed or something
215
216 2001-04-17 20:35  dms
217
218         * src/core.pl: another round of useless changes
219
220 2001-04-16 21:45  dms
221
222         * src/: CommandStubs.pl, DynaConfig.pl, core.pl, IRC/Irc.pl,
223         IRC/IrcHooks.pl, IRC/Schedulers.pl, Modules/News.pl: chanset: fixed the following problem.
224                 .chanset #debian +babeflish
225                 .chanset #debian -babeflish
226                 -chanunset #debian babelflish
227         - yet another minor bug, use !msgType for dcc chat aswell.
228         - selfflood proteciton for /msg
229                 - like 4/sec or 1k/sec
230                 - msgcount, msgbyte, msgtime
231                 - pubcount, pubbyte, pubtime
232         - fixed other bugs.... weeeeeeee....
233
234 2001-04-14 22:48  dms
235
236         * src/IRC/: IrcHelpers.pl, Schedulers.pl: prevent erratic (multiple) changes of chan limit in short space of time.
237         this would be a major problem in chanlimitVerify@IrcHelpers.pl since
238         it's called for every join.  Better safe than sorry.
239
240 2001-04-14 20:17  dms
241
242         * src/: Process.pl, core.pl, IRC/Irc.pl, IRC/IrcHooks.pl,
243         IRC/Schedulers.pl, Modules/News.pl: IRC/IrcHooks.pl
244                 - forgot to reset msgType/who/chan
245                   after hookMsg in on_msg and on_public.
246                 - on_join: if bot joins, don't do wingate/bans
247                   and other useless stuff
248                 - on_join: set msgType for ICC.
249                 - on_part: set msgType/chan/who
250                 - on_quit: set msgType/chan/who
251                 - on_public: make chan global for ICC
252                 => should fix all bugs.
253                 => I have no idea how this worked so brokenly.
254         News.pl - more more changes
255
256 2001-04-14 00:45  dms
257
258         * src/: core.pl, IRC/IrcHelpers.pl, IRC/IrcHooks.pl,
259         IRC/Schedulers.pl, Modules/News.pl: another round of changes, damn it was hard to figure out why news wasn't
260         appearing properly - I think we still have that problem but it's semi
261         rare.
262         - Also fixed netsplit problems, forgot a next line.
263         - don't run all funky commands in on_join if netsplit is enabled.
264         - other tiny things not worth mentioning.
265
266 2001-04-13 23:23  dms
267
268         * src/: IRC/IrcHelpers.pl, IRC/IrcHooks.pl, IRC/Schedulers.pl,
269         Modules/Factoids.pl, Modules/News.pl: news: can make news compulsory (chanset +newsNotifyAll)
270               and opt-out (news unnotify)
271         irchooks: splitted into IrcHelpers.pl so we can reload it on the fly.
272         factoids: added debugging for short factoids that may be botched up
273               references
274
275 2001-04-12 21:12  dms
276
277         * src/: UserExtra.pl, db_mysql.pl, IRC/Schedulers.pl,
278         Modules/News.pl, Modules/UserDCC.pl: news: added news->factoid redirection
279         ton load of minor changes or bug fixes that cannot really be summarized
280
281 2001-04-11 22:34  dms
282
283         * src/: Process.pl, UserExtra.pl, db_mysql.pl, modules.pl,
284         IRC/IrcHooks.pl, IRC/Schedulers.pl, Modules/Debian.pl,
285         Modules/News.pl: A round of fixes:
286                 - added dbReplace but it's broken
287                 - debian infopackages shows dist
288                 - news user cache now works properly
289                 - "+" now works for all commands, not only for factoids
290
291 2001-04-07 23:59  dms
292
293         * src/Misc.pl: isStale is basically used by Debian.pl and we were using age in terms of
294         seconds but the actual function was assuming it was in days - fixed.
295
296 2001-04-07 20:07  dms
297
298         * src/: modules.pl, IRC/Schedulers.pl: - now backup news file just in case.
299         - Other changes we've not documented or small enough not to mention
300
301 2001-04-07 20:07  dms
302
303         * src/Modules/News.pl: - load file if we enabled option on the fly before re-run.
304
305 2001-04-07 20:06  dms
306
307         * src/CommandStubs.pl: - we now check if CODEREF exists.
308
309 2001-04-07 20:06  dms
310
311         * src/UserExtra.pl: - forgot Module for news.
312
313 2001-04-07 20:05  dms
314
315         * src/core.pl: - write opened files on shutdown/hup
316
317 2001-04-06 22:05  dms
318
319         * src/Modules/News.pl: When we did a symlink to all the set commands, the string was made
320         static (set to "Text") so it was broken.
321         also added link from Desc to Text
322
323 2001-04-06 21:56  dms
324
325         * src/Modules/News.pl: Just some more minor changes, to make some people happy, heh.
326
327 2001-04-03 20:06  dms
328
329         * src/: DynaConfig.pl, modules.pl, IRC/IrcHooks.pl,
330         IRC/Schedulers.pl, Modules/News.pl: More clean ups, forgotten what they were, heh.
331
332 2001-04-01 23:25  dms
333
334         * src/Modules/News.pl: forgot to add this file, heh.
335
336 2001-04-01 23:16  dms
337
338         * src/modules.pl: finally nailed this "random" bug noticed by asuffield.
339
340 2001-04-01 23:00  dms
341
342         * files/blootbot.help: added help for news
343
344 2001-04-01 23:00  dms
345
346         * src/: Misc.pl, IRC/IrcHooks.pl: Second round of News changes and bug fixes, kudos to greycat
347
348 2001-03-31 22:19  dms
349
350         * src/: CommandStubs.pl, DynaConfig.pl, Process.pl, UserExtra.pl,
351         core.pl, modules.pl, Factoids/Statement.pl, Factoids/Update.pl,
352         IRC/Irc.pl, IRC/IrcHooks.pl, IRC/Schedulers.pl, Modules/UserDCC.pl: Many changes, basically added and integrated News, and bug fixes.
353         Some more notes:
354           CommandStubs.pl     - fixed "kernel blah"
355           Modules/UserDCC.pl  - dont print $user when undefined.
356           modules.pl          - added News.pl
357           Modules/News.pl     - new feature.
358           Process.pl          - "blootbot: ok is <reply> :)" -- FIXED.
359
360 2001-02-28 20:17  dms
361
362         * src/IRC/Irc.pl: removed msg/say repeating code.
363
364 2001-02-28 20:17  dms
365
366         * src/Process.pl: don't backup #DEL# factoids. asuffield.
367
368 2001-02-28 20:17  dms
369
370         * src/Factoids/Question.pl: fix for endless loop. asuffield.
371
372 2001-02-28 20:12  dms
373
374         * src/IRC/IrcHooks.pl: msgtime updated in on_msg
375
376 2001-02-28 20:10  dms
377
378         * src/IRC/Schedulers.pl: make dead-connect detection better.
379
380 2001-02-23 20:26  dms
381
382         * src/CommandStubs.pl: strip trailing whitespaces, force use of quotes to enable trailing
383         whitespace. requested by asuffield and \broken?.
384
385 2001-02-23 20:25  dms
386
387         * src/Process.pl: now use "or" instead of "and" operator for "rename".
388
389 2001-02-23 20:24  dms
390
391         * src/IRC/Irc.pl: closedcc debug
392
393 2001-02-23 20:24  dms
394
395         * src/IRC/Schedulers.pl: downlink check update?
396
397 2001-02-20 21:01  dms
398
399         * src/Factoids/Question.pl: - recursive factoid linking added.
400
401 2001-02-20 21:01  dms
402
403         * src/IRC/IrcHooks.pl: - lobotomy check in hookMsg
404
405 2001-02-20 21:00  dms
406
407         * src/Factoids/Update.pl: - reformatted totally
408         - added preliminary append-to-linked-factoid support.
409         - all return calls now return appropriately.
410
411 2001-02-20 21:00  dms
412
413         * src/: Misc.pl, UserExtra.pl: - added mkcrypt, fixed up "crypt" cmd.
414
415 2001-02-20 20:59  dms
416
417         * src/: CommandStubs.pl, core.pl, modules.pl: minor updates, warn fixes, removed comments
418
419 2001-02-20 20:59  dms
420
421         * src/IRC/Schedulers.pl: - lobotomy cache flush.
422         - disable uptime if not loaded.
423         - minor output update.
424
425 2001-02-20 20:58  dms
426
427         * src/Process.pl: - lobotomy warning now cached
428         - use &mkcrypt()
429
430 2001-02-20 20:58  dms
431
432         * src/DynaConfig.pl: - preliminary check of masks in chan for matches.
433         - ckpasswd, clean up.
434
435 2001-02-20 20:58  dms
436
437         * src/Modules/UserDCC.pl: - changed "m" to "n". asu.
438         - flush lobotomy cache on "unlobotomy"
439         - now use &mkcrypt()
440
441 2001-02-17 21:42  dms
442
443         * src/IRC/Schedulers.pl: - minor output update.
444
445 2001-02-17 21:41  dms
446
447         * src/UserExtra.pl: - removed '' from returns
448         - preliminary stats for on/off-line time
449
450 2001-02-17 21:41  dms
451
452         * src/Modules/UserDCC.pl: - ".op" fixed. found by Rev
453         - ".-ban" now removes the ban from the chan.
454
455 2001-02-17 21:40  dms
456
457         * src/IRC/Irc.pl: - sub "op" fixed.
458         - added sub "unban"
459
460 2001-02-17 21:40  dms
461
462         * src/IRC/IrcHooks.pl: - added first time run checks.
463         - on/off-line time stats
464         - on_join ban now kicks with custom reason.
465
466 2001-02-17 21:40  dms
467
468         * src/Factoids/Reply.pl: literal update
469
470 2001-02-17 21:39  dms
471
472         * src/Process.pl: - typo in if statement for "forget" when users
473           don't have +r flag. found by Rev
474         - added "pass" cmd.
475         - added "literal" factoid ask.
476
477 2001-02-17 21:36  dms
478
479         * src/core.pl: memusage support for open/free/net bsd added. patch from Kuma/Rev
480
481 2001-02-13 23:50  dms
482
483         * src/core.pl: update version of bot
484
485 2001-02-13 23:47  dms
486
487         * src/IRC/IrcHooks.pl: make nickserv work on more servers. requested by asuffield
488
489 2001-02-13 23:35  dms
490
491         * src/IRC/IrcHooks.pl: on-ban reason does not work... added debugging
492
493 2001-02-13 23:28  dms
494
495         * files/blootbot.help: updates from asuffield@OPN
496
497 2001-02-13 23:18  dms
498
499         * src/Modules/babel.pl: main:: fixes
500
501 2001-02-13 23:04  dms
502
503         * src/UserExtra.pl: - 'ascii' updates.
504         - hex now honours "allowConv"
505         - found by asuffield.
506         - redir of a redir fixed.
507
508 2001-02-13 22:30  dms
509
510         * src/IRC/IrcHooks.pl: added reason on ban.
511
512 2001-02-13 22:18  dms
513
514         * src/Process.pl: safe delete did not run delFactoid, hah! found by asuffield
515
516 2001-02-13 22:07  dms
517
518         * src/IRC/Irc.pl: ban fixes.
519
520 2001-02-13 22:06  dms
521
522         * src/Modules/UserDCC.pl: - moved read-only stuff from DynaConfig to here.
523         - added newpass
524         - .chpass didn't use arg[0] for user.
525
526 2001-02-13 22:03  dms
527
528         * src/DynaConfig.pl: - now prevent ".chanset +blah 10"
529         - recoded it a bit.
530
531 2001-02-13 22:02  dms
532
533         * src/IRC/IrcHooks.pl: - use "right way" to get keys from hash by checking if the hash ref
534           even exists... perl automatically "creates" this and causes problems
535           later on. (perldoc -f exists or defined)
536         - anti-repeat should not apply to /msg
537         - option to do kick on repeat... preliminary support.
538         - casing fixes to DCC CHAT. (reported by Revenge@OPN)
539
540 2001-02-13 22:01  dms
541
542         * src/IRC/Schedulers.pl: errors from Schedulers (chanlimitcheck) are cached and shown only once.
543
544 2001-02-13 22:00  dms
545
546         * src/Modules/Factoids.pl: - added support to factstats (requested,requesters) of "total" value.
547
548 2001-02-13 21:59  dms
549
550         * src/Modules/babel.pl: debugging added
551
552 2001-02-13 21:58  dms
553
554         * src/Misc.pl: added debian-specific debug to isStale
555
556 2001-02-11 22:25  dms
557
558         * src/: CommandStubs.pl, Misc.pl, modules.pl, IRC/Schedulers.pl,
559         Modules/Debian.pl: remaining stuff... should fix factoids problem I hope
560
561 2001-02-10 00:47  dms
562
563         * src/Modules/babel.pl: typo
564
565 2001-02-10 00:29  dms
566
567         * src/core.pl: slight change to ChanConfList to make schedulers work again
568
569 2001-02-09 23:02  dms
570
571         * src/: IRC/IrcHooks.pl, Process.pl: fixed up ignore code. discovered by debian@OPN
572
573 2001-02-09 22:51  dms
574
575         * src/IRC/Irc.pl: woops, use while instead of foreach for ircloop
576
577 2001-02-09 22:48  dms
578
579         * src/: Files.pl, core.pl: use static value for ircservers file
580
581 2001-02-09 22:18  dms
582
583         * src/core.pl: don't write user/chan file on HUP/restart. confirmed by asuffield
584
585 2001-02-09 21:44  dms
586
587         * src/Modules/UserDCC.pl: we did a sort() when we should not have for '.sched'
588
589 2001-02-09 21:40  dms
590
591         * src/CommandStubs.pl: changed FlatArg to ArrayArgs to make more sense. by default, we use flat-args
592
593 2001-02-09 21:37  dms
594
595         * src/IRC/IrcHooks.pl: forgot to set nuh for on_join; fixed up ban check on join.
596
597 2001-02-09 21:23  dms
598
599         * src/Process.pl: moved nick lock checking to lock only. detected by irq@OPN
600
601 2001-02-09 21:18  dms
602
603         * src/IRC/Irc.pl: added debugging info to ircloop... if irc() does not return ever, we'll have to take another approach to do connect-next-server-if-cant-connect
604
605 2001-02-09 21:10  dms
606
607         * src/UserExtra.pl: substitute the right vars in getReply when used in tell. found by asuffield
608
609 2001-02-09 00:02  dms
610
611         * src/IRC/IrcHooks.pl: this should fix ignores on global channels. found by 'debian'@OPN
612
613 2001-02-08 23:51  dms
614
615         * src/IRC/Schedulers.pl: divide by zero fix. thought I fixed it 2 weeks ago
616
617 2001-02-08 23:50  dms
618
619         * src/IRC/IrcHooks.pl: - pointless regex in on_dcc_chat_open that I was going to deal with on
620           failed WHOIS (nuh) lookups... now we just compare against "GETTING-NOW"
621         - on_quit debug info much cleaner now.
622
623 2001-02-08 22:09  dms
624
625         * src/CommandStubs.pl: we did not use flat args for forkers. found by asuffield.
626
627 2001-02-08 22:00  dms
628
629         * src/CommandStubs.pl: fix delayed task mechanism to verstats... we have to cache chan/nick/msgType.
630
631 2001-02-08 21:57  dms
632
633         * src/Shm.pl: possible fix for fork crashing and not detecting a crash from parent. warning included
634
635 2001-02-08 21:52  dms
636
637         * src/IRC/: IrcHooks.pl, Schedulers.pl: chan limit check code should now be disabled/re-enabled in relation to netsplits. discovered by asuffield
638
639 2001-02-07 22:12  dms
640
641         * src/Modules/UserDCC.pl: - list all schedulers and their respective time-of-next-run
642
643 2001-02-07 22:11  dms
644
645         * src/IRC/Schedulers.pl: - use CORE::system
646
647 2001-02-07 22:11  dms
648
649         * src/: Modules/Debian.pl, CommandStubs.pl: - finally (about three times) fixed search for "*bin*ssh*" for example,
650           kudos to bod@OPN
651         - also make searchDesc return list of packages and searchDescFE to output it.
652         - use searchDescFE
653
654 2001-02-06 21:10  dms
655
656         * src/Modules/Debian.pl: Fixed by swapping dists hash around.
657
658 2001-02-06 20:42  dms
659
660         * src/Modules/Debian.pl: debugging added.
661
662 2001-02-06 20:42  dms
663
664         * src/Modules/Topic.pl:  ok from "topic -mod" => /msg only!
665
666 2001-02-06 20:42  dms
667
668         * src/IRC/Schedulers.pl: - added auto backup of user/chan files
669         - factoidCheck updates.
670         - nick-in-use timer update.
671
672 2001-02-06 20:41  dms
673
674         * src/: Process.pl, core.pl: - converted %joinverb to %cache
675
676 2001-02-06 20:41  dms
677
678         * src/UserExtra.pl: - added 'unique user count' to chanstats.
679         - wantnick updates
680
681 2001-02-06 20:27  dms
682
683         * src/IRC/IrcHooks.pl: - on_chat, forgot to set '$who'
684         - clean up aswell.
685         - converted %jointime to %cache
686         - we check limit on each on_join now.
687
688 2001-02-06 20:23  dms
689
690         * src/DynaConfig.pl: split off chanset from UserDCC to here to do multiple chans
691         - look at 1.19->1.20 to see changes
692
693 2001-02-06 20:22  dms
694
695         * src/Modules/UserDCC.pl: - Moved most of chanset to DynaConfig
696         - Should be able to do multiple chans now, like ".chanset #chan1 #chan2
697           #chan3 +autojoin"
698         - if _default has option and ".chanunset #blah blah" or ".-chan #blah
699           blah", set vars on all other channels but remove on the channel
700           specific.
701         - if '.-chan blah' is done and does not exist on _default, remove
702           option from all channels.
703         - command to list which chans have option defined/set for.
704         - with respective values.
705         - ".chanset <value>"
706
707 2001-02-06 00:09  dms
708
709         * src/Process.pl: final cruft from old static configuration file fixed... found by irq
710
711 2001-02-06 00:04  dms
712
713         * src/CommandStubs.pl: ok, that failed. lets now set $chan aswell
714
715 2001-02-06 00:00  dms
716
717         * src/CommandStubs.pl: verstats was using dynamic chan var...
718
719 2001-02-05 23:45  dms
720
721         * src/IRC/IrcHooks.pl: dont overwrite nuh{} if it already exists.
722
723 2001-02-05 23:43  dms
724
725         * src/Factoids/: Norm.pl, Question.pl: - remove front/rear whitespaces
726         - trailing symbols should work now.
727
728 2001-02-05 23:30  dms
729
730         * src/IRC/IrcHooks.pl: - endofnames: chanserv ops should work now.
731         - store topic irrevelent of setting.
732         - call ->whois() if nuh is not found.
733
734 2001-02-05 23:29  dms
735
736         * src/Modules/UserDCC.pl: - prevent dupe uses of ".+chan"
737         - when adding new chan, set autojoin.
738
739 2001-02-05 23:29  dms
740
741         * src/IRC/Schedulers.pl: - ircCheck => 120 interval.
742         - dccStatus now only shows chan info where the dcc chat user is on
743           _only_
744         - added checking of %dcc hash for nuh hash checking.
745
746 2001-02-05 22:32  dms
747
748         * src/IRC/Schedulers.pl:  defer leakCheck, increase interval.
749
750 2001-02-05 22:31  dms
751
752         * src/core.pl: comment out debugging
753
754 2001-02-05 22:31  dms
755
756         * src/IRC/IrcHooks.pl: - fixed when chan (msgType = private) is undefined.
757
758 2001-02-04 20:23  dms
759
760         * src/IRC/Irc.pl: reconnect if join fails
761
762 2001-02-04 20:17  dms
763
764         * src/IRC/Irc.pl: - output update
765
766 2001-02-04 20:16  dms
767
768         * src/IRC/IrcHooks.pl: - if in private, "is addressing" => "is /msg'ing".
769         - dccStatus fix ups.
770         - use ScheduleThis where possible.
771
772 2001-02-04 20:14  dms
773
774         * src/IRC/Schedulers.pl: typo for dccStatus fix :)
775
776 2001-02-04 20:14  dms
777
778         * src/Shm.pl: delForked: warn if name is source file.
779
780 2001-02-04 20:13  dms
781
782         * src/IRC/Schedulers.pl: - output update.
783         - prevent "unknown msg" for shm.
784         - typo for dcc hash. fixed.
785         - forgot about users,chops,bans define in dccStatus. fixed.
786
787 2001-02-04 20:13  dms
788
789         * src/CommandStubs.pl: if more than 1/4 users from channel gave version replies, verstats is active.
790
791 2001-02-04 20:12  dms
792
793         * src/core.pl: remove mem increase from DCC CHAT - annoying.
794
795 2001-02-04 00:01  dms
796
797         * src/: IRC/Schedulers.pl, Modules/Slashdot3.pl: more configuration crud and not-thinking-correctly design errors
798
799 2001-02-03 23:51  dms
800
801         * src/UserExtra.pl: added support for old Modules() for telling.
802
803 2001-02-03 23:48  dms
804
805         * src/Misc.pl: added IsParam back to hasParam together with isChanConf
806
807 2001-02-03 23:33  dms
808
809         * src/Factoids/Statement.pl: minor typo when fixing this before
810
811 2001-02-03 23:21  dms
812
813         * src/Modules/Debian.pl: validPackage or indirectly generateIndex should work now for the time being
814
815 2001-02-03 23:09  dms
816
817         * src/Modules/Debian.pl: woops forgot a few old config vars; converted to new format
818
819 2001-02-03 23:06  dms
820
821         * src/Modules/Debian.pl: converted to new gCCD
822
823 2001-02-03 22:46  dms
824
825         * src/Modules/UserDCC.pl: more fixups.
826
827 2001-02-03 22:35  dms
828
829         * src/Modules/UserDCC.pl: now use delete in place of undef
830
831 2001-02-03 22:23  dms
832
833         * src/IRC/IrcHooks.pl: looks like the final touches to fully exploit dynamic configuration have been made
834
835 2001-02-03 22:10  dms
836
837         * src/IRC/IrcHooks.pl: debugging info
838
839 2001-02-03 22:06  dms
840
841         * src/Process.pl: move identify code before outsider checking
842
843 2001-02-03 22:03  dms
844
845         * src/: IRC/Irc.pl, IRC/IrcHooks.pl, Misc.pl: - $nuh{} fix up.
846         - created on_dcc_open_chat for whois reply to get nuh.
847         - getRandomInt - allow decimal.
848
849 2001-02-03 20:52  dms
850
851         * src/: Shm.pl, IRC/Schedulers.pl: - time stamping added.
852         - dead/stale shm removal now works more intelligently.
853           However, older code will attempt to hijack and remove it anyway.
854         - check debian files with gzip -t.
855         - all schedulers should be deferred now.
856
857 2001-02-03 20:51  dms
858
859         * src/IRC/IrcHooks.pl: don't allow those without HOSTS in the user file to DCC CHAT.
860
861 2001-02-03 20:51  dms
862
863         * src/Modules/UserDCC.pl: fixed '.chanset' code.
864
865 2001-02-03 20:50  dms
866
867         * src/IRC/Irc.pl: added _default to chan mask.
868
869 2001-02-02 22:03  dms
870
871         * src/IRC/Schedulers.pl: I think this is the set of missed old->dynamic config changes that had to be done
872
873 2001-02-02 22:03  dms
874
875         * src/Modules/UserDCC.pl: compress config params as muc has possible per line
876
877 2001-02-02 21:42  dms
878
879         * src/core.pl: forgot to initialize counter for Moron
880
881 2001-02-02 21:42  dms
882
883         * src/Misc.pl: check if int is defined for fixPlural
884
885 2001-02-02 21:38  dms
886
887         * src/: DynaConfig.pl, Misc.pl, core.pl, modules.pl,
888         Factoids/Norm.pl, Factoids/Question.pl, Factoids/Reply.pl,
889         Factoids/Update.pl: tiny changes that I've missed
890
891 2001-02-02 21:36  dms
892
893         * src/IRC/: IrcHooks.pl, Schedulers.pl: temporary ignores can be removed automatically once expired
894
895 2001-02-02 21:21  dms
896
897         * src/Process.pl: typo for ckpasswd
898
899 2001-02-02 21:12  dms
900
901         * src/Shm.pl: - if shmRead fails, try openSHM.
902
903 2001-02-02 21:12  dms
904
905         * src/Process.pl: - fixup for question handling.
906
907 2001-02-02 21:12  dms
908
909         * src/UserExtra.pl: - tell: command redirection added.
910
911 2001-02-02 21:12  dms
912
913         * src/Modules/UserDCC.pl: - fix undefined for '.chanset'
914         - minor output update to '.bans'
915
916 2001-02-02 21:11  dms
917
918         * src/DynaConfig.pl: - undefining vars in wrong subs; fixed.
919         - fixes reading user/chan files finally, again.
920
921 2001-02-02 21:10  dms
922
923         * src/: CommandStubs.pl, Modules/babel.pl: - fixes for babelfish
924         - typo of IsChanConf for wwwsearch.
925         - parseCmdHooks return vals fixed.
926         - babel.pl: regex fixed -- works!!!
927
928 2001-02-02 21:09  dms
929
930         * src/: Modules/RootWarn.pl, Modules/Wingate.pl, IRC/Irc.pl,
931         IRC/IrcHooks.pl, IRC/Schedulers.pl: - more fixes to new-style config, should be 99% of it.
932         - convert IsParam() to IsChanConf()
933         - IRC/IrcHooks.pl: minor output update
934         - IRC/Schedulers.pl:
935                 - minor update.
936                 - make getChanConfDefault(PARAM,VALUE,CHAN) instead for convenience.
937                 - temp ignore removal checking loop fixed.
938
939 2001-02-01 22:21  dms
940
941         * src/core.pl: - write user/chan file in 'shutdown'
942
943 2001-02-01 22:18  dms
944
945         * src/Modules/UserDCC.pl: - wrong order in .+ignore
946         - ".chanset #chan" fixup.
947
948 2001-02-01 22:17  dms
949
950         * src/IRC/Irc.pl: - getJoinChans, don't add _default
951         - joinNextChan() - check nickServ_pass
952
953 2001-02-01 22:15  dms
954
955         * src/DynaConfig.pl: - prevent /^[+-]/ options being loaded.
956         - ignore/ban lists now saved properly.
957         - forgot about \+ :-)
958         - verifyUser does caching now!
959
960 2001-02-01 22:13  dms
961
962         * src/IRC/Schedulers.pl: - SC for uptimeCycle
963         - renamed *Cycle to *Loop
964
965 2001-02-01 22:11  dms
966
967         * src/IRC/IrcHooks.pl: - minor output (debug) removed.
968         - new config conversion for rootWarn
969
970 2001-02-01 22:06  dms
971
972         * src/Process.pl: now use pass auth for 'identify'.
973
974 2001-02-01 22:05  dms
975
976         * src/Modules/Debian.pl: regex support for 'query' in &searchDesc()
977
978 2001-01-31 22:53  dms
979
980         * src/CommandStubs.pl: nickometer: there could be multiple results with the same version
981         percentage - fixed. Also don't merge same percentages together like in
982         other list (formListReply) statements.
983
984 2001-01-31 22:31  dms
985
986         * src/CommandStubs.pl: nickometer and verstats: sort descendingly
987         nickometer: fix undefined warning
988
989 2001-01-31 21:31  dms
990
991         * src/Modules/Debian.pl: make $refresh global in this file... removed all duplicates of getting
992         debianRefreshInterval config var.
993
994 2001-01-31 21:28  dms
995
996         * src/IRC/: Irc.pl, IrcHooks.pl: make $nickserv global and set to zero in Irc.pl
997
998 2001-01-31 21:26  dms
999
1000         * src/Misc.pl: check if $age is NULL in &isStale()
1001
1002 2001-01-31 21:18  dms
1003
1004         * src/core.pl: &ChanConfList() typos
1005
1006 2001-01-31 21:18  dms
1007
1008         * src/Process.pl: added 'identify <PASS> [nick]'
1009
1010 2001-01-31 21:18  dms
1011
1012         * src/IRC/Irc.pl: added retval to &ban()
1013
1014 2001-01-31 21:17  dms
1015
1016         * src/Modules/UserDCC.pl: minor fix for ignoreAdd()
1017
1018 2001-01-31 21:17  dms
1019
1020         * src/DynaConfig.pl: prevent repetion in verifyUser.
1021
1022 2001-01-31 21:17  dms
1023
1024         * src/Modules/Freshmeat.pl: - now use gCCD
1025
1026 2001-01-31 21:17  dms
1027
1028         * src/IRC/IrcHooks.pl: - ignore code cleaned up.
1029         - ban on join added.
1030         - added 'b' to &hookMode()'s stats keeping.
1031
1032 2001-01-31 21:16  dms
1033
1034         * src/IRC/Schedulers.pl: - forgot about interval for floodCycle.
1035         - added nuh{} check to &leakCheck()
1036         - added chanserv checking to &ircCheck()
1037
1038 2001-01-30 21:19  dms
1039
1040         * src/Modules/Debian.pl: support for new dynamic configuration infrastructure
1041
1042 2001-01-30 20:47  dms
1043
1044         * src/IRC/Schedulers.pl: - typo for already-run check. should work now.
1045
1046 2001-01-30 20:46  dms
1047
1048         * src/Modules/UserDCC.pl: - added '.sched'
1049
1050 2001-01-30 20:46  dms
1051
1052         * src/Misc.pl: - pSReply hack for &help().
1053
1054 2001-01-30 20:46  dms
1055
1056         * src/Process.pl: - typo for return val of &Modules()
1057
1058 2001-01-30 20:46  dms
1059
1060         * src/DynaConfig.pl: - added removal of possible duplicate configuration entries when bot
1061           exits.
1062
1063 2001-01-30 20:45  dms
1064
1065         * src/: Shm.pl, core.pl, modules.pl, Modules/Uptime.pl: - minor update (output and redundant vars)
1066
1067 2001-01-30 20:44  dms
1068
1069         * src/IRC/IrcHooks.pl: prevent dupes in verstats collection.
1070
1071 2001-01-30 20:44  dms
1072
1073         * src/CommandStubs.pl: - added 'unknown/cloaked' stats item to verstats.
1074         - nickometer chan code cleanup.
1075
1076 2001-01-29 23:04  dms
1077
1078         * src/CommandStubs.pl: added 'verstats'
1079
1080 2001-01-29 23:03  dms
1081
1082         * src/Misc.pl: - strip ^chars update.
1083
1084 2001-01-29 23:03  dms
1085
1086         * src/IRC/Schedulers.pl: - fixed undefined stuff.
1087         - put return's in wrong position; fixed.
1088
1089 2001-01-28 22:34  dms
1090
1091         * src/core.pl: removed obsoleted old dyn code
1092
1093 2001-01-28 22:03  dms
1094
1095         * files/sample/sample.config.proposed: - obsoleted... why was it even added in the first place.
1096
1097 2001-01-28 22:02  dms
1098
1099         * ChangeLog, ChangeLog.old: - finally generated ChangeLog from CVS
1100         - moved old changelog to ChangeLog.old
1101
1102 2001-01-28 22:00  dms
1103
1104         * patches/: Connection.pm, Net::IRC.patch: - removed obsoleted files: it's now done in the bot code.
1105
1106 2001-01-28 21:35  dms
1107
1108         * files/: infobot.help, infobot.ignore, infobot.lang, infobot.lart,
1109         infobot.randtext, infobot.users, sample.config, sample.countdown,
1110         sample.insert: - obsoleted files removed
1111
1112 2001-01-28 21:32  dms
1113
1114         * src/: Misc.pl, Process.pl, Shm.pl, db_mysql.pl,
1115         Factoids/Question.pl, Factoids/Reply.pl, Factoids/Statement.pl,
1116         Factoids/Update.pl, IRC/Irc.pl, Modules/Debian.pl,
1117         Modules/DebianExtra.pl, Modules/Dict.pl, Modules/Factoids.pl,
1118         Modules/Freshmeat.pl, Modules/Kernel.pl, Modules/Quote.pl,
1119         Modules/Search.pl, Modules/Slashdot3.pl, Modules/Topic.pl,
1120         Modules/Units.pl, Modules/Uptime.pl, Modules/W3Search.pl,
1121         Modules/Wingate.pl, Modules/babel.pl, Modules/insult.pl,
1122         Modules/nickometer.pl: - Remaining files that were changed due to removal of $noreply or
1123           indirectly caused by the change over to dynamic configuration
1124
1125 2001-01-28 21:15  dms
1126
1127         * src/IRC/Schedulers.pl: - added dccStatus
1128
1129 2001-01-28 21:14  dms
1130
1131         * src/UserExtra.pl: - if - is used before -about, don't tell us about what was told.
1132         - ignorelist removed.
1133
1134 2001-01-28 21:14  dms
1135
1136         * src/modules.pl: - if core moduels fail to load, exit out properly.
1137
1138 2001-01-28 21:14  dms
1139
1140         * files/blootbot.help: - removed FIXME entries.
1141         - added several new entries for UserDCC. still incomplete.
1142
1143 2001-01-28 21:13  dms
1144
1145         * files/blootbot.ignore: -REMOVED
1146
1147 2001-01-28 21:12  dms
1148
1149         * src/IRC/IrcHooks.pl: - when someone attempts dcc chat, if verbosity > 1,
1150                 show all info regarding that person.
1151
1152 2001-01-28 21:12  dms
1153
1154         * src/logger.pl: pre-config fix.
1155
1156 2001-01-28 21:11  dms
1157
1158         * src/Modules/UserDCC.pl: - added frontend to dynamic user/chan.
1159
1160         - remove 99% of $noreply.               WORKS
1161         - change 'main::' to '::'               WORKS
1162
1163         - ".set" and ".unset" obsoleted.        WORKS
1164         - ".save"                               WORKS
1165         - ".chanset #chan +bool"        WORKS
1166         - ".chanset #chan -bool"        WORKS
1167         - ".chanset #chan"              WORKS
1168         - ".chanunset #chan"            WORKS
1169         - ".chanunset #chan WHAT"       WORKS
1170         - ".chpass <user> [pass]"       WORKS
1171         - ".chattr [user] +flag-flag"   WORKS
1172         - ".chnick [user] [new-user]"   WORKS
1173         - ".+host [user] [new mask]"    WORKS
1174         - ".-host [user] [del mask]"    WORKS
1175         - ".+ban [mask] [chan] [time] [reason]" WORKS
1176         - ".-ban [mask]"                WORKS
1177         - ".whois [user]"               WORKS
1178         - ".bans [chan]" (BOT)          WORKS
1179         - ".banlist" (CHAN)             DONE,TODO
1180         - ".+ignore <mask> [#channel] [time] <comment>" WORKS
1181         - ".-ignore <mask>"             WORKS
1182         - ".ignore [chan]"              WORKS,
1183         - ".adduser <nick>"             DONE,TODO
1184         - ".deluser <nick>"             DONE,TODO
1185         - ".+user <nick> <hostmask>"    WORKS
1186         - ".-user <nick>"               WORKS
1187         - ".chatset [channel] <setting>"        DONE
1188         - ".+chan <#chan>"                      WORKS
1189         - ".-chan <#chan>"                      WORKS
1190         - ".chaninfo"                           WORKS
1191
1192 2001-01-28 21:08  dms
1193
1194         * files/sample/: sample.chan, sample.config, sample.config.example,
1195         sample.config.proposed, sample.countdown, sample.insert,
1196         sample.users: - new directory for sample configuration
1197
1198 2001-01-28 21:04  dms
1199
1200         * files/: blootbot.chan, blootbot.users: - NEW style config file.
1201
1202 2001-01-28 21:02  dms
1203
1204         * src/core.pl: - NEW dynamic user/chan stuff.
1205         - prevent doExit running twice.
1206         - loadMyModulesNow after chanfile!
1207         - added IsChanConf() and getChanConfList
1208
1209 2001-01-28 21:00  dms
1210
1211         * src/DynaConfig.pl: - NEW dynamic user/chan stuff.
1212
1213 2001-01-28 20:50  dms
1214
1215         * src/: User.pl, UserFile.pl: - REMOVED FILES.
1216
1217 2001-01-28 20:50  dms
1218
1219         * src/Files.pl: - removed userfile code.
1220         - removed ignore code.
1221
1222 2001-01-28 20:49  dms
1223
1224         * src/CommandStubs.pl: - aCH: don't remake hook hash.
1225         - pCH: warn if multiple matches are found.
1226         - added nickometer for channel.
1227
1228 2001-01-18 21:46  dms
1229
1230         * src/Modules/Debian.pl: ca.d.o does not do non-US any more
1231
1232 2001-01-17 20:22  dms
1233
1234         * src/Modules/Factoids.pl: used \* instead of / for days, founded by fooz
1235
1236 2001-01-15 21:11  dms
1237
1238         * src/Factoids/Update.pl: added checking of NULL rhs just in case.
1239
1240 2001-01-15 21:10  dms
1241
1242         * src/Modules/Factoids.pl: - fix for null factoids in factinfo.
1243         - added 'factstats nullfactoids'.
1244
1245 2001-01-14 21:04  dms
1246
1247         * src/Modules/Topic.pl: topic info now includes length
1248
1249 2001-01-10 22:57  dms
1250
1251         * src/IRC/Irc.pl: - cosmetic (useless) update.
1252
1253 2001-01-10 22:56  dms
1254
1255         * src/UserExtra.pl: - update to 'cpustats'.
1256
1257 2001-01-10 22:55  dms
1258
1259         * src/Misc.pl: - forgot [] around gettimeofday.
1260         - select() added before first fork msg.
1261
1262 2001-01-10 22:55  dms
1263
1264         * src/Shm.pl: - minor mods to addForked wrt time.
1265         - proper detection of dead forks.
1266
1267 2001-01-10 22:54  dms
1268
1269         * src/Modules/Debian.pl: quote typo@18,default==unstable
1270
1271 2001-01-10 22:54  dms
1272
1273         * src/modules.pl: - AUTOLOAD to ignore __
1274         - use eval on 'require'.
1275
1276 2001-01-06 20:55  dms
1277
1278         * src/Factoids/Reply.pl: - added smart_replace, finally fixed SARs for sure.
1279           still need to move numeric range replacement into the loop.
1280
1281 2001-01-06 20:54  dms
1282
1283         * src/: Net.pl, Modules/Debian.pl, Modules/Factoids.pl,
1284         Modules/Freshmeat.pl, Modules/Search.pl: - new time delta function
1285         - Debian.pl: \Q\E in validPackage
1286
1287 2001-01-06 20:53  dms
1288
1289         * src/IRC/Irc.pl:  clearIRCVars update
1290
1291 2001-01-06 20:53  dms
1292
1293         * src/modules.pl: DNS.pl removed.
1294
1295 2001-01-06 20:52  dms
1296
1297         * src/Modules/DNS.pl: Removed this file.
1298
1299 2001-01-06 20:52  dms
1300
1301         * src/: CommandStubs.pl, UserExtra.pl: - more updates.
1302         - UserExtra.pl: added cpustats
1303         - CommandStubs: added UserFlag support
1304
1305 2001-01-06 20:51  dms
1306
1307         * src/: Misc.pl, Shm.pl, IRC/IrcHooks.pl: - forker (POSIX::_exit) fixes.
1308         - Misc.pl: added timedelta(renamed from gettimeofday),timeget.
1309
1310 2001-01-03 21:44  dms
1311
1312         * src/Net.pl: - &system typo.
1313
1314 2001-01-03 21:43  dms
1315
1316         * src/modules.pl: - DESTROY code removed.
1317
1318 2001-01-03 21:42  dms
1319
1320         * src/Misc.pl: - topic minor fix.
1321         - POSIX::_exit(0) added: fixes fork problem.
1322
1323 2001-01-03 21:42  dms
1324
1325         * src/Factoids/Update.pl: - allow SARing of factoids on _long_ factoids providing the new string
1326           is shorter than the subst string.
1327
1328 2001-01-03 21:37  dms
1329
1330         * files/blootbot.lang: - moron reply added.
1331
1332 2001-01-03 21:37  dms
1333
1334         * src/Factoids/Reply.pl: - Finally added proper recursive SARs
1335
1336 2001-01-03 21:36  dms
1337
1338         * src/Modules/Factoids.pl: - add 'days' to created_time output.
1339
1340 2001-01-03 21:35  dms
1341
1342         * src/Modules/Debian.pl: - "testing" changes (broken)
1343         - make search packages case insensitive.
1344         - non-US fixed... about time.
1345
1346 2001-01-03 21:34  dms
1347
1348         * src/Process.pl: - unified hook changes.
1349         - ignore >64 questions.
1350         - support moron language.
1351
1352 2001-01-03 21:33  dms
1353
1354         * src/UserExtra.pl: - start using hooks.
1355         - added moron counter to 'status'.
1356
1357 2001-01-03 21:32  dms
1358
1359         * src/CommandStubs.pl: - unified for global command hooks
1360
1361 2001-01-03 21:31  dms
1362
1363         * src/IRC/: Irc.pl, IrcHooks.pl: - floodjoinCheck.
1364         - note on endofmotd.
1365         - Moved ircstats from Irc.pl to on_endofmotd#IrcHooks.pl
1366
1367 2000-12-29 22:46  dms
1368
1369         * src/Process.pl: for join, ignore whether on a channel if we have power
1370
1371 2000-12-29 22:05  dms
1372
1373         * src/IRC/IrcHooks.pl: lowercase chan in on_kick, found by xsdg!
1374
1375 2000-12-19 21:06  dms
1376
1377         * src/Factoids/Reply.pl: forgot about int() in randnick - found by lunartear
1378
1379 2000-12-18 21:40  dms
1380
1381         * src/core.pl: debug to restart
1382
1383 2000-12-18 21:38  dms
1384
1385         * src/Net.pl: Remove &ERROR() since it's done by WARN.
1386
1387 2000-12-18 21:35  dms
1388
1389         * src/Modules/Debian.pl: stop searching if found>100
1390
1391 2000-12-18 21:33  dms
1392
1393         * src/Process.pl: ignore long unparseable messages.
1394
1395 2000-12-16 20:32  dms
1396
1397         * src/core.pl: hrm
1398
1399 2000-12-16 20:31  dms
1400
1401         * src/modules.pl: minor fix to loadmymodules
1402
1403 2000-12-16 20:31  dms
1404
1405         * LICENSE: - new file for license.
1406
1407 2000-12-16 20:30  dms
1408
1409         * src/Files.pl: userlist display now verbosity>1
1410
1411 2000-12-16 20:30  dms
1412
1413         * src/IRC/IrcHooks.pl: - use dccsay
1414         - show flags on dcc chat connection.
1415         - set type on on_dcc*
1416
1417 2000-12-16 20:29  dms
1418
1419         * src/IRC/Irc.pl: - &dccsay() added.
1420         - &dcc_close() added.
1421         - use dccsay in performStrictReply()
1422
1423 2000-12-15 23:36  dms
1424
1425         * src/Misc.pl: very nice typo for regex, Angel indirectly found this :)
1426
1427 2000-12-15 22:39  dms
1428
1429         * src/User.pl: forgot to reset userHandle
1430
1431 2000-12-15 22:28  dms
1432
1433         * src/core.pl: forgot about / in tempDir
1434
1435 2000-12-15 22:25  dms
1436
1437         * src/Modules/UserDCC.pl: added '.mode' for Netsnipe
1438
1439 2000-12-12 23:12  dms
1440
1441         * src/core.pl: change ~ to ENV{HOME}
1442
1443 2000-12-11 20:26  dms
1444
1445         * src/IRC/Schedulers.pl: chanlimitcheck: removed netsplit check
1446
1447 2000-12-11 20:24  dms
1448
1449         * src/IRC/IrcHooks.pl: netsplit timer added
1450
1451 2000-12-10 20:55  dms
1452
1453         * src/Shm.pl: &showProc in delForked()
1454
1455 2000-12-10 20:54  dms
1456
1457         * src/IRC/IrcHooks.pl: userHandle now global var
1458
1459 2000-12-10 20:53  dms
1460
1461         * src/User.pl: verifyUser finally fixed
1462
1463 2000-12-10 20:52  dms
1464
1465         * src/core.pl: tempdir fix
1466
1467 2000-12-10 20:51  dms
1468
1469         * src/Modules/: Freshmeat.pl, Kernel.pl, Slashdot3.pl: temp dir unified
1470
1471 2000-12-10 20:49  dms
1472
1473         * src/Modules/Debian.pl: - 'find *bin*ssh*' should work.
1474         - temp dir unified.
1475
1476 2000-12-10 20:48  dms
1477
1478         * src/Modules/Factoids.pl: - 'seefix' checks for self-redirects and removes if successful.
1479         - 'deadredir' reject long vals.
1480         - 'listfix' added.
1481
1482 2000-12-09 21:26  dms
1483
1484         * src/Modules/Topic.pl: removed/convert debug messages
1485
1486 2000-12-09 21:04  dms
1487
1488         * src/IRC/IrcHooks.pl: changed debug to status line
1489
1490 2000-12-09 21:01  dms
1491
1492         * src/IRC/Schedulers.pl: forgot to return for limitcheck + netsplit
1493
1494 2000-12-08 21:09  dms
1495
1496         * src/IRC/Schedulers.pl: renamed limitCheck to chanlimitCheck
1497
1498 2000-12-04 21:31  dms
1499
1500         * src/IRC/Schedulers.pl: Typos galore for logCycle, should be fixed
1501
1502 2000-12-03 21:52  dms
1503
1504         * src/IRC/Schedulers.pl: output cleanup
1505
1506 2000-12-03 21:51  dms
1507
1508         * src/Modules/Debian.pl: fallback on * properly
1509
1510 2000-12-03 21:50  dms
1511
1512         * src/Modules/W3Search.pl: Moved w3 regex here
1513
1514 2000-12-03 21:48  dms
1515
1516         * src/CommandStubs.pl: typo fixed
1517
1518 2000-12-03 21:47  dms
1519
1520         * src/CommandStubs.pl: Removed W3 regex
1521
1522 2000-12-03 21:46  dms
1523
1524         * src/Modules/Factoids.pl: Added 'factstats seefix'
1525
1526 2000-12-03 21:46  dms
1527
1528         * src/Misc.pl: validFactoid.
1529
1530 2000-11-24 22:26  dms
1531
1532         * src/Modules/Debian.pl: Contents for non-US is broken!
1533
1534 2000-11-24 22:02  dms
1535
1536         * src/Modules/Debian.pl: typo
1537
1538 2000-11-24 20:23  dms
1539
1540         * src/Misc.pl: - validFactoid.
1541         - fixString
1542
1543 2000-11-24 20:17  dms
1544
1545         * src/Modules/Freshmeat.pl: - prevent dupe errors.
1546         - support bz2/gz for appindex.
1547
1548 2000-11-24 20:10  dms
1549
1550         * src/Shm.pl: if name undefined, bail out
1551
1552 2000-11-24 20:07  dms
1553
1554         * src/modules.pl: use modulebase instead of modulefile for delForked()
1555
1556 2000-11-23 23:10  dms
1557
1558         * src/CommandStubs.pl: made freshmeat fork always
1559
1560 2000-11-23 22:53  dms
1561
1562         * src/Modules/Freshmeat.pl: changed core to www
1563
1564 2000-11-23 22:22  dms
1565
1566         * src/CommandStubs.pl: @args changed to flat
1567
1568 2000-11-23 22:21  dms
1569
1570         * src/: Misc.pl, Net.pl: debug messages removed
1571
1572 2000-11-23 22:21  dms
1573
1574         * src/Modules/Debian.pl: more cleanups. ^blah and blah$ workspico Debian.pl!
1575
1576 2000-11-19 22:56  dms
1577
1578         * src/Modules/Debian.pl: debug
1579
1580 2000-11-19 22:56  dms
1581
1582         * src/modules.pl: use AUTOLOAD to prevent crashes
1583
1584 2000-11-19 22:55  dms
1585
1586         * src/Net.pl: Reduced timeout by 10x
1587
1588 2000-11-19 22:54  dms
1589
1590         * src/UserExtra.pl: Fixed up tell to allow target == 'us'.
1591
1592 2000-11-19 22:49  dms
1593
1594         * src/IRC/IrcHooks.pl: Exit process if on_public hook is activated under fork
1595
1596 2000-11-01 21:59  dms
1597
1598         * src/UserExtra.pl: - fixed up tell.
1599         - 'cycle' changed a bit.
1600
1601 2000-11-01 21:55  dms
1602
1603         * src/IRC/Irc.pl: debug msg for mixed-case chan
1604
1605 2000-11-01 21:54  dms
1606
1607         * src/IRC/Schedulers.pl: - make sure we reschedule everything unless it's a non-recoverable error.
1608         - disable limit if split active in limitcheck.
1609         - enabled 'unlink' in logcycle.
1610
1611 2000-10-04 00:08  dms
1612
1613         * src/CommandStubs.pl: - we shifted args before using args[0]. fixed.
1614         - fixed broken 'convert' cmd.
1615
1616 2000-10-03 01:33  dms
1617
1618         * src/core.pl: version update
1619
1620 2000-10-03 01:29  dms
1621
1622         * src/modules.pl: minor change to reloadModule
1623
1624 2000-10-03 01:26  dms
1625
1626         * src/db_mysql.pl: added sth->finish in an attempt to prevent leaks
1627
1628 2000-10-03 01:26  dms
1629
1630         * src/CommandStubs.pl: alias to fm for freshmeat forgotten
1631
1632 2000-10-03 01:23  dms
1633
1634         * src/db_dbm.pl: minor update
1635
1636 2000-10-03 01:20  dms
1637
1638         * src/Modules/Freshmeat.pl: cleanup of comments
1639
1640 2000-10-03 01:19  dms
1641
1642         * src/IRC/Irc.pl: change timeout value for scheduler interval
1643
1644 2000-10-03 01:12  dms
1645
1646         * src/IRC/IrcHooks.pl: fixed - typo for join()
1647
1648 2000-09-29 23:39  dms
1649
1650         * src/CommandStubs.pl: tiny cleanup
1651
1652 2000-09-29 23:10  dms
1653
1654         * src/Modules/UserDCC.pl: Minor cleanup
1655
1656 2000-09-29 23:03  dms
1657
1658         * src/IRC/IrcHooks.pl: DCC fixed
1659
1660 2000-09-25 20:08  dms
1661
1662         * src/IRC/Irc.pl: fixed up performReply to be more intelligent
1663         when doing random stuff.
1664
1665 2000-09-25 20:07  dms
1666
1667         * src/Factoids/Question.pl: notfound uses @query now; removed origQuery
1668
1669 2000-09-25 00:20  dms
1670
1671         * src/logger.pl: close log then statuspico logger.pl!
1672
1673 2000-09-24 19:53  dms
1674
1675         * src/CommandStubs.pl: more changes
1676
1677 2000-09-24 19:51  dms
1678
1679         * src/Modules/Dict.pl: moved a few lines from CommandStubs.pl here
1680
1681 2000-09-24 19:50  dms
1682
1683         * src/Factoids/Question.pl: added 'debianForFactoid'.
1684         fixed question 'you suck'. found by cerb.
1685
1686 2000-09-24 19:49  dms
1687
1688         * src/core.pl: forgot 'next' in dir check
1689
1690 2000-09-23 22:18  dms
1691
1692         * scripts/setup_sql.pl: closed 114944 -- karma can't be a negative int
1693
1694 2000-09-23 22:15  dms
1695
1696         * src/core.pl: added check for dirs on startup
1697
1698 2000-09-23 22:12  dms
1699
1700         * src/Modules/Slashdot3.pl: moved temp dir check to core.pl
1701
1702 2000-09-23 20:46  dms
1703
1704         * src/Modules/Freshmeat.pl: removed some debug lines
1705
1706 2000-09-23 20:45  dms
1707
1708         * src/modules.pl: fixed up return vals for loadMyModule()
1709
1710 2000-09-23 20:45  dms
1711
1712         * src/Modules/RootWarn.pl: non-mysql stub
1713
1714 2000-09-23 20:44  dms
1715
1716         * src/CommandStubs.pl: more conversion to new code
1717
1718 2000-09-23 20:43  dms
1719
1720         * src/IRC/Schedulers.pl: one too many parens for seen stats; cleanup.
1721
1722 2000-09-23 20:30  dms
1723
1724         * src/logger.pl: repeat throttling added
1725
1726 2000-09-22 19:56  dms
1727
1728         * src/Modules/Debian.pl: minor update
1729
1730 2000-09-22 19:56  dms
1731
1732         * src/CommandStubs.pl: moved more functions to new hook scheme
1733
1734 2000-09-22 19:55  dms
1735
1736         * src/Shm.pl: forgot shmFlush() in closeSHM()
1737
1738 2000-09-22 18:51  dms
1739
1740         * files/sample.config: 'undelete' option
1741
1742 2000-09-22 18:50  dms
1743
1744         * src/IRC/Schedulers.pl: periodically check to delete deleted factoids
1745
1746 2000-09-22 18:49  dms
1747
1748         * src/Process.pl: added undelete command
1749
1750 2000-09-22 18:49  dms
1751
1752         * src/Files.pl: removed some verbosity.
1753
1754 2000-09-22 18:48  dms
1755
1756         * src/modules.pl: verbose on reload (time ago, delta time)
1757
1758 2000-09-18 21:37  dms
1759
1760         * src/IRC/Irc.pl: op (mode) does not work?
1761
1762 2000-09-18 20:01  dms
1763
1764         * src/Modules/Debian.pl: typo for searchDesc list element
1765
1766 2000-09-18 19:47  dms
1767
1768         * src/Misc.pl: minor text cleanup.
1769         removed checkPing.
1770
1771 2000-09-18 19:47  dms
1772
1773         * src/CommandStubs.pl: minor cleanup.
1774         Preliminary command hooks (event handlers) working!
1775
1776 2000-09-18 19:46  dms
1777
1778         * src/IRC/Schedulers.pl: Chanserv 2nd stage fail protection
1779         Added seen stats.
1780
1781 2000-09-18 19:45  dms
1782
1783         * src/Modules/Debian.pl: Added NULL check for &search*();
1784         Added stubs for archived revisions.
1785
1786 2000-09-18 19:44  dms
1787
1788         * src/Factoids/Question.pl: Trailing symbols (.!) ignored on question
1789         Founded by Flugh
1790
1791 2000-09-18 19:43  dms
1792
1793         * src/db_mysql.pl: sqldebug clean up; forgot a return line for GetCol
1794
1795 2000-09-18 19:37  dms
1796
1797         * src/IRC/Irc.pl: chanserv update to &joinNextChan()
1798
1799 2000-09-18 19:36  dms
1800
1801         * src/IRC/IrcHooks.pl: minor update
1802
1803 2000-09-18 19:34  dms
1804
1805         * src/User.pl: removed repetitive debug line
1806
1807 2000-09-18 19:30  dms
1808
1809         * src/Process.pl: removed feedback addressing. Issue raised by Flugh
1810
1811 2000-09-16 22:12  dms
1812
1813         * src/CommandStubs.pl: added ddesc for desc search
1814
1815 2000-09-16 22:11  dms
1816
1817         * src/Modules/Debian.pl: added &searchDesc() if &searchContents() fails
1818
1819 2000-09-16 22:10  dms
1820
1821         * src/IRC/Schedulers.pl: added NULL irc channel check
1822
1823 2000-09-16 22:09  dms
1824
1825         * src/core.pl: removed loggingstatus
1826
1827 2000-09-16 21:57  dms
1828
1829         * src/logger.pl: &status() changes. removed loggingstatus in favour of fileno().
1830
1831 2000-09-16 21:23  dms
1832
1833         * scripts/setup_sql.pl: another attempt for a fix
1834
1835 2000-09-14 21:29  dms
1836
1837         * scripts/: setup_sql.pl, setup_tables.pl, setup_users.pl: script merge, doc update
1838
1839 2000-09-14 20:13  dms
1840
1841         * src/: Files.pl, UserFile.pl, Modules/UserDCC.pl: status() -> &status()
1842
1843 2000-09-14 20:12  dms
1844
1845         * src/IRC/IrcHooks.pl: minor text fixup for umode
1846
1847 2000-09-14 20:11  dms
1848
1849         * src/IRC/Schedulers.pl: Added miscCheck(), now does reloadAllModules()
1850
1851 2000-09-14 20:07  dms
1852
1853         * src/modules.pl: ability to reload extra modules automatically
1854
1855 2000-09-14 00:39  dms
1856
1857         * src/Modules/Debian.pl: another installed-size prob fix
1858
1859 2000-09-13 22:18  dms
1860
1861         * src/Factoids/Reply.pl: Removed FIXME
1862
1863 2000-09-13 22:07  dms
1864
1865         * src/Misc.pl: stat used wrong time, [8] instead of [9]
1866
1867 2000-09-13 22:03  dms
1868
1869         * src/Misc.pl: changed some text, more debugging
1870
1871 2000-09-13 22:02  dms
1872
1873         * src/Modules/Debian.pl: hopefully last time it will be fixed
1874
1875 2000-09-13 21:39  dms
1876
1877         * src/Modules/Freshmeat.pl: forgot about blootbot_pid
1878
1879 2000-09-13 21:38  dms
1880
1881         * src/Modules/Debian.pl: non-us fixed!
1882
1883 2000-09-13 21:36  dms
1884
1885         * src/modules.pl: removed two debugging lines or so
1886
1887 2000-09-13 21:19  dms
1888
1889         * src/Modules/Debian.pl: Removed fixNonUS; added a hack for no contents file for woody non-US i386 at least.
1890
1891 2000-09-13 21:03  dms
1892
1893         * src/core.pl: bot: spit out memory change messages in DCC CHAT. TODO: DCCBroadcast should allow userflag arg.
1894
1895 2000-09-12 23:33  dms
1896
1897         * src/Modules/Topic.pl: Another regex topic fix
1898
1899 2000-09-12 23:12  dms
1900
1901         * src/db_mysql.pl: Fixed up stub dbGetRowInfo
1902
1903 2000-09-10 22:40  dms
1904
1905         * src/logger.pl: was opening sql debug file for read, not write. typo
1906
1907 2000-09-10 01:09  dms
1908
1909         * src/IRC/Schedulers.pl: changed verb level from 2 to 1 for seenFlush
1910
1911 2000-09-10 00:36  dms
1912
1913         * src/IRC/Schedulers.pl: debug for seenflush
1914
1915 2000-09-10 00:30  dms
1916
1917         * files/sample.config: SQLDebug line
1918
1919 2000-09-10 00:28  dms
1920
1921         * src/modules.pl: forgot to set module age if successfully loaded. split reloadModules into reloadAllModules and reloadModule. &reloadModule() now called by loadMyModule()
1922
1923 2000-09-10 00:24  dms
1924
1925         * src/logger.pl: supressed subroutine redefined warning. Added sql debug support (open/close)
1926
1927 2000-09-10 00:19  dms
1928
1929         * src/db_mysql.pl: Added sql debug support (print)
1930
1931 2000-09-10 00:16  dms
1932
1933         * src/Modules/UserDCC.pl: fixed/added global factoid SAR
1934
1935 2000-09-09 22:41  dms
1936
1937         * src/Modules/Topic.pl: fixed regex line, founded by Flugh
1938
1939 2000-09-06 23:00  dms
1940
1941         * src/Factoids/Update.pl: minor change
1942
1943 2000-09-06 22:59  dms
1944
1945         * src/logger.pl: 'use strict' issue
1946
1947 2000-09-06 22:57  dms
1948
1949         * src/Modules/UserDCC.pl: global SAR. only avail to +n and DCC.
1950
1951 2000-09-06 22:56  dms
1952
1953         * src/core.pl: fixed due to changes. (re: Flugh)
1954
1955 2000-09-05 23:47  dms
1956
1957         * scripts/: dbm2mysql.pl, mysql2txt.pl, setup_tables.pl,
1958         setup_users.pl, txt2mysql.pl: forgot to update these files in the root dir overhaul
1959
1960 2000-09-05 01:55  dms
1961
1962         * scripts/setup_users.pl: fixed up a bit
1963
1964 2000-09-05 01:28  dms
1965
1966         * src/logger.pl: stupid typo (carelessness) on my behalf
1967
1968 2000-09-01 22:21  dms
1969
1970         * src/UserExtra.pl: debug info for ircstats hash list
1971
1972 2000-09-01 22:19  dms
1973
1974         * src/IRC/IrcHooks.pl: added disconnect and connect stats, just debug info for now
1975
1976 2000-09-01 21:18  dms
1977
1978         * src/Modules/Topic.pl: prevent dupes to be added; added debugging info if bot is not permitted to add topics (+t/-o).
1979
1980 2000-09-01 20:58  dms
1981
1982         * src/IRC/Schedulers.pl: ircCheck now checks @joinchan for chans left to join, but should never happen.
1983
1984 2000-09-01 20:56  dms
1985
1986         * src/Modules/Debian.pl: debian: fixed broken files for woody's non-US
1987
1988 2000-08-31 22:45  dms
1989
1990         * src/CommandStubs.pl: lame warning fix for babel
1991
1992 2000-08-31 22:41  dms
1993
1994         * src/logger.pl: forgot a )
1995
1996 2000-08-30 21:33  dms
1997
1998         * src/Modules/Uptime.pl: Added catch just in case if forked
1999
2000 2000-08-30 21:14  dms
2001
2002         * src/Shm.pl: changes due to Debian.pl
2003
2004 2000-08-30 21:12  dms
2005
2006         * src/Modules/Debian.pl: minor changes, removed 'slink', changed 'stable' for 'potato'
2007
2008 2000-08-30 21:09  dms
2009
2010         * src/Factoids/Update.pl: added debugging info for '.,' and '.,' problems
2011
2012 2000-08-30 20:42  dms
2013
2014         * src/logger.pl: added $forkedtime, for debugging
2015
2016 2000-08-30 20:19  dms
2017
2018         * src/CommandStubs.pl: preliminary command hook support added
2019
2020 2000-08-20 22:17  dms
2021
2022         * src/Modules/UserDCC.pl: closed 17554 -- re-add part/leave to DCC CHAT only
2023
2024 2000-08-20 21:58  dms
2025
2026         * src/Modules/Debian.pl: we don't stop if debianDownload fails unless none of the files exist locally
2027
2028 2000-08-20 21:46  dms
2029
2030         * src/Modules/Debian.pl: shouldn't recursively call sP
2031
2032 2000-08-20 21:33  dms
2033
2034         * src/Misc.pl: double fork -> VERB(2), minor cosmetics
2035
2036 2000-08-20 21:28  dms
2037
2038         * src/IRC/IrcHooks.pl: if statement of seen swapped.   DCC CHAT close ignored if forked.
2039
2040 2000-08-20 21:25  dms
2041
2042         * src/Factoids/Reply.pl: added randnick
2043
2044 2000-08-20 21:24  dms
2045
2046         * src/Modules/Debian.pl: check for stality in sP()
2047
2048 2000-08-19 20:10  dms
2049
2050         * files/sample.config: closed 17225 -- result of fixed bug
2051
2052 2000-08-19 19:24  dms
2053
2054         * src/: User.pl, IRC/IrcHooks.pl: closed 17225 -- seen only stores addressed messages. Also moved seen code from User.pl to IrcHooks.pl
2055
2056 2000-08-19 18:44  dms
2057
2058         * src/Modules/Topic.pl: closed 17447 -- 'topic info' should give more info
2059
2060 2000-08-15 19:27  dms
2061
2062         * src/Misc.pl: warning (typo) fixed
2063
2064 2000-08-15 19:26  dms
2065
2066         * files/sample.config: deprecated weather option/feature removed
2067
2068 2000-08-15 19:24  dms
2069
2070         * src/IRC/Schedulers.pl: ircCheck(): added full path for ipcs,ipcrm
2071
2072 2000-08-15 19:21  dms
2073
2074         * src/IRC/IrcHooks.pl: on_disconnect schedules ircCheck*( for 1800s
2075
2076 2000-08-12 20:45  dms
2077
2078         * src/UserExtra.pl: don't prevent wantnick from working in any case
2079
2080 2000-08-12 20:43  dms
2081
2082         * src/IRC/Schedulers.pl: Added getNickInUse()
2083
2084 2000-08-12 20:42  dms
2085
2086         * src/IRC/IrcHooks.pl: on_nick_taken calls getNickInUse() now
2087
2088 2000-08-12 20:41  dms
2089
2090         * src/logger.pl: use getPath() for create logdir for openLog()
2091
2092 2000-08-12 20:38  dms
2093
2094         * src/Misc.pl: typo for file in loadHelp() ... added getPath() for openLog()
2095
2096 2000-08-11 21:28  dms
2097
2098         * src/Factoids/Update.pl: closed 17031 -- Fix up appending to factoids
2099
2100 2000-08-11 21:21  dms
2101
2102         * src/Factoids/: Reply.pl, Update.pl: closed 17187 -- <factoid> are also <info>' doesn't work...   also removed mailto:
2103
2104 2000-08-11 21:10  dms
2105
2106         * src/Modules/Math.pl: closed 17344 -- Maths.pl is borked in a way
2107
2108 2000-08-11 20:53  dms
2109
2110         * src/IRC/IrcHooks.pl: close 17091 completely... fix up on_nick IRC hook
2111
2112 2000-08-11 20:48  dms
2113
2114         * src/IRC/Schedulers.pl: closed 17091 -- chaninfo stats inconsistent after time
2115
2116 2000-08-11 20:11  dms
2117
2118         * src/modules.pl: Fixed problem with loadMyModules() caused by delForked()
2119
2120 2000-08-11 20:10  dms
2121
2122         * src/Modules/W3Search.pl: closed 17379 -- W3Search.pl gives duplicate output
2123
2124 2000-08-04 23:19  dms
2125
2126         * src/Factoids/Statement.pl: at -> mailto remnants from stock infobot removed
2127
2128 2000-08-03 22:19  dms
2129
2130         * src/logger.pl: status did not print output if config file was not loaded. Fixed by initializing VERBOSITY to 1
2131
2132 2000-08-03 22:11  gmlb
2133
2134         * INSTALL.patches: Readme update.
2135
2136 2000-08-03 21:53  dms
2137
2138         * src/Modules/Kernel.pl: forgot about blootbot -> bot
2139
2140 2000-08-03 01:04  gmlb
2141
2142         * INSTALL.mysql, INSTALL: Fixed some documentation typOs. (in the install docs)
2143
2144 2000-08-01 21:41  dms
2145
2146         * src/CommandStubs.pl: userinfo had wrong argument # set
2147
2148 2000-07-31 22:57  gmlb
2149
2150         * infobot:
2151         Removed old infobot. We are now using blootbot as the main script
2152
2153 2000-07-31 22:37  dms
2154
2155         * src/: IRC/Irc.pl, IRC/IrcHooks.pl, IRC/Schedulers.pl,
2156         Modules/Countdown.pl, Modules/Factoids.pl, Modules/Freshmeat.pl,
2157         Modules/Kernel.pl, Modules/Units.pl, Modules/Uptime.pl,
2158         Modules/Wingate.pl, Modules/babel.pl: cvs commit borked, continuing
2159
2160 2000-07-31 22:31  dms
2161
2162         * AUTHORS, INSTALL, README, blootbot, doc/old/TODO,
2163         files/blootbot.help, files/blootbot.ignore, files/blootbot.lang,
2164         files/blootbot.lart, files/blootbot.randtext, files/blootbot.users,
2165         files/ircII.servers, files/sample.config, scripts/botchk.sh,
2166         scripts/dbm2mysql.pl, scripts/insertDB.pl, scripts/mysql2txt.pl,
2167         scripts/setup_tables.pl, scripts/setup_users.pl,
2168         scripts/txt2mysql.pl, src/Misc.pl, src/Process.pl, src/core.pl,
2169         src/modules.pl, src/Factoids/Question.pl, src/Factoids/Reply.pl,
2170         src/Factoids/Statement.pl, src/Factoids/Update.pl: Changed $infobot_ to $bot_
2171         Changed infobot to blootbot where needed
2172         Renamed *infobot* to *blootbot*
2173
2174 2000-07-31 20:47  dms
2175
2176         * src/logger.pl: Added functionality to cycle all logs if exceeds specified size
2177
2178 2000-07-31 20:33  dms
2179
2180         * src/: CommandStubs.pl, UserExtra.pl, Modules/Topic.pl: changed NOREPLY to dollar noreply
2181
2182 2000-07-31 20:10  dms
2183
2184         * src/Modules/UserDCC.pl: send DCC message when using 'op'
2185
2186 2000-07-30 08:33  gmlb
2187
2188         * doc/README_TODO: Added README_TODO. It contains important info on the TODO list. READ!
2189
2190 2000-07-30 08:01  gmlb
2191
2192         * doc/: BUGS, Connection.pm, EXAMPLES, FAQ, Google.pm, TODO, USAGE,
2193         mysql.txt, notes.txt, pgsql.txt: Removing old doucments in /doc. They are archived in /doc/old. The newest documents will be on the website. See /doc/README_NOW for more information.
2194
2195 2000-07-30 07:56  gmlb
2196
2197         * doc/old/: BUGS, Connection.pm, EXAMPLES, FAQ, Google.pm, TODO,
2198         USAGE, mysql.txt, notes.txt, pgsql.txt: Moving documentation to /doc/old
2199
2200 2000-07-30 07:51  gmlb
2201
2202         * doc/README_NOW: Adding README_NOW. Please read it, as it contains very important DOC information
2203
2204 2000-07-30 07:02  blootbot
2205
2206         * AUTHORS: Updated personal info in AUTHORS file. Must talk to XK about title :)
2207
2208 2000-07-30 00:11  dms
2209
2210         * AUTHORS, patches/Connection.pm, patches/Google.pm: new/moved files
2211
2212 2000-07-30 00:09  dms
2213
2214         * INSTALL.patches, README, doc/USAGE, doc/modules.txt,
2215         files/sample.config, scripts/backup_table-slave.pl, src/Files.pl,
2216         src/Misc.pl, src/Net.pl, src/Shm.pl, src/UserExtra.pl, src/core.pl,
2217         src/db_dbm.pl, src/db_mysql.pl, src/db_pgsql.pl, src/logger.pl,
2218         src/modules.pl, src/Factoids/DBCommon.pl, src/Factoids/Update.pl,
2219         src/IRC/Irc.pl, src/IRC/IrcHooks.pl, src/IRC/Schedulers.pl,
2220         src/Modules/Countdown.pl, src/Modules/Debian.pl,
2221         src/Modules/DebianExtra.pl, src/Modules/Dict.pl,
2222         src/Modules/DumpVars.pl, src/Modules/Factoids.pl,
2223         src/Modules/Freshmeat.pl, src/Modules/Kernel.pl,
2224         src/Modules/RootWarn.pl, src/Modules/Slashdot3.pl,
2225         src/Modules/Topic.pl, src/Modules/Uptime.pl,
2226         src/Modules/UserDCC.pl, src/Modules/UserInfo.pl,
2227         src/Modules/Wingate.pl: changed email address
2228
2229 2000-07-28 23:26  dms
2230
2231         * files/infobot.config, files/sample.config, src/core.pl: loadConfig to spurt out correct message when infobot.config does not exist on fresh install
2232
2233 2000-07-28 23:11  dms
2234
2235         * MrInfo.uptime: delete stale files not needed for fresh installation
2236
2237 2000-07-28 00:59  blootbot
2238
2239         * ChangeLog: Added a line to ChangeLog. I hope to keep this more uptodate and start documentatio. -GmLB
2240
2241 2000-07-28 00:10  blootbot
2242
2243         * INSTALL, INSTALL.dbm, INSTALL.mysql, INSTALL.patches,
2244         INSTALL.pgsql, README, infobot, ChangeLog, MrInfo.uptime, doc/BUGS,
2245         doc/Connection.pm, doc/EXAMPLES, doc/FAQ, doc/Google.pm, doc/TODO,
2246         doc/USAGE, doc/modules.txt, doc/mysql.txt, doc/notes.txt,
2247         doc/pgsql.txt, files/infobot.config, files/infobot.help,
2248         files/infobot.ignore, files/infobot.lart, files/infobot.users,
2249         files/ircII.servers, files/sample.countdown,
2250         patches/Net::IRC.patch, patches/WWW::Search.patch,
2251         scripts/backup_table-master.sh, scripts/backup_table-slave.pl,
2252         scripts/botchk.sh, scripts/dbm2mysql.pl, scripts/dbm2txt.pl,
2253         scripts/fixbadchars.pl, scripts/insertDB.pl, scripts/makepasswd,
2254         scripts/mysql2txt.pl, scripts/oreilly_dumpvar.pl,
2255         scripts/oreilly_prettyp.pl, scripts/parse_warn.pl,
2256         scripts/setup_tables.pl, scripts/setup_users.pl,
2257         scripts/showvars.pl, scripts/txt2mysql.pl, scripts/vartree.pl,
2258         scripts/webbackup.pl, files/infobot.randtext, files/infobot.lang,
2259         files/sample.config, files/sample.insert, files/unittab,
2260         src/CommandStubs.pl, src/Files.pl, src/Misc.pl, src/Net.pl,
2261         src/Process.pl, src/Shm.pl, src/User.pl, src/UserExtra.pl,
2262         src/core.pl, src/db_dbm.pl, src/db_mysql.pl, src/db_pgsql.pl,
2263         src/interface.pl, src/logger.pl, src/modules.pl, src/IRC/Irc.pl,
2264         src/IRC/IrcHooks.pl, src/IRC/Schedulers.pl,
2265         src/Modules/Countdown.pl, src/Modules/DNS.pl,
2266         src/Modules/Debian.pl, src/Modules/Dict.pl,
2267         src/Modules/Freshmeat.pl, src/Modules/Kernel.pl,
2268         src/Modules/Quote.pl, src/Modules/RootWarn.pl,
2269         src/Modules/Search.pl, src/Modules/Slashdot3.pl,
2270         src/Modules/Topic.pl, src/Modules/Units.pl, src/Modules/Uptime.pl,
2271         src/Modules/UserInfo.pl, src/Modules/W3Search.pl,
2272         src/Factoids/DBCommon.pl, src/Factoids/Norm.pl,
2273         src/Factoids/Question.pl, src/Factoids/Reply.pl,
2274         src/Factoids/Statement.pl, src/Factoids/Update.pl,
2275         src/Modules/DebianExtra.pl, src/Modules/DumpVars.pl,
2276         src/Modules/Factoids.pl, src/Modules/Math.pl,
2277         src/Modules/UserDCC.pl, src/Modules/Wingate.pl,
2278         src/Modules/babel.pl, src/Modules/insult.pl,
2279         src/Modules/nickometer.pl:
2280         Trying to add 1.0.0. I hope it works. --GmLB
2281
2282 2000-07-28 00:10  blootbot
2283
2284         * INSTALL, INSTALL.dbm, INSTALL.mysql, INSTALL.patches,
2285         INSTALL.pgsql, README, infobot, ChangeLog, MrInfo.uptime, doc/BUGS,
2286         doc/Connection.pm, doc/EXAMPLES, doc/FAQ, doc/Google.pm, doc/TODO,
2287         doc/USAGE, doc/modules.txt, doc/mysql.txt, doc/notes.txt,
2288         doc/pgsql.txt, files/infobot.config, files/infobot.help,
2289         files/infobot.ignore, files/infobot.lart, files/infobot.users,
2290         files/ircII.servers, files/sample.countdown,
2291         patches/Net::IRC.patch, patches/WWW::Search.patch,
2292         scripts/backup_table-master.sh, scripts/backup_table-slave.pl,
2293         scripts/botchk.sh, scripts/dbm2mysql.pl, scripts/dbm2txt.pl,
2294         scripts/fixbadchars.pl, scripts/insertDB.pl, scripts/makepasswd,
2295         scripts/mysql2txt.pl, scripts/oreilly_dumpvar.pl,
2296         scripts/oreilly_prettyp.pl, scripts/parse_warn.pl,
2297         scripts/setup_tables.pl, scripts/setup_users.pl,
2298         scripts/showvars.pl, scripts/txt2mysql.pl, scripts/vartree.pl,
2299         scripts/webbackup.pl, files/infobot.randtext, files/infobot.lang,
2300         files/sample.config, files/sample.insert, files/unittab,
2301         src/CommandStubs.pl, src/Files.pl, src/Misc.pl, src/Net.pl,
2302         src/Process.pl, src/Shm.pl, src/User.pl, src/UserExtra.pl,
2303         src/core.pl, src/db_dbm.pl, src/db_mysql.pl, src/db_pgsql.pl,
2304         src/interface.pl, src/logger.pl, src/modules.pl, src/IRC/Irc.pl,
2305         src/IRC/IrcHooks.pl, src/IRC/Schedulers.pl,
2306         src/Modules/Countdown.pl, src/Modules/DNS.pl,
2307         src/Modules/Debian.pl, src/Modules/Dict.pl,
2308         src/Modules/Freshmeat.pl, src/Modules/Kernel.pl,
2309         src/Modules/Quote.pl, src/Modules/RootWarn.pl,
2310         src/Modules/Search.pl, src/Modules/Slashdot3.pl,
2311         src/Modules/Topic.pl, src/Modules/Units.pl, src/Modules/Uptime.pl,
2312         src/Modules/UserInfo.pl, src/Modules/W3Search.pl,
2313         src/Factoids/DBCommon.pl, src/Factoids/Norm.pl,
2314         src/Factoids/Question.pl, src/Factoids/Reply.pl,
2315         src/Factoids/Statement.pl, src/Factoids/Update.pl,
2316         src/Modules/DebianExtra.pl, src/Modules/DumpVars.pl,
2317         src/Modules/Factoids.pl, src/Modules/Math.pl,
2318         src/Modules/UserDCC.pl, src/Modules/Wingate.pl,
2319         src/Modules/babel.pl, src/Modules/insult.pl,
2320         src/Modules/nickometer.pl: Initial revision
2321
2322 v1.0.0 (20000725): bug fixes mainly.
2323         - GmLB found that scripts/setup_*.pl didn't work. Fixed.
2324         - Fixed warning in Modules/Uptime.pl for clean install.
2325         - More fixes for scripts/*mysql*.pl from GmLB.
2326         - Added command 'hex'.
2327         - GmLB fixed mysql2txt.pl and txt2mysql.pl. You can now import and
2328           export to inforbot 'factpacks'.-
2329
2330 v1.0.0RC3 (20000720): bug fixes mainly.
2331         - Debian.pl's infoPackages() now checks for incoming
2332           automatically and shows the new file.
2333         - irq/dan found the bot wouldn't run if a stale (invalid) pid
2334           file exists. Fixed.
2335         - Created &closeDCC(), &closePID()
2336         - Added factoid SAR of (3-123) => 53
2337
2338 v1.0.0RC2 (20000707):
2339         - Ported back Berkerley DBM support. 95% of it works :)
2340         - Also added pgSQL support.  Will not work out-of-the-box.
2341         - Updated README.
2342         - Fixed up 'modules.pl' a bit so if anything fails, it exits
2343           gracefully.  Module reloading should work better now.
2344         - DCC CHAT commands now must have '.' prepended otherwise all text
2345           will me broadcasted to the dcc chat arena.
2346         - Removed command 'part'.  Use 'kick' instead :)
2347         - 'random|cookie' now takes argument to narrow down randomness.
2348         - Merged 90% of MbM's@OPN modifications. Thanks.
2349                 => bug fixes here and there
2350                 => 'tell' fixed.
2351                 => checks for owner of factoids for delete/modify factoids
2352         - Moved Factoids/db* to .
2353         - Misc stuff here and there.
2354
2355 v1.0.0RC1 (20000701):
2356         - Added several hacks (run away fork) due to bot misbehaving.
2357         - Added deop.
2358         - Added ability to disable factoid support.
2359         - Reorganized source tree to be more modular.
2360                 - Created dirs: IRC, Factoids.
2361                 - moved partial core.pl and PerlMod.pl to modules.pl
2362                 - renamed Modules.pl to CommandStubs.pl
2363         - Added command 'cycle'.
2364         - hardguy/max noted that insult was borked.  It wasn't converted
2365           to the new fork format. Fixed but untested.
2366         - Added 'ircstats' command. forgot about DisconnectReason
2367         - Added to-expire-time on 'ignorelist'
2368         - Forgot to clear %ignoreList on loading the list.
2369         - moved 'ignorelist' from DCC-only to public/private msg.
2370
2371 v1.0.0pre11 (20000601):
2372         - we call &ircloop() if we want to reconnect. Any harm to perl?
2373         - Wingate fixed yet again. maximum time for response is 6secs in
2374           order to cache maximum number of hosts.
2375         - Added ban() for Wingate.
2376         - Forgot about virtual host support when changed over to Net::IRC
2377         - process() still calls shmCycle() just in case.
2378         - Added limit to how many random things we can have in a factoid
2379           to prevent endless loops from occurring.
2380         - All debian stuff now fully forks -- good.
2381         - Failure on &loadMyModule() now deletes $forked{$label}.
2382         - if instructed to join a channel "manually", tell who did it on
2383           join.
2384         - Debian module now searches woody's non-US properly. Misc fixes
2385           here and there.
2386         - Removed non-working mysql table locking code.
2387         - Freshmeat.pl now uses LWP::Simple's getstore. How to load the
2388           file on-the-fly?
2389         - Looked at Modules-Reload and implemented idea in the bot.
2390         - Forgot about flushing uptime in scheduler.
2391         - Added unit conversion feature to bot, based on Units-Convert
2392           package (at CPAN).
2393         - Converted several scalars to hashes.
2394         - Added slashdot,freshmeat and kernel announcements of new stuff.
2395         - merged chanstats into one line, added top msg stats.
2396         - Wingate now does intelligent on-the-fly caching and flushing to
2397           a wingate file to prevent dupes. UNTESTED
2398         - "find pident potato" now works after few mods/hacks :)
2399         - ...
2400
2401 v1.0.0pre10 (20000523):
2402         - Fixed minor problems in Debian.pl, I hope.
2403           => DebianDownload now calls generateIndex() if a download is
2404                 successful.
2405           => More clean ups.
2406           => generateIncoming() forgot about checking stale of idxfile.
2407         - Modules in Modules/* now dynamically loaded. Using about ~200k
2408           less ram now.
2409         - Added support of user modes with param{ircUMODE}. Requested by
2410           Flugh.
2411         - hookMsg modified, we don't check ignore list if we're not
2412           addressed or minvollength is defined. flooding is now
2413           configurable by repeated message and total message, expire time
2414           and count, like eggdrop.
2415         - nickometer didn't reset the score. noticed by greycat+others.
2416         - &setupScheduler() scheduler is only called once.
2417         - UIS now supports proper locking and lock check.
2418         - verifyUser didn't set userHandle to 'default' if not found.
2419         - Added factoid reply support of '(blah1|blah2)?'
2420         - Added 'FAQ'.
2421         - Added DebianExtra.pl module to list bugs. a hack and ugly!
2422         - Finally fixed list of old topics in Topic.pl, courtesy of mux
2423           and nicholas_.
2424         - Removed usage of quotemeta, replaced with \Q\E pair for regex.
2425         - Included patches to modify stock-brokeness of perl modules.
2426           'cd /usr/lib/perl5; cat *.patch| patch -p0'
2427         - Setup option whether to cache user online stats. Disabling will,
2428           for sure, won't bloat the bot by 2-4megs (but why that much?).
2429
2430 v1.0.0pre9 (20000512):
2431         - Typo for outsider checking. Noticed when #debian flooder came
2432           back yet again :)
2433         - seenCycle was in minutes instead of days. fixed.
2434         - Added User Information Services module. requested by Flugh.
2435                 => 'uinfo <nick>'
2436                 => 'uinfo set <type> <what>'
2437                 => 'uinfo unset <type>'
2438         - Added &IsNickInAnyChan($nick);
2439         - Added &DCCBroadcast($txt) to broadcast messages to all members
2440           of DCC CHAT.
2441         - &say() now changes '0' to 'zero' due to Net::IRC bug.
2442         - Added &GetNickInChans($nick);
2443         - Merged fooz's wingate scanner.
2444         - Added 'ignoreAutoExpire' to differentiate time for ignore due to
2445           flooding instead of 'ignore' through DCC CHAT.
2446           => remove time for 'ignore' through DCC CHAT?
2447         - Added &debianCheck() to check state of gzip'd files.
2448         - ...
2449
2450 v1.0.0pre8 (20000505):
2451         - usual backlash from upgrade.
2452         - added 'useStrict' option to infobot.config.
2453         - added 'reload', to reload Core and Extras Modules. Does it
2454           reload only if the file has changed?
2455         - added preliminary (debug) code for ftpGet() for truncated
2456           downloads. regetting will be added soon afterwards.
2457         - minor fix for Debian.pl where a package exists but an
2458           incomplete Packages file may not have info on that package.
2459         - Modified on-the-fly ignore to be temporary. temporary ignore
2460           requested by jCommons.
2461         - added 'factstats requester'.
2462         - preliminary use of scheduler for &checkPing() in &on_init().
2463                 no event hook on 'pong' :(((
2464         - Timers now use Net::IRC's scheduler, woohoo. Nice change over.
2465           Moved ProcessExtras.pl to Schedulers.pl.
2466         - Added 'factstats deadredir'.
2467         - Don't prevent auto-reconnecting due to disconnection.
2468         - Forgot initialization before any new IRC connection.
2469         - Added scheduler for checking IRC connection.
2470         - Fixed problem in Freshmeat module, if forked to download, would
2471           not continue with query. => now it does, nice hack.
2472         - Debian module should generate incoming index if does not exist.
2473         - Chatting can be done through DCC CHAT.
2474         - ...
2475
2476 v1.0.0pre7 (20000426):
2477         - INSTALL and README updated.
2478         - auto-request for ops after joining all channels instead of after
2479           each channel join.
2480         - If factoid is requested by someone, show literally (no
2481           evaluation) if owner of factoid matches aswell as if requested
2482           privately(good idea?)
2483         - on_notice fixed and debugging info removed.
2484         - Added reconnect on HUP if we're not connected. I hope that it is
2485           set to 0 otherwise this solution is dead.
2486         - ';' added as address char.
2487         - maths bug found by NoNix4.
2488                 eg: 6000.0/9.000 - 6.000/9.000 - 666.00001
2489         - nickometer bug (pi not defined) found by ddent. 'strict' cleanup.
2490         - Preliminary CLI code included. Good for local use.
2491         - typo in Topic.pl, found by jCommons. Fix for NULL topic.
2492         - minor Debian.pl update to deal with 'missing files' on download.
2493         - multi-shmwrite support added. looks like it doesn't "refresh"
2494           the value properly if written many times.
2495         - &verifyUser() only used if addressed.
2496         - Applied 'use strict' to all code. Also used 'use vars qw()'.
2497         - Added 'backlog #' to DCC CHAT. requested by jCommons.
2498         - ctcp version reply wrong; FIXED. found by fooz.
2499
2500 v1.0.0pre6 (20000407):
2501         - README updated.
2502         - Added retry on failure to reconnect through on_disconnect();
2503           REMOVED -- this spun an endless loop.
2504         - Found why Googling didn't work. See README for fix.
2505         - Forgot about channel casing bugs (on_{join|part}) after
2506           changeover to Net::IRC.
2507         - Changed addForked() to cycle through fork list and delete stale
2508           forks in case a forked child dies unexpectedly.
2509         - Renamed allowOutsiders to disallowOutsiders just in case if the
2510           option is removed from the configuration.
2511
2512 v1.0.0pre5 (20000331):
2513         - setup_users.pl. DBI*() => sql*().
2514         - 'topic add BLAH' on empty topic would bork. Why didn't I pick
2515           this up before?
2516         - Somehow I removed (or it wasn't there) 'my @results' from
2517           searchTable();
2518         - nickometer now uses loadPerlModule()... another 500 kB saved :)
2519         - repeat flood detection prevention added.
2520         - Added el-cheapo hash key counter... possible leak detector.
2521         - Added 'factstats lame' for short and most probably stupid
2522           factoids.
2523         - Weather module removed
2524         - Renamed 'join' to 'joinchan' to due warning//conflict raised
2525           with perl 5.005 (on potato not slink).
2526         - Disabled syscall (removes 300 kB on slink, 3megs on potato)
2527
2528 v1.0.0pre4 (20000323): pseudo AutoLoader support.
2529         - 'infobot' now first loads core.pl and logger.pl.
2530         - timerExpire() fixed.
2531         - Added unique maintainer count to 'dstats'.
2532         - Added demand-on-load of external perl modules. Now we need
2533           dynamic(on demand) loading of 'Modules/*.pl' modules ;)
2534
2535 v1.0.0pre3 (20000319):
2536         - Fixed Freshmeat.pl not to show duplicate packages found by
2537           'name' and 'oneliner' search. Made showPackage() function.
2538         - Debian modules now does multi distro. (woody's non-us appears to
2539           be different structure so does not work :(, very crude hack...
2540           may not even work).
2541         - Added subfactoid randomising. eg: '(one|two|three)'.
2542         - 'dauthor' now works!
2543         - karma fixed... used the wrong var name.
2544         - Fixed doubling of text when message from 'nick' is ignored.
2545         - Added 'redir' to designate one factoid as master and duplicates
2546           as redirectors//slaves.
2547         - Added addressing recognition character(s) support. eg "!status".
2548         - Seen info now cached and flushed at intervals or upon exiting.
2549         - Added 'EXAMPLES' file to doc/.
2550         - Removed ancient '&channel()'.
2551         - Bug fixes after offshore installation of bot.
2552         - Debian output of 'info' fixed. looks like 'fm', heh.
2553         - Debian distro stats added. I'm competing with larne and his mods
2554           to dpkg@OPN#debian :) so far so good.
2555         - Forgot to close shm upon exit, heh :) However this does not
2556           prevent leakage when the bot crashes.
2557         - Parameter 'forking' now works, courtesy of generic &Forker()
2558           function, woohoo! Now we use &Forker() for _everything_.
2559           I had this in the todo list, removed it and decided to implement
2560           it once and for all.
2561         - More bug fixes when moved changes to 'apt'. Several "bug
2562           reports" sent from #debian, thanks!
2563         - Moved infobot communications _after_ ignore checking code.
2564         - babelfish changed format? disabled for the time being.
2565         - ...
2566
2567 v1.0.0pre2 (20000310): BETA TEST RELEASE
2568         - Hacked multiple mysql connection support in.
2569         - Renamed DBI to SQL, including functions.
2570         - Added $ishost.
2571         - Added backup scripts to create and mirror tables.
2572         - listauth fixed.
2573         - Added parse_warn.pl to decipher warn messages from logs.
2574         - shm* now works. no more fork floods ;)
2575         - Applied fork protection on all forking modules.
2576         - Dict feature now supports specific retrival of definition,
2577           however, default is still random.
2578         - Debian feature now supports multiple sub distributions. This can
2579           be further extended to architecture (perhaps easily).
2580         - Added (but commented) larne's regex for debian search.
2581         - Added &hasParam() to include notification that a feature
2582           (command) requested is disabled in configuration.
2583         - Added dumping of memory stats.
2584         - Fixed broken timerExpire().
2585         - Added auto shutdown of bot if too much ram is used.
2586         - Modified seen feature, set to off by default.
2587                 - UPDATE: fixed, about time.
2588         - Improved parse_warn.pl to be like "diff".
2589         - Dollar variable addition?? suggestions by ddent.
2590         - 'factstats dupe' now ignores '<REPLY> see'.
2591                 - UPDATE: fixed.
2592         - Added random factoid timer.
2593         - Don't redownload file via getFTP() if local and remote sizes are
2594           the same.
2595         - Added $count{'Dunno'} for unanswered questions.
2596         - Fixed 'blah is also or' since we didn't allow 'or'.
2597         - Added 'factstats redir' to display factoid redirections.
2598         - Grep nick from list of nicks in IsNickInChan(). Bug found by
2599           Mercury.
2600         - Time taken and final xfer rate displayed in FTP.
2601         - Fixed bug where 'or' is eval'd in Math.pl. Return '' if eval()
2602           is not done. Bug found by dent.
2603         - Added 'factstats redir' to list working and non-working
2604           redirected (symlink) factoids.
2605         - cmdstats now sorted by highest->lowest usage.
2606         - ...
2607
2608 v1.0.0pre1 (20000130):
2609         - Mostly converted to Net::IRC, quite nice, like the dbm to mysql
2610           change over :)
2611         - Removed IrcHooks.pl and CTCP.pl.
2612         - Moved hooks stuff to IrcHooks.pl.
2613         - Moved IrcExtras.pl to Irc.pl.
2614         - Removed ansi_control option. colors can be stripped within
2615           &status() anyway, like for logging.
2616         - Added DCC CHAT and DCC SEND support base.
2617                 - DCC SEND: null file. due to fork()? Fixed anyway.
2618                 - DCC CHAT: person's responsibility to close DCC CHAT.
2619
2620 v0.99pre12 (20000125):
2621         - Added intelligent flood protection and removed factoid
2622           repetition prevention.
2623         - Modified Math.pl...
2624         - Unified tell code in Process.pl.
2625         - Moved variable fix and addresing code to IrcHooks.pl
2626         - Moved tell code from Question.pl to UserExtra.pl.
2627         - Found that % and \ were double backslashed; added it to invalid
2628           factoids. May have been caused by whoever unbacked up 'apt',
2629           cerb? :) May want to add a function to automatically fix badly
2630           formed factoids.
2631         - Added 'factstats profanity', with &hasProfanity($str).
2632         - Added functions for shared memory usage.
2633           Uses: prevent exploitation of forked processes.
2634         - Added 'factstats unrequested'.
2635         - stale variables (vhost_name) forgotten in changeover.
2636         - UPDATE:
2637         - Fixed major leak with cycling of flood messages, typo :)
2638
2639 v0.99pre11 (20000123):
2640         - Fixes here and there...
2641         - Debian find now searches Package names. Fallback automatically
2642           to contents file search.
2643         - Fixed typo related to log cycling.
2644         - Added netsplit detection code.
2645         - Started DCC support... very early stages.
2646         - Replaced several 'foreach' statements with 'if' for efficiency.
2647           About 5 instances of code...
2648         - Debian contents search ignores man pages (unless search string
2649           obvious for man page). Suggested by sgore.
2650         - 'factstats locked' returns list instead of only count.
2651         - &DoModes() bug found by larne.
2652         - Used '$nick' instead of 'lc $nick' for $channels.
2653           Found by larne.
2654
2655 v0.99pre10 (20000119):
2656         - Fixed bugs found when moved code to 'apt':
2657                 - added '^' and '|' to $isnick.
2658                 - removed 'local' and 'my' for some global vars.
2659                 - Typos of some variable names.
2660                 - More typos.
2661         - Debian.pl contents search is better now.
2662                 - UPDATE: made changes suggested by greycat.
2663                 - Added Packages query now...
2664         - Added &getRandomLineFromFile()
2665         - Added LART, random text, Channel limit adjuster.
2666                 TODO => Wingate checker (NOT COMPLETED)...
2667         - Added &iseq() and &isne().
2668         - Help info is not cached any more => loaded each time help() is
2669           called.
2670         - Added %timer hash, timestamp when something was last done. The
2671           hash name is incorrectly named, eh?
2672         - Moved parts of Process.pl to ProcessExtra.pl.
2673         - Moved parts of User.pl to UserExtra.pl.
2674         - Moved myRoutines.pl to UserExtra.pl.
2675         - Moved Extras.pl to Modules.pl.
2676         - Removed fortran math due to poor code style.
2677         - Moved parts of Question.pl to UserExtra.pl.
2678
2679 v0.99pre9 (20000115):
2680         - Added messagecount column for 'seen'. Not used as yet. It
2681           appears to be pointless, yes?
2682         - Cleaned up DBI.pl: made use of $dbh->quote(); added
2683           &DBIRawReturn(), &DBIInsert(), &DBIUpdate().
2684         - Forgot to clear $tell_obj after successful 'tell'. Founded by
2685           solomon.
2686         - Extra modules loaded only if enabled in config, may save some
2687           ram.
2688         - Math.pl cleaned up.
2689         - Added DumpVars.pl, now we know where things are being leaked.
2690                 - Removed duplicate 'use IO::Socket'.
2691         - Typo in "disabled" locking code which didn't work :) Founded by
2692           washort.
2693
2694 v0.99pre8 (20000110):
2695         - Bailout if critical configuration variables are not found.
2696         - Dict.pl works well now.
2697         - Topic.pl now uses %topic or @topic. Added 'topic info' which
2698           contains who and time info. How does @{$hash{$key}} work?
2699         - Used 'use diagnostics;'. Fixed most warnings.
2700         - Added &WARN().
2701         - Minor typo in &IsInvalid() on last statement, heh.
2702         - Fixed (DAILY) logging, finally. Was broken too many times.
2703         - Added &getLineFromFile() for debugging purposes. BROKEN
2704         - Added Debian search-engine frontend => Debian.pl.
2705           UPDATE: forget mysql, takes too long.
2706         - Added Countdown => Countdown.pl.
2707         - Made use of 'unless' instead of 'if !'.
2708         - Added &DBIRaw().
2709         - Addressing required on all commands.
2710         - Added &fixFileList() to simplify files with common directories.
2711                 - RevHippie stumped me with the best method to write this,
2712                   heh. Why do I always try to do things in 1 loop instead
2713                   of 2 loops?
2714
2715 v0.99pre7 (19991230):
2716         - Renamed some setup/DBI calls.
2717         - Simplified nickserv/chanserv code. chanserv opping may break
2718           though. Experimentation?
2719         - Fixed broken stuff scripts/* due to src/* modification.
2720         - Added table locking support. BROKEN.
2721         - param{'ident'} deprecated.
2722         - Removed param{'dbname'}, please rename the main table (with
2723           factoids) to factoids.*
2724         - Added ircII.servers support.
2725         - Fixed infobot, Setup.pl and Files.pl.
2726         - Freshmeat.pl fixed. Set the update time _before_ we update.
2727         - Added factoid renaming. "rename 'from' 'to'".
2728         - Added DBISetRow() for first time inserts, for Freshmeat.
2729           Removed (rather used raw) use of fixmysqlbug for DBISetRow()
2730         - Added 'seen random'; fixed randKey to work with 'seen'.
2731         - Added preliminary code for whatis frontend.
2732         - Added SIGHUP code for $SIG{HUP}.
2733         - Added more error protection in DBI.pl.
2734         - Moved logDate logging support to &status@Misc.pl.
2735         - Confirmed logging does not duplicate from child any more.
2736         - Added 'partialdupe' (not recommended) and '2long' to
2737           &FactStats();
2738         - ...
2739
2740 v0.99pre6 (19991223):
2741         - Dict now fixed, courtesy of RevHippie and myself.
2742         - Applied patch from RevHippie.
2743                 - Removed auto continuation code.
2744                 - Fixed learn =~ /HUNGRY/;
2745                 - Added $talkok and $learnok.
2746         - Removed $param{'nick'} in favour of $ident. Added $safeIdent for
2747           regex and made use of it.
2748         - Moved Help.pl, Ignore.pl, Params.pl and part of User.pl to
2749           Files.pl.
2750         - Removed Internic.pl and Traceroute.pl.
2751         - Fixed $isnick, renamed and fixed &purifyNick(). Added nick
2752           compliancy checks when connecting to IRC server.
2753         - Rewritten 'spell' code.
2754
2755 v0.99pre5 (19991220): bug fix release.
2756         - setupmysql.pl, slightly different for potato.
2757         - dbm2mysql.pl
2758         - performReply(), removed $trailing. FIX LATER.
2759         - Freshmeat.pl, forgot about &main::, again.
2760         - logType, broken date value.
2761         - Fixed broken 'tell blah about what', readded $answer var.
2762         - minLengthBeforePrivate superseeds preferReply.
2763         - Forgot to use 'my' on three instances of $sth.
2764
2765 v0.99pre4 (19991219):
2766         - Added 'dupe' for factstats.
2767         - Added illegal character detection in Statement.pl.
2768         - Unified output (and duplication) of factstats (and other) code
2769           to use one function, &formListReply(). Reduced code by at least
2770           2k :)))
2771         - Minor modifications to &DBIGetCol();
2772         - Move +s flag to 'set search' in infobot.config.
2773         - Altered talkMethod to allow 'private' or 'default'. Made no
2774           sense to have it on public-only, heh.
2775         - friendlyBots will be kept to be compatible with other stock
2776           infobots but soon enough multiple mysql database support will be
2777           added. Will be quite nice once done.
2778         - Added maxListReplyCount and maxListReplyLen. Read infobot.config
2779           for details.
2780         - Replaced $refresh with freshmeatRefreshInterval to config.
2781         - Changed learn setting from ALWAYS to HUNGRY.
2782         - Reorganised Extras.pl, we shouldn't bail out if the command
2783           can be disabled as the person who runs the bot should have
2784           brains.
2785         - Moved some Process.pl stuff to myRoutines.pl.
2786         - ---
2787         - &searchBy*() allows ^ and $, like in regex (basically sar'd).
2788           removed $notexact variable.
2789         - Fixed 'no,blah is blah' bug.
2790         - Changed 'is also' char to ';;'.
2791         - Added &IsInvalid(); to unify Statement (when creating) and
2792           factstats/broken (when checking/verifying). Works like a charm
2793           :)))
2794         - Removed sane stuff; added infobot.ignore. I hope lenzo's
2795           ignoreList code works.
2796         - Fixed setupmysql.pl
2797         - Moved repeatIgnoreInterval to minRepeat*Reply where * is Private
2798           or Public.
2799         - Now preferReply works. Wasn't hard as it first looked.
2800         - Added global '+' flag support.
2801         - Fixed logging: added logType param; if logType =~ /DAILY/, new
2802           log is created daily. Date is time-of-day, aswell.
2803         - added &fixMySQLBug() => adds backslash to special chars.
2804
2805 v0.99pre3 (19991216):
2806         - Fix connection bug where if host does not resolve, it appears
2807           that it's connection refused. Now non-resolving hosts are
2808           detected earlier. Found by some *.it (or .es??) guy.
2809         - Added 'sync in #s' when the bot has joined a channel... just
2810           like in BitchX.
2811         - Added txt2mysql.pl.
2812         - Removed instances of '^\s*' to '^' since $message can be
2813           manipulated in Process.pl.
2814         - Fixed Statement.pl so that it doesn't catch queries... it's a
2815           stupid idea any way.
2816         - Removed 'confused' in favour of 'dunno'.
2817         - Funny hack in performReply(). Stupid but it works.
2818         - Added 'host' column in seen table.
2819         - Made use of &gettimeofday() for freshmeat and search function.
2820
2821 v0.99pre2 (19991213):
2822         - Made use of new database (directory) not to interfere with other
2823           crucial dbs.
2824         - Re-added &getKeys(), mysql's RLIKE wouldn't like "'" in the
2825           statement. If several of similar queries are required, better
2826           off using &getKeys().
2827         - Added two more conversion scripts.
2828
2829 v0.99pre1 (19991211): personal release. MAJOR CHANGES.
2830         - create a script to add the blootbot user to the mysql server and
2831           prepare tables for use with the bot.
2832         - butchered Question.pl, Reply.pl, Statement.pl and Reply.pl.
2833         - main factoid db ported over; barely tested.
2834         - seen ported over; appears to work.
2835         - karma ported over; not tested at all.
2836         - freshmeat ported over; fix brokeness.
2837         - search (listvals and listkeys) ported over.
2838         - rootwarn ported over.
2839
2840         - Use quotemeta in DBI.pl on special chars, especially ' :)
2841         - Added factstats 'broken' function.
2842         - Made use of multiple connections to avoid clashing... does
2843           clashing only occur when there's an INSERT/UPDATE or SELECT or
2844           both?
2845         - Changed $factoid to $faqtoid... good idea? how about $lhs?
2846         - Changed getKeys to countKeys to take advantage of mysql.
2847         - Added randKey to get random primkey,key from table.
2848         - Removed process() when msgType == 'public action'. Why would we
2849           want to care about actions anyway?
2850         - Fix public action; Added private action to &status().
2851         - Added &ERROR();
2852         - Made message and who flooding independent in IrcHooks.pl. Now we
2853           use %flood... should be expanded to use %ignoreList;
2854
2855         NOTES...
2856         - DBI.pl has more functions than what DBMExtra.pl had in order to
2857           implement a table-like hash list.
2858         - &DBISet() always verifies if an entry already exists and does an
2859           UPDATE instead of an INSERT... flaw in mysql or my code???
2860         - &DBISet() can only set one (in UPDATE, two in INSERT), variable
2861           at a time. Does this impose a performance hit? like on seen.
2862         - ...
2863
2864         TODO...
2865         - infobot.cgi not ported over.
2866         - weather not ported over.
2867         - add alarm call between while in Dict.pl.
2868
2869 *************************************************
2870 ************* CHANGE OVER TO MySQL **************
2871 *************************************************
2872
2873 v0.18.2 (199912??): dropped.
2874         - Fix for Weather.pl.
2875         - Fix for Dict.pl.
2876         - ...
2877
2878 v0.18.1 (19991130): last public release before database change over.
2879         - Modified &IsNickInChan() so that a foreach is done case
2880           insensitively against nick to prevent misses.
2881         - Added server "jump" support, requested by larne.
2882         - Added seenMaxDays, maximum number of days to keep seen info on
2883           someone, otherwise delete it.
2884         - Forgot to use $main:: in Freshmeat.pl and Weather.pl; fixed.
2885         - Changed userList format to $userList{$user}{$flag}{$what} = 1;
2886           Converted all code to use this userList format.
2887         - Changed version string to include OSname.
2888         - Replaced $locWho with $who or $origWho.
2889         - Removed hidden whitespaces and tabs at and of statments.
2890
2891 v0.18.0 (19991128):
2892         - Post release typo fixes here and there.
2893         - Changed lc() to tr/A-Z/a-z/ where suitable.
2894         - Redid join command in Process.pl.
2895         - Cleaned up regex (mainly .* => \S+).
2896         - Found $ischan to be broken; fixed.
2897         - Changed Slashdot3.pl to have "joining" code like in DBMExtra.pl.
2898         - Made use of &nick() and &IsChan();
2899         - Added &kick() to Misc.pl; kick command to User.pl.
2900         - Added &IsNickInChan();
2901         - Fixed loading Param file before pidfile and other file related
2902           stuff.
2903         - User.pl
2904                 - Revamped; removed unused functions.
2905                 - Moved Set.pl to here.
2906                 - Moved 4op code here.
2907                 - Moved some functions from Process.pl to here.
2908                 - Rewrote rehash command.
2909         - More casing fixes; debugging info _should_ help to find more.
2910         - Changed infobot.users.
2911
2912 v0.17.0 (19991126):
2913         - Netsplit code prevented stats of signoffs; fixed.
2914         - Messed around with logging code to prevent control chars.
2915         - Removed exchange and excuse module because of brokeness.
2916         - Applied patch from RevHippie. Thanks!
2917                 - Added delimiter support in addressing of hello msg.
2918                 - Removed 'score' in karma.
2919                 - Added 'learn' (ALWAYS or ADDRESSED) support. Normal
2920                   operation == ADDRESSED. Bot won't respond voluntarily to
2921                   factoids but will respond to learning.
2922                 - Ability to turn off minVolunteerLength.
2923                 - More changes to prevent chatter in unaddressed manner.
2924         - We remove any ansi or control chars when piping to the log file.
2925           RevHippie++.
2926         - Added 'thanks' language.
2927         - Typo in Freshmeat.pl; Fixed.
2928         - Added $rootwarnmode = passive || aggressive to satisfy lilo@OPN.
2929           default is passive.
2930         - Fixed mix up of fix in 'tell' code. I had the if statements the
2931           wrong way around.
2932         - Removed more debug code.
2933         - FactStats/author fixed; now multiple authors with the same stats
2934           are printed together.
2935         - Added logfile cycling w/ approx maximum size.
2936         - Changed infobot.config yet again. now it's much better than
2937           before. Some variables removed.
2938         - Added Unset support to Set.pl; Changed so anything can be set
2939           or unset.
2940         - Made use of &purifyNick() so regex doesn't break. $safeWho
2941           now defined earlier.
2942
2943 v0.16.0 (19991122):
2944         - Applied bug fixes from infobot 0.44.3, added md5 password
2945           support (*BSD?).
2946         - Added &IsParam() to check existance of params the proper
2947           (strict) way.
2948         - Moved rootWarn stuff from Extras.pl to RootWarn.pl.
2949         - filenames (rootwarn and uptime) now not statically set.
2950         - Cleaned up config file and Setup.pl.
2951         - Fixed up &parsectcp() in CTCP.pl.
2952         - Changed ($ischan) to (\S+) in Irc.pl under PRIVMSG.
2953         - Major reorganisation of Misc.pl -- removed unused functions.
2954         - Moved some variables to 'infobot'.
2955         - Fixed ANSI typo by some loser; Changed format of &status()'s in
2956           Irc.pl, seems to look nice thus far.
2957         - Added "author" command under &FactStats() in DBMExtra.pl.
2958         - Added case insensitivity to &IsHostMatch() and search strings in
2959           DBMExtra.pl. Any more of these?
2960         - Removed disabled netsplit code.
2961         - Changed 'defined' to 'exists' on all hash lists, 'cept hashes
2962           created by opening db's.
2963         - Modified repeat code on modified_time. If this time is small,
2964           msgType is changed to 'private' for flooding reasons and
2965           max_time is reduced by half. latter appears not to work???
2966
2967 v0.15.0 (19991112):
2968         - Quite funny that once the repeat code was moved to Question.pl
2969           factoid extension leakage was found. maths leakage was also
2970           happening but somehow is fixed when the repeat code was moved
2971           back.
2972         - Clean up of variable names in Reply.pl and Question.pl
2973         - Changed 'length' to 'eq ""' or 'ne ""' where possible.
2974           This should produce faster code but benchmarks prove this change
2975           is neglible. Guess perl is slow :)
2976         - Cleaned up and fixed 'tell <who> about <what>' code.
2977         - Set.pl fixed; Added DEBUG to allowable set list.
2978         - Volunteer code moved to top of Question.pl.
2979
2980 v0.14.0 (19991110):
2981         - Message overflow fix in &FactStats().
2982         - Added 'factstats new' command to display new factoids in the
2983           last 24 hours.
2984         - Fixed up ping reply, requested by a few from #debian@OPN.
2985         - Re-added debugging of DBMExtra due to leakage of orthaned
2986           factoid extensions. Need to investigate and confirm the
2987           lowercase fix of factoids.
2988         - Two functions which used &mkRandom() now fixed due to poor
2989           effort in implementation. Added missing srand(). now the maximum
2990           length of 475 should not be exceeded, hopefully. it can be
2991           beefed up to 490 if needed.
2992
2993 v0.13.0 (19991108):
2994         - Made use of &help() which uses infobot.help. This paves the way
2995           for NLS as suggested by njs.
2996         - Fixed up code on netjoin/netsplit in an effort to find
2997           statistics leakage. Added debugging info to netjoin/netsplit.
2998         - Fixed typo (three instances) in factinfo where time() was used
2999           instead of the data in the factoid extension. Found by larne.
3000         - Allow main thread to do a clean exit while the child does
3001           nothing. Possible fix for weird uptime info.
3002         - Removed sar of 'your|i|you|me' to prevent automated reverse
3003           persona which is better done by the user. Suggested by njs.
3004         - Cleaned up behaviour of &FixPlural(). Fixes a bug.
3005         - Repeat prevention code now replaced (moved aswell) to use
3006           factoid extensions
3007         - Fixed 'factstats requested' error.
3008
3009 v0.12.6 (19991103): bugfix on bugfix release ;)
3010         - Fixed bug where you can't lock a factoid because the hostmatch
3011           ($thisnuh = "") failed. Found by wolfie.
3012         - Fixed up 512byte overflow in factstats[requested].
3013         - hm... wonder how I broke Weather.pl.
3014
3015 v0.12.5 (19991101): Bugfix release
3016         - Fixed "bad" array in Freshmeat.pl. All appologies to scoop.
3017           [update: use array[5] if it exists, otherwise do as before.]
3018         - Removed some debugging info from DBMExtra.pl.
3019         - Fixed inconsistent chanstats behaviour in SignOff.
3020           [Update: forgot to delete the user info _after_ we do the stats]
3021         - Moved factoid stats count and repeat checking code to
3022           Question.pl. Now it works as planned :) :) :)
3023
3024 v0.12.4 (19991028):
3025         - Added factstat and listauth commands.
3026         - 'topic add' now prepends subtopic not append.
3027         - Fixed up minor problem with 'topic restore last'.
3028         - Changed default of locking access to people who own their
3029           factoid or to registered ops. This should please #debian.
3030         - Reduced usage of @{$var} which cannot be really deleted cleanly.
3031         - Moved DBMExtra-related stuff from myRoutines.pl to DBMExtra.pl.
3032         - Added new functions &mkRandom() and &getRandom().
3033         - Changed all code (Search.pl) which used random to the one
3034           developed in DBMExtra.pl. => made code slightly smaller.
3035         - Cleaned up Search.pl to look nice.
3036         - Found yet another casing bug under TOPIC in Irc.pl.
3037         - Fixed bug where dbmextra queries where made on non-factoids like
3038           maths and probably karma.
3039
3040 v0.12.3 (19991025):
3041         - Added while loop around connect which should prevent the bot
3042           from falling down (dying).
3043         - Forgot 'main::' for &getURL in Freshmeat.pl. Changed
3044           opening/closing code yet again. Removed checking on open
3045           read-only.
3046         - Changed Dict.pl to reply private only by default. '+' will allow
3047           public responses without suggestions/synonyms.
3048         - Added checking against pidfile. running two bots from the same
3049           dir at the same time using the same db == disaster. Ask #debian
3050           about it :)
3051         - Implemented Weather.pl.
3052
3053 v0.12.1 (19991022):
3054         - Made distribution out of infobot -> blootbot.
3055         - Irc.pl was prone to be fucking up -- swapped (.*) to (\S+) where
3056           necessary. stab lenzo for this :) found more instances of this.
3057                 [update: appears to trap too many of something, check
3058                   'chaninfo #chan' for info.]
3059         - Minor fix for Freshmeat.pl when opening/closing db.
3060         - Factoid extension code is ready for testing. possible in the
3061           future to add "factstats" for like: top 3 requested factoids.
3062           [update] added lock checking on sar and on updates ("no, "...)
3063
3064 v0.12.0 (19991020): (v0.11.6 + bugfixes + trial)
3065         - Major shake-up of how addressing is handled -- damn it took me a
3066           long time to get this to work.
3067         - Changed command names in Topic.pl to &topicBlah().
3068         - Found and fixed (hopefully) all 7 channel casing bugs.
3069         - Moved freshmeat to use berkeley db instead of raw appindex.txt
3070           file. finally got it to work, seems 30% faster. Creating the db
3071           takes a long time though.
3072         - Added "set" command => Set.pl.
3073         - Added support of talkMethod which behaves much like lobotomy.
3074           In the future, talkMethod =~ /(lobotomy|none)/ may be used.
3075         - Purged: METAR2.pl, NOAA.pl, UAFlight.pl.
3076         - RootWarn only works if the bot is opped in the channel.
3077         - Created performStrictReply() from performReply().
3078         - Quote.pl and Internic.pl now work.
3079         - Fixed a few typos in myRoutines.pl
3080         - Removed bold on dictionary.
3081
3082 v0.11.5 (19991012):
3083         - Fixed $chan to lowercase where appropriate.
3084         - Fixed volunteer reply code... I guess it worked before but now
3085           it is somewhat cleaner and easy to understand.
3086         - Added factoid owner database, requested by njs.
3087         - If public message is addressed to someone else, we ignore it.
3088         - Now support referer factoids ('blah is <REPLY> see erp'). if
3089           'blah' is asked, the reply from 'erp' is given.
3090         - OPN allows part messages -- fixed in /PART/ for $chan.
3091
3092 v0.11.3 (19991008):
3093         - Uptime.pl appears to be fixed after rewrite of getUptimeInfo.
3094         - Fixed up Freshmeat.pl for updating the index. Proxy is now
3095           optional.
3096         - Moved rootWarn to RootWarn.pl. Added hall-of-fame of losers.
3097         - Cleaned up bugs/typo here and there which may have caused the
3098           bot to behave in a weird manner.
3099
3100 v0.11.2 (19991006):
3101         - ChanInfo now displays "statistics" just like our little friend
3102           BitchX.
3103         - Minor change in determining args on commands [myRoutines].
3104         - Added "cmdstats".
3105         - Added rootWarn checking on checks. Repeat offenders will be
3106           punished. Requested by larne. [update: we aren't so harsh now]
3107         - Added lc $chan where appropriate. damn uppercase channames.
3108
3109 v0.11.1 (19991005):
3110         - all instances of undef on hash lists changed to delete which
3111           _now_ works. found minor bugs/typos related to DUI.
3112         - Now skip internic whois intro (13 lines) to fix bad output.
3113         - Forgot to subtract $i from $counter in chaninfo when full.
3114                 [update: whole function changed, see above]
3115         - Now backup (and gzip) freshmeat index file.
3116
3117 v0.11 (19991004): looks like a bug fix release :)
3118         - Fixed typo in reply of Topic.pl/&NewTopic().
3119         - Decreased max topic length allowed; now print it, too, for
3120           debugging.
3121         - Altered repeat code to only work on public. Flooders should be
3122           taken care of by the (allowOutsiders == 0) code. if not, there's
3123           'lobotomy' :)
3124         - Added excess flood protection around &rawout();
3125         - Don't bother about outsiders if we haven't joined any channels.
3126         - Changed email address to one throughout modifications.
3127           New files have neato headers.
3128         - Uptime.pl fixed, didn't need to check against ($pid == $$)
3129         - Repeat-prevention code kind-of looks what it was before but this
3130           one, at least, works :). any problems, just bitch at me.
3131         - Added debugging code for chaninfo to diagnose "problem".
3132
3133 v0.10 (19991001):
3134         - Added Uptime module.
3135         - Added Freshmeat module.
3136         - Dict now returns definition without suggestions (syn's) by
3137           default. Also cleaned up.
3138         - NickServ/ChanServ major clean up.
3139         - Join upon reconnect fix: set $joinchans = 0.
3140         - Fixed up Help.pl, added more help entries.
3141
3142 v0.9b (19990925):
3143         - Did repeat-prevention code from scratch -- now works.
3144           [19991001 update]: multiplier is now 2 instead of 10.
3145         - Made reaction to "hello" more strict. the same should be done to
3146           "thanks", don't you think?
3147         - Converted remaining modules to use forking. should be no more
3148           bot lockups...
3149         - Changed maxhits to 20 for Search.
3150
3151 v0.9 (19990924): +16K added to patch size.
3152         - More, more and more major changes.
3153         - Fixed up inappropriate usage of performReply.
3154         - Added lobotomy command to (un)silence the bot.
3155         - Added allowOutsiders toggle to prevent usage of the bot
3156           _outside_ the channels the bot is in.
3157         - Added $fullyaddressed, enabled if $addressed == 1 and
3158           $param{addressing} == REQUIRE.
3159         - Readded auto-continuity code. it is disable if not fully
3160           addressed. otherwise works as per normal.
3161         - Moved join-on-start-of-motd code to end-of-motd. If nickserv &&
3162           chanserv is enabled, IDENTIFY is done first. If okay, then we
3163           proceed to join channels.
3164         - When bot joins channel, summary of nicks (ops|voice|total) is
3165           given instead of NAMES list.
3166         - Chanserv support moved to "end of names".
3167         - Detection of nickserv (no such nick).
3168         - join channel if channel is on our joins list and if we're not on
3169           it (hrm, providing their client prevents it).
3170         - ...
3171
3172 v0.8 (19990919): +50K patch from last version.
3173         - Major changes, particularly cleanups and fixed a few bugs:
3174                 - Found 2 or so instances of $params{}. Either deleted or
3175                   renamed to $param where appropriate.
3176                 - Shortened foreach statements where possible.
3177         - Replaced duplicate code involving &say and &msg with
3178           &performReply($text,[0=rand,1=strict]). -- major shortcut and
3179           cleanup.
3180         - Added tracking of all users on channel(s). Users are
3181           deleted if they disappear for whatever reason with
3182           &DeleteUserInfo.
3183         - Tracking of channels now works; they are deleted if we disappear
3184           from any channel for whatever reason (hopefully).
3185         - 'forget' command _SHOULD_ be wrapped with $addressed.
3186         - Moved 'modes' from User.pl to myRoutines.pl as 'chaninfo'.
3187         - Added stock quote support by using mu's script. Thanks.
3188         - Added param{*} around stuff in myRoutines.pl for flexibility.
3189         - Added auto-join on invite if not on specific "join_channels"
3190         - Renamed &Timetostring to &Time2String and made use of it not
3191           only for status but for seen.
3192         - If $param{*} == false, it is now not defined.
3193         - Removed Auto-continuity code -- very evil for any bot commands
3194           other than non-intentionally requesting a factoid.
3195         - crypt command required "(" before passwd???
3196         - Removed stupid commands which just generate URLs for you to cut
3197           and paste.
3198         - repeatIgnoreInterval code _NOW_ works unlike before.
3199         - Added support for Topic.pl not to update topics if commands are
3200           prepended by '-'. Topics can be "rehashed" when either a) the
3201           next command is used without '-' or b) "rehash" is the next
3202           command.
3203         - &NewTopic takes two more args to prevent repetition and now does
3204           topic checking. Check code for details.
3205
3206 v0.7 (19990914):
3207         - Major clean up: Search.pl now only uses the "is" dbm; final
3208           pair of parens in commands removed for legibility; Removed
3209           debugging for NickServ, ChanServ to go.
3210         - Added multiple subtopic delete ability. requested by Mercury.
3211         - Moved responses/replies to [files/infobot.lang]. Modified
3212           related functions to conform, including mine.
3213         - Fixed up Kernel.pl to use different type of sockets. Previous
3214           code somehow broke itself.
3215         - Added, but disabled, semi-working timer support. Need to ask
3216           lenzo some questions on how to implement it the best way.
3217         - Added channel (and offender's) notification if someone joins the
3218           channel with root. requested by #debian.
3219         - Added dict.org support. For now, it uses wordnet and returns a
3220           random definition. Could change in the future.
3221
3222 v0.6 (19990903):
3223         - Added support for nickserv and chanserv, requested by is.
3224         - Updated README to describe new features and modifications. Do we
3225           need to elaborate on the modifications to the depth where it
3226           would exceed the size of the patch?
3227         - Minor clean up.
3228         - Removed assumed-continuity of messages -- should be used if
3229           addressing is in optional mode but would be bad in any situation
3230           if more than one infobot existed in the channel.
3231         - Added parsing of g flag to factoid sar.
3232
3233 v0.5 (19990827):
3234         - Better way to confirm if bot is on channel now for topic
3235           management. Also added check for +o+t or -t. &DoModes() on
3236           server stuff, too?
3237         - Patch updated to work for infobot-0.44.2 only.
3238         - Found a bug in Irc.pl under "NAMES" where $u was used initially
3239           but trashed afterwards. => replaced $u w/ $_.
3240         - Lost track of a bug found by Mercury. Seems to be fixed now,
3241           somehow, heh.
3242
3243 v0.4c (19990822):
3244         - Worked on random-cookie -- random responses can now be added
3245           (internally) with ease.
3246         - Noticed joeyh changing his nick to/from '||' which reminded me
3247           of something bad ;) hint: topic management.
3248         - One line patch to allow '|' in factoids; delimiter is now '||'.
3249
3250 v0.4b (19990818):
3251         - Implemented patch from mu. Now it is possible to use the topic
3252           command through private messages to the bot instead of the
3253           channel.
3254         - Replaced SAR of \| with \|\| so we can still use the single
3255           pipes. Double pipes will be either removed or promote an error
3256           message. Found by Robot101. Added el-cheapo work-around if the
3257           last char of subtopic is |, kill it.
3258
3259 v0.4a (19990816):
3260         - Added cheap fix (sleep 1, heh) to excess floods of 'topic
3261           history'. Is sleep 1 enough?
3262         - Added 'random' for random value{key} from database.
3263           Requested by jCommons.
3264
3265 v0.4 (19990815):
3266         - Fixed topic history by replacing push with unshift. Now the
3267           history list is reversed and cycled properly.
3268         - Reversed Changes list. request by mu.
3269         - Totally fixed up topic history since it would break if
3270           'topic add' was induced quickly. Now we only record topics set
3271           by us (for reasons) and onjoin topics (set by anyone).
3272         - Removed 'topic last/reset' because how do you know which topic
3273           is last? Better control with 'topic restore'.
3274
3275 v0.3c (19990813):
3276         - Fixed 'topic mv 2 before 1' bug. Forgot to store 'move' topic
3277           before doing the foreach loop.
3278         - Touched up Kernel.pl in preparation for auto-notify feature.
3279
3280 v0.3b (19990812):
3281         - Added version string to new files so we know which version
3282           of patch we're using (or used). There you go, Mercury ;)
3283         - Fixed up DecipherTopic to reject null subtopics. This would, if
3284           unchanged, (theoretically but not tried, luckily) produce a
3285           domino-effect of problems if the topic was to be changed.
3286                 Update: check if the supposed null topic contains spaces
3287                         within the nick component. If so, then it's not
3288                         nick, therefore treat like ownerless subtopic.
3289         - Worked on README.
3290
3291 v0.3a (19990810):
3292         - Changed back to use topic{chan} (now topicnow{chan}) since
3293           @topiclist{chan} (now @topichist{chan}) does not deal with dupes
3294           or blanks.
3295         - Renamed 'topic last' in preference to 'topic reset'. Original
3296           command can be used but is vague in meaning.
3297         - Fixed several typos made in Irc.pl.
3298         - Replaced 'defined' with 'length' in if statements.
3299
3300 v0.3 (19990809):
3301         - Applied patch from mu for Irc.pl | Topic.pl.
3302         - Replaced %topic hash and $topiclast with @{$topiclist{chan}}.
3303           Much cleaner implementation. Thanks to mu for this. Fully
3304           implemented by xk.
3305         - Reworked on topicbyme (was topiclast), should work now.
3306
3307 v0.2 (19990808):
3308         - Changed name of patch to funkystuph.
3309         - Added history/last/restore to Topic.pl by request of mu and is.
3310         - Reorganised help and order of commands in Topic.pl
3311         - Bot must be addressed to use commands.
3312                 - Fixed bug if multiple infobots were in the channel.
3313         - One occurrence where Cipher was called instead of CipherTopic.
3314         - Fixed up Slashdot.pl. Problems: a) borked completely b) missed
3315           first headline. el-cheapo fix but it works.
3316
3317 v0.1c (19990729):
3318         - Fixed long list{keys|values} bug, hopefully.
3319         - Now randomize key results from search.
3320         - If keys contain ',', underline to differentiate it.
3321         - Fixed possible DoS against Kernel.pl.
3322         - Bug fixed with Kernel.pl repeating itself.
3323                 - Typo of @results [one occurrance of @result]
3324
3325 v0.1b (19990723):
3326         - Fixed bug with &CipherTopic where, if no owner was found, it
3327           would just use NULL. [like "Topic ()"]
3328         - Added kernel feature.
3329         - Moved error messages to public/private, depending on behaviour.
3330           Help-related stuff is private(msg) only for convenience.
3331
3332 v0.1a (19990721):
3333         - Misc cleanup, removed repeated code.
3334
3335 v0.1  (19990720):
3336         - Initial release.