# from David Golden # on Wednesday 02 December 2009 14:59: >Anyway, when that's done, I think I'll have a clearer sense of what in >M::B is really "core" and what is "author support". That said, >plugins are probably not on my radar in the next year.
We can't really draw a line between "core" and "author support" -- only between "core" and "not core" (because what was once in "core" is expected to always be in "core".) Without plugins, there is not really such a thing as "not core", which means nothing can depend on anything and we have to program with twigs and string instead of Perl and the CPAN. It would be convenient for many people if we added feature X and Y to core, but we usually end up with something limited because of the twigs and string, then you get even more mess when someone starts copy+pasting subclass code with large swaths of M::B innards into multiple dists. So, of course the loading of plugins would maybe need to be core -- but Module::Build::Plugins with configure_requires is probably feasible (maybe even without monkey patching) given a bit of cooperation (or just a bit of communication and not purposefully breaking the API.) >Plus it auto-bundles itself in inc/. And Build.PL is just "use >lib 'inc'; use Acme::Module::Build::Tiny". I'm looking forward to seeing that without the bundling. This would demonstrate that configure_requires and the "Build.PL command-line API" is maturely supported in the toolchain. --Eric -- Issues of control, repair, improvement, cost, or just plain understandability all come down strongly in favor of open source solutions to complex problems of any sort. --Robert G. Brown --------------------------------------------------- http://scratchcomputing.com ---------------------------------------------------