Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 8bbcf42

Browse files
committedJun 23, 2016
Module::CoreList: cut TieHashDelta out of everybody’s life
1 parent 8175977 commit 8bbcf42

File tree

2 files changed

+19
-21
lines changed

2 files changed

+19
-21
lines changed
 

‎dist/Module-CoreList/lib/Module/CoreList.pm

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,25 @@ package Module::CoreList;
22
use strict;
33
use vars qw/$VERSION %released %version %families %upstream
44
%bug_tracker %deprecated %delta/;
5-
use Module::CoreList::TieHashDelta;
65
use version;
76
$VERSION = '5.20160720';
87

8+
sub _undelta {
9+
my ($delta) = @_;
10+
my %expanded;
11+
for my $version (sort { $a cmp $b } keys %$delta) {
12+
my $data = $delta->{$version};
13+
my $from = $data->{delta_from};
14+
my %full = (
15+
( $from ? %{$expanded{$from}} : () ),
16+
%{$data->{changed} || {}},
17+
);
18+
delete @full{ keys %{$data->{removed}} };
19+
$expanded{$version} = \%full;
20+
}
21+
return %expanded;
22+
}
23+
924
sub _released_order { # Sort helper, to make '?' sort after everything else
1025
(substr($released{$a}, 0, 1) eq "?")
1126
? ((substr($released{$b}, 0, 1) eq "?")
@@ -12768,12 +12783,7 @@ sub is_core
1276812783
return $perl_version <= $final_release;
1276912784
}
1277012785

12771-
for my $version (sort { $a <=> $b } keys %delta) {
12772-
my $data = $delta{$version};
12773-
tie %{$version{$version}}, 'Module::CoreList::TieHashDelta',
12774-
$data->{changed}, $data->{removed},
12775-
$data->{delta_from} ? $version{$data->{delta_from}} : undef;
12776-
}
12786+
%version = _undelta(\%delta);
1277712787

1277812788
%deprecated = (
1277912789
5.011 => {
@@ -13397,12 +13407,7 @@ for my $version (sort { $a <=> $b } keys %delta) {
1339713407
},
1339813408
);
1339913409

13400-
for my $version (sort { $a <=> $b } keys %deprecated) {
13401-
my $data = $deprecated{$version};
13402-
tie %{ $deprecated{$version} }, 'Module::CoreList::TieHashDelta',
13403-
$data->{changed}, $data->{removed},
13404-
$data->{delta_from} ? $deprecated{ $data->{delta_from} } : undef;
13405-
}
13410+
%deprecated = _undelta(\%deprecated);
1340613411

1340713412
%upstream = (
1340813413
'App::Cpan' => 'cpan',

‎dist/Module-CoreList/lib/Module/CoreList/Utils.pm

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ use strict;
44
use warnings;
55
use vars qw[$VERSION %utilities];
66
use Module::CoreList;
7-
use Module::CoreList::TieHashDelta;
87

98
$VERSION = '5.20160720';
109

@@ -1180,13 +1179,7 @@ my %delta = (
11801179
},
11811180
);
11821181

1183-
for my $version (sort { $a <=> $b } keys %delta) {
1184-
my $data = $delta{$version};
1185-
1186-
tie %{$utilities{$version}}, 'Module::CoreList::TieHashDelta',
1187-
$data->{changed}, $data->{removed},
1188-
$data->{delta_from} ? $utilities{$data->{delta_from}} : undef;
1189-
}
1182+
%utilities = Module::CoreList::_undelta(\%delta);
11901183

11911184
# Create aliases with trailing zeros for $] use
11921185

0 commit comments

Comments
 (0)
Please sign in to comment.