Dual-license your content for inclusion in The Perl 5 Wiki using this HOWTO, or join us for a chat on irc.freenode.net#PerlNet.

Finding a Module on CPAN/Definitive Tags

From PerlNet

(Difference between revisions)
Jump to: navigation, search
Revision as of 04:38, 4 April 2010
Shlomif (Talk | contribs)
(Actively Developed)
← Previous diff
Revision as of 16:34, 5 June 2010
Shlomif (Talk | contribs)
(Add Mac OS X only.)
Next diff →
Line 38: Line 38:
=== Linux-only === === Linux-only ===
 +
 +=== Mac OS X-only ===
=== Alternative to core === === Alternative to core ===

Revision as of 16:34, 5 June 2010

Contents

Note

This is a list of "definitive tags" which module authors and module users can use to tag these modules, so people will know their status, philosophy and other factors. Some of these tags are mutually-exclusive and some of them are a grade. At the moment, we're just going to list them all here and only then decide how they relate.

The Tags

Deprecated

The module is present and may be maintained, but is not recommended for general use.

Magic

Something unconventional and not straightforward, that may affect the rest of Perl.

Black Magic

Like Magic only something that is considered "Evil". Possible examples:

  • Error.pm.

Source Filter

Maintained

Actively Developed

Up-for-adoption

This means the module is abandoned and up-for-adoption. It probably indicates that the current maintainer still finds it to be a good and recommended module, just that they have lost interest, lack the necessary time, or are otherwise unable to maintain it.

Non-finalised API

Means the API may be broken in the future.

Windows-only

UNIX-only

Linux-only

Mac OS X-only

Alternative to core

This module provides a (hopefully better) alternative to a core module. Examples: cpan:File-Next, cpan:File-Find-Object, cpan:Readonly (alternative to "constant"), cpan:Module-Build (alternative to ExtUtils-MakeMaker), cpan:Module-Starter (alternative to h2xs).

Pure-Perl

A Pure Perl module.

Requires C Compiler

Requires C++ Compiler

Requires Fortran 77 Compiler

Possibly other Fortran versions.

Requires Objective-C Compiler

External Libs

Requires an external library - for example the cpan:Gtk2 module which requires libgtk.

Meta-Package

This is a CPAN "Bundle" or "Task" that does not contain any original functionality of its own, and just specifies a list of dependencies to be retrieved. (Thanks to G. Wade Johnson)

Plugin/Extension/Component/etc.

A plugin to another module, that extends it and provides more functionality. Examples: cpan:Template-Plugin-PodSimple, cpan:POE-Component-IRC, etc. (Thanks to G. Wade Johnson)

Base Class for Drivers

This implements the so-called "Template Pattern" where one has a base class that has many drivers as sub-classes that implement the rest of the functionality. Examples: cpan:DBI, cpan:XML-SAX. (Thanks to G. Wade Johnson).

Driver

This is something like cpan:DBD-Mysql or cpan:DBD-Pg for DBI.

Personal tools