browser: retain prefix of merged agents
authorMischa POSLAWSKY <perl@shiar.org>
Mon, 15 Nov 2021 20:27:24 +0000 (21:27 +0100)
committerMischa POSLAWSKY <perl@shiar.org>
Mon, 6 Dec 2021 11:07:29 +0000 (12:07 +0100)
browser.plp
tools/mkcaniuse

index 9278c886708296b5cd63e1023b300455fb35deac..d3b4596f9801408eba0e73484eb321a7cff9afe5 100644 (file)
@@ -49,7 +49,7 @@ my %DSTATS = (
                join(' ',
                        'with prefix',
                        map {"-$_-"}
-                       ($caniuse->{agents}->{$_[0]}->{prefix_exceptions} // {})->{$_[1]}
+                       $caniuse->{agents}->{$_[0]}->{version_list}->{$_[1]}->{prefix}
                        // $caniuse->{agents}->{$_[0]}->{prefix} // (),
                );
        },
index 8378d2ff4c63366fc1397fb1ac08d3ec2c01017f..5ab3cbaf048ed1c60ac0ad6d6fa590bbe4f00fce 100755 (executable)
@@ -32,6 +32,9 @@ for (values %{ $data->{data} }) {
 while (my ($browser, $alias) = each %BROWSERJOIN) {
        my $agent =        $data->{agents}->{$browser} or next;
        my $amend = delete $data->{agents}->{$alias}   or next;
+       unless ($agent->{prefix} eq $amend->{prefix}) {
+               $_->{prefix} ||= $amend->{prefix} for @{ $amend->{version_list} };
+       }
        unshift @{ $agent->{version_list} }, @{ $amend->{version_list} };
        $agent->{browser} = sprintf '%s (former %s)',
                $agent->{browser}, $amend->{browser};
@@ -53,6 +56,7 @@ for my $feature (values %{ $data->{data} }) {
 
 while (my ($agent, $row) = each %{ $data->{agents} }) {
        delete $row->{usage_global};
+       delete $row->{prefix_exceptions};  # duplicate of version_list->prefix
        $row->{versions} = [ uniq map { $_->{version} } @{ $row->{version_list} } ];
 
        # convert metadata list into (cleaned) lookup table