[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Infobot 0.49
There were two changes necessary to make infobot run on my
machine (patch attached):
1 - On systems that have more than one of the DB modules installed,
it may be necessary to rearrange the priority in @AnyDBM_File::ISA.
This can be done in Infobot/DB.pm.
As far as I can see, this is only necessary because DB-tied
hashes are queried with exists. As far as I know, there is
no difference in exists() and defined() for these hashes, so
s/exists/defined/ may make this unnecessary. I can find the
pertinent exits()s (others are better left alone).
2 - In Infobot.pm it says, basically
if ($instance) {
# some code
} else {
$M->{$instance->name} = undef;
$self->status(0, "$module not instantiated");
}
The method call $instance->name in the else part *must* fail, if
it is reached. On the other hand, if $M->{ something} is ever
accessed, it will return undef anyway, so I just commented that line
out.
Further: 0.49 doesn't understand "xyx++" and "karma xyz". I suppose,
this is just not yet implemented. I'd like to patch "karma" so that
it optionally reports sums of karma for multiple (similar) items.
infobot-dev@metronomicon.com seems to be a mailing list. How do
I subscribe?
Anno
diff -rc Infobot-0.49/Infobot/DB.pm Infobot-0.49.patch/Infobot/DB.pm
*** Infobot-0.49/Infobot/DB.pm Tue Dec 21 20:50:31 1999
--- Infobot-0.49.patch/Infobot/DB.pm Wed Dec 22 17:02:19 1999
***************
*** 1,6 ****
--- 1,9 ----
# infobot :: Kevin Lenzo (c) 1997
package Infobot::DB;
+
+ BEGIN { @AnyDBM_File::ISA = qw(DB_File GDBM_File NDBM_File) }
+
use Infobot::Entity::Dispatcher;
use Infobot::Message;
diff -rc Infobot-0.49/Infobot.pm Infobot-0.49.patch/Infobot.pm
*** Infobot-0.49/Infobot.pm Tue Dec 21 20:50:31 1999
--- Infobot-0.49.patch/Infobot.pm Wed Dec 22 16:36:08 1999
***************
*** 407,413 ****
$instance->enabled($defenable);
} else {
! $M->{$instance->name} = undef;
$self->status(0, "$module not instantiated");
}
}
--- 407,413 ----
$instance->enabled($defenable);
} else {
! # $M->{$instance->name} = undef;
$self->status(0, "$module not instantiated");
}
}
Only in Infobot-0.49.patch/: Makefile