Changes for version 0.03 - 2000-07-19
- test suite
- removed t/_*.t due to their internal nature; internals have changed a bit (especially _do_file()), and it's difficult to keep the test suite up to date; it's also not entirely correct to be testing internal features; it's much better to test the external, user-visible interface as much as possible
- t/parse/lex-test.conf
- added for use by t/parse/taint.t
- t/parse/*.t
- replaced Files and Handlers usage with File and Handler, where appropriate
- t/parse/lexicals.t
- replaced usage of test.conf with lex-test.conf
- added verification of lexicals inserted and parsed out of lex-test.conf
- t/parse/taint.t
- removed cleanup of configuration filename; it's unnecessary, due to the list argument call to system()
- t/parse/test.conf
- removed $lexical_filename and $lexical_namespace
- moved $success to the top
- t/pares/testconfig.pm
- added lex-test.conf to %test_conf
- removed Filename and Namespace keys from $test_conf{'test.conf'}{Lexicals}
- removed lexical_filename and lexical_namespace keys from $test_conf{'test.conf'}{Symbols}
- removed the tests for $namespace and $filename lexicals in verify_parsed_default_lexicals()
- modified ok() to allow for the specification of a comment when not called as a method
- PerlConfig.pm
- renamed Error_preparse argument to Warn_preparse
- added Error_invalid_namespace, Warn_default, and Warn_eval arguments
- reworked Error_ and Warn_ argument handling to store values in hashes
- added handling for File and Handler arguments (they get merged into Files and Handlers, respectively)
- reworked all $*_errsub variable usage to use the new %errsub hash
- moved lexicals string construction into _construct_lexicals_string()
- moved namespace construction into _construct_namespace()
- added _valid_namespace(), and usage of it before the namespace is used
- wrapped the call to _do_file() in a block so $SIG{__WARN__} catching can be localized
- moved symbol parsing into _parse_symbols()
- moved the undef of the entire namespace into a block so no strict 'refs' can be localized
- moved handler dispatching to _dispatch_handlers()
- reworked _do_file() to take less of a role in handling errors and warnings; it simply takes an already opened filehandle, a namespace, a hash reference, and a lexicals string, and does an eval; untainting, error handling, and lexicals string construction are now handling in parse()
- removed the $namespace and $filename lexicals from _do_file(), and thus from being used in the configuration file
- added _encode_namespace() for use in _construct_namespace()
- updated the documentation to reflect user-visible changes
- intentionally made documentation regarding namespace construction vague to allow for future changes in how it's done
Modules
parse a configuration file written in Perl