问题标签 [dist-zilla]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
perl - 在安装时使用 ExtUtils::MakeMaker/Dist::Zilla (dzil) 安装附加文件
tl;dr我想package.json
随我的 Perl 库一起提供一个,运行yarn install
(或npm install
在安装期间)并使用 Perl 模块安装下载的 JavaScript 依赖项。
我有以下内容dist.ini
:
该文件EMM-include.pm
包含一个MY::postamble
方法:
插件[Web::FileHeader]
获取文件并将其修补到Makefile.PL
.
然后有一个lib/Foobar/package.json
:
调用MY::postamble
部分(如果没有,则将其替换为)并使用及其依赖项填充目录。EMM-include.pm
yarn install
npm install
yarn
lib/Foobar/node_modules
ajv
最后,必须有一个模块lib/Foobar.pm
:
这几乎可以按预期工作:可以使用dzil build
. 在分发目录中,perl Makefile.PL
调用yarn install
,该目录lib/Foobar/node_modules
被填充,但其中的文件没有安装make install
。
如果我perl Makefile.PL
第二次运行,一切正常,JavaScript 依赖项会进入blib/
并将make install
JavaScript 模块与 Perl 模块一起安装。
将 JavaScript 依赖项与分发一起提供不是一种选择。它们已经太多了,而且它们可能有冲突的许可证(我在这里使用的是 GPLv3)。在运行时下载deps,安装后大多会因为缺少权限而失败。
诚然,这与 没有太大关系Dist::Zilla
,而是与 有问题ExtUtils::MakeMaker
。但我实际上Dist::Zilla
在这里使用。
如果它很重要,真正的分布是https://github.com/gflohr/qgoda并且在撰写本文时的最后一次提交是https://github.com/gflohr/qgoda/commit/3f34a3dfec8da665061432c3a8f7bd8eef28b95e。
perl - 如何让 Dist::zilla 在 YAML 中指定最小 Perl 版本?
我想在 yaml 文件中指定所需的最低 Perl 版本。虽然我确实将 perl 放在了 dist.ini 的要求中,但我认为我需要一些模块才能在构建时将其写入 yaml 文件。
我的 dist.ini 是https://metacpan.org/source/PROCH/Proch-N50-0.032/dist.ini
此处描述了 kwalitee 问题https://cpants.cpanauthors.org/kwalitee/meta_yml_declares_perl_version
谢谢你的帮助。
perl - 使用 Dist::Zilla 从 Perl 模块版本中排除目录
我不想发布的 Perl 模块根目录中有一个子目录。
我尝试使用https://metacpan.org/pod/Dist::Zilla::Plugin::GatherDir的“prune_directory”或“exclude_file”属性
我试图指定 [GatherDir] 部分,但这与@Basic 重复,所以在我dist.ini
现在有(完整文件:https ://github.com/tellatin/FASTQ-Parser/blob/master/dist.ini ):
与dzil build --verbose
我一起构建时,所有行如下:
所以确实添加了我要修剪的目录。
我该怎么办?
perl - 如何在 dist.ini (Dist::Zilla) 中列出多个“.pm”模块
我制作了一个模块 - FASTX::Reader - 由单个 .pm 文件组成,并将其与 Dist::Zilla 打包。
现在我添加了另外两个相关的模块。我没有更改dist.ini中的任何内容,这不会停止dzil
打包所有内容,所有模块都显示在MetaCPAN中。
我想知道,有没有办法在 dist.ini 的包中明确宣传模块?处理多 .pm 包的推荐方法是什么?
PS:我知道这个问题很模糊,但是我对模块的了解有限,这很难,但我想了解更多。谢谢你的耐心。
perl - Perl CPAN 发行版中 $AUTHORITY 变量的用途是什么?
根据Dist::Zilla::Plugin::Authority:
此插件将权限数据添加到您的分发中。它将数据添加到您的模块和元数据中。通常它会在您的 Dist::Zilla 配置中查找 PAUSE author id。
“权威数据”有什么用?为什么将它添加到所有模块中?
git - 使用 Dist::Zilla::Plugin::Gatherdir 添加一个未跟踪的文件
我正在使用Dist::Zilla
构建 Perl 模块。我已将标准替换GatherDir
为Git::GatherDir
. 但是我的主模块lib/XY.pm
是生成的,因此不受版本控制。我怎样才能添加它?