]> git.ipfire.org Git - thirdparty/bugzilla.git/commitdiff
Bug 1136137: Require Perl 5.14
authorFrédéric Buclin <LpSolit@gmail.com>
Mon, 29 Feb 2016 18:34:34 +0000 (19:34 +0100)
committerFrédéric Buclin <LpSolit@gmail.com>
Mon, 29 Feb 2016 18:34:34 +0000 (19:34 +0100)
r=dkl

353 files changed:
Bugzilla.pm
Bugzilla/API/1_0/Constants.pm
Bugzilla/API/1_0/Resource.pm
Bugzilla/API/1_0/Resource/Bug.pm
Bugzilla/API/1_0/Resource/BugUserLastVisit.pm
Bugzilla/API/1_0/Resource/Bugzilla.pm
Bugzilla/API/1_0/Resource/Classification.pm
Bugzilla/API/1_0/Resource/Component.pm
Bugzilla/API/1_0/Resource/FlagType.pm
Bugzilla/API/1_0/Resource/Group.pm
Bugzilla/API/1_0/Resource/Product.pm
Bugzilla/API/1_0/Resource/User.pm
Bugzilla/API/1_0/Server.pm
Bugzilla/API/1_0/Util.pm
Bugzilla/API/Server.pm
Bugzilla/Attachment.pm
Bugzilla/Attachment/PatchReader.pm
Bugzilla/Auth.pm
Bugzilla/Auth/Login.pm
Bugzilla/Auth/Login/APIKey.pm
Bugzilla/Auth/Login/CGI.pm
Bugzilla/Auth/Login/Cookie.pm
Bugzilla/Auth/Login/Env.pm
Bugzilla/Auth/Login/Stack.pm
Bugzilla/Auth/Persist/Cookie.pm
Bugzilla/Auth/Verify.pm
Bugzilla/Auth/Verify/DB.pm
Bugzilla/Auth/Verify/LDAP.pm
Bugzilla/Auth/Verify/RADIUS.pm
Bugzilla/Auth/Verify/Stack.pm
Bugzilla/Bug.pm
Bugzilla/BugMail.pm
Bugzilla/BugUrl.pm
Bugzilla/BugUrl/Bugzilla.pm
Bugzilla/BugUrl/Bugzilla/Local.pm
Bugzilla/BugUrl/Debian.pm
Bugzilla/BugUrl/GitHub.pm
Bugzilla/BugUrl/Google.pm
Bugzilla/BugUrl/JIRA.pm
Bugzilla/BugUrl/Launchpad.pm
Bugzilla/BugUrl/MantisBT.pm
Bugzilla/BugUrl/SourceForge.pm
Bugzilla/BugUrl/Trac.pm
Bugzilla/BugUserLastVisit.pm
Bugzilla/CGI.pm
Bugzilla/Chart.pm
Bugzilla/Classification.pm
Bugzilla/Comment.pm
Bugzilla/Comment/TagWeights.pm
Bugzilla/Component.pm
Bugzilla/Config.pm
Bugzilla/Config/Admin.pm
Bugzilla/Config/Advanced.pm
Bugzilla/Config/Attachment.pm
Bugzilla/Config/Auth.pm
Bugzilla/Config/BugChange.pm
Bugzilla/Config/BugFields.pm
Bugzilla/Config/Common.pm
Bugzilla/Config/Core.pm
Bugzilla/Config/General.pm
Bugzilla/Config/GroupSecurity.pm
Bugzilla/Config/LDAP.pm
Bugzilla/Config/MTA.pm
Bugzilla/Config/Memcached.pm
Bugzilla/Config/Query.pm
Bugzilla/Config/RADIUS.pm
Bugzilla/Config/ShadowDB.pm
Bugzilla/Config/UserMatch.pm
Bugzilla/Constants.pm
Bugzilla/DB.pm
Bugzilla/DB/Mysql.pm
Bugzilla/DB/Oracle.pm
Bugzilla/DB/Pg.pm
Bugzilla/DB/Schema.pm
Bugzilla/DB/Schema/Mysql.pm
Bugzilla/DB/Schema/Oracle.pm
Bugzilla/DB/Schema/Pg.pm
Bugzilla/DB/Schema/Sqlite.pm
Bugzilla/DB/Sqlite.pm
Bugzilla/Error.pm
Bugzilla/Extension.pm
Bugzilla/Field.pm
Bugzilla/Field/Choice.pm
Bugzilla/Field/ChoiceInterface.pm
Bugzilla/Flag.pm
Bugzilla/FlagType.pm
Bugzilla/Group.pm
Bugzilla/Hook.pm
Bugzilla/Install.pm
Bugzilla/Install/DB.pm
Bugzilla/Install/Filesystem.pm
Bugzilla/Install/Localconfig.pm
Bugzilla/Install/Requirements.pm
Bugzilla/Install/Util.pm
Bugzilla/Job/BugMail.pm
Bugzilla/Job/Mailer.pm
Bugzilla/JobQueue.pm
Bugzilla/JobQueue/Runner.pm
Bugzilla/Keyword.pm
Bugzilla/MIME.pm
Bugzilla/Mailer.pm
Bugzilla/Markdown.pm
Bugzilla/Memcached.pm
Bugzilla/Migrate.pm
Bugzilla/Migrate/Gnats.pm
Bugzilla/Milestone.pm
Bugzilla/Object.pm
Bugzilla/Product.pm
Bugzilla/RNG.pm
Bugzilla/Report.pm
Bugzilla/Search.pm
Bugzilla/Search/Clause.pm
Bugzilla/Search/ClauseGroup.pm
Bugzilla/Search/Condition.pm
Bugzilla/Search/Quicksearch.pm
Bugzilla/Search/Recent.pm
Bugzilla/Search/Saved.pm
Bugzilla/Sender/Transport/Sendmail.pm
Bugzilla/Series.pm
Bugzilla/Status.pm
Bugzilla/Template.pm
Bugzilla/Template/Context.pm
Bugzilla/Template/Plugin/Bugzilla.pm
Bugzilla/Template/Plugin/Hook.pm
Bugzilla/Token.pm
Bugzilla/Update.pm
Bugzilla/User.pm
Bugzilla/User/APIKey.pm
Bugzilla/User/Setting.pm
Bugzilla/User/Setting/Lang.pm
Bugzilla/User/Setting/Skin.pm
Bugzilla/User/Setting/Timezone.pm
Bugzilla/UserAgent.pm
Bugzilla/Util.pm
Bugzilla/Version.pm
Bugzilla/WebService.pm
Bugzilla/WebService/Bug.pm
Bugzilla/WebService/BugUserLastVisit.pm
Bugzilla/WebService/Bugzilla.pm
Bugzilla/WebService/Classification.pm
Bugzilla/WebService/Component.pm
Bugzilla/WebService/Constants.pm
Bugzilla/WebService/FlagType.pm
Bugzilla/WebService/Group.pm
Bugzilla/WebService/Product.pm
Bugzilla/WebService/Server.pm
Bugzilla/WebService/Server/JSONRPC.pm
Bugzilla/WebService/Server/XMLRPC.pm
Bugzilla/WebService/User.pm
Bugzilla/WebService/Util.pm
Bugzilla/Whine.pm
Bugzilla/Whine/Query.pm
Bugzilla/Whine/Schedule.pm
Makefile.PL
admin.cgi
app.psgi
attachment.cgi
auth.cgi
buglist.cgi
chart.cgi
checksetup.pl
clean-bug-user-last-visit.pl
colchange.cgi
collectstats.pl
config.cgi
contrib/Bugzilla.pm
contrib/bz_webservice_demo.pl
contrib/bzdbcopy.pl
contrib/convert-workflow.pl
contrib/extension-convert.pl
contrib/fixperms.pl
contrib/merge-users.pl
contrib/mysqld-watcher.pl
contrib/recode.pl
contrib/replyrc
contrib/sendbugmail.pl
contrib/sendunsentbugmail.pl
contrib/syncLDAP.pl
createaccount.cgi
describecomponents.cgi
describekeywords.cgi
docs/en/rst/conf.py
docs/lib/Pod/Simple/HTML/Bugzilla.pm
docs/lib/Pod/Simple/HTMLBatch/Bugzilla.pm
docs/makedocs.pl
duplicates.cgi
editclassifications.cgi
editcomponents.cgi
editfields.cgi
editflagtypes.cgi
editgroups.cgi
editkeywords.cgi
editmilestones.cgi
editparams.cgi
editproducts.cgi
editsettings.cgi
editusers.cgi
editvalues.cgi
editversions.cgi
editwhines.cgi
editworkflow.cgi
email_in.pl
enter_bug.cgi
extensions/BmpConvert/Config.pm
extensions/BmpConvert/Extension.pm
extensions/Example/API/1_0/Resource/Example.pm
extensions/Example/Config.pm
extensions/Example/Extension.pm
extensions/Example/lib/Auth/Login.pm
extensions/Example/lib/Auth/Verify.pm
extensions/Example/lib/Config.pm
extensions/Example/lib/Migrate/ImportBugs.pm
extensions/Example/lib/Util.pm
extensions/Example/lib/WebService.pm
extensions/MoreBugUrl/Config.pm
extensions/MoreBugUrl/Extension.pm
extensions/MoreBugUrl/lib/BitBucket.pm
extensions/MoreBugUrl/lib/GetSatisfaction.pm
extensions/MoreBugUrl/lib/PHP.pm
extensions/MoreBugUrl/lib/Phabricator.pm
extensions/MoreBugUrl/lib/RT.pm
extensions/MoreBugUrl/lib/Redmine.pm
extensions/MoreBugUrl/lib/ReviewBoard.pm
extensions/MoreBugUrl/lib/Rietveld.pm
extensions/MoreBugUrl/lib/Savane.pm
extensions/Voting/Config.pm
extensions/Voting/Extension.pm
extensions/create.pl
gen-cpanfile.pl
importxml.pl
index.cgi
jobqueue.pl
jsonrpc.cgi
migrate.pl
mod_perl.pl
page.cgi
post_bug.cgi
process_bug.cgi
query.cgi
quips.cgi
relogin.cgi
report.cgi
reports.cgi
request.cgi
rest.cgi
sanitycheck.cgi
sanitycheck.pl
search_plugin.cgi
show_activity.cgi
show_bug.cgi
showdependencygraph.cgi
showdependencytree.cgi
shutdown.cgi
summarize_time.cgi
t/001compile.t
t/002goodperl.t
t/004template.t
t/005whitespace.t
t/006spellcheck.t
t/007util.t
t/008filter.t
t/009bugwords.t
t/010dependencies.t
t/011pod.t
t/012throwables.t
t/013dbschema.t
t/014critic-core.t
t/Support/Files.pm
t/Support/Systemexec.pm
t/Support/Templates.pm
template/en/default/extensions/config.pm.tmpl
template/en/default/extensions/extension.pm.tmpl
template/en/default/extensions/util.pm.tmpl
testagent.cgi
testserver.pl
token.cgi
userprefs.cgi
view_job_queue.cgi
votes.cgi
whine.pl
whineatnews.pl
xmlrpc.cgi
xt/config/generate_test_data.pl
xt/extensions/QA/Config.pm
xt/extensions/QA/Extension.pm
xt/extensions/QA/lib/Util.pm
xt/lib/QA/REST.pm
xt/lib/QA/RPC.pm
xt/lib/QA/RPC/JSONRPC.pm
xt/lib/QA/RPC/XMLRPC.pm
xt/lib/QA/Tests.pm
xt/lib/QA/Util.pm
xt/rest/bugzilla.t
xt/rest/classification.t
xt/selenium/bug_edit.t
xt/selenium/choose_priority.t
xt/selenium/classifications.t
xt/selenium/config.t
xt/selenium/create_user_accounts.t
xt/selenium/custom_fields.t
xt/selenium/custom_fields_admin.t
xt/selenium/dependencies.t
xt/selenium/edit_products_properties.t
xt/selenium/email_preferences.t
xt/selenium/enter_new_bug.t
xt/selenium/flags.t
xt/selenium/flags2.t
xt/selenium/groups.t
xt/selenium/keywords.t
xt/selenium/login.t
xt/selenium/milestones.t
xt/selenium/password_complexity.t
xt/selenium/private_attachments.t
xt/selenium/qa_contact.t
xt/selenium/require_login.t
xt/selenium/sanity_check.t
xt/selenium/saved_searches.t
xt/selenium/search.t
xt/selenium/security.t
xt/selenium/shared_searches.t
xt/selenium/show_all_products.t
xt/selenium/shutdown.t
xt/selenium/status_whiteboard.t
xt/selenium/strict_isolation.t
xt/selenium/sudo_sessions.t
xt/selenium/target_milestones.t
xt/selenium/time_summary.t
xt/selenium/user_groups.t
xt/selenium/user_matching.t
xt/selenium/user_preferences.t
xt/selenium/user_privs.t
xt/selenium/votes.t
xt/webservice/bug_add_attachment.t
xt/webservice/bug_add_comment.t
xt/webservice/bug_attachments.t
xt/webservice/bug_comments.t
xt/webservice/bug_create.t
xt/webservice/bug_fields.t
xt/webservice/bug_get.t
xt/webservice/bug_history.t
xt/webservice/bug_legal_values.t
xt/webservice/bug_search.t
xt/webservice/bug_update.t
xt/webservice/bug_update_see_also.t
xt/webservice/bugzilla.t
xt/webservice/group_create.t
xt/webservice/jsonp.t
xt/webservice/product_create.t
xt/webservice/product_get.t
xt/webservice/user_create.t
xt/webservice/user_get.t
xt/webservice/user_login_logout.t
xt/webservice/user_offer_account_by_email.t

index 851b76ebb5910b7abb7cb29fe8e2b5ad796cdf72..bff8dc788321dc33daaa92cf1ecb5722774ed97e 100644 (file)
@@ -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};
     }
index 44e20124ad82048036afbb6f747e44439f4f45c7..d372d410d8a2688afd6cae7fde60fbc51dc2c567 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Constants;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 9881d3713d3a206e79d4db1dfaa98978f2436d79..5a26851a582d827aab7b2d979e270afa5e0d41ec 100644 (file)
@@ -10,7 +10,7 @@
 
 package Bugzilla::API::1_0::Resource;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a8565b7a0cf85a92657b84cbd32cd434a18777bd..dcc73086f3f53215feb6cdaa33226774d93d3cfa 100644 (file)
@@ -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.
index aeb52bbb6a045955062270c51583a0d2e0252406..20fdb158f4588d25d555b2787667339a7dff5a1c 100644 (file)
@@ -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+)$}, {
index fce840c47e74f64ff4986107a3324fac054a1431..f5bb2f4170b2a9383da1cd016c903df4c5a4d95e 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Resource::Bugzilla;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 7a59e381d23c4f6697706c87d0c9781af4bff21b..28ed2aa95ac49030a56809f3677d21aec30e87d6 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Resource::Classification;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 13a5f24b51e70b928de81747d9434b43f07ab1f8..ba9b27d62f5a6da7385144f920686db93d990f8a 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Resource::Component;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 969a59532659e21c9091745e2ea0037be989fcc4..febce6f717580c6943561a527b3faff02e73cfea 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Resource::FlagType;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 4efd7b476bd5c6f7ea554cc5a7eb262da8a7ac6b..43a2521fb6fa1dc8bf0fddb8cb8c99003ccfaffd 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Resource::Group;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6a5168608fb796fe19819ac6b73e8407cc207886..d3576a734f2c2f0e1d134fc3b085103d9e62db92 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Resource::Product;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index ec81cf66d39c9032081cdad0d2037bfe26991972..a214bd81f24c0d6a3ad74b060b7ad6bb322c65ae 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Resource::User;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index af66a4f6645353467aa2ea3e3e8655fdd477cc2e..a443cd51435549ff8d70ff1b426c1beb7cbcfaba 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Server;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index afdde314e08951cfbd994273a9443ee7f045189f..e2c7b1f1ff875034d0284a360c01e7fd15b1a9b7 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Util;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 2d680db28864983d31a43cc562eaf25a1eabc54b..e3bf1ea71c7e852d29b19aade62099000678f5c8 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::Server;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 1f2bddda5184884f849d4f6c03d31c937bd77550..78334ec180e8c2f08d4e1c4377c92b30dbd7c661 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Attachment;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 202f4b4fdecdbd229cba75facc276b623e2b6bec..1cc3f0bcacf917ed388b437ac733dee531ef6a3c 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Attachment::PatchReader;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index c830f0506d7927aa8c694e7e7602390c17bb3f87..399f68d24eb888f68518443e099802d8fa8fba29 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a5f089777198017cc0c05760e61f1617bc0f3454..cd075a3cff0b54ffbe716f715e19a09cbee11392 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Login;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 63e35578af45e5c91eb439e1afb93a6631d27142..c7829f1ce00ed8c36fba7d92e7ab2eda50758d93 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Login::APIKey;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6003d62a5bd7be65a6b76b322b77abc4cc4886dc..d2934e6d09e5a3ecc3d845d4bd7e0375aefd757d 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Login::CGI;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3139e127bd950ab31d1cfd8913d8bee3983f5766..b67fb73db4b0599ddcbd7423a7f24d84a65b9c7d 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Login::Cookie;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 653df2bb390e98ac8e974f60351cd1270d3aab32..2ff81e82e71491b5cd948e4c7bce96ab905b8b62 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Login::Env;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index dc35998e4f95d22644d0193c1fbe8ebfbe120fe0..a7c24a3fb006d6a26733fc7e5c42f49179c93b54 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Login::Stack;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 904de3699ca9d15378b6f1bee48636ef21035856..69f6e9c60ac9fc71efdc5de2cecad67c3d28f442 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Persist::Cookie;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 9dc83273b47bc83d9437cebbc6f41c214fba1fb3..ef5b749b1bfecfd0b3aaa1feab53759587d7666f 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Verify;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 28a9310c97cb047ae6bc267136fc6fb9d1947a8c..fd11d196009d879b74d89d4fe1df3b13b926c56c 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Verify::DB;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e37f557939b15d405a87c36f19ba2b1cdce4863f..cd2e6437047b06022d8d52909dd9a6a013d8ea75 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Verify::LDAP;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 283d9b4661482ee3e78641c05f4f686e27da9a13..60be52a076f10596a6edaa1b5c678b4b945f64b8 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Verify::RADIUS;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3e5db3cecbb442d086d23c9fc62892aa73619d9f..2e36388a645cfd766d9e32e982c1fbf61e4346e9 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Auth::Verify::Stack;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 37f492337edef1d1147bd5571ff4896f070ea3e1..a41e4f1aa8171966480056df1e772152bdf68f59 100644 (file)
@@ -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
             }
         }
index bfb57f1589557c64aadd6be76d8b794f48807368..5ab0218695318ba158f5ba9a98018f82ccebc376 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugMail;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 1d75fe8f108fc4d765b332c90419b5fab1ab7c3e..818253c69bd559b2c17ab1d8df5e05f2e34aa79a 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugUrl;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 402ff1509b40d4555b957452c540e78a48729d53..64718120273cc4c2529243eb889571f323eddead 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugUrl::Bugzilla;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 7b9cb6a4fa51dbebc73e3b69475ee06d49ca9c8f..e60cb04fc61f1c0392c9f9916817ac9a1f8feeb7 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugUrl::Bugzilla::Local;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b726b0b5ab001ca6671c8a4fdae9f88781d443a3..2067c9eb68c251a9b1a88c7c31ba9451697a4373 100644 (file)
@@ -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;
index f14f1d6b05c9cc0f1cb61f341d6499e551fa236e..19ce5ef6b96bb747da6fdbcd4e716c3a55c20a05 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugUrl::GitHub;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 71a9c46fb52107a8b5583227c1f25ac140532ee3..4b5df7a87c37cea33982875d630e9fe1fbea3ea0 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugUrl::Google;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e9d2a2d2a6c49e6613ea32fdecde9e37d21f428a..d117b0255de51f2349dc313720e7f69f16120582 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugUrl::JIRA;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 0362747a245c0062fb75e4447041758ba48f7293..36a911130cc35c92d790c81baa44d870d793f425 100644 (file)
@@ -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;
index 60d3b578ef87d615529a7528b827654add9b09bb..f90e3f67b619bdb89c859aec2316bda90bf13b87 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugUrl::MantisBT;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 4a330f34b358ca6a80be3fbaeb239d0e528dcc8b..c2986736294a0e3baff12e920fc7ed6e83842a30 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugUrl::SourceForge;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index fe74abf33d36f46b3558730638a2696eb70cbe40..edcd1c4539b08f2fde7b675862d042c65709e9a8 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugUrl::Trac;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d043b121abddefcd45e0a74b62b3fd021d162afc..1b4f90abf1e5b04d37206b8b3ae6cea90f00d25c 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::BugUserLastVisit;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 25ee0acbec7089d4743042b98973afdd57fc0e4f..8d605b0d91ab408255d1da75d325bdc36dae8919 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::CGI;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3c69006aac48217162a889b1f88e294c12c91132..d0a1312ad4f30225c86db35c9d035b71d74fe7c1 100644 (file)
@@ -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);
         }        
     }
index 09f71baaf12b9178fdb8b202de52b4a603f5c42b..7f62e1ffab52ab15147909225b32ee4db0203c47 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Classification;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 7d7ac0d804c0f9160979039be5aa164968861e02..d995d4509cde1bb2a7a6eecfeb016a0c4dc91c56 100644 (file)
@@ -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;
     }
 
index 7dba53e34c0b720df939ddb2890a0ee10705577a..f4aa519a303ecd4aa4e33503dd44dc8eaa8abf64 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Comment::TagWeights;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3e50dab80cc1497def474961c4c670ccbd1f26b7..22c4245990e69334a4e1ff4159c879425ea1f69d 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Component;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 64f228915629bbae620af252aa945e0f945bac21..7a7ba3a3e1dfd6bebc942b7fae8d55e238fd6ab0 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 41d929298523b367f1bd07ce88d8b1a7e435d0f6..c21ae5310b45807c0581962a4ab571150f75f155 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::Admin;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8356c33610ec32b37e31a673ec3024d3a386eef1..75afe7b22d844225134c255cf95a55b4b0bc93c2 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::Advanced;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 5bf8542936ce6e46799d0adcc19a2af30f794f8b..daa844ba59ed4a80f13ffdc5d68fcec2d335a6ca 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::Attachment;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3c9ee31f2d0a1b24853344322f1bbe64b1816f29..219e834ee6d0859ab66bc3afe8deabace413e0d6 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::Auth;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6126b7f35775a323b9c71aad9a46a2a893a8b402..b8a80dd94b86460cf154a205a96fa78935e028c4 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::BugChange;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index ef2faa64b64fbe53b55601405581aa58d0f80069..f6c20cd121df5e909fc60d41c8fb372f86f722c6 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::BugFields;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6e8ae7b61b5b6e4cfb12fa17410ee0cf27a13044..860977b652b9faf885430dfcb3cfaa744669a949 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::Common;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index de375e4486a782b39bc5e9ba5ea2238e2c8137bb..c9a291d4c41550be28dbaabd5d4f4207dca43abb 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::Core;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8513a1f02b378990e29759d13c0ceb86b5641e17..1a03995f33cf97c655856662d8ea4cf393944208 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::General;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index ec172216b19c5df61b875030838f55940a5f0d76..ba81a468e3678ea927cb03826818fc9f254bde93 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::GroupSecurity;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 0bc8240dfde442dd9a18bba5f466616f64913035..1970b5791e87fb636dca29ead2a7bdbb6057c0a7 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::LDAP;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 467bdab3f9384d5e0305fe0c823867773c856710..37f61aa20d2f12c508fbeffbbb1aa4bfa7a1fa0d 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::MTA;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 292803d86474046cb5a671c3f3bc954e1f2f11a6..e45c33da199246fff2901abf586450e750336a74 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::Memcached;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index f18bb90df190101e123b203373d7153ed6db805f..5e0d72e338d2f48584f7dc138469468401fd0f3e 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::Query;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8e30b07a9881482fe5d4460e679055faa248333b..ddc8d95242869500d03bcfdabc1b86adac3db44b 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::RADIUS;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 5dbbb5202a172385088e33093c4d16e5942a67f5..20212629cf0f91da30fdd53bb8defe67ee767aa5 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::ShadowDB;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3f74a7c44e6dda305ff50f30c9b9677bed5ad8ec..c8b6f8dc38885e4d14d96e816f4ec3aa1b03369d 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Config::UserMatch;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6a469b37605d848a19be168b23f40e1a2c148953..6e8a469c5d458a02383e01d7d880b270fceab13e 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Constants;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 96a68af03b47e20ab609e4eadee3671eff8ff37f..6832e0ce715a063ddd96756affa7adc674fbf9c3 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::DB;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 402e9c58b0a828d3194b2f0133c91277ad969f29..858b58fee2ea8e7f247febabb208ea6468c424b1 100644 (file)
@@ -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;
 
index 51678dec9ee1e4d39ec946e09d2443e5bd7c8cf6..e863bac421e4008bcdc32f7f7dc90da9acba98ff 100644 (file)
@@ -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;
 
index ac9ec6309c863bb32983c8a3db8af22ee17ab227..9ef7f77f1c60f8f112916ba01b8d8213f6ed3a83 100644 (file)
@@ -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;
 
index d770f23588e1cd2cf065a03a94b7a5e1f2e26b46..ca3839ca6e0f6482b1d8e3cfdad285af75189f21 100644 (file)
@@ -15,7 +15,7 @@ package Bugzilla::DB::Schema;
 #
 ###########################################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index db01e971dfc8d9a57f7a46ff58edfeaf142ad61d..59066bdc492c67d4730f32c5c8149ef76103eda6 100644 (file)
@@ -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;
         }
     }
index 8fb5479b1d19eeec8f5c79ef927f51321776c2dd..c3868ad4444f05c4913720997b7884329456e60a 100644 (file)
@@ -13,7 +13,7 @@ package Bugzilla::DB::Schema::Oracle;
 #
 ###############################################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index dd8531927eebd6ea64ceefc4748ab7c2bbe65529..c82c373b7705485438654acf176b315b72b7fae3 100644 (file)
@@ -13,7 +13,7 @@ package Bugzilla::DB::Schema::Pg;
 #
 ###############################################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index ccdbfd8aaa01ddd7969c40082a069540d1552284..935bf8e3759d3cf4e81f4d09e1406fbb1ac6c3da 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::DB::Schema::Sqlite;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 0cdfa3477251f63a5bfc11db496caec1b90042e4..e3cc93a828c9fd4c7357b96222fd9521d5c9752c 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::DB::Sqlite;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8640247941ba7377adab1deabc80a3e682fb7843..394e0a5e5eaf74c443eafe358cf43370422e53e1 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Error;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e24ceb9eb33fa6da5db8aedc7225b6e923ffa8e2..fcd41ae8684a7a9f9e063c9171bd8e251e31220f 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d0e392243b4932d972978fd8ad76c96691108c7d..e9f9e1b2d3e262ed84f6703cbf48da99aa32bb93 100644 (file)
@@ -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;
 
index a66f69cee7aa9004e5e0f9da6d4633d58fe2b009..140feb46e8a4131ee91c9c7ffd52809cb4cc93f8 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Field::Choice;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 9ac508dc030a662aabd4644a671f241288c89d5e..bae62c4591e4fd8b2f25525094b20ad43a120397 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Field::ChoiceInterface;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index bf37f2a9aa43539c0949328c5c89eae33f229f5a..3d9540a94ad6c312dfd1b9694a609a7ab3f58b6e 100644 (file)
@@ -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);
 
index 72b3f64c1fb42da67eebba4466187b69c5d80564..cbf831bc5dbd5d4f5e67dcb61d0c79d6768f9366 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::FlagType;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index f7a50f7f1a3b055e354a2a5bcec4f6044405c779..9ea851c2000505ea74f5106f37182b3549a18357 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Group;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 9206cc99336a320a5dead2490e56c164eb9d4c08..8d0976d9c69524d0a6b94155a4248e74a4cda864 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Hook;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d02c43d2fdbb318b59075503864f4d77b4391069..e1ed65c363c15a47381683b6c09f7c250c4d6ca1 100644 (file)
@@ -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;
 
index 8af0eeb12921a346db052964f5d8b8df45a766f5..a6ca1e90ff3531d792141a6c877be6e3d2e44c50 100644 (file)
@@ -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;
 
index 679646df99434c9c79e5083711a17270d1efd33a..bbad2c4677e3822feb8ee47676a5345a36305575 100644 (file)
@@ -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;
 
index 6ff3f5e6c64c4adcab24d8640683a1d475221e45..4a3b09f83584dc55b088eeeac1ef445e36cfa555 100644 (file)
@@ -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;
 
index 924686f0a7411b9c16acd5819da20b1b2cf88480..af9152cf929d6ccb83a46441959f3d7e7f57ad79 100644 (file)
@@ -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;
 
index 82752b961aad269c298573c008a448996b0936d7..90ef2d4e362ac3555c1366e0a893af7d6221973e 100644 (file)
@@ -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;
 
index b4887c47026398ff588a6fa4202e4346e158c826..96ccb719e0f01751cc797b1040455ce14db0e5d7 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Job::BugMail;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 0f0e9c71faba23bd454ac242446aaffb86bcbf68..f4b9baaa32a4d8c91d01b6924a81c8cc534a8a3f 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Job::Mailer;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d5ceda8e9faa251b00a21f54243c33a9361c943c..0a5bcb116163b11abcdec9abc2381e0c878e934a 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::JobQueue;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 2367f8d77e6b87bb6aa89823545e667f5e093325..113193cd8514c37671f63eb892ba68f96914a29b 100644 (file)
@@ -11,7 +11,7 @@
 
 package Bugzilla::JobQueue::Runner;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index ef044a0c544ebaf63c68d41258fa8fa6a90dd11e..d2e1f91eb98050902f3b38da7313a334ae4146cc 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Keyword;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 20e667d8373a03950bb58b71a5a1b04a5ec2b102..0916133a0d94ce6fa3d8d3f3d735622b014c6758 100644 (file)
@@ -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);
index 20175db155728d176100a3bcc24043ea78f44860..c35f12ef841c03d75361461c875026dfd6c0f053 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Mailer;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index f73e25014745c843ff8177a868fe827b317594e4..212f1e093492a4f8075256a220f6224260abd9d2 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Markdown;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a468c7575e49bd069eecfd4afc8ca9d75ffbd041..8a367ea25c5eab0d3dcbe906ec4933ff2df25192 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Memcached;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6ecdb5c0d894d07bc2413d844f88a3f9502adab1..5a2defe158400dfbf17cebff3c3d8554fb628984 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Migrate;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 5feda4b8db3f206b5ab6ab5b63eaa104fe89cc0c..f16faf78cf1a7324236a118826e51edc2bfda449 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Migrate::Gnats;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 9cee522488a3c16672e7f27f23beb2631d48ddbb..2fd68dfbafe0e98c81cbe6c082de1ebf9b7938d1 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Milestone;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d43c8ca34f94c2e234430b8900716cd09d70d637..6e66267f803ca034051a468958937debe3ee837c 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Object;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 09ca61c69cdfc0c13f0622fe5db59b4091814a7f..592653afd7f891374b9985ca8b9ed1a48431c993 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Product;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 96e442fa032e5beb5870f8af1cf67020d54ab040..69693c722577d9af65fb31dfab3ffadbcecff3f8 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::RNG;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 10af2ea9efc40e6ce1592b9459a601577285291d..9820bbc72f93dcba85fb17c202d7c40b22bff41f 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Report;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 29ca7b1d92ce25b2e854138ba0c0ad1915d6bdff..3274b57a63e5f63fabc3e7788d8a94cd3d6ced45 100644 (file)
@@ -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; }
index 1d7872c7857a98b205d8e17476238012ef6a468a..87fb91692e1aa485eb5f7aea4dec7bef526185ab 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Search::Clause;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 590c737fad069fb00b22877594d2f28a42efc976..bae0bba55c6d6000ff66e0a29dffcee2e8666001 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Search::ClauseGroup;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 306a63eed3c0528e0a85f93f25c7afcf0c822467..a963b1b8924e30b96940f646dd9f417bff58277c 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Search::Condition;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 830177f8b513bc80a271356702587870608d9a7e..8e188161c862302237d5fcd7acbc7c117108e8a9 100644 (file)
@@ -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');
 
index e774c7fe0593b762bf170144ef946d4906c95955..18d08b2d04fce9a80a59c0d04b22277c11fcd5ce 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Search::Recent;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 50a9cdd6721021ef88fced455acc022e6f77a65b..9f6addffe564c732b7cae6f9b93cd7a98c607a92 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Search::Saved;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 49f00777fc19761941d02b425b4bcbc28f995d25..585ef9cd568362f92158c9d7f11ff6956406fa62 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Sender::Transport::Sendmail;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 22202c6f18d1a62048c6c4409460d6c33eafdc20..2e6b3cfc3c661c48411d6dd7844b7bc140d67da7 100644 (file)
@@ -14,7 +14,7 @@
 
 package Bugzilla::Series;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 27551021604a9fbbf5aa83131035d1b613dad75d..fbc731ceae04fc92aee25ca774c1345494c83932 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Status;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3cbff4733f113f39712918f2d3e6cb1a4341d8aa..48899cd78c487afe117281dbca6b992f2efea2c8 100644 (file)
@@ -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
index 470e6a9ee1feb2073329164b0d066991cace9f07..3893504b3a6cd8386c818792980a05ce3c79e8f1 100644 (file)
@@ -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;
 
index 806dd903b68507493e9fd0c4ca468e39528262b4..4481e33d207857cb47cb57408d4a2df53ce9a1fa 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Template::Plugin::Bugzilla;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 669c77614ce0ff7ce81206282e202654117b143a..faba06b727c337cbfd4336a74d75f92e86c1bb43 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Template::Plugin::Hook;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index be76be645da4c023af6e82f9032b887dacf1b940..b6f07468e215929b0f3c6fefcc0524be641d5cb5 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Token;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 72a7108a8e344518fa49990d4485715a20746148..8babf9864c635f8ebda19f4263962afd4fc94709 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Update;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index caaa6c51a2de0082d1679c32071d978a6d10d057..91defebb4719126abbd4d565ae4423b52d0e1811 100644 (file)
@@ -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;
index d268a0a93c43bc6e5dee3228a793d0d8a38fa969..6a5124a3cee65939c0101e98333a461abc561fa4 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::User::APIKey;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index aece3b7def297027d4fdf45ccd645d490014dc5b..d0bf1f15b9d25801dac346305d7a39d07d31d870 100644 (file)
@@ -8,7 +8,7 @@
 
 package Bugzilla::User::Setting;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d980b7a92e069cc7d0d13f4c444dc0e8938493be..ba144aa309c13b749dcae64a51046ef156d52a09 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::User::Setting::Lang;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 7b0688c0c833188ba3a86f85cba1d14e74a23645..81ce6fd2c3aa162e5073ee34af03dd99525d8ec7 100644 (file)
@@ -8,7 +8,7 @@
 
 package Bugzilla::User::Setting::Skin;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8959d1ddacecd16afe140ffa2e5ea8af3341e325..2810395e8499f1bb735db2bf880e3fffe7345970 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::User::Setting::Timezone;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 14637038cd34bdbf6ed6dcf6a182984d97a61619..22e2639a30bf4af5b55a978c6a1a7761f09dc533 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::UserAgent;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 4718efc88e298af13350e8637eafbab378a2314c..e030ff8a8451f7f7caf4e49f176f632970ad35f0 100644 (file)
@@ -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;
index f6fedeba78a8821c3d6bf2a04a510081d87f1278..d135c4a7aff52e4263e327c4b2726ea954cbfb44 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Version;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index f8081374418a9f30334f94517973ff53896a91c5..743d54c879ec72b9d98359dd4a66100962082c7d 100644 (file)
@@ -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;
 
index a922c2bf050a30cde15dc73bb15f524dcd96b219..aaf0d10e01c71b58e35c2e79422852d5320ed86a 100644 (file)
@@ -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.
index 15132736860395ff1f8f6068bd5e1c3b3a9413f4..b82faa33a17020a0a262d1387b9269b21b781f19 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::BugUserLastVisit;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index c0b44a04ca25c2e87c4755779afeb9402051c505..67e40a15ff561930babcd4816b6250295b0336f2 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::Bugzilla;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index cee597b68148e5f10d57bef590e8e7b42b2107de..e9044406199483d8d81a4585b742fc25c596c611 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::Classification;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a590874926f8f0d01cf10a0b0b120b5246a2a789..1410a12f633d2d699bef12fee2899b0c3776dee6 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::Component;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 2387903bb24eeddee1c21a4fa1d9cf920111f879..e5311d9e52db4725684a9c13bf332a8a9e38e18c 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::Constants;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 9d7cce0375a69bbb77a0b762f23a6e3861aae397..8fa29b8d0bd6004a819a8e746b8e800d9d8b6efd 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::FlagType;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 468575a351966a91884fb90b30c604aa5bc0a580..ec09604c416eb9f438ccfd4d3db8fe696e05ac4a 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::Group;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 75ec42c057824acb5f965f8aac2b05bb2ad9803b..879d8eac15b702ac2e3c0b192c967920580a04ed 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::Product;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 7950c7a3b928ab5e2a247b0344b3e948a59bec87..da92b4d7fc26f708589dc0caa88b125b224baa47 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::Server;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a75bba8368aecfd8b0ff03a66329fce384c1b87b..93d315fde217700586e1f18071aa29d15cf13bd0 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::Server::JSONRPC;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 33949ead0c72a455cee1cb37f3faae7bbc692604..f697f0927bcd39e19f0682c5707500f898faa332 100644 (file)
@@ -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;
 
index bacd08ba1775cf1cd97d8c8dc99b05893addfc82..079e0782e06dfae0d1ec93413fe44b108051a909 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::User;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 052f7714d09794052341f7931155430e2ceb8a5e..7521006495c339ccce26f4cc8ad3c3610040a78d 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::WebService::Util;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index eeaea6da4e0416200511fca098b8e99a96d4602f..6f322fe96cf37d962b7ed95c499ee28b419cd285 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Whine;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b2a2c9e0734b17b5719a7cdc9d341b06375223e2..a691fd2ff6379cc19a8b9ada398e41b26c47a16a 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Whine::Query;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 11f0bf16f1f469e91b876fc1844336a29a681b43..8417affb16d4ebec999be22b71ff0638ccf132a6 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Whine::Schedule;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 9157b23583cacc6647110c1617ed03b780749398..3880acaff2fef03f754d7c0840b3799339ae0839 100644 (file)
 # Initialization
 ######################################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
+
 use lib qw(. lib local/lib/perl5);
 
 use ExtUtils::MakeMaker 6.55;
@@ -233,7 +234,7 @@ WriteMakefile(
     VERSION            => BUGZILLA_VERSION,
     ABSTRACT           => 'Bugzilla Bug Tracking System',
     LICENSE            => 'Mozilla_2_0',
-    MIN_PERL_VERSION   => '5.10.1',
+    MIN_PERL_VERSION   => '5.14.0',
     CONFIGURE_REQUIRES => { 'ExtUtils::MakeMaker' => '6.55' },
     PREREQ_PM          => \%requires,
     TEST_REQUIRES => {
index 122e8c3b9c58342f5de8a4c757a2894fe8188b0a..f84d863b0ddf8662df909e967bf6c087f0e05d79 100755 (executable)
--- a/admin.cgi
+++ b/admin.cgi
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index c60d1e78296dd6f1af85104f48ce83d3601121cb..9f8957e99770a7e3658f43e4dc0c37d7cd9d3b85 100644 (file)
--- a/app.psgi
+++ b/app.psgi
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index ee1f24605d71839f9a8bf2ec99449607afe14b80..27a5b66c46980ade34fab13c7804568decc3da91 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 2cdff239a8f56f302fe1900da874a621af1c9c6d..b249571857e796ce48c55b98d41f0d20dbb075ee 100755 (executable)
--- a/auth.cgi
+++ b/auth.cgi
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d67d274c7a4fbe5a736473931cc76cdc523bddfa..fc00641cdef2f28441ded35d1befce652478883d 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 62054b799ccfbc0247f819c6031e82c5c050b574..13c9fe4cc715849f0af2d0ba846ad580c44d8aab 100755 (executable)
--- a/chart.cgi
+++ b/chart.cgi
@@ -27,7 +27,7 @@
 # Bonus:
 # Offer subscription when you get a "series already exists" error?
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
@@ -231,7 +231,7 @@ sub getAndValidateSeriesIDs {
 
 # Return a list of IDs of all the lines selected in the UI.
 sub getSelectedLines {
-    my @ids = map { /^select(\d+)$/ ? $1 : () } $cgi->param();
+    my @ids = map { /^select(\d+)$/a ? $1 : () } $cgi->param();
 
     return @ids;
 }
index 7c30a6e9d59ef5f7e65aa8f454978bbcb6647eaa..aacdf41be45a00696141d7086abb303aa4d28c6a 100755 (executable)
@@ -12,7 +12,7 @@
 # Initialization
 ######################################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 810fe598cd1bfb3aae28cf580821cf6665e72b08..4a6661dcee1c5b632ea6ea35f82c1e1e80ba7b72 100755 (executable)
@@ -19,7 +19,7 @@ It takes no arguments and produces no output except in the case of errors.
 
 =cut
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 use lib qw(. lib local/lib/perl5);
index aae7f95127dabd8bb624edf3b0ab390bf899f340..e1e78f44397160729b8fc8ce689a7bb544306826 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e638e9fff3b2289633f3c1b672e2d778d6841919..528df752945ddbb164f8e3daec6365302877cbb0 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 1eaa4e444f6b8fa2d2fcf856879737a12d836191..8e423ca009866406f97daafbb6bb48364aadb7f9 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 31e0a0f6d0b6bdc14fb2d41db44621c9c6224c07..bfc2fe385e321dc3be84285f49ec48e1e1c2cae9 100644 (file)
@@ -4,7 +4,7 @@
 
 package Bugzilla;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6c8c21dfafb7ef73b855e028a49016af905c3c79..dda9a6f93611be9d79dd680130ee6dada126b2b3 100755 (executable)
@@ -18,7 +18,7 @@ C<bz_webservice_demo.pl --help> for detailed help
 
 =cut
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 73160cf6a6986666b98238e22651311a7092d5ba..887d6b60ef4e07051847f494c56252a78bb915b4 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 1cbabca377ea76574ca00f3e8b767db43a06023e..edabb56922e6643bde55cf1b1f9796ca4b6341e0 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d4f29d85569272d86b5b7cda5556f075f79bab2d..f5e4977c33fe03219be34f31bdb21398f03e5b73 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a6e31fe701fd465bc185be7c3ea5a11794b52bd2..55e8e90b895dc9971c0c31188415b4f9b8c889d5 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8e13b093495bbc99cf46edb7f6bdf71989e3cb9a..16d50bb91289e5004a8eea64a9e1f91a1c6e018b 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index be93dcbb5dfbd5aa940654113a0d53c4cccb56bf..ff580a7efab7b42a17608fd623287316dcf96b6d 100755 (executable)
@@ -9,7 +9,7 @@
 # mysqld-watcher.pl - a script that watches the running instance of
 # mysqld and kills off any long-running SELECTs against the shadow_db
 # 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index edd9fe423acacda18cb4f014e442fcb4d6038f98..8894371b844ad5dccdedc8e791a23c26731d236b 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 2c5541e4c8f7a892ebad008b0ab4b4910521598f..b465135b64e1ca7437ff3279e0affbb0006f1d36 100644 (file)
@@ -5,7 +5,7 @@
 
 script_line1 = use strict;
 script_line2 = use warnings;
-script_line3 = use v5.10;
+script_line3 = use v5.14;
 script_line4 = use Bugzilla;
 script_line5 = Bugzilla->extensions; 1;
 script_line6 = sub filter { Bugzilla->template->{SERVICE}->{CONTEXT}->{CONFIG}->{FILTERS}->{$_[0]} }
index c48a6f713253ee28ca87d7a1c280609b55efc6aa..2ebf163e7466d6016d5c1230a52a5b9acd187ec4 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 639762af9c6342be46ac7d3dd0dac05cdf4cec47..16fd00aa1af3a690de0d2eb749bf1c5276a8db7d 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 872dbc3d716acb72fc6a46df82b6ed6d5b239aa8..52ff067e3ef300d8994dfa125fc9a7983b1873f9 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d46bb72d8456f4eccc80bae204d8ca4a5a0ee9f1..754b1b552444d67669c0b7c148a93ed3f5eb8852 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 961324396a87059e68a526962b61f14230ae6a46..a81c8aa57e764390a173a35e7e9ee9d932b628c5 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index bb8cff7b00beb7a93257d8ed6a8b1e32d84453cf..dd7c6f8817b21b134f14843ffc5a4089988d48c7 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d2cf20ba4b1ed8bd18f75a3a0142b35534dc39fd..10d18cadb8cbfba98d6897e13190b929039f4f06 100644 (file)
@@ -46,7 +46,7 @@ master_doc = 'index'
 
 # General information about the project.
 project = u'Bugzilla'
-copyright = u'2014, The Bugzilla Team'
+copyright = u'2016, The Bugzilla Team'
 
 # The version info for the project you're documenting, acts as replacement for
 # |version| and |release|, also used in various other places throughout the
@@ -115,7 +115,7 @@ rst_prolog = """
 .. role:: field
     :class: field
 
-.. |min-perl-ver| replace:: 5.10.1
+.. |min-perl-ver| replace:: 5.14.0
 """
 
 rst_epilog = """
index ffbd0775c11482130e5e6db30fe25c84095d23a6..047a27bc741bdd23511ce1775f385b88e615a6a6 100644 (file)
@@ -7,7 +7,7 @@
 
 package Pod::Simple::HTML::Bugzilla;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index cb61082df6e535147f5ac9ab92dd47d94b99bb06..a4747eef0d165c2b67fc79e95328f9db8dc0b854 100644 (file)
@@ -7,7 +7,7 @@
 
 package Pod::Simple::HTMLBatch::Bugzilla;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6baf9a797c741efd6af05b09dab4e925c040a42f..81d098a94a56a2fd011fa618c1260316f6a23f08 100755 (executable)
@@ -23,7 +23,7 @@
 # All these TeX packages together are close to a gig :-| But after you've
 # installed them, you can remove texlive-latex-extra-doc to save 400MB.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 22a0c40063eba0c4513833e312d394ae21bd13a9..0773400fda5c1b88e094854785bd0475e6be563a 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 773aa20dc1e6eb05f01a894a9f60fe21b6429544..0337e5511a7195b6a36b045a632c940363d5c4a7 100755 (executable)
@@ -7,7 +7,7 @@
 # defined by the Mozilla Public License, v. 2.0.
 
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 68de12a1579895236dbecb136466eb0197bfb840..99bd3bb35138552527b184bdd2cd3d15eedeb9ad 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 87db4ce08616e1a93df401fdc2948c96650f7450..88961a4e4c283b0c14ea1476bd0582643d966f1c 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e9d2ab42b9686a6f60df6d4dfd50f3b585838105..a319742d3a2e0a63d9cdefd1aeff08dbfd5c54c1 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index baff40f6b8a48a923c0fe9270f18f3f61ca9789f..ac0e6a8bdfb7a612aa52699ff6f466b629edc3ef 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index cfa5e31b9df145ba154a95c44dd049b7b29a832a..afa00ad7feaa69ffef20ff4ba3606125679e4722 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 432c0bc5b17250ec6d4ffe598923357935491127..2b6e041e75f7286dd0d02f310052bdc00f3668ba 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3894b48801f7e52e4b53a1db5d53a8848dcc5ede..502d2a564f86beddcbc9ecd067e38240fc673659 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a1c06e91f2f2d82b29fcd3f5b90d9b9eb9b42077..5f74347728cfac7d67c56d2bcb0957c156201001 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
@@ -343,7 +343,7 @@ if ($action eq 'updategroupcontrols') {
     my @now_na = ();
     my @now_mandatory = ();
     foreach my $f ($cgi->param()) {
-        if ($f =~ /^membercontrol_(\d+)$/) {
+        if ($f =~ /^membercontrol_(\d+)$/a) {
             my $id = $1;
             if ($cgi->param($f) == CONTROLMAPNA) {
                 push @now_na,$id;
index ef419c7e32290be975be6d9a7bd29fd4d620656f..5a30e68c9e3f83da1f7623448218f441c30b83a8 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 54160b4938c36a1fbaf7751c7cb0477edb00d629..341176871855136fd21ea044ebc755d9636fe75a 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8c80a04d0c899ca54f88bfdbd4594ac8cfd7b000..4be8cfd44c6813b0e0fb4a7e199183991ac62a6a 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 976c72224e6172fa84aa0bec4b5a405e6b572e39..4a102c438bc039c8d58240878f2697a5a7cf187b 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 229a32e256a071fc5c7016adfb536af378b6342f..6597db893ad625be3ba2b5547bf7328196a5ee9d 100755 (executable)
@@ -10,7 +10,7 @@
 # Script Initialization
 ################################################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3739158a1f643526f3c2cc1e99b15fdc43ede813..583bce6889945fad466c117598405610646444ec 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6951924f624c073c2a934bf8ad6c5ac0824888f0..c34d2fc24ac0123f84c644816d43acd928d0c06c 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index aa396b1bedf5205ad8fc0388530b884a613fcd75..d6cc90764f4bada0491ab69e3bcc66e65c6452ab 100755 (executable)
@@ -16,7 +16,7 @@
 #
 ##############################################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 4984f19a9d7efc97371c69c0cef542468848a8cb..3c8e792abd5286c0076385238b8701157ad08481 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::BmpConvert;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b8201f106df085df55a4791c9c7bec22d1bce92f..407ab3aaa7ca998dd1322033f16b49ca54bb0d58 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::BmpConvert;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index c4c5f9a32501521ce83efdeff0f424b3d306ae72..38000fbdb94f850b5c948355efce7c52b5fa75d5 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::API::1_0::Resource::Example;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 use parent qw(Bugzilla::API::1_0::Resource);
index 16708e3f803587eacd2c0860ce868c7317918508..02ed01e77aa1668b228438cdc1861d6274152474 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::Example;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 40ee9c2d120defc9fa98f3adebad732fe30a901f..ef27200ac74ae592747ca28955f87b80d9380a3d 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::Example;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
@@ -479,13 +479,7 @@ sub error_catch {
     my $new_error_msg = "Ah ah, you tried to access $page_id? Good try!";
     $new_error_msg = html_quote($new_error_msg);
     # There are better tools to parse an HTML page, but it's just an example.
-    # Since Perl 5.16, we can no longer write "class" inside look-behind
-    # assertions, because "ss" is also seen as the german ß character, which
-    # makes Perl 5.16 complain. The right fix is to use the /aa modifier,
-    # but it's only understood since Perl 5.14. So the workaround is to write
-    # "clas[s]" instead of "class". Stupid and ugly hack, but it works with
-    # all Perl versions.
-    $$page =~ s/(?<=<td id="error_msg" clas[s]="throw_error">).*(?=<\/td>)/$new_error_msg/si;
+    $$page =~ s/<div id="error_msg" class="throw_error">\K(.*)/$new_error_msg<br>$1/siaa;
 }
 
 sub flag_end_of_update {
index 15c58a881e47869ebc60adc3dba03a42ab77fb5e..77a113722e1fcfb3d0be03a34dd8ec8c154c98fe 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::Example::Auth::Login;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 49fd9fbb783dc77236ff6072a693151334133835..8cda4a9e86d3a45d3172ac413cb23c5eacd1aa8a 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::Example::Auth::Verify;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index fac0046af2d76a5579fc21d27e25a742e6225f8b..311ea4a6a6ec53a072bc8823b8263405574a76f8 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::Example::Config;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 42a393c734217449606578df8a407a32e79801e3..3160c91a85934a2d6a104384aef0a736fa36735b 100644 (file)
@@ -18,8 +18,12 @@ implementation see L<Bugzilla::Migrate::Gnats>.
 =cut
 
 package Bugzilla::Extension::Example::Migrate::ImportBugs;
+
+use 5.14.0
 use strict;
-use base qw(Bugzilla::Migrate);
+use warnings;
+
+use parent qw(Bugzilla::Migrate);
 
 use Bugzilla::Constants;
 use Bugzilla::Install::Util qw(indicate_progress);
index ccc349c9c50d33371f7e4adecc6552cf884e91ef..88a9a5a8432f2dac56a5a85ff44f0dbeea337450 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::Example::Util;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d8a96b5f5d36b2f01483851830f1582e415b4d9f..4dc7dd2e52483156fa269a34b96db3763179c88e 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::Example::WebService;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 use parent qw(Bugzilla::WebService);
index e0eac5f8a829bdc6249d2a89e7eade39740a1f9c..a93f350ff5a0aaccce536e5971e923d70acd1b79 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 0a4223e198527acab111b4d5fdb6c2752de5ad00..d5fd661f6bb8f5992384af710835693e7290e337 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index dcc85992d694c43d92437da76b5eee360c3a100e..8b01f0bb1809fe789288ce924b2f4d411bb2cd40 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl::BitBucket;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 74951735bf90a3c79855c94d5cb0dca278f2556a..f50160e8999ed2a227a68e7827983d9551d1154e 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl::GetSatisfaction;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6f201d7b1f0e97d815993fd689f9c716ed96dfc5..0cca7262f1503a28a7252617472ac5fa3b74f441 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl::PHP;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 818d9af8fda5593433fbed6d5818ce1c6ea1bcc7..c282b1bda2de5c50cb68f24c70901a057a4aebd1 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl::Phabricator;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index acb90cf396accb512101d60ffc195a724d027eca..d25813e4b2cb7e6201ddf54069ff3ff4f6b0925d 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl::RT;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 57a07123945d2f1bc05d2a63a7c44417d33ffa33..5be0e25a0e93b8b1460ba4ac3ed7e386629e6224 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl::Redmine;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index af5ff068418429b2ebb7a12cde3bbca5ffed0244..d4691f7a0d269eb7a0feb4140167092ae3e89604 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl::ReviewBoard;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a4bf08492fed442bd9a71811d6c41f84a173a503..4587c57b92c956a760aba14b9c1ff09364c4febd 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl::Rietveld;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 5b35bbf7dc2ed1ac0b680dea1387f755de051d09..722d58bbc820e7a1798ef4132c5e28ee264a1944 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::MoreBugUrl::Savane;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 97c44933e2a714a9af49035adf0a05d42d97850d..0fd8f37c304741e1af91df3827340ad0d68c2338 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::Voting;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b125933ce5e19326ca7da359746aaa45f21f3d55..a0ed8f3fd541ea5086b4a0bc8852d09cc077317a 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::Voting;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index f22734777b5f7e70f2f32dcc930ed5cc1e2284a7..2f6f4a0be6ca11e06a82d2a709a6df2a51d63ea8 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 26b3ab32642a9604d2cd22b8968172a67a0d62b0..51d717d7c87e7cf8fe59c5781e1740fe7e0ec61e 100755 (executable)
 # Initialization
 ######################################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
-use lib qw(lib local/lib/perl5);
+
+use lib qw(. lib local/lib/perl5);
+
 use Getopt::Long qw(:config gnu_getopt);
 
 if (-f "MYMETA.json") {
index 463c6ef708b11c855c814b56bebc68d070fbdd97..f4f9be956632b218bd9d1e45e9357df5c17956c8 100755 (executable)
@@ -10,7 +10,7 @@
 # a new bug into bugzilla. Everything before the beginning <?xml line
 # is removed so you can pipe in email messages.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index fcfe24dd5c8fc01e0807f22d5e8ba4c87e60272d..dde4cc1fc38b4181fed2121ee1c693936dcdb1d2 100755 (executable)
--- a/index.cgi
+++ b/index.cgi
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 4ce7c27f7151a3d63fff9e3529b88de99247a3e5..25239772012775660eabcdd2b3ab7b53ed6cd15c 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index eab11af59edccb6bc40d929cde55bb9942c30132..7a91b4b107d27d4643561e91d653911e053ba318 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 0c2fad610a22c58f2d6ffd81617f32a07a92ed4d..25b39b41416a2094e970dc73108aa0d3890d4fb8 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index c61ad4629d7fdd9b7de67712aafd3d52a26fbfe3..873cf26b6aff8a2715495e86e4ae888973f27fce 100644 (file)
@@ -8,7 +8,7 @@
 
 package Bugzilla::ModPerl;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
@@ -115,7 +115,7 @@ foreach my $file (glob "$cgi_path/*.cgi") {
 
 package Bugzilla::ModPerl::ResponseHandler;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
@@ -152,7 +152,7 @@ sub handler : method {
 
 package Bugzilla::ModPerl::CleanupHandler;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e954cd94a1841beeae6251063b1a706171ec36b8..58679d57f6fea0530f0df7dc7eb911df31bec4ea 100755 (executable)
--- a/page.cgi
+++ b/page.cgi
@@ -13,7 +13,7 @@
 # a content-type, e.g. html.
 ###############################################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 5deba2cdbcec1baddd44babe3d3000edcb4d8345..17d0fe4ea431b30e77fc4800b7e1e6364d01e7a2 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 607520bb1e44ac1eb04f050e3184cbc39ad352c0..ea803d1f737f474f4adabf17cedbc5ec8da84fb2 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
@@ -309,9 +309,10 @@ if (defined $cgi->param('id')) {
 
 my %is_private;
 foreach my $field (grep(/^defined_isprivate/, $cgi->param())) {
-    $field =~ /(\d+)$/;
-    my $comment_id = $1;
-    $is_private{$comment_id} = $cgi->param("isprivate_$comment_id");
+    if ($field =~ /(\d+)$/a) {
+        my $comment_id = $1;
+        $is_private{$comment_id} = $cgi->param("isprivate_$comment_id");
+    }
 }
 $set_all_fields{comment_is_private} = \%is_private;
 
index 360b829ec3d882d8515053838d5f8b422b3d4c92..4fa52f5c89104d1ca9f01ca683a0317aab08dfcb 100755 (executable)
--- a/query.cgi
+++ b/query.cgi
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 061a7984088fbe101697b11a16384bc7cbad5eaf..cddaabbf440b8209d192ea9d911688b39e615ae1 100755 (executable)
--- a/quips.cgi
+++ b/quips.cgi
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6836795c525dfc3e344bca4986f242586e9ff06d..65c29a2c41b1cf5137fe12ecd8a797f7f2e5410f 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8de3288d94123f53f840bee4b58b8302763b53a5..2f637fca4cf560e8f2e8d3da5f6d2dfafd1eb406 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b8c08cbe3c63ac57d33d862e56335aa7786226ca..06890b38d98ee85844317061d4c9a5f95332233b 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3283722ce63ed044149edb4cc548e375a5d276fd..95e4fd1fd1eeefe4f98dd0ee70c8f8f93eedb3d7 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index c6adb0888703e61aee33f83dd490f9957e89175c..185b60ddc6697ef3e787f86a9df8415d41ade31d 100755 (executable)
--- a/rest.cgi
+++ b/rest.cgi
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 7f1db26bc6eb360eecd1e83ace90f18238fbd6de..bb131a65a38f6407e57b5f3177f0a1037de85abf 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index bf3680bd6414d2f803e134399124b8d0208e83a0..420cd393a098b352201ed98c2d858ffe5792a3d9 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 938e5720b4a506e1f893a3d49d7916b4b96c6121..0af1342014356f3c562ebc82e7a2d75ab8b5529e 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d2f7c99634b86b0242996d7ba70a2aaf9b373766..fa231ed512039c8756580f24bafd9b9f98da840f 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 997fab60d5f93364b73f65eff3e2c9ae891a5117..09cb91a8604ec07388618061a224edc202442d96 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
@@ -51,11 +51,11 @@ if ($single) {
     push @bugs, Bugzilla::Bug->check({ id => $id, cache => 1 });
     if (defined $cgi->param('mark')) {
         foreach my $range (split ',', $cgi->param('mark')) {
-            if ($range =~ /^(\d+)-(\d+)$/) {
+            if ($range =~ /^(\d+)-(\d+)$/a) {
                foreach my $i ($1..$2) {
                    $marks{$i} = 1;
                }
-            } elsif ($range =~ /^(\d+)$/) {
+            } elsif ($range =~ /^(\d+)$/a) {
                $marks{$1} = 1;
             }
         }
index c5bcd5bdc6affdbfee81611235723c938621983d..e692167de3a3da8e449e3faaba39901ffd1c3a8e 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 7f594632e7eaa74631114ea24d7339accadf00ec..cbfcd59cd6ed56d3b6f534a68342fd1f2dfdebe1 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b498349a090f9ddb6bf673928451f38c688a7054..4e04b1585486df32bd18e4e13e9b843e34dfd9c3 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 85d68b2dd789ce5f8f6c5665f9b2af6e9d71c403..193899f0d7fa91472cb1ceb9e8389170ab59ffc4 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e061b06c6b94ca77f2fe72057305141d0ecd71f9..d9ec1b28da9267c158a01dd8fc997755db1e10f2 100644 (file)
@@ -10,7 +10,7 @@
 #Bugzilla Test 1#
 ###Compilation###
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 7b2e74acce8938d57aae2ad864e7935f91d188b9..400483a5a01a5440a9c7c159ce8cb1772b6fcbfe 100644 (file)
@@ -10,7 +10,7 @@
 #Bugzilla Test 2#
 ####GoodPerl#####
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
@@ -88,16 +88,16 @@ foreach my $file (@testitems) {
         next;
     }
     while (my $file_line = <FILE>) {
-        $found_use_perl = 1 if $file_line =~ m/^\s*use 5.10.1/;
+        $found_use_perl = 1 if $file_line =~ m/^\s*use 5\.14\.0/;
         $found_use_strict = 1 if $file_line =~ m/^\s*use strict/;
         $found_use_warnings = 1 if $file_line =~ m/^\s*use warnings/;
         last if ($found_use_perl && $found_use_strict && $found_use_warnings);
     }
     close (FILE);
     if ($found_use_perl) {
-        ok(1,"$file requires Perl 5.10.1");
+        ok(1,"$file requires Perl 5.14.0");
     } else {
-        ok(0,"$file DOES NOT require Perl 5.10.1 --WARNING");
+        ok(0,"$file DOES NOT require Perl 5.14.0 --WARNING");
     }
 
     if ($found_use_strict) {
index 909f1a231d9285b59e701026965549118cd52161..e6c241cc06d42fa758eecc4fb845f745492f1627 100644 (file)
@@ -9,7 +9,7 @@
 #Bugzilla Test 4#
 ####Templates####
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index be13890bb930ee0ddf4885b02a2546c70e966d54..5529392f6f8f16cc3a6a5132daed5685eb47adc0 100644 (file)
@@ -9,7 +9,7 @@
 #Bugzilla Test 5#
 #####no_tabs#####
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 2f6dbbf76bcdd87e206f1cbdd714c5639cbd1ff8..e675398f12b8b89d768d3f16fa3f10a0b4499e69 100644 (file)
@@ -10,7 +10,7 @@
 #Bugzilla Test 6#
 ####Spelling#####
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b8e9505d8ced0dceae7034de4c709c7d57563673..8f54e828e5c2778344b29ad9e12d5e8f60d36699 100644 (file)
@@ -9,7 +9,7 @@
 #Bugzilla Test 7#
 #####Util.pm#####
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 65fecfb1f678544bd56b1a2f729fcd6b2a5fa62e..cd0af0735c2d693eff365289d7580e6edaa6085d 100644 (file)
@@ -15,7 +15,7 @@
 
 # Sample exploit code: '>"><script>alert('Oh dear...')</script>
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 740cbf6aa801b26b841c36ace46226910b9072ff..af83d1eac60ec6238ab4ee6b073d22c33cc016bb 100644 (file)
@@ -15,7 +15,7 @@
 # "[% terms.bug %]". This test makes sure the relevant words aren't used
 # bare.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 777d42ed1f8eed224040bb6555109d92450cec0b..4b7ca223d337296d87b8707ac04fbbe0622d9318 100644 (file)
@@ -10,7 +10,7 @@
 #Bugzilla Test 10#
 ## dependencies ##
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 380b866c9fc630e51d82a9bcfc17ab74706e1ae7..8a833967283ebafda38df13415c6f6132025f694 100644 (file)
@@ -10,7 +10,7 @@
 #Bugzilla Test 11#
 ##POD validation##
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index cb00eaf785d84f146034f35bfc9e9f610fa38801..9d709c6aba0ebac1885a9cc1a62af8176dafe2fb 100644 (file)
@@ -11,7 +11,7 @@
 #Bugzilla Test 12#
 ######Errors######
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8313444d7abc4826829ba5d7e551151061a0a187..9770593aa2a29839447a02b09430a199ed28d624 100644 (file)
@@ -12,7 +12,7 @@
 # Check the Bugzilla database schema to ensure no field names conflict
 # with SQL reserved words.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e38e64210a94187f8ca9e633099cdab9f083a627..fb3bc279c46803e813e732fabe433f8fd306e965 100644 (file)
@@ -7,9 +7,12 @@
 
 # Enforce high standards against code that will be installed
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
+
+use lib qw(. lib local/lib/perl5 t);
+
 use Test::More;
 use File::Spec::Functions ':ALL';
 
index e06cda7386a1263b4cac5c992a739093fe1bce08..e4e8f1ff81c391ae63116c310f0698f2bcf0c8dc 100644 (file)
@@ -8,7 +8,7 @@
 
 package Support::Files;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e73763f8f01183b073ee6933056be76161ffd339..c3cf5a21b19b3c6413bf765bcc6143908d005b61 100644 (file)
@@ -7,7 +7,7 @@
 
 package Support::Systemexec;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d17c7334b74210a4b8f5bd893cd94526ff3ad022..2f53592a81a9c961ff91390a21cb943bda14079b 100644 (file)
@@ -7,7 +7,7 @@
 
 package Support::Templates;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 68ed260c1ff994ea040d663da982b70f86d48687..599f9ea598f84ab7bffebc2dd354dcdbba1090eb 100644 (file)
@@ -14,7 +14,7 @@
 
 package Bugzilla::Extension::[% name %];
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 823440421e5ebff3df64ff83a281f64c9a3f934c..985d28ccc0e0ac7004ec52098bb61c54b9d1e73b 100644 (file)
@@ -14,7 +14,7 @@
 
 package Bugzilla::Extension::[% name %];
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3baab57fd0781a1f57cead4fc59c9e944a3bf5f0..6e14428a667372dd2e4dfa9acc6ba1f5ed6dae2a 100644 (file)
@@ -14,7 +14,7 @@
 
 package Bugzilla::Extension::[% name %]::Util;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index dfb1ff228c7e347f087af8e8951118285681ff9f..c70c90779140b126e0e6e57c27bb9afd0531ebe1 100755 (executable)
@@ -10,7 +10,7 @@
 # are being run instead of shown. This script does not rely on database access
 # or correct params.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a3d54f971e1acfd1149e3ce7de857317da8600bc..a5e36a825255b2ffcac2dbea09ce3a3fd75dfad2 100755 (executable)
@@ -10,7 +10,7 @@
 # as its only argument.  It attempts to troubleshoot as many installation
 # issues as possible.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 67f5e9e3d82e3a6fd778c00b78c548d1da1a4dba..babcc028ba5f92ae43ba22636d7bf80c2f062ab9 100755 (executable)
--- a/token.cgi
+++ b/token.cgi
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index bd5cfaf01735b3f724340e930b97c8f1583adc46..d7366a8783524cf97d2f8ad91e170ae9c01b3e2e 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
@@ -332,7 +332,7 @@ sub SaveEmail {
 
     # Remove any bug ids the user no longer wants to ignore
     foreach my $key (grep(/^remove_ignored_bug_/, $cgi->param)) {
-        my ($bug_id) = $key =~ /(\d+)$/;
+        my ($bug_id) = $key =~ /(\d+)$/a;
         delete $ignored_bugs{$bug_id};
     }
 
index c778d0d61c942fc38e6ecf65077dc7be75d98533..d4c5c08e3f5c08372a5286e4da61394c44dd080e 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 5a00154f8873f0aa9f191446783236b8a8b00061..87322c8e9213d1943467f7ad961d4fbba567f9dc 100755 (executable)
--- a/votes.cgi
+++ b/votes.cgi
@@ -9,7 +9,7 @@
 # This script remains as a backwards-compatibility URL for before
 # the time that Voting was an extension.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a18a5b5d8ee1d929eae84b1702ed51783de618e9..a1c110c7ca4e4bd0597718cdf1dcffd2b484e0f3 100755 (executable)
--- a/whine.pl
+++ b/whine.pl
@@ -10,7 +10,7 @@
 # Script Initialization
 ################################################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 318ecda941c75144cee21d7d24f0268a45ee0309..660cc617ff9739988723eac1f08eff3b3be60e21 100755 (executable)
@@ -14,7 +14,7 @@
 # param. (We have NEW and REOPENED in there to keep compatibility with old
 # Bugzillas.)
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 75ff8a1a91d61184db3e1590e8242525c4f88253..b4a035cda905bfbd433c24cc7cf66d43bf1a8d9c 100755 (executable)
@@ -6,7 +6,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index ab186698dcfe19d82852a8d9464f282132b1b73f..ce065998b8cfad3e791baefcab4193be57c123ee 100755 (executable)
@@ -9,7 +9,7 @@
 
 # -*- Mode: perl; indent-tabs-mode: nil -*-
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b4f6bc9a2db64258b34f6f666c76c78b3cb93944..c234e12c00df14c75ff4f2d8f3f47745dc0d4905 100644 (file)
@@ -7,7 +7,7 @@
 
 package Bugzilla::Extension::QA;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 5befe3e36e732bd781ca92db84094dce1ce42d3d..9f60ea95b23f3a644c779288ac1af99b7fcf0663 100644 (file)
@@ -7,11 +7,11 @@
 
 package Bugzilla::Extension::QA;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
-use base qw(Bugzilla::Extension);
+use parent qw(Bugzilla::Extension);
 
 use Bugzilla::Extension::QA::Util;
 use Bugzilla::Constants;
index e299adcc9cb7fccf7231df42987bd7edba9678ee..48ae944ef6d2772392c8f8859b91723a10b07628 100644 (file)
@@ -7,11 +7,11 @@
 
 package Bugzilla::Extension::QA::Util;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
-use base qw(Exporter);
+use parent qw(Exporter);
 
 our @EXPORT = qw(
     parse_output
index 4de985668c4d74d1abc9110fe5cc08102338a57c..1ceeb955bad7453eba40c741210303cb74dab2ad 100644 (file)
@@ -7,7 +7,7 @@
 
 package QA::REST;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 63a7d95033f248921fda0caaf502ad4622aa96d5..e2f1f759777113fce3d09cb5957da8e6baae6fc8 100644 (file)
@@ -9,7 +9,7 @@
 
 package QA::RPC;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 7a085e02625ba76e7fab2893798667e59bfd2330..ce312286996697570ced4484c15ce60e7fd8320a 100644 (file)
@@ -9,7 +9,7 @@
 
 package QA::RPC::JSONRPC;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index cb227fa9c4c8831cc6cf2abcbd772c2ce43cd825..ced9f97eebab1c6e906bef025bf9900bf0cb467d 100644 (file)
@@ -9,7 +9,7 @@
 
 package QA::RPC::XMLRPC;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index fe5f2d067c709e3a8e637c38fda25c3d3e873d5d..d0a32cfc6cd4957db15bfba1f9b8e70d4e2711ac 100644 (file)
@@ -9,7 +9,7 @@
 
 package QA::Tests;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e122e41dbf295c28db2ca1a6b5ab6ab98ab3fbf0..90a6902e58e270cd750931b153c94d31d6d96dd8 100644 (file)
@@ -9,7 +9,7 @@
 
 package QA::Util;
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a176d1cf133e4890adc032ea32eb9c0e404b9375..b7fd3966403fc3b659a1b63cf5804b1e5e6fd890 100644 (file)
@@ -9,7 +9,7 @@
 # Tests for REST calls in Bugzilla.pm #
 #######################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d006de984ddecc585784ad18979267afa1388bed..bcf0d7edb50876748c8191c343ce57b57a92b622 100644 (file)
@@ -9,7 +9,7 @@
 # Tests for REST calls in Classification.pm #
 #############################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 46e7e6cb3ecefee7d38a262066764eb7aa501d69..5f1983ba963ad55579ea38ab8b4c1e067fd7b112 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 1089d2003908f7b68bf8350568097c96580b9db9..ef5bc6db78057af310d9ae9442b7ef0ddddca08e 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 4d5d012f042905176694cd751130b31c29614be3..1653d2e10d4b4bdfbc1a4cc4aeb63b07e7f8a825 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b999273216e16060270c773ca9eb858ea5f57784..b2ff6e408cda82f5315e204730df46642470b432 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 7c71273a6dd359a90a5af1ab0abd60ade41f4cc2..2e7e8782f1a52377da0e33d5e982a848e61902a7 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6c0c8fa5d9fd232f70abcdcb4b13b9b1b34eb877..e64eb6165ca3de68addcd16596039ddd47d2994d 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d0ffb9db8409926237cbdd7e1cc6e9d9ebfa52ed..addbd17c88fba37aae4c4b9d9d018abef64d788e 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 133e17e0761107408c8fb389e8a48169c166b365..315fff07a0f9d7b467e292e89fd19eea716c88cb 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 1f98517292cc38828d506289cd6448a432af6db0..efc5a6a259fac578f7482321207e471eefb8d43d 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index c1e60b05a902010bcf747c68b9dd0f6f7d5591d5..961f26096a1efa2775d5aa02aaad04178c29dd2b 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 404d30f1063e03d7c7ef7f4fcd9a0e42510f86f4..86a55e56d23f2d64cc43da652ab1f90f8a947412 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index dd4a0ffa8ca0d4ae906f7fdc0d7426414aad9415..c0b5ac7c0b606bb257308450b8f0b356b9923d5c 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 9b921612c167032dc4c5499fe0f643b3317b906c..06290336e8513b7a6f6ce36a5615f8dd574d1790 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b755cafc86564de1be445a6d361a47b1eb88a322..011dea25e891f7fc282f214b59144045a841d5b8 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 16ecf90e73ee416ce0969a0657c5317b52c4d2a4..74ba14f167adf5418019a3a1db791090a2d96f3a 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b41d9a2d261476a90dc00e175e34c23335cabbc7..6e4586981c0008c3662833dbb524dcd9c71e303a 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 35991fbd22fc1fc729fb2c9a4ad8786d7d80dc9e..6a9d7a0153401c251a0cb2b3b6c44bd39cb6a860 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e29ef8bec15e2a13f708afbd08a3b5919b93c1de..0e75e6b9dc08624d64ad62fa323a20ccf0b6133d 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 4dacd26b3dc35678880e709a019f6ad42db0a601..51f09c4bc33925b67cbe18ebd6c24e6a9c3e3f89 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index c548a71828970e6e1c5e0ece5459e16a2beff05b..e036cfd147db917ad4170b06c0eae83f46c26367 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d661121b5a87677cb9d207c48009d72f6e3c4866..2e69f014ff5fb1570f2da493890ba1547f601d59 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 93b039d41b8401cb4c89fa150dbd19b4e226685c..918e458e016b6b9374cd831143faaf325a203ebf 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index a18b7fd490e6628c3606597d859d35ac31c52cdd..85f83a236cc79a78e55472af1cd50e29d605e289 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index c8fa9d770840ed6d7ee2e2d1b810d5077774748d..eefae1629ddae69c7d465b0afc036abe0204161c 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index b89ea114ebe5f71760a6d699da519f2f2d066442..576d87a95df7c1531d4130b7d900293ce0f3b2a9 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index f9443fa988fd49e004563f9dca41516912080ec3..909c2f34f22af110a99d9e6caa63520940217e08 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8945546653707b90b3a229f334818f6ecef55301..9634fddc0d4e66a9540187ffd834962cb8bd803a 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 8751cd614ff878511348501682488050f907d5ac..5cd2f1a9371b4b03e7eef7b3af962fb73ed1716b 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 3ddda7b86012cc1aa84280e2af9b350de6bf394c..c7c0e6b5d9e2e4e35157d5055387c2f59a0a07be 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index ecd72b20764466c67790ea273ee525d3beb2119d..08ef87c74bba9ad0a67a5798b33048a7a9ff43db 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 5a1b7c98b1b8bdfc0d21aad743eed01434d16185..31a516ac1e06d90c70d2d3795855baa63909752f 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6c5cf637f736fa31afb2901a4d6e4d0b5d1279ee..a69a8cc7be2a63fd6a686c8534a058a30fbb6d75 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index f60c952cacb87eff2f4e1dcaa623f93831426ea3..f8a16ca0b538e0d31c3ed37ff4f070f7c54049e7 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index aa393d47bb2217c2f5ade46a907b5b21374c8719..0e06e95b79073bb3d252ad2fb7daff87310034fc 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 90c2dc6083b162c6113d3e44ae23da8146d36394..28f27a850f7ef15057867f7709e853e4a0dd4bdc 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 0d7d87a5cc000e35ceed5839c2fac7c1130a98f6..5dce12c0e38b80725ebafd7ddf767ebdef93be19 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index f48792839786d62a0f7f5bf350e2b55a786a9176..e8ca54205a0085b08a48cd5a26621047ad88f8e8 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e5a7c853d39c9726716307c8c57cacc0f3c90701..7a67e93edc97a049b8aaeb669053e013364f88ce 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index f08e42c6c87fd671a85f31659f865d44836b52a2..7a5aeeaa2213eb6a19aeba3bf7500d2559c4903b 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6f234b37a2c8149cd770dd893a40766ced5fdcc7..70e5f49801596d2f3eb58b1447fc4f630ee56895 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to Bug.add_comment() #
 #############################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d5283685de5fe45ab51988801b0306542ca264f9..50e36663595033001293a77043eacf94234aadc2 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index d66e445cfbfa23cb4c6e1f8447b2a0d959ed51f5..6e573e56a10bf995c3780b5235172d588e439ed2 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to Bug.comments() #
 ##########################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 6d7c8e14a709cba0f1cb683f3397968815a07dc2..18751b50fb6062d73807570954b2b14cad599109 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to Bug.create() #
 ########################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 097a607f59c39e8b74fae5e164f552daba385763..89374df6dec4e05b66320e556070ecea1c99df60 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e05fe2cb29b82e4a69a6ebb6b925c991380791d5..25576d00a49ba8177c0b51916f812fe55cf28330 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to Bug.get()       #
 ###########################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 02ec1c11aa3b628f50c28a4bf96a641a45e5d989..de1e8339c710a9323018638dbbe9adf3844e8a2d 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to Bug.history() #
 #########################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 2f775e528359dc4d3c419bf685a4ffdfd6f1500f..fa7f3d01c67b20e831c64d86be89c9cbdc2153b5 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to Bug.legal_values() #
 ##############################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 93a517e24087e31c912a80f35d477da96a4b89b0..4e346390b49a5fc7229bde95ab35b86968f5dbbd 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to Bug.search() #
 ########################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index dfc2f89e1502268bd1ea2fd4f98ff72d726a2ae5..10736ea1234819cd7b75bcc73d7d315cf7da3c1c 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 79c3b5ea8dfd3905857e35fff813a15d4ad17ff9..78b6e7bc838328e7f54ad8a0b42cd16185fbbd00 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to Bug.update_see_also() #
 #################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 2ddb13092e72dd81d37215ab211e0629bfd2b825..53c994c2f1cd8bc053fa8224d19614a4f8b6a05d 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call functions in Bugzilla.pm  #
 ##################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index e46546a31c9ce8ad6cd494ac67f0b96dc724ce6a..dd6a174ef5d7ea621bf576b6f5ed3ca464aedd27 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to Group.create() #
 ##########################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 75a0c0cfb5ce10dc3d015d52e261291466c01707..210f92434f2f01dc253b33f592bf01b31ec57a16 100644 (file)
@@ -5,7 +5,7 @@
 # This Source Code Form is "Incompatible With Secondary Licenses", as
 # defined by the Mozilla Public License, v. 2.0.
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 0ca117c310a6c7debd198a2e326a824f7724bcbf..b74e9b474142a42b2e323e95845f45d8b667074a 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to Product.create() #
 ############################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 5cc6022d5c8211c92853c27c45151e4b451dd189..101c109ef6f2240a468c99369a25d290581ec2c3 100644 (file)
@@ -13,7 +13,7 @@
 # Product.get()                        #
 ########################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 38b55e69a73d4f707b4624c88dbec2a57ec0037b..3868268094b4d87a4309ed371fff1460ae7d9055 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to User.Create() #
 #########################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 02cf00fe784c520d6541fb13cabb31d7c2288eb5..01eedf80465560cc3080f0d4debf4235be4fd077 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to User.get() #
 ######################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index fd5f8ef6bbc9dd546f947c71d0eed22607644670..2fc659a65fddfe70f332b9d22f593b258eab1488 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to User.login() and User.logout() #
 ##########################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;
 
index 785932167a83ccb5fbb15c32e0d88ebdcec86411..ca2c8d1f30f92dabfda34188fb2c56e3827a98b2 100644 (file)
@@ -9,7 +9,7 @@
 # Test for xmlrpc call to User.offer_account_by_email() #
 #########################################################
 
-use 5.10.1;
+use 5.14.0;
 use strict;
 use warnings;