2008/9/30 Michael G Schwern <[EMAIL PROTECTED]>: > chromatic wrote: >> s/Module::Install/Autobundling/ >> >> Autobundling is fine for end-user all-in-one no-user-servicable-parts-inside >> applications, but the CPAN is not the place for static linking. It would be >> nice not to drag Perl kicking and screaming back into the 1970s. > > Autobundling is fine AS LONG AS the bundled version gives way to a newer > installed version.
I suspect needs to be a little bit more robust than just giving way because that doesn't give you proper "reach back in time" capability. Really, inc::Module::Build needs to not only be able to know that the installed one is newer than it, but that if that is the case it should use an entry point to loading Module::Build specifically for that it. That would avoid cluttering up the regular M:B bootstrap, and let you concentrate all the compatibility weirdness for handling old bundled stuff in one separate place. So then you get use inc::Module::Build; ... which loads... use Module::Build::BundleCompany; ... which then has the option of doing various things before actually loading... use Module::Build; ... and returning back to the Build.PL code. The key theme to all this new stuff is that it should be able to reach back in time on it's own and pull forwards anything we don't currently know is broken. Making a specific place for current-MB to trigger future-MB seems like a nice extra safeguard, since we have the chance to build it in from the beginning. Adam K