T
Tim Daneliuk
'tconfpy' 1.181 is released and available at:
http://www.tundraware.com/Software/tconfpy/
This is the first public release of the program. A FreeBSD port
is also being submitted.
'tconfpy' is an advanced configuration file parser and validator for
Python programs. By using 'tconfpy', Python programmers can provide
their users with an external configuration file for setting program
options, defining defaults, and so on. 'tconfpy' offloads the
responsibility for parsing and validating a configuration file from
the main application. The Python programmer need only deal
with the results and any errors or warnings generated during the
parsing process.
'tconfpy' recognizes a rich configuration language and provides a
number of sophisticated programming features including:
- The ability to breakup large configurations into smaller pieces
via the '.include' directive.
- Support for string substitution and concatenation throughout the
configuration file via string variables. Variables may be
locally declared, a reference to a symbol already in the
symbol table, or a reference to an environment variable.
- A complete set of conditional directives for selective
processing of configuration options. Both existential ("If
variable exists ...") and comparison ("if string equals/does not
equal string ...") forms are provided, as is an '.else'
directive.
- The ability to instantiate program options prior to reading a
configuration file and make them mandatory by declaring those
options as Read-Only.
- Optional type validation to ensure that a user enters a value
appropriate for boolean, integer, floating point, string, or
complex data.
- Optional value validation to ensure that a configuration option
is either within a specified range or one of an enumerated set
of possible values. For configuration options which are string
types, 'tconfpy', can optionally specify min/max string lengths
and enumerate a set of legitimate regular expressions that the
string must match.
- The ability to define an arbitrary number of lexical namespaces.
- The ability to use the various features of 'tconfpy' as a pre-
processor for any other text (including source code for other
programming languages and Python itself) via the '.literal'
directive.
- An optional debug capability which returns detailed information
about each line parsed.
- Includes a test driver program for learning how to program with
'tconfpy' and for debugging and testing your own configuration
files.
- Comes with over 30 pages of documentation including a
Programmer's API Reference and a User's Guide to the 'tconfpy'
configuration language. Documentation is provided in several
formats including Unix 'man', Plain Text, html, pdf, and
Postscript.
'tconfpy' is a Pure Python module and is platform-independent.
It should work identically on any platform on which Python runs.
http://www.tundraware.com/Software/tconfpy/
This is the first public release of the program. A FreeBSD port
is also being submitted.
'tconfpy' is an advanced configuration file parser and validator for
Python programs. By using 'tconfpy', Python programmers can provide
their users with an external configuration file for setting program
options, defining defaults, and so on. 'tconfpy' offloads the
responsibility for parsing and validating a configuration file from
the main application. The Python programmer need only deal
with the results and any errors or warnings generated during the
parsing process.
'tconfpy' recognizes a rich configuration language and provides a
number of sophisticated programming features including:
- The ability to breakup large configurations into smaller pieces
via the '.include' directive.
- Support for string substitution and concatenation throughout the
configuration file via string variables. Variables may be
locally declared, a reference to a symbol already in the
symbol table, or a reference to an environment variable.
- A complete set of conditional directives for selective
processing of configuration options. Both existential ("If
variable exists ...") and comparison ("if string equals/does not
equal string ...") forms are provided, as is an '.else'
directive.
- The ability to instantiate program options prior to reading a
configuration file and make them mandatory by declaring those
options as Read-Only.
- Optional type validation to ensure that a user enters a value
appropriate for boolean, integer, floating point, string, or
complex data.
- Optional value validation to ensure that a configuration option
is either within a specified range or one of an enumerated set
of possible values. For configuration options which are string
types, 'tconfpy', can optionally specify min/max string lengths
and enumerate a set of legitimate regular expressions that the
string must match.
- The ability to define an arbitrary number of lexical namespaces.
- The ability to use the various features of 'tconfpy' as a pre-
processor for any other text (including source code for other
programming languages and Python itself) via the '.literal'
directive.
- An optional debug capability which returns detailed information
about each line parsed.
- Includes a test driver program for learning how to program with
'tconfpy' and for debugging and testing your own configuration
files.
- Comes with over 30 pages of documentation including a
Programmer's API Reference and a User's Guide to the 'tconfpy'
configuration language. Documentation is provided in several
formats including Unix 'man', Plain Text, html, pdf, and
Postscript.
'tconfpy' is a Pure Python module and is platform-independent.
It should work identically on any platform on which Python runs.