Wow. Is it time for another Ironman post already? The last week has just flown by.
Thanks to some rapid design brainstorming with Eric Wilhelm, we can demonstrate a working prototype. In practice, it means that a Build.PL might look like this:
use inc::latest 'Module::Build'; use inc::latest 'Devel::AssertOS::Unix'; Module::Build->new( module_name => 'Local::Blah', license => 'perl', )->create_build_script;
This example would also bundle Devel-CheckOS (which contains Devel::Assert::Unix) along with Module::Build. And both are automatically added to configure_requires in the META.yml, so that any perl with an updated CPAN or CPANPLUS will have these prerequisites satisfied automatically and the bundled versions will be ignored.
Download this sample Local-Blah distribution to see how it works.
There are some non-trivial kinks to iron out and some refactoring and cleanup, but the prototype proves the concept, so I think we'll have inc bundling available at least in a development release very soon.