Item13943: MultiLingualPlugin uses alias_code routine which is unavailable in newer versions of Locale::Country
Priority: Urgent
Current State: Closed
Released In: n/a
Target Release:
Accessing
Main after installation/restart triggers the following error with
Locale::Country v3.37:
Undefined subroutine &Locale::Country::alias_code called at /var/www/apps/foswiki/lib/Foswiki/Plugins/MultiLingualPlugin/Core.pm line 41.
at /var/www/apps/foswiki/lib/Foswiki/Plugins/MultiLingualPlugin/Core.pm line 41.
Foswiki::Plugins::MultiLingualPlugin::Core::new("Foswiki::Plugins::MultiLingualPlugin::Core") called at /var/www/apps/foswiki/lib/Foswiki/Plugins/MultiLingualPlugin.pm line 76
Foswiki::Plugins::MultiLingualPlugin::getCore() called at /var/www/apps/foswiki/lib/Foswiki/Plugins/MultiLingualPlugin.pm line 32
Foswiki::Plugins::MultiLingualPlugin::__ANON__(Foswiki=HASH(0x7f983c008628), Foswiki::Attrs=HASH(0x7f983dbf37f8), "LanguageSelector", "System", Foswiki::Meta=HASH(0x7f983dbed980)) called at /var/www/apps/foswiki/lib/Foswiki/Func.pm line 660
Foswiki::Func::__ANON__(Foswiki=HASH(0x7f983c008628), Foswiki::Attrs=HASH(0x7f983dbf37f8), Foswiki::Meta=HASH(0x7f983dbed980)) called at /var/www/apps/foswiki/lib/Foswiki.pm line 3516
Foswiki::_expandMacroOnTopicRendering(Foswiki=HASH(0x7f983c008628), "LANGUAGES", "\x{a} format=\"<option \$marker value=\\\"\$langtag\\\">\$langnam"..., Foswiki::Meta=HASH(0x7f983dbed980)) called at /var/www/apps/foswiki/lib/Foswiki.pm line 3378
Foswiki::_processMacros(Foswiki=HASH(0x7f983c008628), "<form name=\"changeLanguage\"\\\x{a} action=\"%SCRIPTURLPATH{\"oops"..., CODE(0x555ef8dc0538), Foswiki::Meta=HASH(0x7f983dbed980), 16) called at /var/www/apps/foswiki/lib/Foswiki.pm line 3136
Foswiki::innerExpandMacros(Foswiki=HASH(0x7f983c008628), SCALAR(0x7f983dbe87c8), Foswiki::Meta=HASH(0x7f983dbed980)) called at /var/www/apps/foswiki/lib/Foswiki/Macros/INCLUDE.pm line 307
Foswiki::__ANON__() called at /var/www/.plenv/versions/5.22.1-ithreads-shrplib/lib/perl5/site_perl/5.22.1/Error.pm line 421
eval {...} called at /var/www/.plenv/versions/5.22.1-ithreads-shrplib/lib/perl5/site_perl/5.22.1/Error.pm line 413
Error::subs::try(CODE(0x7f983dbedd40), HASH(0x7f983dbee268)) called at /var/www/apps/foswiki/lib/Foswiki/Macros/INCLUDE.pm line 363
Foswiki::_includeTopic(Foswiki=HASH(0x7f983c008628), Foswiki::Meta=HASH(0x7f983dbe2788), HASH(0x7f983dbe8438), Foswiki::Attrs=HASH(0x7f983dbe8c30)) called at /var/www/apps/foswiki/lib/Foswiki/Macros/INCLUDE.pm line 422
Foswiki::INCLUDE(Foswiki=HASH(0x7f983c008628), Foswiki::Attrs=HASH(0x7f983dbe8c30), Foswiki::Meta=HASH(0x7f983dbe2788)) called at /var/www/apps/foswiki/lib/Foswiki.pm line 3516
Foswiki::_expandMacroOnTopicRendering(Foswiki=HASH(0x7f983c008628), "INCLUDE", "\"LanguageSelector\" section=\"selector\"", Foswiki::Meta=HASH(0x7f983dbe2788)) called at /var/www/apps/foswiki/lib/Foswiki.pm line 3378
Foswiki::_processMacros(Foswiki=HASH(0x7f983c008628), "%INCLUDE{\"LanguageSelector\" section=\"selector\"}%", CODE(0x555ef8dc0538), Foswiki::Meta=HASH(0x7f983dbe2788), 15) called at /var/www/apps/foswiki/lib/Foswiki.pm line 3396
[...]
--
MarkusUeberall - 04 Feb 2016
Hotfix:
diff --git a/lib/Foswiki/Plugins/MultiLingualPlugin/Core.pm b/lib/Foswiki/Plugins/MultiLingualPlugin/Core.pm
index 915150a..efc7cab 100644
--- a/lib/Foswiki/Plugins/MultiLingualPlugin/Core.pm
+++ b/lib/Foswiki/Plugins/MultiLingualPlugin/Core.pm
@@ -38,7 +38,7 @@ sub new {
if (defined $Foswiki::cfg{MultiLingualPlugin}{Aliases} && !$doneAliases) {
foreach my $key (keys %{$Foswiki::cfg{MultiLingualPlugin}{Aliases}}) {
my $val = $Foswiki::cfg{MultiLingualPlugin}{Aliases}{$key};
- Locale::Country::alias_code($key => $val, LOCALE_CODE_ALPHA_2);
+ Locale::Country::add_country_code_alias($val, $key, LOCALE_CODE_ALPHA_2);
}
$doneAliases = 1;
}
--
Main.MichaelDaum - 16 Feb 2016 - 15:54