我的模块依赖于Fcntl
模块(https://github.com/manchicken/perl6-Fcntl),已经很长时间没有更新了,并且已损坏。但是,有一个叉子(https://github.com/jonathanstowe/perl6-Fcntl)如果我手动zef install
,它对我有效。是否可以在我的模块的META-6.json
中指定依赖项,以便使用正确的github repo来安装模块?
否,不能将uri列为依赖项。规范实际上指出META6.json中的依赖项名称应该与use
中的名称相匹配。
如果你坚持不将名称空间集成到众多合作生态系统中,那么你仍然可以在安装说明中列出URL:
zef install MyModule https://github.com/foo/dependency.git
当用户向zef提供uri时,它本质上被视为一个独立的生态系统,因此能够满足MyModule
的依赖关系。这是可以的——用户明确请求使用该源。不好的是模块作者指定从哪里下载依赖项(只需要什么依赖项(。
所有这些都表明,您可以用不同的方式解决问题——分叉模块,将auth
字段更改为其他字段,将(和use
(Fcntl:auth<mynewauth>
列为依赖项名称,然后将您的分叉添加到生态系统中。另一种选择,可以这么说,你可以直接修改版本。