Module::Find lets you find and use modules in categories. This can be useful for auto-detecting driver or plugin modules. You can differentiate between looking in the category itself or in all subcategories.
The Mock::Config
Perl module allows temporarily setting and overriding Config
values, even for the readonly XSConfig
implementation as used in cperl. It does not store the mocked overrides lexically, just dynamically.
Xslate is a template engine, tuned for persistent applications, safe as an HTML generator, and with rich features. The core design principle is that template logic does not have access outside the template without permission.
Data::Uniqid
provides three simple routines for generating unique ids. These ids are coded with a Base62 system to make them short and handy (e.g. to use it as part of a URL).
Fennec ties together several testing related modules and enhances their functionality in ways you don't get loading them individually. Fennec::Lite
takes a minimalist approach to do for Fennec what Mouse does for Moose.
Crypt::MySQL
emulates the MySQL PASSWORD() function. The module does not depend on an interface to the MySQL database server. This enables the comparison of encrypted passwords without the need for a real MySQL environment.
Objects of the HTML::Parser class will recognize markup and separate it from plain text (alias data content) in HTML documents. As different kinds of markup and text are recognized, the corresponding event handlers are invoked.
This module connects to the i3 window manager using the UNIX socket based IPC interface it provides (if enabled in the configuration file). You can then subscribe to events or send messages and receive their replies.
Net::Bonjour is a set of modules that allow one to discover local services via multicast DNS (mDNS) or enterprise services via traditional DNS. This method of service discovery has been branded as Bonjour by Apple Computer.
Ref::Util::XS
is the XS implementation of Ref::Util
, which provides several functions to help identify references in a more convenient way than the usual approach of examining the return value of ref
.
Dates are complex enough without times and timezones. This module may be used to create simple date objects. It handles validation, interval arithmetic, and day-of-week calculation. It does not deal with hours, minutes, seconds, and time zones.
This module provides a few useful functions for manipulating module names. Its main aim is to centralise some of the functions commonly used by modules that manipulate other modules in some way, like converting module names to relative paths.
Instances of the HTTP::Daemon class are HTTP/1.1 servers that listen on a socket for incoming requests. The HTTP::Daemon is a subclass of IO::Socket::INET, so you can perform socket operations directly on it too.
This is an HTTP request parser. It takes chunks of text as received and returns a hint
as to what is required, or returns the HTTP::Request when a complete request has been read. HTTP/1.1 chunking is supported.
This module provides code coverage metrics for Perl. Code coverage metrics describe how thoroughly tests exercise code. By using Devel::Cover
you can discover areas of code not exercised by your tests and determine which tests to create to increase coverage.
The intent of the Test::Script module is to provide a series of basic tests for 80% of the testing you will need to do for scripts in the script (or bin as is also commonly used) paths of your Perl distribution.
Given a list of scalars or reference variables, Data::Dumper
writes out their contents in Perl syntax. The references can also be objects. The content of each variable is output in a single Perl statement. It handles self-referential structures correctly.
The purpose of the PPIx-Regexp
package is to parse regular expressions in a manner similar to the way the PPI
package parses Perl. This class forms the root of the parse tree, playing a role similar to PPI::Document
.
File::Remove::remove
removes files and directories. It acts like /bin/rm
, for the most part. Although unlink
can be given a list of files, it will not remove directories; this module remedies that. It also accepts wildcards, * and ?, as arguments for file names.
This package provides the Proc:Daemon
module. It can be sed by a Perl program to initialize itself as a daemon or to execute (exec
) a system command as daemon. You can also check the status of the daemon (alive or dead) and you can kill the daemon.
This provides a trait and a role for the identification of `opt in' serializable attributes in, e.g., JSON::Marshal
. It's probably not necessary to use this directly as it will be required by, e.g., JSON::Name
, but it's just more convenient to package it separately.
DBIx::Simple provides a simplified interface to DBI, Perl's powerful database module. This module is aimed at rapid development and easy maintenance. Query preparation and execution are combined in a single method, the result object (which is a wrapper around the statement handle) provides easy row-by-row and slurping methods.
This package enables you to do generic message logging throughout programs and projects. Every message will be logged with stacktraces, timestamps and so on. You can use built-in handlers immediately, or after the fact when you inspect the error stack. It is highly configurable and lets you even provide your own handlers for dealing with messages.
The conventional models for parsing XML are either DOM (a data structure representing the entire document tree is created) or SAX (callbacks are issued for each element in the XML).
XML grammar is recursive - so it's nice to be able to write recursive parsers for it. XML::Descent
allows such parsers to be created.