Movable Type: устранение ошибок - Справочник Манимейкера или Народные ссылки |



Movable Type: устранение ошибок

Movable Type perl update upgradeОбновил на днях практически весь сервер, также сдури решил обновить и perl. Стоял и работал у меня спокойно до 2012 года perl-5.8.8. И поставил я  perl-5.15.6. И начались у меня проблемы с Movable Type. Для начала пришлось по новой устанавливать все модули, необходимые для работы MT и сервера. Особо много времени потратил Image::Magick 6.74 - не хотел вставать, зараза: пришлось ручками в Makefile.PL пути для библиотек править.

А далее еще интереснее: часть плагинов начала валиться с различными ошибками. И решил я себе памятку создать, дабы не забыть что и где правил...

Часть ошибок типа

defined(%hash) is deprecated at
/home/admin/domains/домен.ru/public_html/cgi-bin/mt/extlib/Locale/Maketext.pm line
404.

решилась обновлением модулей в /cgi-bin/mt/extlib/ копированием свежих из perl-5.15.6 :

  • I18N
  • Locale

 При выполнении заданий по cron вылезли следующие предупреждения:

Use of qw(...) as parentheses is deprecated at lib/MT/Template/ContextHandlers.pm line 6541.
Use of qw(...) as parentheses is deprecated at lib/MT/Template/ContextHandlers.pm line 8202.
Use of qw(...) as parentheses is deprecated at lib/MT/Template/ContextHandlers.pm line 10517.
Use of qw(...) as parentheses is deprecated at lib/MT/Template/ContextHandlers.pm line 16308.
Use of qw(...) as parentheses is deprecated at lib/MT/Template/ContextHandlers.pm

linePublishing /home/admin/domains/site.ru/public_html/blog.html, priority 8

Use of uninitialized value in lc at lib/MT/Template/ContextHandlers.pm line 3846.
Use of uninitialized value in lc at lib/MT/Template/ContextHandlers.pm line 10662.
Use of uninitialized value $param{"Type"} in lc at lib/MT/Asset/Image.pm line 248.
Use of uninitialized value $param{"Type"} in lc at lib/MT/Asset/Image.pm line 248.
Use of uninitialized value $param{"Type"} in lc at lib/MT/Asset/Image.pm line 248.
Use of uninitialized value $param{"Type"} in lc at lib/MT/Asset/Image.pm line 248.
Use of uninitialized value $param{"Type"} in lc at lib/MT/Asset/Image.pm line 248.
Use of uninitialized value $param{"Type"} in lc at lib/MT/Asset/Image.pm line 248.
Use of uninitialized value $param{"Type"} in lc at lib/MT/Asset/Image.pm line 248.
Use of uninitialized value $param{"Type"} in lc at lib/MT/Asset/Image.pm line 248.
Use of uninitialized value $param{"Type"} in lc at lib/MT/Asset/Image.pm line 248.

По первым 4-м предупреждениям я так понял кто-то умный решил что нужно использовать синтаксис  `(qw())` вместо `qw()`п начиная с версии perl 5.14.

Поэтому тут все просто, правим все 4 строки файла lib/MT/Template/ContextHandlers.pm на предмет корректного синтаксиса:

Строка 6541

for my $f (qw( min_score max_score min_rate max_rate min_count max_count scored_by )) {

Строка 8202

for my $f (qw( min_score max_score min_rate max_rate min_count max_count scored_by )) {

Строка 10517

for my $f (qw( min_score max_score min_rate max_rate min_count max_count scored_by )) {

Строка 16308

for my $f (qw( min_score max_score min_rate max_rate min_count max_count scored_by )) {

По следующим трем предупреждениям меняем в файле lib/MT/Template/ContextHandlers.pm :

строка 10662

#          $args{'sort'} = lc $args->{sort_by} || 'created_on';
            $args{'sort'} = lc($args->{sort_by} || '') || 'created_on';

строка 3846

#          my $column = lc( $args->{sort_by} ) || 'name';
            my $column = lc( $args->{sort_by} || '') || 'name';

Меняем в файле lib/MT/Asset/Image.pm :

строка 248

#               my $ext  = lc($param{Type}) || $asset->file_ext || '';
                 my $ext  = lc($param{Type} || '') || $asset->file_ext || '';

Все рекомендации по устранению данных ошибок и предупреждений для Movable Type при переходе на новые версии perl носят сугубо рекомендательный характер, автор (то бишь я, Безработный) ответственности не несет и гарантий не дает ;)

Мне данные способы помогли, но не факт что помогут и Вам!

Если данная статья показалась Вам полезной - плюсуйте её в Google, размещайте ссылки в Твиттере, копируйте себе на сайты и блоги, но ОБЯЗАТЕЛЬНО с указанием прямой индексируемой dofollow ссылки на данную статью: 

 //movable-type/movable-type-ustranenie-oshibok.html

Народная ссылка для регистрации:

Movable Type: устранение ошибок

Категории:

Поделитесь этой записью или добавьте в закладки

   






Комментировать





Другие материалы и статьи
» Рекламная сеть Media Rich: Биржа трафика Media Rich специализируется на рекламных материалах форматов «ричмедиа» и «адспот». ...
» Аналитический обзор рынка FOREX за четверг, 21 января 2010 года: Если среда на текущей неделе была самоочевидным днём доллара, то никто не помешает нам назвать этот чет...
» Покупаем мелкие монеты за 5 тысяч рублей: Это интересно:Сегодня СКБ-банк объявил о том, что начинает скупать у населения монеты достоинством...
» Качественный контент от биржи ContentMonster - залог процветания вашего сайта: Сегодня для всех подписчиков и читателей моего блога в продолжение темы биржи контента Content Monster&...
» Тизерная сеть Tizy от Web Traffic Kings: Ассоциация WTK объявила об официальном запуске тизерной сети. Довольно долгая подготовка ...

Категории


Полезные заметки


  •