Что такое модуль "двойной жизни"? - программирование

Что такое модуль "двойной жизни"?

Что такое модуль "двойной жизни"? Он упоминается в perldelta для Perl 5.14.

4b9b3361

Ответ 1

Двойные модули жизни - это модули, которые существуют в двух несвязанных исходных репозиториях, которые обычно имеют значение как в ядре Perl (те библиотеки, которые распространяются вместе с perl), так и в CPAN.

Версия CPAN может обновляться чаще, чем основная версия. Возможно, базовая версия была протестирована на других платформах.

В контексте ссылки, которую вы дали, "добавление в качестве модуля двойной жизни" означает разветвление дистрибутива CPAN, возможно внесение некоторых изменений (например, нормализация документации или лицензирование) и включение этой вилки в основной репозиторий perl. Это означает, что этот модуль будет установлен по умолчанию, когда кто-либо установит эту версию perl.

Ответ 2

Двухжильный модуль - это тот, который найден как в распределении perl, так и в собственном дистрибутиве (на CPAN). Например, Data:: Dumper является частью perl distribution и Data -распространение. С другой стороны, IPC:: Open3 доступен только как часть дистрибутива perl, поэтому он не является двухжильным.

Преимущество двухжильного модуля (эти и эти) заключается в том, что его можно обновить без обновления Perl.

Если вы хотите обновить базовый модуль, который не является двухжильным (эти), вам необходимо обновить все Perl.