问题标签 [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.

0 投票
1 回答
130 浏览

perl - Dist::Zilla 之后的文件编码错误

我怎样才能让 mojibake 通过?这可能是贡献者插件中的错误。该字符在 perldoc 中无法正确呈现,但在我的 vim 和提取的 git 日志中正确呈现。

这是来自源代码的片段,可能应该直接查看,因为复制粘贴可能没有发现编码问题。

更多 vim 探索表明:set filencoding正在更改为latin1在 vim 中编辑文件似乎可以解决此问题,但是由于正在生成文件,如何使用正确的编码生成它?

0 投票
1 回答
126 浏览

git - 由于未跟踪的 git 更改,dist zilla 无法发布

我正在使用Dist::Zilla发布我的模块,但是它不起作用。我正在使用Dist::Zilla::Plugin::Git插件,每当我这样做时dzil release,它都不会让我释放我的模块,因为它说我有未跟踪的更改。但是,未跟踪的更改是 Dist::Zilla 为发布创建的新文件!这是我的配置文件:

这里的顺序有误吗?还是我应该实际提交创建的文件以供发布?因为我认为它们应该是暂时的。这是我得到的输出:

0 投票
2 回答
213 浏览

windows - Perl 模块 - dist.ini 和平台特定的先决条件

如何dist.ini为我希望模块支持的每个平台(Windows/非 Windows)添加条件先决条件?

例如在 perl 代码中我可以这样做:

我如何迎合这样的每个系统/平台,dist.ini以便通过 cpan/cpanm 安装正确的先决条件?

0 投票
2 回答
519 浏览

perl - 如何使用 DIst::Zilla 构建 Perl 发行版并将 Carton 用于依赖项?

我有一个使用Dist::Zilla构建的 perl 发行版,因此我不必用依赖项污染我安装的 Perl 的库,我使用Carton来管理它们。

事情在开发中运行良好,但是当我运行dzil testdzil release运行测试时,找不到依赖项并且测试失败,因为无法加载模块。

我已经尝试过carton exec -- dzil testPERL5LIB=local/lib/perl5 dzil test但我认为这意味着我需要将我所有的 Dist::Zilla deps 放入 cpanfile,这似乎完全错误(我确实在我的 perl 的 lib 路径中安装了 Dist::Zilla 和我需要的 deps)。

有没有更好的办法?

0 投票
2 回答
610 浏览

perl - 如何使基于 Dist::Zilla 的 Perl 模块(或应用程序)安装文件到 /etc/?

我维护了多个 Perl 编写的(unix-ish)应用程序,其当前安装过程包括手动编写Makefile并将配置文件安装到/etc/.

我真的很想将他们的开发切换为使用Dist::Zilla,但到目前为止,我还没有找到任何 Dist::Zilla 插件或功能允许我在运行/etc/make install(或./Build install在使用Module::Build而不是使用的情况下ExtUtils::MakeMaker)将给定文件放入安装我的应用程序的本地管理员。

使用 pure ExtUtils::MakeMaker,我可以在其中定义额外的 make 目标,MY::postamble并让目标通过属性install依赖于其中之一。depend { install => … }做一些类似的事情,但 viadzil build可能就足够了,但我会欣赏一种更明显的方式。

一种正交方法是使应用程序不需要/etc/存在下的文件,而只是切换到 Dist::Zilla 尽管我现在只想更改构建系统,但实际代码似乎发生了很大变化。

对于好奇的人:我目前考虑切换到 Dist::Zilla 的两个应用程序是xen-toolsunburden-home-dir

0 投票
1 回答
126 浏览

perl - 如何使“dzil test”将命令行参数传递给 Makefile.PL?

对于依赖于 C 库的基于 XS 的 Perl 模块之一,我Dist::ZillaMakeMaker::Awesome插件一起使用来创建我的Makefile.PL.

为了将选项传递给Makefile.PL(尤其是INCand LIBS),我曾经设置PERL_MM_OPT环境变量,到目前为止效果很好。

现在我想用它Devel::CheckLib来检查 C 库的存在。Devel::CheckLib也支持INCLIBS当通过命令行提供时,但它不会从PERL_MM_OPT.

如何dzil test将命令行参数传递给Makefile.PL

快速查看插件的来源,MakeMaker::Runner这似乎不受支持。还有其他解决方法吗?

0 投票
1 回答
246 浏览

perl - 将 perlbrew 与 dist zilla 测试一起使用

我正在使用Dist::Zilla模块来发布和测试我的模块。我也在使用Perlbrew。当我使用包含我的模块的 perlbrew 运行脚本时,脚本运行良好:

但是,每当我dzil test在尝试包含我的模块的测试中运行时:

它失败并出现此错误,说它找不到模块鼠标(我的模块包括):

它说它找不到 Mouse.pm,我知道它位于

我看到由于某种原因该目录不在 中@INC,这很有趣,因为如果我运行此命令以打印出以下中的所有目录@INC

我得到:

因此,当我在命令行上运行 perl 时,该darwin-2level目录存在于 中@INC,但无论何时运行dzil test它都不存在。这可能与 没有太大关系Dist::Zilla,因为我认为Dist::Zilla只是为您创建Makefile.PL和运行make test。这可能是因为需要测试旧版本的 perl 吗?像这样:

但即便如此,在测试期间仍存在一些 Perlbrew 目录,@INC例如

有谁知道我如何做到这一点,以便我可以在我的 perl 目录中使用鼠标安装而不是安装系统范围的鼠标?我在运行时遇到了另一个模块的错误,dzil test该模块与Mouse. 我可以通过在系统范围内安装模块而不是在我的主目录中本地安装模块来解决这个问题perl5,但我更喜欢使用 Perlbrew 安装的鼠标,如果可能的话,不要弄乱我的系统 perl。我正在使用 Perlbrew 0.73 版。

0 投票
2 回答
187 浏览

perl - 使用 Dist::Zilla 声明对特定版本的 Perl 模块的依赖关系

我一直在将 Dist::Zilla 用于工作中的项目,并且我已经在该部分中声明了我的所有依赖[Prereqs / Requires]项。到目前为止很好。

现在我发现我的一个依赖项的最新版本破坏了向后兼容性,所以我想限制我依赖的版本范围。类似于支持的东西cpanm

或者Module::Build

一般来说,我如何使用 Dist::Zilla 声明这种类型的依赖关系?

0 投票
1 回答
48 浏览

perl - Dist::Zilla:在 Readme.mkdn 中获取安装说明

我正在使用 Dist::Zilla 生成一个 README.mkdn 文件。我想使用Pod::Weaver::Section::Installation将安装说明注入其中。不确定这是否可以做到。可能有更好的方法来做到这一点。

这是我的 Dist::Zilla 配置文件中的 weaver.ini 文件:

0 投票
1 回答
48 浏览

perl - 公开 github repo 会导致 Dist::Zilla 出现问题

我有一个模块,用Dist::Zilla. 我已Dist::Zilla设置为自动将更改推送到我的 GitHub 存储库。当 repo 是私有的时效果很好。

但是,一旦我将 repo 公开,我就开始在构建过程中遇到错误。具体来说,这些行在dist.ini

如果我注释掉这些行,它会起作用。留下这些行,我得到一个错误:

好的,很好,我注释掉这些行。然而,另一个问题出现了。我的构建版本号不再自动递增,并且每次我尝试发布构建时都停留在相同的数字。

是否需要使用 Dist::Zilla 更改一些配置设置,以便与公共 github 存储库一起使用?这是完整的 dist.ini 文件: