Alien::Base::ModuleBuild uses ConfigData.pm which is MB specific. Alien::Builder stores the same data in a json file alien_builder.json. Included is a test to ensure compatibility with both.
There are some advantages of storing data in a non Perl serializable structure such as JSON:
Makes it easier for tools to introspect on Alien installs without compiling new Perls. This would be an advantage for things like App::palien, and to implement #123.
The disadvantage is adding a dependency on JSON::PP. Since this module has bee in the Perl core as of 5.14, and because these changes will eventually allow us to remove Module::Base as a prereq (which is out of core as of 5.22) I think it is worth it.
Alien::Base::ModuleBuild
usesConfigData.pm
which is MB specific.Alien::Builder
stores the same data in a json filealien_builder.json
. Included is a test to ensure compatibility with both.There are some advantages of storing data in a non Perl serializable structure such as JSON:
App::palien
, and to implement #123.The disadvantage is adding a dependency on
JSON::PP
. Since this module has bee in the Perl core as of 5.14, and because these changes will eventually allow us to removeModule::Base
as a prereq (which is out of core as of 5.22) I think it is worth it.