DEV Community

Cover image for Avoid CPAN conflicts in your personal Perl modules
Mark Gardner
Mark Gardner

Posted on • Originally published at phoenixtrap.com on

Avoid CPAN conflicts in your personal Perl modules

If you’re writing Perl that’s never going to the Comprehensive Perl Archive Network (CPAN), heed this little-known note on the Perl Authors Upload Server (PAUSE):

By convention, the top-level Local namespace should never conflict with anything on CPAN. This allows you to be confident that the name you choose under Local isn’t going to conflict with anything from the outside world.

PAUSE: On The Naming of Modules

So, Local::MyModule, Local::App::MyApp, whatever. This is also good advice for bespoke applications and libraries (the so-called DarkPAN) you’re developing in-house. The last thing you need is to accidentally bring in (perhaps via dependencies) a module that gets loaded instead of yours.

Top comments (0)