Commit 86fb87f1 authored by Frédéric Buclin's avatar Frédéric Buclin

Bug 1136137: Require Perl 5.14

r=dkl
parent 438d57d6
......@@ -7,7 +7,7 @@
package Bugzilla;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -502,7 +502,6 @@ sub error_mode {
$class->request_cache->{error_mode} = $newval;
}
# XXX - Once we require Perl 5.10.1, this test can be replaced by //.
if (exists $class->request_cache->{error_mode}) {
return $class->request_cache->{error_mode};
}
......@@ -551,7 +550,6 @@ sub usage_mode {
$class->request_cache->{usage_mode} = $newval;
}
# XXX - Once we require Perl 5.10.1, this test can be replaced by //.
if (exists $class->request_cache->{usage_mode}) {
return $class->request_cache->{usage_mode};
}
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Constants;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -10,7 +10,7 @@
package Bugzilla::API::1_0::Resource;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Resource::Bug;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -670,7 +670,7 @@ sub search {
my %options = ( fields => ['bug_id'] );
# Find the highest custom field id
my @field_ids = grep(/^f(\d+)$/, keys %$match_params);
my @field_ids = grep(/^f(\d+)$/a, keys %$match_params);
my $last_field_id = @field_ids ? max @field_ids + 1 : 1;
# Do special search types for certain fields.
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Resource::BugUserLastVisit;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -35,6 +35,7 @@ use constant PUBLIC_METHODS => qw(
);
sub REST_RESOURCES {
use re '/a';
return [
# bug-id
qr{^/bug_user_last_visit/(\d+)$}, {
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Resource::Bugzilla;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Resource::Classification;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Resource::Component;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Resource::FlagType;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Resource::Group;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Resource::Product;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Resource::User;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Server;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::1_0::Util;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::API::Server;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Attachment;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Attachment::PatchReader;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Login;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Login::APIKey;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Login::CGI;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Login::Cookie;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Login::Env;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Login::Stack;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Persist::Cookie;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Verify;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Verify::DB;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Verify::LDAP;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Verify::RADIUS;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Auth::Verify::Stack;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Bug;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -305,6 +305,9 @@ sub new {
my $class = ref($invocant) || $invocant;
my $param = shift;
# Let's not be abused by pseudo-numbers.
use re '/a';
# Remove leading "#" mark if we've just been passed an id.
if (!ref $param && $param =~ /^#(\d+)$/) {
$param = $1;
......@@ -542,6 +545,9 @@ sub _extract_bug_ids {
my $comments = shift;
my @bug_ids;
# Let's not be abused by pseudo-numbers.
use re '/a';
my $params = Bugzilla->params;
my @urlbases = ($params->{'urlbase'});
push(@urlbases, $params->{'sslbase'}) if $params->{'sslbase'};
......@@ -1735,7 +1741,7 @@ sub _check_dependencies {
}
}
# Replace all aliases by their corresponding bug ID.
@bug_ids = map { $_ =~ /^(\d+)$/ ? $1 : $invocant->check($_, $type)->id } @bug_ids;
@bug_ids = map { $_ =~ /^(\d+)$/a ? $1 : $invocant->check($_, $type)->id } @bug_ids;
$deps_in{$type} = \@bug_ids;
}
......@@ -3694,8 +3700,6 @@ sub comments {
# equivalent for characters above U+FFFF as MySQL older than 5.5.3
# cannot store them, see Bugzilla::Comment::_check_thetext().
if ($is_mysql) {
# Perl 5.13.8 and older complain about non-characters.
no warnings 'utf8';
$comment->{thetext} =~ s/\x{FDD0}\[U\+((?:[1-9A-F]|10)[0-9A-F]{4})\]\x{FDD1}/chr(hex $1)/eg
}
}
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugMail;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl::Bugzilla;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl::Bugzilla::Local;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl::Debian;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -28,8 +28,8 @@ sub should_handle {
return ((lc($uri->authority) eq 'bugs.debian.org'
or lc($uri->authority) eq 'debbugs.gnu.org')
and (($uri->path =~ /bugreport\.cgi$/
and $uri->query_param('bug') =~ m|^\d+$|)
or $uri->path =~ m|^/\d+$|)) ? 1 : 0;
and $uri->query_param('bug') =~ m|^\d+$|a)
or $uri->path =~ m|^/\d+$|a)) ? 1 : 0;
}
sub _check_value {
......@@ -39,7 +39,7 @@ sub _check_value {
# This is the shortest standard URL form for Debian BTS URLs,
# and so we reduce all URLs to this.
$uri->path =~ m|^/(\d+)$| || $uri->query_param('bug') =~ m|^(\d+)$|;
$uri->path =~ m|^/(\d+)$|a || $uri->query_param('bug') =~ m|^(\d+)$|a;
$uri = new URI('https://' . $uri->authority . '/' . $1);
return $uri;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl::GitHub;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl::Google;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl::JIRA;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl::Launchpad;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -25,7 +25,7 @@ sub should_handle {
# https://launchpad.net/bugs/1234
# All variations end with either "/bugs/1234" or "/+bug/1234"
return ($uri->authority =~ /launchpad\.net$/
and $uri->path =~ m|bugs?/\d+$|) ? 1 : 0;
and $uri->path =~ m|bugs?/\d+$|a) ? 1 : 0;
}
sub _check_value {
......@@ -35,7 +35,7 @@ sub _check_value {
# This is the shortest standard URL form for Launchpad bugs,
# and so we reduce all URLs to this.
$uri->path =~ m|bugs?/(\d+)$|;
$uri->path =~ m|bugs?/(\d+)$|a;
$uri = new URI("https://launchpad.net/bugs/$1");
return $uri;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl::MantisBT;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl::SourceForge;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUrl::Trac;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::BugUserLastVisit;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::CGI;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -13,7 +13,7 @@
# the same points.
package Bugzilla::Chart;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -59,7 +59,7 @@ sub init {
# &gt=1&labelgt=Grand+Total
foreach my $param ($cgi->param()) {
# Store all the lines
if ($param =~ /^line(\d+)$/) {
if ($param =~ /^line(\d+)$/a) {
foreach my $series_id ($cgi->param($param)) {
detaint_natural($series_id)
|| ThrowCodeError("invalid_series_id");
......@@ -69,7 +69,7 @@ sub init {
}
# Store all the labels
if ($param =~ /^label(\d+)$/) {
if ($param =~ /^label(\d+)$/a) {
$self->{'labels'}[$1] = $cgi->param($param);
}
}
......
......@@ -7,7 +7,7 @@
package Bugzilla::Classification;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Comment;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -447,8 +447,6 @@ sub _check_thetext {
# XXX - Once we use utf8mb4 for comments, this hack for MySQL can go away.
state $is_mysql = Bugzilla->dbh->isa('Bugzilla::DB::Mysql') ? 1 : 0;
if ($is_mysql) {
# Perl 5.13.8 and older complain about non-characters.
no warnings 'utf8';
$thetext =~ s/([\x{10000}-\x{10FFFF}])/"\x{FDD0}[" . uc(sprintf('U+%04x', ord($1))) . "]\x{FDD1}"/eg;
}
......
......@@ -7,7 +7,7 @@
package Bugzilla::Comment::TagWeights;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Component;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::Admin;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::Advanced;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::Attachment;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::Auth;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::BugChange;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::BugFields;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::Common;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::Core;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::General;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::GroupSecurity;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::LDAP;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::MTA;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::Memcached;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::Query;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::RADIUS;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::ShadowDB;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Config::UserMatch;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Constants;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::DB;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -21,7 +21,7 @@ For interface details see L<Bugzilla::DB> and L<DBI>.
package Bugzilla::DB::Mysql;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -21,7 +21,7 @@ For interface details see L<Bugzilla::DB> and L<DBI>.
package Bugzilla::DB::Oracle;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -719,7 +719,7 @@ sub _get_create_trigger_ddl {
package Bugzilla::DB::Oracle::st;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -21,7 +21,7 @@ For interface details see L<Bugzilla::DB> and L<DBI>.
package Bugzilla::DB::Pg;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -15,7 +15,7 @@ package Bugzilla::DB::Schema;
#
###########################################################################
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -13,7 +13,7 @@ package Bugzilla::DB::Schema::Mysql;
#
###############################################################################
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -311,7 +311,7 @@ sub column_info_to_column {
$default = 0 if $default =~ /^0\.0+$/;
# If we're not a number, we're a string and need to be
# quoted.
$default = $dbh->quote($default) if !($default =~ /^(-)?(\d+)(.\d+)?$/);
$default = $dbh->quote($default) if !($default =~ /^(-)?(\d+)(\.\d+)?$/a);
$column->{DEFAULT} = $default;
}
}
......
......@@ -13,7 +13,7 @@ package Bugzilla::DB::Schema::Oracle;
#
###############################################################################
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -13,7 +13,7 @@ package Bugzilla::DB::Schema::Pg;
#
###############################################################################
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::DB::Schema::Sqlite;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::DB::Sqlite;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Error;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Extension;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -57,7 +57,7 @@ in addition to what is documented here.
package Bugzilla::Field;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Field::Choice;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Field::ChoiceInterface;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Flag;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......@@ -843,11 +843,11 @@ sub extract_flags_from_cgi {
}
# Extract a list of flag type IDs from field names.
my @flagtype_ids = map(/^flag_type-(\d+)$/ ? $1 : (), $cgi->param());
my @flagtype_ids = map(/^flag_type-(\d+)$/a ? $1 : (), $cgi->param());
@flagtype_ids = grep($cgi->param("flag_type-$_") ne 'X', @flagtype_ids);
# Extract a list of existing flag IDs.
my @flag_ids = map(/^flag-(\d+)$/ ? $1 : (), $cgi->param());
my @flag_ids = map(/^flag-(\d+)$/a ? $1 : (), $cgi->param());
return ([], []) unless (scalar(@flagtype_ids) || scalar(@flag_ids));
......@@ -986,7 +986,7 @@ sub multi_extract_flags_from_cgi {
}
# Extract a list of flag type IDs from field names.
my @flagtype_ids = map(/^flag_type-(\d+)$/ ? $1 : (), $cgi->param());
my @flagtype_ids = map(/^flag_type-(\d+)$/a ? $1 : (), $cgi->param());
my (@new_flags, @flags);
......
......@@ -7,7 +7,7 @@
package Bugzilla::FlagType;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Group;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Hook;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -15,7 +15,7 @@ package Bugzilla::Install;
# make those assumptions, then it should go into one of the
# packages under the Bugzilla::Install namespace.
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -10,7 +10,7 @@ package Bugzilla::Install::DB;
# NOTE: This package may "use" any modules that it likes,
# localconfig is available, and params are up to date.
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -15,7 +15,7 @@ package Bugzilla::Install::Filesystem;
# * Files do not have the correct permissions.
# * The database does not exist.
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -15,7 +15,7 @@ package Bugzilla::Install::Localconfig;
# * Files do not have the correct permissions
# * The database is not up to date
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -13,7 +13,7 @@ package Bugzilla::Install::Requirements;
# Subroutines may "require" and "import" from modules, but they
# MUST NOT "use."
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -11,7 +11,7 @@ package Bugzilla::Install::Util;
# module may require *only* Bugzilla::Constants and built-in
# perl modules.
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Job::BugMail;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Job::Mailer;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::JobQueue;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -11,7 +11,7 @@
package Bugzilla::JobQueue::Runner;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -7,7 +7,7 @@
package Bugzilla::Keyword;
use 5.10.1;
use 5.14.0;
use strict;
use warnings;
......
......@@ -9,7 +9,7 @@ package Bugzilla::MIME;
use strict;
use warnings;
use 5.10.1;
use 5.14.0;
use parent qw(Email::MIME);
use Encode qw(encode);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment