Build 我如何重建我所编辑的perl6模块';你下载了什么?

Build 我如何重建我所编辑的perl6模块';你下载了什么?,build,module,raku,zef,Build,Module,Raku,Zef,我已经安装了Time::Duration,它的大部分测试都失败了。我希望能够通过编辑从本地存储的模块重建模块 我编辑了包含模块的文件(对应于Duration.pm6): 然后尝试通过其json文件构建: zef --debug build ~/.perl6/dist/83839D8D315EEDEDFEAF211EE42E8D936ACE29CB 这将返回: ===> # SKIP: No need to build Time::Duration:ver<2.00> !!!&

我已经安装了Time::Duration,它的大部分测试都失败了。我希望能够通过编辑从本地存储的模块重建模块

我编辑了包含模块的文件(对应于Duration.pm6):

然后尝试通过其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
=>#跳过:无需构建时间::持续时间:版本
!!!> 构建失败:~/.perl6/dist/83839D8D315EEDEDFEAF211EE42E8D936ACE29CB位于~/.perl6/dist
我希望这能用我对源代码所做的更改重建模块


我做错了吗,还是我完全错了?

你应该
git克隆代码或下载zip包,编辑你想要的代码,然后
zef安装。
如果当前目录有一个META6.json文件。

如前所述,你不应该修改安装的文件。但是,测试某些模块更改的工作流非常简单

第一:

# 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 .

好的,然后使用zef——强制安装。在完成一次更改后更新更改?是。$*REPO中的文件被认为是不可变的,因此您对源所做的任何更改都不会被检测到。另请参阅,对于给定的版本/auth/api,假定已安装的模块是不可变的。然后将更改提交到主REPO?;)@Scimon不适合此工作流,因为获取的不一定是git回购。此外,git存储库的提取阶段会将临时目录中的
git签出
放入zef存储缓存,这不会设置例如
.git/
目录(我们也不希望zef存储缓存中有
.git/
文件夹)
zef browse zef bugtracker
zef browse zef source
之类的帮助,但仅当目标发行版填写了适当的元字段时(
Time::Duration
没有)。请注意,您不需要这样做——如果更改META6.json中的版本,则强制安装。
# 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 .