Stephan Kulow's avatar

Stephan Kulow

coolo

Member of the groups
Involved Projects and Packages

This module is meant as a debugging aid. It can be used to make a script
complain loudly with stack backtraces when warn()ing or die()ing.

Here are how stack backtraces produced by this module looks:

# it works for explicit die's and warn's
$ perl -MCarp::Always -e 'sub f { die "arghh" }; sub g { f }; g'
arghh at -e line 1
main::f() called at -e line 1
main::g() called at -e line 1

# it works for interpreter-thrown failures
$ perl -MCarp::Always -w -e 'sub f { $a = shift; @a = @$a };' \
-e 'sub g { f(undef) }; g'
Use of uninitialized value in array dereference at -e line 1
main::f('undef') called at -e line 2
main::g() called at -e line 2

In the implementation, the 'Carp' module does the heavy work, through
'longmess()'. The actual implementation sets the signal hooks
'$SIG{__WARN__}' and '$SIG{__DIE__}' to emit the stack backtraces.

Oh, by the way, 'carp' and 'croak' when requiring/using the 'Carp' module
are also made verbose, behaving like 'cloak' and 'confess', respectively.

EXPORT
Nothing at all is exported.

The Catalyst developer's manual

Bugowner

CHI provides a unified caching API, designed to assist a developer in
persisting data for a specified period of time.

The CHI interface is implemented by driver classes that support fetching,
storing and clearing of data. Driver classes exist or will exist for the
gamut of storage backends available to Perl, such as memory, plain files,
memory mapped files, memcached, and DBI.

CHI is intended as an evolution of DeWitt Clinton's Cache::Cache package,
adhering to the basic Cache API but adding new features and addressing
limitations in the Cache::Cache implementation.

CLASS and $CLASS are both synonyms for __PACKAGE__. Easier to type.

$CLASS has the additional benefit of working in strings.

This module was written after having to write Yet Another Config File
Parser for some variety of colon-separated config. I decided "never again".

Config::Auto aims to be the most 'DWIM' config parser available, by
detecting configuration styles, include paths and even config filenames
automagically.

See the the HOW IT WORKS manpage section below on implementation details.

This module implements yet another damn configuration-file system.

The configuration language is deliberately simple and limited, and the
module works hard to preserve as much information (section order,
comments, etc.) as possible when a configuration file is updated.

Author: Damian Conway

Software distributions released to the CPAN include a _META.json_ or, for
older distributions, _META.yml_, which describes the distribution, its
contents, and the requirements for building and installing the
distribution. The data structure stored in the _META.json_ file is
described in the CPAN::Meta::Spec manpage.

CPAN::Meta provides a simple class to represent this distribution metadata
(or _distmeta_), along with some helpful methods for interrogating that
data.

The documentation below is only for the methods of the CPAN::Meta object.
For information on the meaning of individual fields, consult the spec.

This module implements a subset of the YAML specification for use in
reading and writing CPAN metadata files like _META.yml_ and _MYMETA.yml_.
It should not be used for any other general YAML parsing or generation
task.

upload things to the CPAN

Debug::Trace instruments subroutines to provide tracing information upon
every call and return.

The 'Digest::JHash' module allows you to use the fast JHash hashing
algorithm developed by Bob Jenkins from within Perl programs. The algorithm
takes as input a message of arbitrary length and produces as output a
32-bit "message digest" of the input in the form of an unsigned long
integer.

Call it a low calorie version of MD5 if you like.

See http://burtleburtle.net/bob/hash/doobs.html for more information.

This modules has the same interface as the much faster 'Digest::MD5'. So
you can easily exchange them, e.g.

BEGIN {
eval {
require Digest::MD5;
import Digest::MD5 'md5_hex'
};
if ($@) { # ups, no Digest::MD5
require Digest::Perl::MD5;
import Digest::Perl::MD5 'md5_hex'
}
}

If the 'Digest::MD5' module is available it is used and if not you take
'Digest::Perl::MD5'.

You can also install the Perl part of Digest::MD5 together with
Digest::Perl::MD5 and use Digest::MD5 as normal, it falls back to
Digest::Perl::MD5 if it cannot load its object files.

For a detailed Documentation see the 'Digest::MD5' module.

Provides an interface to the WHIRLPOOL hash algorithm. This module
subclasses the Digest::base manpage and can be used either directly or
through the the Digest manpage meta-module. Using the latter is
recommended.

openSUSE Build Service is sponsored by