Prevent future changes (either due to popularity or upstream renames)
from going unnoticed. Unsupported input should be explicitly marked.
use Data::Dump 'pp';
-our $VERSION = '1.00';
+our $VERSION = '1.01';
my %BROWSERID = qw(
IE ie
Opera-Mini op_mini
BlackBerry-WebKit bb
UC-Browser and_uc
+ Other 0
);
my %count = (
(readline =~ y/\t//) == 3 or die "unexpected amount of columns in header\n";
while (my $row = readline) {
+ $row =~ s/\r?\n\z//;
my ($date, $name, $version, $pct) = split /\t/, $row;
$date =~ $recent or next;
$name =~ y/ /-/;
- my $browser = $BROWSERID{$name} or next;
+ my $browser = $BROWSERID{$name};
+ if (not $browser) {
+ warn "unknown browser: $name v$version ($pct)\n"
+ unless defined $browser or $pct < .005;
+ next;
+ }
$version =~ s/\A-\z/0/;
$count{$browser}{$version} += $pct;
$count{-total} += $pct;