- fixed rt.cpan.org#38635. apache-like include now supports
quoted strings.
- fixed rt.cpan.org#41748. saving config with -tie enabled
now keeps the tie as documented.
- added unit test for -tie. For this to work, a copy of
Tie::LxHash module is delivered with Config::General
source, but will not installed, in fact, it is only
used for 'make test' (number 50)
- fixed rt.cpan.org#39159. documentation of functional interface
now reflects that qw$method) is now required.
- applied patch by AlexK fixing rt.cpan.org#41030:
if files are included by means of a glob pattern having the -IncludeGlob
option activated, paths specified by the -ConfigPath option are being
neglected when trying to spot the files. This patch fixes this
- applied patch by fbicknel, fixes rt.cpan.org#41570:
An array of scalars (eg: option = [1,2,3]) cannot
be used for interpolation (which element shall we use?!), so
we ignore those types of lists and don't build a __stack for them.
git-svn-id: http://dev.catalyst.perl.org/repos/Config-General/trunk@67 be1acefe-a474-0410-9a34-9b3221f2030f
- "fixed" rt.cpan.org#30199 - check for invalid and
unsupported structures, especially mixing blocks
and scalars with identical names.
- added checks to 'make test' to test for the above
checks.
- revoked patch of rt.cpan.org#27225, it broke running
code.
- fixed rt.cpan.org#30063 (and #27225!) by reimplementing
the whole interpolation code. The internal stack is
no more a class variable of the module but stored
directly within the generated config hash and cleaned
before returning to the user.
- added (modified) patch rt.cpan.org#30063 to check
if interpolation works with supplied default config
works.
git-svn-id: http://dev.catalyst.perl.org/repos/Config-General/trunk@63 be1acefe-a474-0410-9a34-9b3221f2030f
- fixed rt.cpan.org#27271 - removed output file from
manifest.
- fixed rt.cpan.org#27225 - clear vars off the stack
if entering a new block, so old vars get not re-used.
- fixed rt.cpan.org#27110 - re-implemented support
for arrayref as -String parameter.
- fixed rt.cpan.org#24155 - relative include bug fixed.
- applied patch by GWYN, (see fixed rt.cpan.org#27622)
which allows the same file included multiple times.
there is no loop detection if turned on. new option
introduced: -IncludeAgain => 1 (default turned off).
- added support for -IncludeAgain to directory include
code too.
- the directory globbing code used slashes to join
directory and file names. changed this to use catfile()
instead.
git-svn-id: http://dev.catalyst.perl.org/repos/Config-General/trunk@60 be1acefe-a474-0410-9a34-9b3221f2030f
- fixed rt.cpan.org#24232 - import ENV vars only if defined
- fixed rt.cpan.org#20742 - dont' overwrite a var if re-defined
in current scope, interpolation failed for re-defined vars and used
the value of the var defined in outer scope, not the current one.
- fixed rt.cpan.org#17852 - a 0 as blockname were ignored. applied
patch by SCOP to t/run.t to test for 0 in blocks.
- applied most hints Perl::Critic had about Config::General:
o the functions ParseConfig SaveConfig SaveConfigString must
now imported implicitly. This might break existing code, but
is easily to fix.
o using IO::File instead of open().
o General.pm qualifies for "stern" level after all.
- added much more tests to t/run.t for 'make test'.
- using Test::More now.
git-svn-id: http://dev.catalyst.perl.org/repos/Config-General/trunk@58 be1acefe-a474-0410-9a34-9b3221f2030f
- fixed bug with not working -IncludeRelative setting when
including a config file. It were only included from the
location relative to the underlying config if it were
non-existent. reported by Dmitry Koteroff <dmitry@koteroff.ru>.
- applied patch by Danial Pearce <danial@infoxchange.net.au>
which adds the -BackslashEscape parameter to enable
general escaping of special characters using the
backslash.
- fixed bug reported by Harold van Oostrom <cpan@lanceerplaats.nl>:
according to the documentation one can call new() with
a hash-ref as its single parameter which would then
used as the config. This didn't work and were fixed.
- added feature suggested by Eric Andreychek <eric@openthought.net>:
now block statements like this are allowed: "<directory blah/>"
which is called an explicit empty block. This generates just
an empty hash-ref and saves writing. In fact, internally it
will be converted to:
<directory blah>
</directory>
- fixed Makefile.PL: it cleans now files generated by 'make test'
properly. reported by: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
- updated MANIFEST (in fact I did this some years ago the last time!)
also reported by: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
git-svn-id: http://dev.catalyst.perl.org/repos/Config-General/trunk@51 be1acefe-a474-0410-9a34-9b3221f2030f
- added 2 procedural functions ParseConf and SaveConf
- added new parameters -AutoTrue and -FlagBits
- added save_file() which replaces save(), which was
weird implemented. If the user only supplied a hash
as parameter to save(), then the first key was
used as the filename and the rest was used
as a config hash (which was then of an uneven size).
- save_file() takes now instead of a hash a hash-ref
and a filename. And the hashref is optional, since
the object already contains a complete hash.
- new method save_string() added, which returns the
ready generated string instead of writing it to
disk. The user can then save it himself.
- POD updated.
git-svn-id: http://dev.catalyst.perl.org/repos/Config-General/trunk@17 be1acefe-a474-0410-9a34-9b3221f2030f
- added contributed sub module Config::General::Interpolated
by "Wei-Hon Chen" <plasmaball@pchome.com.tw> with
help from "Autrijus Tang" <autrijus@autrijus.org>
which makes it possible to use variables inside
config files.
- _read() accepts now c-comments inside c-comments if
they are on a single line.
- _read() is now more tolerant to here-identifiers
(the ends of here-docs), whitespaces right after
such an identifier are allowed (i.e. "EOF ").
- _read() does now behave somewhat different with
C-comments, they will be the first thing being
processed in a config, so the parser really
ignores everything inside C-comments. Previously
it did not do that, for example here-docs has
not been ignored.
git-svn-id: http://dev.catalyst.perl.org/repos/Config-General/trunk@16 be1acefe-a474-0410-9a34-9b3221f2030f
option itself, if more than one of this particular
option occured.
- added -UseApacheInclude feature, contributed by
Thomas Klausner <domm@zsi.at>
- fixed bug with multiple options stuff, which did not
work with blocks or named blocks. Pointed out by
Thomas Klausner <domm@zsi.at>, who meant it being
feature request, but in fact it was a bug (IMHO).
- Config::General does now contain also it's OO-sister
Config::General::Extended, which is from now on
no more available as an extra module, because it
lived a shadowy existence.
- finally(!) created a Changelog file (this one, yes).
git-svn-id: http://dev.catalyst.perl.org/repos/Config-General/trunk@12 be1acefe-a474-0410-9a34-9b3221f2030f