[interchange-cvs] interchange - heins modified 2 files
interchange-core@icdevgroup.org
interchange-core@icdevgroup.org
Wed Feb 5 18:02:00 2003
User: heins
Date: 2003-02-05 23:01:27 GMT
Modified: code/UI_Tag version.coretag
Modified: dist/lib/UI/pages/admin index.html
Log:
* Check for SQL::Statement version (with hooks for testing any version,
lower or higher) at admin index load time, and provide warning that
things won't work properly.
Revision Changes Path
1.5 +29 -1 interchange/code/UI_Tag/version.coretag
rev 1.5, prev_rev 1.4
Index: version.coretag
===================================================================
RCS file: /var/cvs/interchange/code/UI_Tag/version.coretag,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- version.coretag 27 Sep 2002 05:19:09 -0000 1.4
+++ version.coretag 5 Feb 2003 23:01:27 -0000 1.5
@@ -154,6 +154,8 @@
URI::URL URI::URL
/);
+ my %l_than = ('SQL::Statement' => '0.1021');
+ my %g_than = ('SQL::Statement' => '0.1021');
my %info = (
'Safe::Hole' => 'IMPORTANT: SQL and some tags will not work in embedded Perl.',
'SQL::Statement'=> 'IMPORTANT: UI Database editors will not work properly.',
@@ -199,13 +201,39 @@
);
foreach my $name ( sort keys %wanted) {
+ no strict 'refs';
eval "require $name";
if($@) {
my $info = errmsg($info{$name} || "May affect program operation.");
push @out, "$name " . errmsg('not found') . ". $info"
}
+ elsif($l_than{$name}) {
+ my $ver = ${"${name}::VERSION"};
+ $ver =~ s/^(\d+\.\d+)\..*/$1/;
+ if($ver > $l_than{$name}) {
+ my $info = errmsg($info{$name} || "May affect program operation.");
+ my $ex = errmsg(
+ '%s too high a version, need %s or lower',
+ $ver,
+ $l_than{$name},
+ );
+ push @out, "$name $ex. $info";
+ }
+ }
+ elsif($g_than{$name}) {
+ my $ver = ${"${name}::VERSION"};
+ $ver =~ s/^(\d+\.\d+)\..*/$1/;
+ if($ver < $g_than{$name}) {
+ my $info = errmsg($info{$name} || "May affect program operation.");
+ my $ex = errmsg(
+ '%s too low a version, need %s or higher',
+ $ver,
+ $g_than{$name},
+ );
+ push @out, "$name $ex. $info";
+ }
+ }
else {
- no strict 'refs';
my $ver = ${"$name" . "::VERSION"};
$ver = $ver ? "v$ver" : 'no version info';
push @out, "$name " . errmsg('found') . " ($ver).";
2.11 +1 -1 interchange/dist/lib/UI/pages/admin/index.html
rev 2.11, prev_rev 2.10
Index: index.html
===================================================================
RCS file: /var/cvs/interchange/dist/lib/UI/pages/admin/index.html,v
retrieving revision 2.10
retrieving revision 2.11
diff -u -r2.10 -r2.11
--- index.html 14 Jan 2003 02:25:50 -0000 2.10
+++ index.html 5 Feb 2003 23:01:27 -0000 2.11
@@ -71,7 +71,7 @@
my $data = q{[version extended=1 modules=1 joiner="<P>"]};
$dbstatus = q{[version extended=1 modtest="GDBM_File"][version extended=1 modtest="DB_File"]};
return unless $data =~ /IMPORTANT/ or $dbstatus < 1;
- my @lines = grep /not\s+found/, split '<P>', $data;
+ my @lines = grep /not\s+found|IMPORTANT/, split /<P>/, $data;
my @important = grep /IMPORTANT/, @lines;
my @minor = grep $_ !~ /IMPORTANT/, @lines;
my $imp = join '<P>', @important;