前段时间,新事物出现在Perl世界中。事情是要创造
模块源代码中的xt
目录,并将测试放在那里
只能由作者运行。 xt
测试的想法是,它们不会在何时运行
该模块是从CPAN安装的。
我在想,如果安装过程不需要测试 无需将该测试上传到CPAN。我的想法是进行这些测试 在我的VSC中,但不是将它们放在tar.gz文件中,而是将其上传到CPAN。
但是现在有很多CPAN模块都有xt
目录。我有
我在本地的CPAN副本中搜索了这些模块:
$ find -iname "*.tar*" -exec tar tf {} \; | grep "/xt/" &> modules_with_xt_dir
$ cat modules_with_xt_dir |sort --random-sort|uniq|head
CatalystX-Dispatcher-AsGraph-0.01/xt/03_pod.t
Religion-Bible-Reference-0.014/xt/release/perl-critic.t
DBIx-Custom-0.1674/xt/dbix-connector.t
Geo-Distance-XS-0.09/xt/
FBP-Perl-0.21/xt/pod.t
Getopt-Compact-WithCmd-0.14/xt/01_podspell.t
Dist-Zilla-Plugin-CheckExtraTests-0.004/xt/release/pod-coverage.t
MooseX-GlobRef-0.07/xt/pod_spellrc
Web-Request-0.09/xt/release/pod-syntax.t
Amon2-2.52/eg/Hello/xt/perlcriticrc
我的问题是关于最好的协议。什么是最好的?要上传xt
个测试
CPAN,还是不上传?这个决定有什么好处?
答案 0 :(得分:7)
我会说最佳做法是上传。
它的好处是它可以让人们破解和修补你的代码,并且仍然可以运行完整的测试套件。帮助人们编写补丁 - 并且伤害任何人。