Игорь Пашев - Post a comment

Dec. 20th, 2008

[info]igorpashev

12:10 am - cpan2tgz не работает с перлом 5.10.0

cpan2tgz не захотел работать в Слаке 12.2,
в которой Перл 5.10.0. И вот из-за чего: новый модуть CPAN возвращает теперь не просто список зависимостей,
в два хэша: зависимости для сборки (build_requires) и зависимости для запуска (requires).
Это лечится примерно так:

# diff -u /usr/bin/cpan2tgz ../../PERL/cpan2tgz
--- /usr/bin/cpan2tgz   2008-12-20 00:09:05.000000000 +0300
+++ ../../PERL/cpan2tgz 2008-12-20 00:07:26.000000000 +0300
@@ -163,7 +163,7 @@
     # only get the deps that are not installed
     @deps = grep { defined && m/\w+/; }
       map { defined $PACKAGE_CACHE_LIST{$_} ? undef : $_ }
-      keys %{$pack->prereq_pm()};
+      $pack->prereq_pm()->{'requires'};

   } elsif (my $deps = $pack->prereq_pm()) {

@@ -171,7 +171,7 @@
     @deps = grep { $_ && m/\w+/; }
       map { defined $PACKAGE_CACHE_LIST{$_} ? undef : $_ }
       map { eval "no warnings 'all'; use $_;"; if ($@) { $_ } }
-      keys %{$deps};
+      $deps->{'requires'};

   }


В будущем планирую ещё кое-какие изменения в cpan2tgz.

Read Comments

Reply:

From:
(will be screened)
Identity URL: 
имя пользователя:    
Вы должны предварительно войти в LiveJournal.com
 
E-mail для ответов: 
Вы сможете оставлять комментарии, даже если не введете e-mail.
Но вы не сможете получать уведомления об ответах на ваши комментарии!
Внимание: на указанный адрес будет выслано подтверждение.
Username:
Password:
Subject:
No HTML allowed in subject
Message: