miyagawa/cpanfile — pull request #29 by ianburrell (2014-04-29 01:18:29+00:00)
Title: Merge multiple requirements for a module

Currently, if requirement for module is listed multiple times, the version from the last declaration overrides any previous requires. This can produce unexpected behavior when there are duplicate declarations with versions. This can happen when including multiple files; we use git submodules with cpanfile included into main project with "do". But this could happen with large files or merges. This could produce an error.

It would be better if the versions from the declarations were combined. Versions are combined with a comma to produce version ranges. Illegal ranges produce errors in CPAN::Meta::Requirements. CPAN::Meta::Requirements handles combining ranges to produce the inclusive range.