# from David Golden
# on Thursday 19 February 2009 05:10:
>There was some consideration
>last year of breaking out build/test/install requires further but
>there was no consensus for it. One of the issues is that it
>introduces yet another round of CPAN/CPANPLUS upgrades, so in your
>example, you'd need to have a "configure_requires" that lists a newer
>CPAN/CPANPLUS.
No. The 'configure_requires' should not say anything about what tool
you're using. Attempting to do so would cause CPANPLUSeleven.pm to
upgrade CPAN.pm, which would totally miss the point.
So the trouble with adding keys to META.yml comes when the META loader
does not support the new keys *and* the information they convey is
critical to the build/test/install process.
We do not currently have a plan for how to handle this. It would likely
involve some mechanism of requiring compliance to a minimum version of
the META spec. An old loader cannot know that it is too old. When we
do define some sort of "minimum META mechanism", an old loader with no
mMm support will still never know that it is too old.
This is similar to the configure_requires issue in that a tool not
supporting c_r will fail in unknown ways. But the mMm could have
cleanly forced c_r support had it been present from the get-go.
If you can't split build_requires (or any key) into finer granularity
without causing old loaders to fail, then it cannot be done without
mMm.
--Eric
--
"I've often gotten the feeling that the only people who have learned
from computer assisted instruction are the authors."
--Ben Schneiderman
---------------------------------------------------
http://scratchcomputing.com
---------------------------------------------------