From 86fb87f1a65a17e7a86fe71b06d57767b0b3ea3b Mon Sep 17 00:00:00 2001 From: Frédéric Buclin Date: Mon, 29 Feb 2016 19:34:34 +0100 Subject: Bug 1136137: Require Perl 5.14 r=dkl --- Bugzilla/API/1_0/Constants.pm | 2 +- Bugzilla/API/1_0/Resource.pm | 2 +- Bugzilla/API/1_0/Resource/Bug.pm | 4 ++-- Bugzilla/API/1_0/Resource/BugUserLastVisit.pm | 3 ++- Bugzilla/API/1_0/Resource/Bugzilla.pm | 2 +- Bugzilla/API/1_0/Resource/Classification.pm | 2 +- Bugzilla/API/1_0/Resource/Component.pm | 2 +- Bugzilla/API/1_0/Resource/FlagType.pm | 2 +- Bugzilla/API/1_0/Resource/Group.pm | 2 +- Bugzilla/API/1_0/Resource/Product.pm | 2 +- Bugzilla/API/1_0/Resource/User.pm | 2 +- Bugzilla/API/1_0/Server.pm | 2 +- Bugzilla/API/1_0/Util.pm | 2 +- Bugzilla/API/Server.pm | 2 +- Bugzilla/Attachment.pm | 2 +- Bugzilla/Attachment/PatchReader.pm | 2 +- Bugzilla/Auth.pm | 2 +- Bugzilla/Auth/Login.pm | 2 +- Bugzilla/Auth/Login/APIKey.pm | 2 +- Bugzilla/Auth/Login/CGI.pm | 2 +- Bugzilla/Auth/Login/Cookie.pm | 2 +- Bugzilla/Auth/Login/Env.pm | 2 +- Bugzilla/Auth/Login/Stack.pm | 2 +- Bugzilla/Auth/Persist/Cookie.pm | 2 +- Bugzilla/Auth/Verify.pm | 2 +- Bugzilla/Auth/Verify/DB.pm | 2 +- Bugzilla/Auth/Verify/LDAP.pm | 2 +- Bugzilla/Auth/Verify/RADIUS.pm | 2 +- Bugzilla/Auth/Verify/Stack.pm | 2 +- Bugzilla/Bug.pm | 12 +++++++---- Bugzilla/BugMail.pm | 2 +- Bugzilla/BugUrl.pm | 2 +- Bugzilla/BugUrl/Bugzilla.pm | 2 +- Bugzilla/BugUrl/Bugzilla/Local.pm | 2 +- Bugzilla/BugUrl/Debian.pm | 8 ++++---- Bugzilla/BugUrl/GitHub.pm | 2 +- Bugzilla/BugUrl/Google.pm | 2 +- Bugzilla/BugUrl/JIRA.pm | 2 +- Bugzilla/BugUrl/Launchpad.pm | 6 +++--- Bugzilla/BugUrl/MantisBT.pm | 2 +- Bugzilla/BugUrl/SourceForge.pm | 2 +- Bugzilla/BugUrl/Trac.pm | 2 +- Bugzilla/BugUserLastVisit.pm | 2 +- Bugzilla/CGI.pm | 2 +- Bugzilla/Chart.pm | 6 +++--- Bugzilla/Classification.pm | 2 +- Bugzilla/Comment.pm | 4 +--- Bugzilla/Comment/TagWeights.pm | 2 +- Bugzilla/Component.pm | 2 +- Bugzilla/Config.pm | 2 +- Bugzilla/Config/Admin.pm | 2 +- Bugzilla/Config/Advanced.pm | 2 +- Bugzilla/Config/Attachment.pm | 2 +- Bugzilla/Config/Auth.pm | 2 +- Bugzilla/Config/BugChange.pm | 2 +- Bugzilla/Config/BugFields.pm | 2 +- Bugzilla/Config/Common.pm | 2 +- Bugzilla/Config/Core.pm | 2 +- Bugzilla/Config/General.pm | 2 +- Bugzilla/Config/GroupSecurity.pm | 2 +- Bugzilla/Config/LDAP.pm | 2 +- Bugzilla/Config/MTA.pm | 2 +- Bugzilla/Config/Memcached.pm | 2 +- Bugzilla/Config/Query.pm | 2 +- Bugzilla/Config/RADIUS.pm | 2 +- Bugzilla/Config/ShadowDB.pm | 2 +- Bugzilla/Config/UserMatch.pm | 2 +- Bugzilla/Constants.pm | 2 +- Bugzilla/DB.pm | 2 +- Bugzilla/DB/Mysql.pm | 2 +- Bugzilla/DB/Oracle.pm | 4 ++-- Bugzilla/DB/Pg.pm | 2 +- Bugzilla/DB/Schema.pm | 2 +- Bugzilla/DB/Schema/Mysql.pm | 4 ++-- Bugzilla/DB/Schema/Oracle.pm | 2 +- Bugzilla/DB/Schema/Pg.pm | 2 +- Bugzilla/DB/Schema/Sqlite.pm | 2 +- Bugzilla/DB/Sqlite.pm | 2 +- Bugzilla/Error.pm | 2 +- Bugzilla/Extension.pm | 2 +- Bugzilla/Field.pm | 2 +- Bugzilla/Field/Choice.pm | 2 +- Bugzilla/Field/ChoiceInterface.pm | 2 +- Bugzilla/Flag.pm | 8 ++++---- Bugzilla/FlagType.pm | 2 +- Bugzilla/Group.pm | 2 +- Bugzilla/Hook.pm | 2 +- Bugzilla/Install.pm | 2 +- Bugzilla/Install/DB.pm | 2 +- Bugzilla/Install/Filesystem.pm | 2 +- Bugzilla/Install/Localconfig.pm | 2 +- Bugzilla/Install/Requirements.pm | 2 +- Bugzilla/Install/Util.pm | 2 +- Bugzilla/Job/BugMail.pm | 2 +- Bugzilla/Job/Mailer.pm | 2 +- Bugzilla/JobQueue.pm | 2 +- Bugzilla/JobQueue/Runner.pm | 2 +- Bugzilla/Keyword.pm | 2 +- Bugzilla/MIME.pm | 2 +- Bugzilla/Mailer.pm | 2 +- Bugzilla/Markdown.pm | 2 +- Bugzilla/Memcached.pm | 2 +- Bugzilla/Migrate.pm | 2 +- Bugzilla/Migrate/Gnats.pm | 2 +- Bugzilla/Milestone.pm | 2 +- Bugzilla/Object.pm | 2 +- Bugzilla/Product.pm | 2 +- Bugzilla/RNG.pm | 2 +- Bugzilla/Report.pm | 2 +- Bugzilla/Search.pm | 29 +++++++++++++-------------- Bugzilla/Search/Clause.pm | 2 +- Bugzilla/Search/ClauseGroup.pm | 2 +- Bugzilla/Search/Condition.pm | 2 +- Bugzilla/Search/Quicksearch.pm | 4 ++-- Bugzilla/Search/Recent.pm | 2 +- Bugzilla/Search/Saved.pm | 2 +- Bugzilla/Sender/Transport/Sendmail.pm | 2 +- Bugzilla/Series.pm | 2 +- Bugzilla/Status.pm | 2 +- Bugzilla/Template.pm | 10 ++++----- Bugzilla/Template/Context.pm | 2 +- Bugzilla/Template/Plugin/Bugzilla.pm | 2 +- Bugzilla/Template/Plugin/Hook.pm | 2 +- Bugzilla/Token.pm | 2 +- Bugzilla/Update.pm | 2 +- Bugzilla/User.pm | 4 ++-- Bugzilla/User/APIKey.pm | 2 +- Bugzilla/User/Setting.pm | 2 +- Bugzilla/User/Setting/Lang.pm | 2 +- Bugzilla/User/Setting/Skin.pm | 2 +- Bugzilla/User/Setting/Timezone.pm | 2 +- Bugzilla/UserAgent.pm | 2 +- Bugzilla/Util.pm | 10 ++++----- Bugzilla/Version.pm | 2 +- Bugzilla/WebService.pm | 2 +- Bugzilla/WebService/Bug.pm | 4 ++-- Bugzilla/WebService/BugUserLastVisit.pm | 2 +- Bugzilla/WebService/Bugzilla.pm | 2 +- Bugzilla/WebService/Classification.pm | 2 +- Bugzilla/WebService/Component.pm | 2 +- Bugzilla/WebService/Constants.pm | 2 +- Bugzilla/WebService/FlagType.pm | 2 +- Bugzilla/WebService/Group.pm | 2 +- Bugzilla/WebService/Product.pm | 2 +- Bugzilla/WebService/Server.pm | 2 +- Bugzilla/WebService/Server/JSONRPC.pm | 2 +- Bugzilla/WebService/Server/XMLRPC.pm | 8 ++++---- Bugzilla/WebService/User.pm | 2 +- Bugzilla/WebService/Util.pm | 2 +- Bugzilla/Whine.pm | 2 +- Bugzilla/Whine/Query.pm | 2 +- Bugzilla/Whine/Schedule.pm | 2 +- 152 files changed, 199 insertions(+), 199 deletions(-) (limited to 'Bugzilla') diff --git a/Bugzilla/API/1_0/Constants.pm b/Bugzilla/API/1_0/Constants.pm index 44e20124a..d372d410d 100644 --- a/Bugzilla/API/1_0/Constants.pm +++ b/Bugzilla/API/1_0/Constants.pm @@ -7,7 +7,7 @@ package Bugzilla::API::1_0::Constants; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/1_0/Resource.pm b/Bugzilla/API/1_0/Resource.pm index 9881d3713..5a26851a5 100644 --- a/Bugzilla/API/1_0/Resource.pm +++ b/Bugzilla/API/1_0/Resource.pm @@ -10,7 +10,7 @@ package Bugzilla::API::1_0::Resource; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/1_0/Resource/Bug.pm b/Bugzilla/API/1_0/Resource/Bug.pm index a8565b7a0..dcc73086f 100644 --- a/Bugzilla/API/1_0/Resource/Bug.pm +++ b/Bugzilla/API/1_0/Resource/Bug.pm @@ -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. diff --git a/Bugzilla/API/1_0/Resource/BugUserLastVisit.pm b/Bugzilla/API/1_0/Resource/BugUserLastVisit.pm index aeb52bbb6..20fdb158f 100644 --- a/Bugzilla/API/1_0/Resource/BugUserLastVisit.pm +++ b/Bugzilla/API/1_0/Resource/BugUserLastVisit.pm @@ -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+)$}, { diff --git a/Bugzilla/API/1_0/Resource/Bugzilla.pm b/Bugzilla/API/1_0/Resource/Bugzilla.pm index fce840c47..f5bb2f417 100644 --- a/Bugzilla/API/1_0/Resource/Bugzilla.pm +++ b/Bugzilla/API/1_0/Resource/Bugzilla.pm @@ -7,7 +7,7 @@ package Bugzilla::API::1_0::Resource::Bugzilla; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/1_0/Resource/Classification.pm b/Bugzilla/API/1_0/Resource/Classification.pm index 7a59e381d..28ed2aa95 100644 --- a/Bugzilla/API/1_0/Resource/Classification.pm +++ b/Bugzilla/API/1_0/Resource/Classification.pm @@ -7,7 +7,7 @@ package Bugzilla::API::1_0::Resource::Classification; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/1_0/Resource/Component.pm b/Bugzilla/API/1_0/Resource/Component.pm index 13a5f24b5..ba9b27d62 100644 --- a/Bugzilla/API/1_0/Resource/Component.pm +++ b/Bugzilla/API/1_0/Resource/Component.pm @@ -7,7 +7,7 @@ package Bugzilla::API::1_0::Resource::Component; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/1_0/Resource/FlagType.pm b/Bugzilla/API/1_0/Resource/FlagType.pm index 969a59532..febce6f71 100644 --- a/Bugzilla/API/1_0/Resource/FlagType.pm +++ b/Bugzilla/API/1_0/Resource/FlagType.pm @@ -7,7 +7,7 @@ package Bugzilla::API::1_0::Resource::FlagType; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/1_0/Resource/Group.pm b/Bugzilla/API/1_0/Resource/Group.pm index 4efd7b476..43a2521fb 100644 --- a/Bugzilla/API/1_0/Resource/Group.pm +++ b/Bugzilla/API/1_0/Resource/Group.pm @@ -7,7 +7,7 @@ package Bugzilla::API::1_0::Resource::Group; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/1_0/Resource/Product.pm b/Bugzilla/API/1_0/Resource/Product.pm index 6a5168608..d3576a734 100644 --- a/Bugzilla/API/1_0/Resource/Product.pm +++ b/Bugzilla/API/1_0/Resource/Product.pm @@ -7,7 +7,7 @@ package Bugzilla::API::1_0::Resource::Product; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/1_0/Resource/User.pm b/Bugzilla/API/1_0/Resource/User.pm index ec81cf66d..a214bd81f 100644 --- a/Bugzilla/API/1_0/Resource/User.pm +++ b/Bugzilla/API/1_0/Resource/User.pm @@ -7,7 +7,7 @@ package Bugzilla::API::1_0::Resource::User; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/1_0/Server.pm b/Bugzilla/API/1_0/Server.pm index af66a4f66..a443cd514 100644 --- a/Bugzilla/API/1_0/Server.pm +++ b/Bugzilla/API/1_0/Server.pm @@ -7,7 +7,7 @@ package Bugzilla::API::1_0::Server; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/1_0/Util.pm b/Bugzilla/API/1_0/Util.pm index afdde314e..e2c7b1f1f 100644 --- a/Bugzilla/API/1_0/Util.pm +++ b/Bugzilla/API/1_0/Util.pm @@ -7,7 +7,7 @@ package Bugzilla::API::1_0::Util; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/API/Server.pm b/Bugzilla/API/Server.pm index 2d680db28..e3bf1ea71 100644 --- a/Bugzilla/API/Server.pm +++ b/Bugzilla/API/Server.pm @@ -7,7 +7,7 @@ package Bugzilla::API::Server; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Attachment.pm b/Bugzilla/Attachment.pm index 1f2bddda5..78334ec18 100644 --- a/Bugzilla/Attachment.pm +++ b/Bugzilla/Attachment.pm @@ -7,7 +7,7 @@ package Bugzilla::Attachment; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Attachment/PatchReader.pm b/Bugzilla/Attachment/PatchReader.pm index 202f4b4fd..1cc3f0bca 100644 --- a/Bugzilla/Attachment/PatchReader.pm +++ b/Bugzilla/Attachment/PatchReader.pm @@ -7,7 +7,7 @@ package Bugzilla::Attachment::PatchReader; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth.pm b/Bugzilla/Auth.pm index c830f0506..399f68d24 100644 --- a/Bugzilla/Auth.pm +++ b/Bugzilla/Auth.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Login.pm b/Bugzilla/Auth/Login.pm index a5f089777..cd075a3cf 100644 --- a/Bugzilla/Auth/Login.pm +++ b/Bugzilla/Auth/Login.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Login; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Login/APIKey.pm b/Bugzilla/Auth/Login/APIKey.pm index 63e35578a..c7829f1ce 100644 --- a/Bugzilla/Auth/Login/APIKey.pm +++ b/Bugzilla/Auth/Login/APIKey.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Login::APIKey; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Login/CGI.pm b/Bugzilla/Auth/Login/CGI.pm index 6003d62a5..d2934e6d0 100644 --- a/Bugzilla/Auth/Login/CGI.pm +++ b/Bugzilla/Auth/Login/CGI.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Login::CGI; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Login/Cookie.pm b/Bugzilla/Auth/Login/Cookie.pm index 3139e127b..b67fb73db 100644 --- a/Bugzilla/Auth/Login/Cookie.pm +++ b/Bugzilla/Auth/Login/Cookie.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Login::Cookie; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Login/Env.pm b/Bugzilla/Auth/Login/Env.pm index 653df2bb3..2ff81e82e 100644 --- a/Bugzilla/Auth/Login/Env.pm +++ b/Bugzilla/Auth/Login/Env.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Login::Env; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Login/Stack.pm b/Bugzilla/Auth/Login/Stack.pm index dc35998e4..a7c24a3fb 100644 --- a/Bugzilla/Auth/Login/Stack.pm +++ b/Bugzilla/Auth/Login/Stack.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Login::Stack; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Persist/Cookie.pm b/Bugzilla/Auth/Persist/Cookie.pm index 904de3699..69f6e9c60 100644 --- a/Bugzilla/Auth/Persist/Cookie.pm +++ b/Bugzilla/Auth/Persist/Cookie.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Persist::Cookie; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Verify.pm b/Bugzilla/Auth/Verify.pm index 9dc83273b..ef5b749b1 100644 --- a/Bugzilla/Auth/Verify.pm +++ b/Bugzilla/Auth/Verify.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Verify; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Verify/DB.pm b/Bugzilla/Auth/Verify/DB.pm index 28a9310c9..fd11d1960 100644 --- a/Bugzilla/Auth/Verify/DB.pm +++ b/Bugzilla/Auth/Verify/DB.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Verify::DB; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Verify/LDAP.pm b/Bugzilla/Auth/Verify/LDAP.pm index e37f55793..cd2e64370 100644 --- a/Bugzilla/Auth/Verify/LDAP.pm +++ b/Bugzilla/Auth/Verify/LDAP.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Verify::LDAP; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Verify/RADIUS.pm b/Bugzilla/Auth/Verify/RADIUS.pm index 283d9b466..60be52a07 100644 --- a/Bugzilla/Auth/Verify/RADIUS.pm +++ b/Bugzilla/Auth/Verify/RADIUS.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Verify::RADIUS; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Auth/Verify/Stack.pm b/Bugzilla/Auth/Verify/Stack.pm index 3e5db3cec..2e36388a6 100644 --- a/Bugzilla/Auth/Verify/Stack.pm +++ b/Bugzilla/Auth/Verify/Stack.pm @@ -7,7 +7,7 @@ package Bugzilla::Auth::Verify::Stack; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm index 37f492337..a41e4f1aa 100644 --- a/Bugzilla/Bug.pm +++ b/Bugzilla/Bug.pm @@ -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 } } diff --git a/Bugzilla/BugMail.pm b/Bugzilla/BugMail.pm index bfb57f158..5ab021869 100644 --- a/Bugzilla/BugMail.pm +++ b/Bugzilla/BugMail.pm @@ -7,7 +7,7 @@ package Bugzilla::BugMail; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/BugUrl.pm b/Bugzilla/BugUrl.pm index 1d75fe8f1..818253c69 100644 --- a/Bugzilla/BugUrl.pm +++ b/Bugzilla/BugUrl.pm @@ -7,7 +7,7 @@ package Bugzilla::BugUrl; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/BugUrl/Bugzilla.pm b/Bugzilla/BugUrl/Bugzilla.pm index 402ff1509..647181202 100644 --- a/Bugzilla/BugUrl/Bugzilla.pm +++ b/Bugzilla/BugUrl/Bugzilla.pm @@ -7,7 +7,7 @@ package Bugzilla::BugUrl::Bugzilla; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/BugUrl/Bugzilla/Local.pm b/Bugzilla/BugUrl/Bugzilla/Local.pm index 7b9cb6a4f..e60cb04fc 100644 --- a/Bugzilla/BugUrl/Bugzilla/Local.pm +++ b/Bugzilla/BugUrl/Bugzilla/Local.pm @@ -7,7 +7,7 @@ package Bugzilla::BugUrl::Bugzilla::Local; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/BugUrl/Debian.pm b/Bugzilla/BugUrl/Debian.pm index b726b0b5a..2067c9eb6 100644 --- a/Bugzilla/BugUrl/Debian.pm +++ b/Bugzilla/BugUrl/Debian.pm @@ -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; diff --git a/Bugzilla/BugUrl/GitHub.pm b/Bugzilla/BugUrl/GitHub.pm index f14f1d6b0..19ce5ef6b 100644 --- a/Bugzilla/BugUrl/GitHub.pm +++ b/Bugzilla/BugUrl/GitHub.pm @@ -7,7 +7,7 @@ package Bugzilla::BugUrl::GitHub; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/BugUrl/Google.pm b/Bugzilla/BugUrl/Google.pm index 71a9c46fb..4b5df7a87 100644 --- a/Bugzilla/BugUrl/Google.pm +++ b/Bugzilla/BugUrl/Google.pm @@ -7,7 +7,7 @@ package Bugzilla::BugUrl::Google; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/BugUrl/JIRA.pm b/Bugzilla/BugUrl/JIRA.pm index e9d2a2d2a..d117b0255 100644 --- a/Bugzilla/BugUrl/JIRA.pm +++ b/Bugzilla/BugUrl/JIRA.pm @@ -7,7 +7,7 @@ package Bugzilla::BugUrl::JIRA; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/BugUrl/Launchpad.pm b/Bugzilla/BugUrl/Launchpad.pm index 0362747a2..36a911130 100644 --- a/Bugzilla/BugUrl/Launchpad.pm +++ b/Bugzilla/BugUrl/Launchpad.pm @@ -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; diff --git a/Bugzilla/BugUrl/MantisBT.pm b/Bugzilla/BugUrl/MantisBT.pm index 60d3b578e..f90e3f67b 100644 --- a/Bugzilla/BugUrl/MantisBT.pm +++ b/Bugzilla/BugUrl/MantisBT.pm @@ -7,7 +7,7 @@ package Bugzilla::BugUrl::MantisBT; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/BugUrl/SourceForge.pm b/Bugzilla/BugUrl/SourceForge.pm index 4a330f34b..c29867362 100644 --- a/Bugzilla/BugUrl/SourceForge.pm +++ b/Bugzilla/BugUrl/SourceForge.pm @@ -7,7 +7,7 @@ package Bugzilla::BugUrl::SourceForge; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/BugUrl/Trac.pm b/Bugzilla/BugUrl/Trac.pm index fe74abf33..edcd1c453 100644 --- a/Bugzilla/BugUrl/Trac.pm +++ b/Bugzilla/BugUrl/Trac.pm @@ -7,7 +7,7 @@ package Bugzilla::BugUrl::Trac; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/BugUserLastVisit.pm b/Bugzilla/BugUserLastVisit.pm index d043b121a..1b4f90abf 100644 --- a/Bugzilla/BugUserLastVisit.pm +++ b/Bugzilla/BugUserLastVisit.pm @@ -7,7 +7,7 @@ package Bugzilla::BugUserLastVisit; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/CGI.pm b/Bugzilla/CGI.pm index 25ee0acbe..8d605b0d9 100644 --- a/Bugzilla/CGI.pm +++ b/Bugzilla/CGI.pm @@ -7,7 +7,7 @@ package Bugzilla::CGI; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Chart.pm b/Bugzilla/Chart.pm index 3c69006aa..d0a1312ad 100644 --- a/Bugzilla/Chart.pm +++ b/Bugzilla/Chart.pm @@ -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 { # >=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); } } diff --git a/Bugzilla/Classification.pm b/Bugzilla/Classification.pm index 09f71baaf..7f62e1ffa 100644 --- a/Bugzilla/Classification.pm +++ b/Bugzilla/Classification.pm @@ -7,7 +7,7 @@ package Bugzilla::Classification; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Comment.pm b/Bugzilla/Comment.pm index 7d7ac0d80..d995d4509 100644 --- a/Bugzilla/Comment.pm +++ b/Bugzilla/Comment.pm @@ -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; } diff --git a/Bugzilla/Comment/TagWeights.pm b/Bugzilla/Comment/TagWeights.pm index 7dba53e34..f4aa519a3 100644 --- a/Bugzilla/Comment/TagWeights.pm +++ b/Bugzilla/Comment/TagWeights.pm @@ -7,7 +7,7 @@ package Bugzilla::Comment::TagWeights; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Component.pm b/Bugzilla/Component.pm index 3e50dab80..22c424599 100644 --- a/Bugzilla/Component.pm +++ b/Bugzilla/Component.pm @@ -7,7 +7,7 @@ package Bugzilla::Component; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config.pm b/Bugzilla/Config.pm index 64f228915..7a7ba3a3e 100644 --- a/Bugzilla/Config.pm +++ b/Bugzilla/Config.pm @@ -7,7 +7,7 @@ package Bugzilla::Config; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/Admin.pm b/Bugzilla/Config/Admin.pm index 41d929298..c21ae5310 100644 --- a/Bugzilla/Config/Admin.pm +++ b/Bugzilla/Config/Admin.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::Admin; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/Advanced.pm b/Bugzilla/Config/Advanced.pm index 8356c3361..75afe7b22 100644 --- a/Bugzilla/Config/Advanced.pm +++ b/Bugzilla/Config/Advanced.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::Advanced; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/Attachment.pm b/Bugzilla/Config/Attachment.pm index 5bf854293..daa844ba5 100644 --- a/Bugzilla/Config/Attachment.pm +++ b/Bugzilla/Config/Attachment.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::Attachment; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/Auth.pm b/Bugzilla/Config/Auth.pm index 3c9ee31f2..219e834ee 100644 --- a/Bugzilla/Config/Auth.pm +++ b/Bugzilla/Config/Auth.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::Auth; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/BugChange.pm b/Bugzilla/Config/BugChange.pm index 6126b7f35..b8a80dd94 100644 --- a/Bugzilla/Config/BugChange.pm +++ b/Bugzilla/Config/BugChange.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::BugChange; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/BugFields.pm b/Bugzilla/Config/BugFields.pm index ef2faa64b..f6c20cd12 100644 --- a/Bugzilla/Config/BugFields.pm +++ b/Bugzilla/Config/BugFields.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::BugFields; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/Common.pm b/Bugzilla/Config/Common.pm index 6e8ae7b61..860977b65 100644 --- a/Bugzilla/Config/Common.pm +++ b/Bugzilla/Config/Common.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::Common; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/Core.pm b/Bugzilla/Config/Core.pm index de375e448..c9a291d4c 100644 --- a/Bugzilla/Config/Core.pm +++ b/Bugzilla/Config/Core.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::Core; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/General.pm b/Bugzilla/Config/General.pm index 8513a1f02..1a03995f3 100644 --- a/Bugzilla/Config/General.pm +++ b/Bugzilla/Config/General.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::General; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/GroupSecurity.pm b/Bugzilla/Config/GroupSecurity.pm index ec172216b..ba81a468e 100644 --- a/Bugzilla/Config/GroupSecurity.pm +++ b/Bugzilla/Config/GroupSecurity.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::GroupSecurity; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/LDAP.pm b/Bugzilla/Config/LDAP.pm index 0bc8240df..1970b5791 100644 --- a/Bugzilla/Config/LDAP.pm +++ b/Bugzilla/Config/LDAP.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::LDAP; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/MTA.pm b/Bugzilla/Config/MTA.pm index 467bdab3f..37f61aa20 100644 --- a/Bugzilla/Config/MTA.pm +++ b/Bugzilla/Config/MTA.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::MTA; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/Memcached.pm b/Bugzilla/Config/Memcached.pm index 292803d86..e45c33da1 100644 --- a/Bugzilla/Config/Memcached.pm +++ b/Bugzilla/Config/Memcached.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::Memcached; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/Query.pm b/Bugzilla/Config/Query.pm index f18bb90df..5e0d72e33 100644 --- a/Bugzilla/Config/Query.pm +++ b/Bugzilla/Config/Query.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::Query; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/RADIUS.pm b/Bugzilla/Config/RADIUS.pm index 8e30b07a9..ddc8d9524 100644 --- a/Bugzilla/Config/RADIUS.pm +++ b/Bugzilla/Config/RADIUS.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::RADIUS; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/ShadowDB.pm b/Bugzilla/Config/ShadowDB.pm index 5dbbb5202..20212629c 100644 --- a/Bugzilla/Config/ShadowDB.pm +++ b/Bugzilla/Config/ShadowDB.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::ShadowDB; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Config/UserMatch.pm b/Bugzilla/Config/UserMatch.pm index 3f74a7c44..c8b6f8dc3 100644 --- a/Bugzilla/Config/UserMatch.pm +++ b/Bugzilla/Config/UserMatch.pm @@ -7,7 +7,7 @@ package Bugzilla::Config::UserMatch; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Constants.pm b/Bugzilla/Constants.pm index 6a469b376..6e8a469c5 100644 --- a/Bugzilla/Constants.pm +++ b/Bugzilla/Constants.pm @@ -7,7 +7,7 @@ package Bugzilla::Constants; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/DB.pm b/Bugzilla/DB.pm index 96a68af03..6832e0ce7 100644 --- a/Bugzilla/DB.pm +++ b/Bugzilla/DB.pm @@ -7,7 +7,7 @@ package Bugzilla::DB; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/DB/Mysql.pm b/Bugzilla/DB/Mysql.pm index 402e9c58b..858b58fee 100644 --- a/Bugzilla/DB/Mysql.pm +++ b/Bugzilla/DB/Mysql.pm @@ -21,7 +21,7 @@ For interface details see L and L. package Bugzilla::DB::Mysql; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/DB/Oracle.pm b/Bugzilla/DB/Oracle.pm index 51678dec9..e863bac42 100644 --- a/Bugzilla/DB/Oracle.pm +++ b/Bugzilla/DB/Oracle.pm @@ -21,7 +21,7 @@ For interface details see L and L. 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; diff --git a/Bugzilla/DB/Pg.pm b/Bugzilla/DB/Pg.pm index ac9ec6309..9ef7f77f1 100644 --- a/Bugzilla/DB/Pg.pm +++ b/Bugzilla/DB/Pg.pm @@ -21,7 +21,7 @@ For interface details see L and L. package Bugzilla::DB::Pg; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/DB/Schema.pm b/Bugzilla/DB/Schema.pm index d770f2358..ca3839ca6 100644 --- a/Bugzilla/DB/Schema.pm +++ b/Bugzilla/DB/Schema.pm @@ -15,7 +15,7 @@ package Bugzilla::DB::Schema; # ########################################################################### -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/DB/Schema/Mysql.pm b/Bugzilla/DB/Schema/Mysql.pm index db01e971d..59066bdc4 100644 --- a/Bugzilla/DB/Schema/Mysql.pm +++ b/Bugzilla/DB/Schema/Mysql.pm @@ -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; } } diff --git a/Bugzilla/DB/Schema/Oracle.pm b/Bugzilla/DB/Schema/Oracle.pm index 8fb5479b1..c3868ad44 100644 --- a/Bugzilla/DB/Schema/Oracle.pm +++ b/Bugzilla/DB/Schema/Oracle.pm @@ -13,7 +13,7 @@ package Bugzilla::DB::Schema::Oracle; # ############################################################################### -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/DB/Schema/Pg.pm b/Bugzilla/DB/Schema/Pg.pm index dd8531927..c82c373b7 100644 --- a/Bugzilla/DB/Schema/Pg.pm +++ b/Bugzilla/DB/Schema/Pg.pm @@ -13,7 +13,7 @@ package Bugzilla::DB::Schema::Pg; # ############################################################################### -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/DB/Schema/Sqlite.pm b/Bugzilla/DB/Schema/Sqlite.pm index ccdbfd8aa..935bf8e37 100644 --- a/Bugzilla/DB/Schema/Sqlite.pm +++ b/Bugzilla/DB/Schema/Sqlite.pm @@ -7,7 +7,7 @@ package Bugzilla::DB::Schema::Sqlite; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/DB/Sqlite.pm b/Bugzilla/DB/Sqlite.pm index 0cdfa3477..e3cc93a82 100644 --- a/Bugzilla/DB/Sqlite.pm +++ b/Bugzilla/DB/Sqlite.pm @@ -7,7 +7,7 @@ package Bugzilla::DB::Sqlite; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Error.pm b/Bugzilla/Error.pm index 864024794..394e0a5e5 100644 --- a/Bugzilla/Error.pm +++ b/Bugzilla/Error.pm @@ -7,7 +7,7 @@ package Bugzilla::Error; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Extension.pm b/Bugzilla/Extension.pm index e24ceb9eb..fcd41ae86 100644 --- a/Bugzilla/Extension.pm +++ b/Bugzilla/Extension.pm @@ -7,7 +7,7 @@ package Bugzilla::Extension; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Field.pm b/Bugzilla/Field.pm index d0e392243..e9f9e1b2d 100644 --- a/Bugzilla/Field.pm +++ b/Bugzilla/Field.pm @@ -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; diff --git a/Bugzilla/Field/Choice.pm b/Bugzilla/Field/Choice.pm index a66f69cee..140feb46e 100644 --- a/Bugzilla/Field/Choice.pm +++ b/Bugzilla/Field/Choice.pm @@ -7,7 +7,7 @@ package Bugzilla::Field::Choice; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Field/ChoiceInterface.pm b/Bugzilla/Field/ChoiceInterface.pm index 9ac508dc0..bae62c459 100644 --- a/Bugzilla/Field/ChoiceInterface.pm +++ b/Bugzilla/Field/ChoiceInterface.pm @@ -7,7 +7,7 @@ package Bugzilla::Field::ChoiceInterface; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Flag.pm b/Bugzilla/Flag.pm index bf37f2a9a..3d9540a94 100644 --- a/Bugzilla/Flag.pm +++ b/Bugzilla/Flag.pm @@ -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); diff --git a/Bugzilla/FlagType.pm b/Bugzilla/FlagType.pm index 72b3f64c1..cbf831bc5 100644 --- a/Bugzilla/FlagType.pm +++ b/Bugzilla/FlagType.pm @@ -7,7 +7,7 @@ package Bugzilla::FlagType; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Group.pm b/Bugzilla/Group.pm index f7a50f7f1..9ea851c20 100644 --- a/Bugzilla/Group.pm +++ b/Bugzilla/Group.pm @@ -7,7 +7,7 @@ package Bugzilla::Group; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Hook.pm b/Bugzilla/Hook.pm index 9206cc993..8d0976d9c 100644 --- a/Bugzilla/Hook.pm +++ b/Bugzilla/Hook.pm @@ -7,7 +7,7 @@ package Bugzilla::Hook; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Install.pm b/Bugzilla/Install.pm index d02c43d2f..e1ed65c36 100644 --- a/Bugzilla/Install.pm +++ b/Bugzilla/Install.pm @@ -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; diff --git a/Bugzilla/Install/DB.pm b/Bugzilla/Install/DB.pm index 8af0eeb12..a6ca1e90f 100644 --- a/Bugzilla/Install/DB.pm +++ b/Bugzilla/Install/DB.pm @@ -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; diff --git a/Bugzilla/Install/Filesystem.pm b/Bugzilla/Install/Filesystem.pm index 679646df9..bbad2c467 100644 --- a/Bugzilla/Install/Filesystem.pm +++ b/Bugzilla/Install/Filesystem.pm @@ -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; diff --git a/Bugzilla/Install/Localconfig.pm b/Bugzilla/Install/Localconfig.pm index 6ff3f5e6c..4a3b09f83 100644 --- a/Bugzilla/Install/Localconfig.pm +++ b/Bugzilla/Install/Localconfig.pm @@ -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; diff --git a/Bugzilla/Install/Requirements.pm b/Bugzilla/Install/Requirements.pm index 924686f0a..af9152cf9 100644 --- a/Bugzilla/Install/Requirements.pm +++ b/Bugzilla/Install/Requirements.pm @@ -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; diff --git a/Bugzilla/Install/Util.pm b/Bugzilla/Install/Util.pm index 82752b961..90ef2d4e3 100644 --- a/Bugzilla/Install/Util.pm +++ b/Bugzilla/Install/Util.pm @@ -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; diff --git a/Bugzilla/Job/BugMail.pm b/Bugzilla/Job/BugMail.pm index b4887c470..96ccb719e 100644 --- a/Bugzilla/Job/BugMail.pm +++ b/Bugzilla/Job/BugMail.pm @@ -7,7 +7,7 @@ package Bugzilla::Job::BugMail; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Job/Mailer.pm b/Bugzilla/Job/Mailer.pm index 0f0e9c71f..f4b9baaa3 100644 --- a/Bugzilla/Job/Mailer.pm +++ b/Bugzilla/Job/Mailer.pm @@ -7,7 +7,7 @@ package Bugzilla::Job::Mailer; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/JobQueue.pm b/Bugzilla/JobQueue.pm index d5ceda8e9..0a5bcb116 100644 --- a/Bugzilla/JobQueue.pm +++ b/Bugzilla/JobQueue.pm @@ -7,7 +7,7 @@ package Bugzilla::JobQueue; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/JobQueue/Runner.pm b/Bugzilla/JobQueue/Runner.pm index 2367f8d77..113193cd8 100644 --- a/Bugzilla/JobQueue/Runner.pm +++ b/Bugzilla/JobQueue/Runner.pm @@ -11,7 +11,7 @@ package Bugzilla::JobQueue::Runner; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Keyword.pm b/Bugzilla/Keyword.pm index ef044a0c5..d2e1f91eb 100644 --- a/Bugzilla/Keyword.pm +++ b/Bugzilla/Keyword.pm @@ -7,7 +7,7 @@ package Bugzilla::Keyword; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/MIME.pm b/Bugzilla/MIME.pm index 20e667d83..0916133a0 100644 --- a/Bugzilla/MIME.pm +++ b/Bugzilla/MIME.pm @@ -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); diff --git a/Bugzilla/Mailer.pm b/Bugzilla/Mailer.pm index 20175db15..c35f12ef8 100644 --- a/Bugzilla/Mailer.pm +++ b/Bugzilla/Mailer.pm @@ -7,7 +7,7 @@ package Bugzilla::Mailer; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Markdown.pm b/Bugzilla/Markdown.pm index f73e25014..212f1e093 100644 --- a/Bugzilla/Markdown.pm +++ b/Bugzilla/Markdown.pm @@ -7,7 +7,7 @@ package Bugzilla::Markdown; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Memcached.pm b/Bugzilla/Memcached.pm index a468c7575..8a367ea25 100644 --- a/Bugzilla/Memcached.pm +++ b/Bugzilla/Memcached.pm @@ -7,7 +7,7 @@ package Bugzilla::Memcached; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Migrate.pm b/Bugzilla/Migrate.pm index 6ecdb5c0d..5a2defe15 100644 --- a/Bugzilla/Migrate.pm +++ b/Bugzilla/Migrate.pm @@ -7,7 +7,7 @@ package Bugzilla::Migrate; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Migrate/Gnats.pm b/Bugzilla/Migrate/Gnats.pm index 5feda4b8d..f16faf78c 100644 --- a/Bugzilla/Migrate/Gnats.pm +++ b/Bugzilla/Migrate/Gnats.pm @@ -7,7 +7,7 @@ package Bugzilla::Migrate::Gnats; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Milestone.pm b/Bugzilla/Milestone.pm index 9cee52248..2fd68dfba 100644 --- a/Bugzilla/Milestone.pm +++ b/Bugzilla/Milestone.pm @@ -7,7 +7,7 @@ package Bugzilla::Milestone; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Object.pm b/Bugzilla/Object.pm index d43c8ca34..6e66267f8 100644 --- a/Bugzilla/Object.pm +++ b/Bugzilla/Object.pm @@ -7,7 +7,7 @@ package Bugzilla::Object; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Product.pm b/Bugzilla/Product.pm index 09ca61c69..592653afd 100644 --- a/Bugzilla/Product.pm +++ b/Bugzilla/Product.pm @@ -7,7 +7,7 @@ package Bugzilla::Product; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/RNG.pm b/Bugzilla/RNG.pm index 96e442fa0..69693c722 100644 --- a/Bugzilla/RNG.pm +++ b/Bugzilla/RNG.pm @@ -7,7 +7,7 @@ package Bugzilla::RNG; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Report.pm b/Bugzilla/Report.pm index 10af2ea9e..9820bbc72 100644 --- a/Bugzilla/Report.pm +++ b/Bugzilla/Report.pm @@ -7,7 +7,7 @@ package Bugzilla::Report; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Search.pm b/Bugzilla/Search.pm index 29ca7b1d9..3274b57a6 100644 --- a/Bugzilla/Search.pm +++ b/Bugzilla/Search.pm @@ -7,7 +7,7 @@ package Bugzilla::Search; -use 5.10.1; +use 5.14.0; use strict; use warnings; @@ -1628,11 +1628,11 @@ sub _special_parse_email { my ($self) = @_; my $params = $self->_params; - my @email_params = grep { $_ =~ /^email\d+$/ } keys %$params; + my @email_params = grep { $_ =~ /^email\d+$/a } keys %$params; my $clause = new Bugzilla::Search::Clause(); foreach my $param (@email_params) { - $param =~ /(\d+)$/; + $param =~ /(\d+)$/a; my $id = $1; my $email = trim($params->{"email$id"}); next if !$email; @@ -1728,26 +1728,28 @@ sub _params_to_data_structure { sub _boolean_charts { my ($self) = @_; - + + use re '/a'; + my $params = $self->_params; my @param_list = keys %$params; - + my @all_field_params = grep { /^field-?\d+/ } @param_list; my @chart_ids = map { /^field(-?\d+)/; $1 } @all_field_params; @chart_ids = sort { $a <=> $b } uniq @chart_ids; - + my $clause = new Bugzilla::Search::Clause(); foreach my $chart_id (@chart_ids) { my @all_and = grep { /^field$chart_id-\d+/ } @param_list; my @and_ids = map { /^field$chart_id-(\d+)/; $1 } @all_and; @and_ids = sort { $a <=> $b } uniq @and_ids; - + my $and_clause = new Bugzilla::Search::Clause(); foreach my $and_id (@and_ids) { my @all_or = grep { /^field$chart_id-$and_id-\d+/ } @param_list; my @or_ids = map { /^field$chart_id-$and_id-(\d+)/; $1 } @all_or; @or_ids = sort { $a <=> $b } uniq @or_ids; - + my $or_clause = new Bugzilla::Search::Clause('OR'); foreach my $or_id (@or_ids) { my $identifier = "$chart_id-$and_id-$or_id"; @@ -1819,9 +1821,9 @@ sub _field_ids { my ($self) = @_; my $params = $self->_params; my @param_list = keys %$params; - - my @field_params = grep { /^f\d+$/ } @param_list; - my @field_ids = map { /(\d+)/; $1 } @field_params; + + my @field_params = grep { /^f\d+$/a } @param_list; + my @field_ids = map { /(\d+)/a; $1 } @field_params; @field_ids = sort { $a <=> $b } @field_ids; return @field_ids; } @@ -1916,9 +1918,6 @@ sub _handle_chart { # once we require MySQL 5.5.3 and use utf8mb4. sub _convert_unicode_characters { my $string = shift; - - # Perl 5.13.8 and older complain about non-characters. - no warnings 'utf8'; $string =~ s/([\x{10000}-\x{10FFFF}])/"\x{FDD0}[" . uc(sprintf('U+%04x', ord($1))) . "]\x{FDD1}"/eg; return $string; } @@ -2224,7 +2223,7 @@ sub SqlifyDate { return sprintf("%4d-%02d-%02d %02d:%02d:%02d", $year+1900, $month+1, $mday, $hour, $min, $sec); } - if ($str =~ /^(-|\+)?(\d+)([hdwmy])(s?)$/i) { # relative date + if ($str =~ /^(-|\+)?(\d+)([hdwmy])(s?)$/ai) { # relative date my ($sign, $amount, $unit, $startof, $date) = ($1, $2, lc $3, lc $4, time); my ($sec, $min, $hour, $mday, $month, $year, $wday) = localtime($date); if ($sign && $sign eq '+') { $amount = -$amount; } diff --git a/Bugzilla/Search/Clause.pm b/Bugzilla/Search/Clause.pm index 1d7872c78..87fb91692 100644 --- a/Bugzilla/Search/Clause.pm +++ b/Bugzilla/Search/Clause.pm @@ -7,7 +7,7 @@ package Bugzilla::Search::Clause; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Search/ClauseGroup.pm b/Bugzilla/Search/ClauseGroup.pm index 590c737fa..bae0bba55 100644 --- a/Bugzilla/Search/ClauseGroup.pm +++ b/Bugzilla/Search/ClauseGroup.pm @@ -7,7 +7,7 @@ package Bugzilla::Search::ClauseGroup; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Search/Condition.pm b/Bugzilla/Search/Condition.pm index 306a63eed..a963b1b89 100644 --- a/Bugzilla/Search/Condition.pm +++ b/Bugzilla/Search/Condition.pm @@ -7,7 +7,7 @@ package Bugzilla::Search::Condition; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Search/Quicksearch.pm b/Bugzilla/Search/Quicksearch.pm index 830177f8b..8e188161c 100644 --- a/Bugzilla/Search/Quicksearch.pm +++ b/Bugzilla/Search/Quicksearch.pm @@ -7,7 +7,7 @@ package Bugzilla::Search::Quicksearch; -use 5.10.1; +use 5.14.0; use strict; use warnings; @@ -537,7 +537,7 @@ sub _special_field_syntax { my ($word, $negate) = @_; # P1-5 Syntax - if ($word =~ m/^P(\d+)(?:-(\d+))?$/i) { + if ($word =~ m/^P(\d+)(?:-(\d+))?$/ai) { my ($p_start, $p_end) = ($1, $2); my $legal_priorities = get_legal_field_values('priority'); diff --git a/Bugzilla/Search/Recent.pm b/Bugzilla/Search/Recent.pm index e774c7fe0..18d08b2d0 100644 --- a/Bugzilla/Search/Recent.pm +++ b/Bugzilla/Search/Recent.pm @@ -7,7 +7,7 @@ package Bugzilla::Search::Recent; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Search/Saved.pm b/Bugzilla/Search/Saved.pm index 50a9cdd67..9f6addffe 100644 --- a/Bugzilla/Search/Saved.pm +++ b/Bugzilla/Search/Saved.pm @@ -7,7 +7,7 @@ package Bugzilla::Search::Saved; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Sender/Transport/Sendmail.pm b/Bugzilla/Sender/Transport/Sendmail.pm index 49f00777f..585ef9cd5 100644 --- a/Bugzilla/Sender/Transport/Sendmail.pm +++ b/Bugzilla/Sender/Transport/Sendmail.pm @@ -7,7 +7,7 @@ package Bugzilla::Sender::Transport::Sendmail; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Series.pm b/Bugzilla/Series.pm index 22202c6f1..2e6b3cfc3 100644 --- a/Bugzilla/Series.pm +++ b/Bugzilla/Series.pm @@ -14,7 +14,7 @@ package Bugzilla::Series; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Status.pm b/Bugzilla/Status.pm index 275510216..fbc731cea 100644 --- a/Bugzilla/Status.pm +++ b/Bugzilla/Status.pm @@ -7,7 +7,7 @@ package Bugzilla::Status; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Template.pm b/Bugzilla/Template.pm index 3cbff4733..48899cd78 100644 --- a/Bugzilla/Template.pm +++ b/Bugzilla/Template.pm @@ -8,7 +8,7 @@ package Bugzilla::Template; -use 5.10.1; +use 5.14.0; use strict; use warnings; @@ -159,9 +159,7 @@ sub quoteUrls { # mailto can't contain space or #, so we don't have to bother for that # Do this by replacing matches with \x{FDD2}$count\x{FDD3} # \x{FDDx} is used because it's unlikely to occur in the text - # and are reserved unicode characters. We disable warnings for now - # until we require Perl 5.13.9 or newer. - no warnings 'utf8'; + # and are reserved unicode characters. # If the comment is already wrapped, we should ignore newlines when # looking for matching regexps. Else we should take them into account. @@ -247,9 +245,9 @@ sub quoteUrls { # Also, we can't use $bug_re?$comment_re? because that will match the # empty string my $bug_word = template_var('terms')->{bug}; - my $bug_re = qr/\Q$bug_word\E$s*\#?$s*(\d+)/i; + my $bug_re = qr/\Q$bug_word\E$s*\#?$s*(\d+)/ai; my $comment_word = template_var('terms')->{comment}; - my $comment_re = qr/(?:\Q$comment_word\E|comment)$s*\#?$s*(\d+)/i; + my $comment_re = qr/(?:\Q$comment_word\E|comment)$s*\#?$s*(\d+)/ai; $text =~ s~\b($bug_re(?:$s*,?$s*$comment_re)?|$comment_re) ~ # We have several choices. $1 here is the link, and $2-4 are set # depending on which part matched diff --git a/Bugzilla/Template/Context.pm b/Bugzilla/Template/Context.pm index 470e6a9ee..3893504b3 100644 --- a/Bugzilla/Template/Context.pm +++ b/Bugzilla/Template/Context.pm @@ -8,7 +8,7 @@ # This exists to implement the template-before_process hook. package Bugzilla::Template::Context; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Template/Plugin/Bugzilla.pm b/Bugzilla/Template/Plugin/Bugzilla.pm index 806dd903b..4481e33d2 100644 --- a/Bugzilla/Template/Plugin/Bugzilla.pm +++ b/Bugzilla/Template/Plugin/Bugzilla.pm @@ -7,7 +7,7 @@ package Bugzilla::Template::Plugin::Bugzilla; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Template/Plugin/Hook.pm b/Bugzilla/Template/Plugin/Hook.pm index 669c77614..faba06b72 100644 --- a/Bugzilla/Template/Plugin/Hook.pm +++ b/Bugzilla/Template/Plugin/Hook.pm @@ -7,7 +7,7 @@ package Bugzilla::Template::Plugin::Hook; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Token.pm b/Bugzilla/Token.pm index be76be645..b6f07468e 100644 --- a/Bugzilla/Token.pm +++ b/Bugzilla/Token.pm @@ -7,7 +7,7 @@ package Bugzilla::Token; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Update.pm b/Bugzilla/Update.pm index 72a7108a8..8babf9864 100644 --- a/Bugzilla/Update.pm +++ b/Bugzilla/Update.pm @@ -7,7 +7,7 @@ package Bugzilla::Update; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/User.pm b/Bugzilla/User.pm index caaa6c51a..91defebb4 100644 --- a/Bugzilla/User.pm +++ b/Bugzilla/User.pm @@ -7,7 +7,7 @@ package Bugzilla::User; -use 5.10.1; +use 5.14.0; use strict; use warnings; @@ -1849,7 +1849,7 @@ sub match_field { # The field is a requestee field; in order for its name # to show up correctly on the confirmation page, we need # to find out the name of its flag type. - if ($field_name =~ /^requestee(_type)?-(\d+)$/) { + if ($field_name =~ /^requestee(_type)?-(\d+)$/a) { my $flag_type; if ($1) { require Bugzilla::FlagType; diff --git a/Bugzilla/User/APIKey.pm b/Bugzilla/User/APIKey.pm index d268a0a93..6a5124a3c 100644 --- a/Bugzilla/User/APIKey.pm +++ b/Bugzilla/User/APIKey.pm @@ -7,7 +7,7 @@ package Bugzilla::User::APIKey; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/User/Setting.pm b/Bugzilla/User/Setting.pm index aece3b7de..d0bf1f15b 100644 --- a/Bugzilla/User/Setting.pm +++ b/Bugzilla/User/Setting.pm @@ -8,7 +8,7 @@ package Bugzilla::User::Setting; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/User/Setting/Lang.pm b/Bugzilla/User/Setting/Lang.pm index d980b7a92..ba144aa30 100644 --- a/Bugzilla/User/Setting/Lang.pm +++ b/Bugzilla/User/Setting/Lang.pm @@ -7,7 +7,7 @@ package Bugzilla::User::Setting::Lang; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/User/Setting/Skin.pm b/Bugzilla/User/Setting/Skin.pm index 7b0688c0c..81ce6fd2c 100644 --- a/Bugzilla/User/Setting/Skin.pm +++ b/Bugzilla/User/Setting/Skin.pm @@ -8,7 +8,7 @@ package Bugzilla::User::Setting::Skin; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/User/Setting/Timezone.pm b/Bugzilla/User/Setting/Timezone.pm index 8959d1dda..2810395e8 100644 --- a/Bugzilla/User/Setting/Timezone.pm +++ b/Bugzilla/User/Setting/Timezone.pm @@ -7,7 +7,7 @@ package Bugzilla::User::Setting::Timezone; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/UserAgent.pm b/Bugzilla/UserAgent.pm index 14637038c..22e2639a3 100644 --- a/Bugzilla/UserAgent.pm +++ b/Bugzilla/UserAgent.pm @@ -7,7 +7,7 @@ package Bugzilla::UserAgent; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Util.pm b/Bugzilla/Util.pm index 4718efc88..e030ff8a8 100644 --- a/Bugzilla/Util.pm +++ b/Bugzilla/Util.pm @@ -7,7 +7,7 @@ package Bugzilla::Util; -use 5.10.1; +use 5.14.0; use strict; use warnings; @@ -49,13 +49,13 @@ sub trick_taint { } sub detaint_natural { - my $match = $_[0] =~ /^(\d+)$/; + my $match = $_[0] =~ /^(\d+)$/a; $_[0] = $match ? int($1) : undef; return (defined($_[0])); } sub detaint_signed { - my $match = $_[0] =~ /^([-+]?\d+)$/; + my $match = $_[0] =~ /^([-+]?\d+)$/a; # The "int()" call removes any leading plus sign. $_[0] = $match ? int($1) : undef; return (defined($_[0])); @@ -723,8 +723,8 @@ sub validate_date { if ($ts) { $date2 = time2str("%Y-%m-%d", $ts); - $date =~ s/(\d+)-0*(\d+?)-0*(\d+?)/$1-$2-$3/; - $date2 =~ s/(\d+)-0*(\d+?)-0*(\d+?)/$1-$2-$3/; + $date =~ s/(\d+)-0*(\d+?)-0*(\d+?)/$1-$2-$3/a; + $date2 =~ s/(\d+)-0*(\d+?)-0*(\d+?)/$1-$2-$3/a; } my $ret = ($ts && $date eq $date2); return $ret ? 1 : 0; diff --git a/Bugzilla/Version.pm b/Bugzilla/Version.pm index f6fedeba7..d135c4a7a 100644 --- a/Bugzilla/Version.pm +++ b/Bugzilla/Version.pm @@ -7,7 +7,7 @@ package Bugzilla::Version; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService.pm b/Bugzilla/WebService.pm index f80813744..743d54c87 100644 --- a/Bugzilla/WebService.pm +++ b/Bugzilla/WebService.pm @@ -9,7 +9,7 @@ # actual RPC server, see Bugzilla::WebService::Server and its subclasses. package Bugzilla::WebService; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Bug.pm b/Bugzilla/WebService/Bug.pm index a922c2bf0..aaf0d10e0 100644 --- a/Bugzilla/WebService/Bug.pm +++ b/Bugzilla/WebService/Bug.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Bug; -use 5.10.1; +use 5.14.0; use strict; use warnings; @@ -530,7 +530,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. diff --git a/Bugzilla/WebService/BugUserLastVisit.pm b/Bugzilla/WebService/BugUserLastVisit.pm index 151327368..b82faa33a 100644 --- a/Bugzilla/WebService/BugUserLastVisit.pm +++ b/Bugzilla/WebService/BugUserLastVisit.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::BugUserLastVisit; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Bugzilla.pm b/Bugzilla/WebService/Bugzilla.pm index c0b44a04c..67e40a15f 100644 --- a/Bugzilla/WebService/Bugzilla.pm +++ b/Bugzilla/WebService/Bugzilla.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Bugzilla; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Classification.pm b/Bugzilla/WebService/Classification.pm index cee597b68..e90444061 100644 --- a/Bugzilla/WebService/Classification.pm +++ b/Bugzilla/WebService/Classification.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Classification; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Component.pm b/Bugzilla/WebService/Component.pm index a59087492..1410a12f6 100644 --- a/Bugzilla/WebService/Component.pm +++ b/Bugzilla/WebService/Component.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Component; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Constants.pm b/Bugzilla/WebService/Constants.pm index 2387903bb..e5311d9e5 100644 --- a/Bugzilla/WebService/Constants.pm +++ b/Bugzilla/WebService/Constants.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Constants; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/FlagType.pm b/Bugzilla/WebService/FlagType.pm index 9d7cce037..8fa29b8d0 100644 --- a/Bugzilla/WebService/FlagType.pm +++ b/Bugzilla/WebService/FlagType.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::FlagType; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Group.pm b/Bugzilla/WebService/Group.pm index 468575a35..ec09604c4 100644 --- a/Bugzilla/WebService/Group.pm +++ b/Bugzilla/WebService/Group.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Group; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Product.pm b/Bugzilla/WebService/Product.pm index 75ec42c05..879d8eac1 100644 --- a/Bugzilla/WebService/Product.pm +++ b/Bugzilla/WebService/Product.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Product; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Server.pm b/Bugzilla/WebService/Server.pm index 7950c7a3b..da92b4d7f 100644 --- a/Bugzilla/WebService/Server.pm +++ b/Bugzilla/WebService/Server.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Server; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Server/JSONRPC.pm b/Bugzilla/WebService/Server/JSONRPC.pm index a75bba836..93d315fde 100644 --- a/Bugzilla/WebService/Server/JSONRPC.pm +++ b/Bugzilla/WebService/Server/JSONRPC.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Server::JSONRPC; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Server/XMLRPC.pm b/Bugzilla/WebService/Server/XMLRPC.pm index 33949ead0..f697f0927 100644 --- a/Bugzilla/WebService/Server/XMLRPC.pm +++ b/Bugzilla/WebService/Server/XMLRPC.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Server::XMLRPC; -use 5.10.1; +use 5.14.0; use strict; use warnings; @@ -128,7 +128,7 @@ sub handle_login { # and also, in some cases, to more-usefully decode them. package Bugzilla::XMLRPC::Deserializer; -use 5.10.1; +use 5.14.0; use strict; use warnings; @@ -243,7 +243,7 @@ sub _validation_subs { package Bugzilla::XMLRPC::SOM; -use 5.10.1; +use 5.14.0; use strict; use warnings; @@ -270,7 +270,7 @@ sub paramsin { # See http://rt.cpan.org/Public/Bug/Display.html?id=32952. package Bugzilla::XMLRPC::Serializer; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/User.pm b/Bugzilla/WebService/User.pm index bacd08ba1..079e0782e 100644 --- a/Bugzilla/WebService/User.pm +++ b/Bugzilla/WebService/User.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::User; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/WebService/Util.pm b/Bugzilla/WebService/Util.pm index 052f7714d..752100649 100644 --- a/Bugzilla/WebService/Util.pm +++ b/Bugzilla/WebService/Util.pm @@ -7,7 +7,7 @@ package Bugzilla::WebService::Util; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Whine.pm b/Bugzilla/Whine.pm index eeaea6da4..6f322fe96 100644 --- a/Bugzilla/Whine.pm +++ b/Bugzilla/Whine.pm @@ -7,7 +7,7 @@ package Bugzilla::Whine; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Whine/Query.pm b/Bugzilla/Whine/Query.pm index b2a2c9e07..a691fd2ff 100644 --- a/Bugzilla/Whine/Query.pm +++ b/Bugzilla/Whine/Query.pm @@ -7,7 +7,7 @@ package Bugzilla::Whine::Query; -use 5.10.1; +use 5.14.0; use strict; use warnings; diff --git a/Bugzilla/Whine/Schedule.pm b/Bugzilla/Whine/Schedule.pm index 11f0bf16f..8417affb1 100644 --- a/Bugzilla/Whine/Schedule.pm +++ b/Bugzilla/Whine/Schedule.pm @@ -7,7 +7,7 @@ package Bugzilla::Whine::Schedule; -use 5.10.1; +use 5.14.0; use strict; use warnings; -- cgit v1.2.3-24-g4f1b