r3152 - in
/packages/libapache-session-perl/branches/upstream/current:
CHANGES META.yml Session.pm Session/Flex.pm t/99flex.t
eloy at users.alioth.debian.org
eloy at users.alioth.debian.org
Thu Jun 22 14:37:03 UTC 2006
Author: eloy
Date: Thu Jun 22 14:36:54 2006
New Revision: 3152
URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=3152
Log:
Load /tmp/tmp.Khtfe27987/libapache-session-perl-1.81 into
packages/libapache-session-perl/branches/upstream/current.
Modified:
packages/libapache-session-perl/branches/upstream/current/CHANGES
packages/libapache-session-perl/branches/upstream/current/META.yml
packages/libapache-session-perl/branches/upstream/current/Session.pm
packages/libapache-session-perl/branches/upstream/current/Session/Flex.pm
packages/libapache-session-perl/branches/upstream/current/t/99flex.t
Modified: packages/libapache-session-perl/branches/upstream/current/CHANGES
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libapache-session-perl/branches/upstream/current/CHANGES?rev=3152&op=diff
==============================================================================
--- packages/libapache-session-perl/branches/upstream/current/CHANGES (original)
+++ packages/libapache-session-perl/branches/upstream/current/CHANGES Thu Jun 22 14:36:54 2006
@@ -1,3 +1,8 @@
+1.81 2006-05-23
+
+ - Don't unconditionally try to require packages in Apache::Session::Flex
+ (Dave Rolsky).
+
1.8 2005-10-06
- Bug fix to stop death in Apache::Session::Lock::Semaphore.
Modified: packages/libapache-session-perl/branches/upstream/current/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libapache-session-perl/branches/upstream/current/META.yml?rev=3152&op=diff
==============================================================================
--- packages/libapache-session-perl/branches/upstream/current/META.yml (original)
+++ packages/libapache-session-perl/branches/upstream/current/META.yml Thu Jun 22 14:36:54 2006
@@ -1,7 +1,7 @@
# http://module-build.sourceforge.net/META-spec.html
#XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX#
name: Apache-Session
-version: 1.80
+version: 1.81
version_from: Session.pm
installdirs: site
requires:
Modified: packages/libapache-session-perl/branches/upstream/current/Session.pm
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libapache-session-perl/branches/upstream/current/Session.pm?rev=3152&op=diff
==============================================================================
--- packages/libapache-session-perl/branches/upstream/current/Session.pm (original)
+++ packages/libapache-session-perl/branches/upstream/current/Session.pm Thu Jun 22 14:36:54 2006
@@ -312,7 +312,7 @@
use strict;
use vars qw($VERSION);
-$VERSION = '1.80';
+$VERSION = '1.81';
#State constants
#
Modified: packages/libapache-session-perl/branches/upstream/current/Session/Flex.pm
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libapache-session-perl/branches/upstream/current/Session/Flex.pm?rev=3152&op=diff
==============================================================================
--- packages/libapache-session-perl/branches/upstream/current/Session/Flex.pm (original)
+++ packages/libapache-session-perl/branches/upstream/current/Session/Flex.pm Thu Jun 22 14:36:54 2006
@@ -10,12 +10,10 @@
package Apache::Session::Flex;
use strict;
-use vars qw(@ISA $VERSION $incl);
+use vars qw(@ISA $VERSION);
$VERSION = '1.01';
@ISA = qw(Apache::Session);
-
-$incl = {};
use Apache::Session;
@@ -27,34 +25,29 @@
my $gen = "Apache::Session::Generate::$self->{args}->{Generate}";
my $ser = "Apache::Session::Serialize::$self->{args}->{Serialize}";
- if (!exists $incl->{$store}) {
- eval "require $store" || die $@;
- $incl->{$store} = 1;
+ for my $class ($store, $lock) {
+ unless ($class->can('new')) {
+ eval "require $class" || die $@;
+ }
}
-
- if (!exists $incl->{$lock}) {
- eval "require $lock" || die $@;
- $incl->{$lock} = 1;
+
+ unless ($gen->can('validate')) {
+ eval "require $gen" || die $@;
}
-
- if (!exists $incl->{$gen}) {
- eval "require $gen" || die $@;
- eval '$incl->{$gen}->[0] = \&' . $gen . '::generate' || die $@;
- eval '$incl->{$gen}->[1] = \&' . $gen . '::validate' || die $@;
+
+ unless ($ser->can('serialize')) {
+ eval "require $ser" || die $@;
}
-
- if (!exists $incl->{$ser}) {
- eval "require $ser" || die $@;
- eval '$incl->{$ser}->[0] = \&' . $ser . '::serialize' || die $@;
- eval '$incl->{$ser}->[1] = \&' . $ser . '::unserialize' || die $@;
- }
-
+
$self->{object_store} = new $store $self;
$self->{lock_manager} = new $lock $self;
- $self->{generate} = $incl->{$gen}->[0];
- $self->{validate} = $incl->{$gen}->[1];
- $self->{serialize} = $incl->{$ser}->[0];
- $self->{unserialize} = $incl->{$ser}->[1];
+ {
+ no strict 'refs';
+ $self->{generate} = \&{$gen . '::generate'};
+ $self->{validate} = \&{$gen . '::validate'};
+ $self->{serialize} = \&{$ser . '::serialize'};
+ $self->{unserialize} = \&{$ser . '::unserialize'};
+ }
return $self;
}
Modified: packages/libapache-session-perl/branches/upstream/current/t/99flex.t
URL: http://svn.debian.org/wsvn/pkg-perl/packages/libapache-session-perl/branches/upstream/current/t/99flex.t?rev=3152&op=diff
==============================================================================
--- packages/libapache-session-perl/branches/upstream/current/t/99flex.t (original)
+++ packages/libapache-session-perl/branches/upstream/current/t/99flex.t Thu Jun 22 14:36:54 2006
@@ -16,7 +16,7 @@
my $tempdir = tempdir( DIR => '.', CLEANUP => 1 );
chdir( $tempdir );
-plan tests => 11;
+plan tests => 12;
my $package = 'Apache::Session::Flex';
use_ok $package;
@@ -49,4 +49,48 @@
is ref($session->{unserialize}), 'CODE', 'unserialize is CODE';
}
+{
+ {
+ package Apache::Session::Store::Test;
+ use base 'Apache::Session::Store::File';
+ }
+
+ {
+ package Apache::Session::Lock::Test;
+ use base 'Apache::Session::Lock::File';
+ }
+
+ {
+ package Apache::Session::Generate::Test;
+
+ # This wack double assignment prevents "... used only once"
+ # warnings.
+ *Apache::Session::Generate::Test::generate =
+ *Apache::Session::Generate::Test::generate =
+ \&Apache::Session::Generate::MD5::generate;
+ *Apache::Session::Generate::Test::validate =
+ *Apache::Session::Generate::Test::validate =
+ \&Apache::Session::Generate::MD5::validate;
+ }
+
+ {
+ package Apache::Session::Serialize::Test;
+
+ *Apache::Session::Serialize::Test::serialize =
+ *Apache::Session::Serialize::Test::serialize =
+ \&Apache::Session::Serialize::Storable::serialize;
+ *Apache::Session::Serialize::Test::unserialize =
+ *Apache::Session::Serialize::Test::unserialize =
+ \&Apache::Session::Serialize::Storable::unserialize;
+ }
+
+ my $session = tie my %session, $package, undef, {
+ Store => 'Test',
+ Lock => 'Test',
+ Generate => 'Test',
+ Serialize => 'Test',
+ };
+ isa_ok $session->{object_store}, 'Apache::Session::Store::Test';
+}
+
chdir( $origdir );
More information about the Pkg-perl-cvs-commits
mailing list