Как я могу восстановить отредактированный модуль perl6, который я скачал?
Я установил Time::Duration, и он не прошел большинство тестов. Я хочу иметь возможность перестроить модуль - с моими изменениями - из локально сохраненного модуля.
Я отредактировал файл, который содержит модуль (который соответствует Duration.pm6):
~/.perl6/sources/D00C101A0157E3EAC494310C9961F299240423E7
А затем попробуйте собрать его через файл json:
zef --debug build ~/.perl6/dist/83839D8D315EEDEDFEAF211EE42E8D936ACE29CB
Это возвращает:
===> # SKIP: No need to build Time::Duration:ver<2.00>
!!!> Build failure: ~/.perl6/dist/83839D8D315EEDEDFEAF211EE42E8D936ACE29CB at ~/.perl6/dist
Я надеялся, что это перестроит модуль с изменениями, внесенными в исходный код.
Я сделал это неправильно, или я поступаю по этому поводу совершенно неправильно?
2 ответа
Как уже было отмечено, вам не следует изменять установленные файлы. Тем не менее, рабочий процесс для тестирования изменений некоторых модулей довольно прост.
Первый:
# Fetch and extract the distribution, then change into its directory.
# If the distribution is still in zef's local file cache then it will
# skip the fetch and extraction steps.
zef look Time::Duration
Затем:
На данный момент вы можете редактировать любые файлы, которые вы хотите.
В заключение:
# test your changes without reinstalling (assumes all dependencies are installed)
zef test .
# Reinstall the modified version of Time::Duration using one of the following:
zef install . --force-install
zef uninstall Time::Duration && zef install .
Вам следует git clone
код или скачайте zip-пакет, отредактируйте нужный код, затем zef install .
если в текущем каталоге есть файл META6.json.