我最近将两个发行版的开发版本上传到 CPAN,其中一个依赖于另一个。假设一个发行版名为 Distro
,其他 Prereq
, 和 Distro
需要 Prereq
版本 0.009_001。
不幸的是,我没有收到 Distro
的任何测试报告。 .我认为原因是开发版本的版本根本没有被 CPAN 跟踪。它们没有出现在 02packages.details.txt
,所以CPAN认为依赖不能满足。
是否不可能让 CPAN 测试人员加载一个先决条件的开发版本?或者有解决方法吗?
最佳答案
虽然一些 CPAN 测试人员在测试您的发行版时可能碰巧已经安装了该开发版本,但很可能不会,并且没有办法要求他们确实拥有它。
如果先决条件是 Pure Perl,则可能会将先决条件库的完整副本捆绑在 ./t/bundled/
中。您的发行版的目录,然后在测试脚本中将其包含在顶部附近以强制自动化测试人员加载捆绑版本:
use FindBin '$Bin';
use if $ENV{AUTOMATED_TESTING}, lib => "$Bin/bundled";
use Name::Of::Prerequisite;
(我不是使用 CPAN 测试人员,而是使用 Travis 持续集成做了类似的事情,迫使它针对来自 GitHub 的某些先决条件的最新结帐进行测试。)
关于perl - 如何让 CPAN 测试人员加载一个先决条件的开发版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36409497/