I think this would be rad:

 - PPM becomes part of the perl core
 - All CPAN packages are built to into PPDs automatically on common
   platforms
 - PPM is extended to allow installing into non-root locations

This would allow non-perl people to install perl packages much easier,
without having to mess with the CPAN shell and running tests.  It
would also make installing CPAN packages into hosted environments much
easier.

Any thoughts?

I think this would be incredibly bad, and a clear example of premature optimisation.

If CPAN is installation from source, then binary packages will depend VERY heavily on the environment they are built in.

With many many modules needing various external libraries in order to work, that integration needs to be done by the package management system of each environment.

That means while PPMs work file on ActivePerl, they may NOT other place.

The only guarantee the ActiveState PPM library provides for example is that it will work within ActivePerl.

The same "binary" package doesn't work in different environments in any other language, and it doesn't work for us either.

Binaries need to be built for Debian, or FreeBSD, or ActivePerl or whatever, it would be greatly overstepping our (the Perl language) mandate to dictate some form of standard packaging system for Perl applications that differs from the native packaging system for that environment that Python and C and C++ and Ruby and Scheme and Lisp and everything else uses.

It's appropriate for ActiveState to build PPMs against the ActivePerl environment. It's not appropriate for us to do it in core Perl.

What I'd like to see instead is suggestions on ways that we can improve Perl packages to make it easier for the various auto-packaging systems to do their job.

If a Perl module needs libfoo then it should be stated in the metadata somewhere so that the binary packaging system can resolve that generalised dependency into the appropriate action for that environment.

Adam K

Reply via email to