MAN page from Fedora 25 perl-List-MoreUtils-0.416-1.fc25.x86_64.rpm
Section: User Contributed Perl Documentation (3)
List::MoreUtils::Contributing - Gives rough introduction into contributing to List::MoreUtils
List::Moreutils has a turbulent history and a strong approach. Beforegoing further, please step toOpen Source Contribution Etiquette <http://tirania.org/blog/archive/2010/Dec-31.html
>and then come back.
The current distribution is a balance between finishing the history andclaiming for future requirements. Therefore some components will receivea rewrite on purpose - others won't.
For the moment - it's not the primary goal to clean up the configurationstage, until the primary goals and prerequisites are done.
To contribute to List::MoreUtils, one has to arrange with the currentsituation, dig into details and ask for clarifying when parts areincomprehensible.
The very first primary goal is to clear the backlog. These are primarilythe open issues, feature requests and missing infrastructure elements.
As example see RT#93207 or RT#75672 for missing configure time checks,while RT#93207 radiates until test - but doesn't affect runtime norinstallation (beside test failures).
Secondary goals are harmonizing the function names and calling convention(see RT#102673), tidying the infrastructure of the distribution and removeunnecessary complexity (while protecting the necessary).
One example of removing unnecessary infrastructure could be to moveData::Tumbler and Test::WriteVariants into authoring mode, whenimrpoved test for RT#93207 could be reasonably done by a module whichis recommended for test. The recommendation ofGraham Knop's Makefile.PL#L82 <https://github.com/haarg/List-MoreUtils/blob/dd877f963deead742fc90005636c72c6be9060fc/Makefile.PL#L82>in PR#9 <https://github.com/perl5-utils/List-MoreUtils/pull/9> a desirableone.
List::MoreUtils configuration stage heavily depends on Config::AutoConfand Data::Tumbler. A few prerequisites of both modules aren't availablefor Perl 5.6 - which leads to a tiny emulation layer t the begin of"Makefile.PL"
The reason for Config::AutoConf is quite simple - the opportunitiesfor checking the environment cover a much wider range than a simple testwhether there is a working compiler. It requires a lot of improvementssince it's fundament ExtUtils::CBuilder was never designed to supportthat kind of solutions - but there is Work In Progress. To finallysolve issues as RT#75672 even in cross-compile environments - there isno way around such a checking tool.
The reason for Data::Tumbler in combination with Test::WriteVariantsare extensible tests with reasonable effort and easy figuring out whichextra condition causes failures. Also - missing pre-conditions shouldresult in failing tests i some cases - what is fully supported by thelogic behind Data::Tumbler in combination with Test::WriteVariants.
Finally - inc::latest glues the stuff in a bundle together to allowpeople with older toolchains to use List::MoreUtils out of the box (maybewith reduced quantity but full quality).
Config::AutoConf, Data::Tumbler, Test::WriteVariants,ExtUtils::MakeMaker::Extensions
Jens Rehsack <rehsack AT
COPYRIGHT AND LICENSE
Copyright 2015,2016 by Jens Rehsack
This library is free software; you can redistribute it and/or modifyit under the same terms as Perl itself, either Perl version 5.8.4 or,at your option, any later version of Perl 5 you may have available.
- Primary Goals
- Secondary Goals
- Orientation Guide
- SEE ALSO
- COPYRIGHT AND LICENSE
This document was created byman2html,using the manual pages.