- load perl files directly, never possibly searching @INC
0.27 2016-03-31
- - depend on Module::Pluggable::Object directly instead of assuming it is
+ - depend on Module::Pluggable::Object directly instead of assuming it is
bundled with Module::Pluggable (RT #113148)
0.26 2015-04-29
- fix test suite's method of checking availability of plugins
0.22 2011-07-04
- - add XML::NamespaceSupport to XML format deps, silence YAML warnings in
+ - add XML::NamespaceSupport to XML format deps, silence YAML warnings in
tests (caelum)
0.21 2011-05-25
+ 'force_plugins => [ qw(Config::Any::Foo Config::Any::Blah) ]' parameter
to load_(files|stems)
+ $Config::Any::INI::MAP_SECTION_SPACE_TO_NESTED_KEY - boolean, defaulting
- to on, controlling whether to map spaces in INI section headings
+ to on, controlling whether to map spaces in INI section headings
to nested hashrefs
0.04 2006-08-07
JSON, Apache-style configuration, Windows INI files, and even Perl code.
The rationale for this module is as follows: Perl programs are deployed on many different
-platforms and integrated with many different systems. Systems administrators and end
+platforms and integrated with many different systems. Systems administrators and end
users may prefer different configuration formats than the developers. The flexibility
-inherent in a multiple format configuration loader allows different users to make
+inherent in a multiple format configuration loader allows different users to make
different choices, without generating extra work for the developers. As a developer
you only need to learn a single interface to be able to use the power of different
configuration formats.
-=head1 INTERFACE
+=head1 INTERFACE
=cut
C<load_files()> attempts to load configuration from the list of files passed in
the C<files> parameter, if the file exists.
-If the C<filter> parameter is set, it is used as a callback to modify the configuration
-data before it is returned. It will be passed a single hash-reference parameter which
+If the C<filter> parameter is set, it is used as a callback to modify the configuration
+data before it is returned. It will be passed a single hash-reference parameter which
it should modify in-place.
If the C<use_ext> parameter is defined, the loader will attempt to parse the file
extension from each filename and will skip the file unless it matches a standard
extension for the loading plugins. Only plugins whose standard extensions match the
file extension will be used. For efficiency reasons, its use is encouraged, but
-be aware that you will lose flexibility -- for example, a file called C<myapp.cfg>
+be aware that you will lose flexibility -- for example, a file called C<myapp.cfg>
containing YAML data will not be offered to the YAML plugin, whereas C<myapp.yml>
or C<myapp.yaml> would be.
keyed on the file names, as opposed to the usual list of single-key hashes.
C<load_files()> also supports a 'force_plugins' parameter, whose value should be an
-arrayref of plugin names like C<Config::Any::INI>. Its intended use is to allow the use
+arrayref of plugin names like C<Config::Any::INI>. Its intended use is to allow the use
of a non-standard file extension while forcing it to be offered to a particular parser.
-It is not compatible with 'use_ext'.
+It is not compatible with 'use_ext'.
You can supply a C<driver_args> hashref to pass special options to a particular
parser object. Example:
Config::Any->load_stems( { stems => \@stems, flatten_to_hash => 1 } );
C<load_stems()> attempts to load configuration from a list of files which it generates
-by combining the filename stems list passed in the C<stems> parameter with the
+by combining the filename stems list passed in the C<stems> parameter with the
potential filename extensions from each loader, which you can check with the
C<extensions()> classmethod described below. Once this list of possible filenames is
built it is treated exactly as in C<load_files()> above, as which it takes the same
=head2 finder( )
-The C<finder()> classmethod returns the
+The C<finder()> classmethod returns the
L<Module::Pluggable::Object|Module::Pluggable::Object>
object which is used to load the plugins. See the documentation for that module for
more information.
=head2 plugins( )
-The C<plugins()> classmethod returns the names of configuration loading plugins as
+The C<plugins()> classmethod returns the names of configuration loading plugins as
found by L<Module::Pluggable::Object|Module::Pluggable::Object>.
=cut
=head1 CONTRIBUTORS
-This module was based on the original
+This module was based on the original
L<Catalyst::Plugin::ConfigLoader|Catalyst::Plugin::ConfigLoader>
module by Brian Cassidy C<< <bricas@cpan.org> >>.
=head1 SEE ALSO
-L<Catalyst::Plugin::ConfigLoader|Catalyst::Plugin::ConfigLoader>
+L<Catalyst::Plugin::ConfigLoader|Catalyst::Plugin::ConfigLoader>
-- now a wrapper around this module.
=cut