DEV Community

Cover image for Avoid CPAN conflicts in your personal Perl modules

Avoid CPAN conflicts in your personal Perl modules

mjgardner profile image Mark Gardner Originally published at on ・1 min read

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.

Discussion (0)

Forem Open with the Forem app