@@ -16,7 +16,7 @@ my $builder = Test::Run::Builder->new(
{
'DB_File' => '1.72',
'Date::Parse' => '2.24',
- 'Digest::SHA1' => '2.01',
+ 'Digest::SHA' => '0',
'Fcntl' => '1.03',
'File::Find' => '0',
'File::NFSLock' => '1.20',
@@ -29,6 +29,7 @@ my $builder = Test::Run::Builder->new(
'Storable' => '1.00',
'Symbol' => '1.02',
'Test::More' => '0.45',
+ 'perl' => '5.006',
},
configure_requires =>
{
@@ -1,3 +1,19 @@
+2014-02-02
+ - Use Digest::SHA instead of Digest::SHA1
+ - Digest::SHA is core and preferred by Debian.
+ - https://rt.cpan.org/Ticket/Display.html?id=92658
+ - Bugfix/maintenance release (2.09)
+
+2014-01-26
+ - Convert from use "warnings::register;" to "use warnings;".
+ - Bugfix/maintenance release (2.08)
+
+2014-01-26
+ - Add perl to the prereq in META.yml/META.json
+ - Kwalitee / CPANTS
+ - Bugfix/maintenance release (2.07)
+
+2013-09-13
- Increase the delay of the cache invalidation in the tests by default to
avoid test failures due to high load.
- https://rt.cpan.org/Public/Bug/Display.html?id=27280
@@ -4,7 +4,7 @@
"Chris Leishman <chris@leishman.org>"
],
"dynamic_config" : 1,
- "generated_by" : "Module::Build version 0.4007, CPAN::Meta::Converter version 2.132510",
+ "generated_by" : "Module::Build version 0.4007, CPAN::Meta::Converter version 2.132830",
"keywords" : [
"cache",
"caching",
@@ -35,7 +35,7 @@
"requires" : {
"DB_File" : "1.72",
"Date::Parse" : "2.24",
- "Digest::SHA1" : "2.01",
+ "Digest::SHA" : "0",
"Fcntl" : "1.03",
"File::Find" : "0",
"File::NFSLock" : "1.20",
@@ -47,59 +47,60 @@
"IO::String" : "1.02",
"Storable" : "1.00",
"Symbol" : "1.02",
- "Test::More" : "0.45"
+ "Test::More" : "0.45",
+ "perl" : "5.006"
}
}
},
"provides" : {
"Cache" : {
"file" : "lib/Cache.pm",
- "version" : "2.06"
+ "version" : "2.09"
},
"Cache::Entry" : {
"file" : "lib/Cache/Entry.pm",
- "version" : "2.06"
+ "version" : "2.09"
},
"Cache::File" : {
"file" : "lib/Cache/File.pm",
- "version" : "2.06"
+ "version" : "2.09"
},
"Cache::File::Entry" : {
"file" : "lib/Cache/File/Entry.pm",
- "version" : "2.06"
+ "version" : "2.09"
},
"Cache::File::Handle" : {
"file" : "lib/Cache/File/Handle.pm"
},
"Cache::File::Heap" : {
"file" : "lib/Cache/File/Heap.pm",
- "version" : "2.06"
+ "version" : "2.09"
},
"Cache::IOString" : {
"file" : "lib/Cache/IOString.pm"
},
"Cache::Memory" : {
"file" : "lib/Cache/Memory.pm",
- "version" : "2.06"
+ "version" : "2.09"
},
"Cache::Memory::Entry" : {
"file" : "lib/Cache/Memory/Entry.pm",
- "version" : "2.06"
+ "version" : "2.09"
},
"Cache::Memory::HeapElem" : {
"file" : "lib/Cache/Memory/HeapElem.pm"
},
"Cache::Null" : {
"file" : "lib/Cache/Null.pm",
- "version" : "2.06"
+ "version" : "2.09"
},
"Cache::Null::Entry" : {
"file" : "lib/Cache/Null/Entry.pm",
- "version" : "2.06"
+ "version" : "2.09"
},
"Cache::RemovalStrategy" : {
"file" : "lib/Cache/RemovalStrategy.pm",
- "version" : "2.06"
+ "version" : "2.09"
},
"Cache::RemovalStrategy::FIFO" : {
"file" : "lib/Cache/RemovalStrategy/FIFO.pm"
@@ -109,7 +110,7 @@
},
"Cache::Tester" : {
"file" : "lib/Cache/Tester.pm",
- "version" : "2.06"
+ "version" : "2.09"
}
},
"release_status" : "stable",
@@ -121,5 +122,5 @@
"url" : "http://bitbucket.org/shlomif/web-cpan"
}
},
- "version" : "2.06"
+ "version" : "2.09"
}
@@ -6,7 +6,7 @@ build_requires: {}
configure_requires:
Module::Build: 0
dynamic_config: 1
-generated_by: 'Module::Build version 0.4007, CPAN::Meta::Converter version 2.132510'
+generated_by: 'Module::Build version 0.4007, CPAN::Meta::Converter version 2.132830'
keywords:
- cache
- caching
@@ -26,51 +26,51 @@ name: Cache
provides:
Cache:
file: lib/Cache.pm
- version: 2.06
+ version: 2.09
Cache::Entry:
file: lib/Cache/Entry.pm
- version: 2.06
+ version: 2.09
Cache::File:
file: lib/Cache/File.pm
- version: 2.06
+ version: 2.09
Cache::File::Entry:
file: lib/Cache/File/Entry.pm
- version: 2.06
+ version: 2.09
Cache::File::Handle:
file: lib/Cache/File/Handle.pm
Cache::File::Heap:
file: lib/Cache/File/Heap.pm
- version: 2.06
+ version: 2.09
Cache::IOString:
file: lib/Cache/IOString.pm
Cache::Memory:
file: lib/Cache/Memory.pm
- version: 2.06
+ version: 2.09
Cache::Memory::Entry:
file: lib/Cache/Memory/Entry.pm
- version: 2.06
+ version: 2.09
Cache::Memory::HeapElem:
file: lib/Cache/Memory/HeapElem.pm
Cache::Null:
file: lib/Cache/Null.pm
- version: 2.06
+ version: 2.09
Cache::Null::Entry:
file: lib/Cache/Null/Entry.pm
- version: 2.06
+ version: 2.09
Cache::RemovalStrategy:
file: lib/Cache/RemovalStrategy.pm
- version: 2.06
+ version: 2.09
Cache::RemovalStrategy::FIFO:
file: lib/Cache/RemovalStrategy/FIFO.pm
Cache::RemovalStrategy::LRU:
file: lib/Cache/RemovalStrategy/LRU.pm
Cache::Tester:
file: lib/Cache/Tester.pm
- version: 2.06
+ version: 2.09
requires:
DB_File: 1.72
Date::Parse: 2.24
- Digest::SHA1: 2.01
+ Digest::SHA: 0
Fcntl: 1.03
File::Find: 0
File::NFSLock: 1.20
@@ -83,7 +83,8 @@ requires:
Storable: 1.00
Symbol: 1.02
Test::More: 0.45
+ perl: 5.006
resources:
license: http://dev.perl.org/licenses/
repository: http://bitbucket.org/shlomif/web-cpan
-version: 2.06
+version: 2.09
@@ -39,7 +39,7 @@ use Carp;
use fields qw(cache key);
-our $VERSION = '2.06';
+our $VERSION = '2.09';
sub new {
@@ -30,7 +30,7 @@ use Carp;
use base qw(Cache::Entry);
use fields qw(dir path lockdetails);
-our $VERSION = '2.06';
+our $VERSION = '2.09';
# hash of locks held my the process, keyed on path. This is useful for
# catching potential deadlocks and warning the user, and for implementing
@@ -31,7 +31,7 @@ use Carp;
use fields qw(db dbhash);
-our $VERSION = '2.06';
+our $VERSION = '2.09';
# common info object
my $BTREEINFO = new DB_File::BTREEINFO;
@@ -25,7 +25,7 @@ use strict;
use warnings;
use Cache::File::Heap;
use Cache::File::Entry;
-use Digest::SHA1 qw(sha1_hex);
+use Digest::SHA qw(sha1_hex);
use Fcntl qw(LOCK_EX LOCK_NB);
use Symbol ();
use File::Spec;
@@ -41,7 +41,7 @@ use fields qw(
expheap ageheap useheap index lockfile
lock lockcount openexp openage openuse openidx);
-our $VERSION = '2.06';
+our $VERSION = '2.09';
sub LOCK_NONE () { 0 }
sub LOCK_LOCAL () { 1 }
@@ -25,7 +25,7 @@ use Carp;
use base qw(Cache::Entry);
use fields qw(store_entry);
-our $VERSION = '2.06';
+our $VERSION = '2.09';
sub new {
@@ -34,7 +34,7 @@ use Cache::Memory::Entry;
use base qw(Cache);
use fields qw(namespace);
-our $VERSION = '2.06';
+our $VERSION = '2.09';
# storage for all data
@@ -79,6 +79,15 @@ available properties that can be set.
=cut
+sub _init_ns_heaps {
+ my ($self, $ns) = @_;
+
+ $Age_Heaps{$ns} ||= Heap::Fibonacci->new();
+ $Use_Heaps{$ns} ||= Heap::Fibonacci->new();
+
+ return;
+}
+
sub new {
my Cache::Memory $self = shift;
my $args = $#_? { @_ } : shift;
@@ -89,9 +98,7 @@ sub new {
my $ns = $args->{namespace} || $DEFAULT_NAMESPACE;
$self->{namespace} = $ns;
- # init heaps
- $Age_Heaps{$ns} ||= Heap::Fibonacci->new();
- $Use_Heaps{$ns} ||= Heap::Fibonacci->new();
+ $self->_init_ns_heaps($ns);
return $self;
}
@@ -169,8 +176,9 @@ sub clear {
$Store_Sizes{$ns} = 0;
# recreate age and used heaps (thus emptying them)
- $Age_Heaps{$ns} = Heap::Fibonacci->new();
- $Use_Heaps{$ns} = Heap::Fibonacci->new();
+ $self->_init_ns_heaps($ns);
+
+ return;
}
sub count {
@@ -211,8 +219,7 @@ sub set_namespace {
my Cache::Memory $self = shift;
my ($namespace) = @_;
- $Age_Heaps{$namespace} ||= Heap::Fibonacci->new();
- $Use_Heaps{$namespace} ||= Heap::Fibonacci->new();
+ $self->_init_ns_heaps($namespace);
$self->{namespace} = $namespace;
}
@@ -23,7 +23,7 @@ use Cache::IOString;
use base qw(Cache::Entry);
use fields qw();
-our $VERSION = '2.06';
+our $VERSION = '2.09';
sub new {
@@ -28,7 +28,7 @@ use Cache::Null::Entry;
use base qw(Cache);
use fields qw(cache_root);
-our $VERSION = '2.06';
+our $VERSION = '2.09';
=head1 CONSTRUCTOR
@@ -16,7 +16,7 @@ use strict;
use warnings;
use Carp;
-our $VERSION = '2.06';
+our $VERSION = '2.09';
sub new {
@@ -32,7 +32,7 @@ use vars qw(@ISA @EXPORT $VERSION $CACHE_TESTS);
use Carp;
@ISA = qw(Exporter Test::More);
-$VERSION = '2.06';
+$VERSION = '2.09';
@EXPORT = (qw(run_cache_tests $CACHE_TESTS), @Test::More::EXPORT);
$CACHE_TESTS = 79;
@@ -45,7 +45,7 @@ package Cache;
require 5.006;
use strict;
-use warnings::register;
+use warnings;
use Carp;
use Date::Parse;
@@ -54,7 +54,7 @@ use fields qw(
default_expires removal_strategy size_limit
load_callback validate_callback);
-our $VERSION = '2.06';
+our $VERSION = '2.09';
our $EXPIRES_NOW = 'now';
our $EXPIRES_NEVER = 'never';