ANN: ConfigObj 4.5.2 and validate 0.3.2

F

Fuzzyman

There was a bug in release 4.5.1 of ConfigObj, so there is now an
updated release:

* `ConfigObj 4.5.2 <http://www.voidspace.org.uk/python/
configobj.html>`_
* `Validate 0.3.2 <http://www.voidspace.org.uk/python/validate.html>`_

The bug affected the use of ``None`` as a default value in configspecs
and is now fixed.

What are ConfigObj and Validate?
=========================

**ConfigObj** is a simple to use but powerful configuration file
management library.
Features include:

* Nested sections to any depth
* Unicode support
* List and multiline values
* Integrated with a powerful validation system

- including automatic type checking/conversion
- repeated sections
- and allowing default values

* All comments in a file are preserved when writing
* The order of keys/sections is preserved
* A powerful unrepr mode for storing basic datatypes

**validate** is the module (optional) used for config file validation
and type marshalling. It
can be used outside of ConfigObj for matching string values against a
text specification which
also does type conversion.


Changes in ConfigObj 4.5.x
====================

Distribution now includes validate 0.3.2 so ``None`` as a default
value in configspecs works again.

BUGFIX: Unicode configspecs now work.

ConfigObj will now guarantee that files will be written terminated
with a newline.

ConfigObj will no longer attempt to import the ``validate`` module,
until/unless you call ``ConfigObj.validate`` with
``preserve_errors=True``. This
makes it faster to import.

New methods ``restore_default`` and ``restore_defaults``.
``restore_default`` resets an entry to its default value (and returns
that value). ``restore_defaults`` resets all entries to their default
value. It doesn't modify entries
without a default value. You must have validated a ConfigObj (which
populates the ``default_values`` dictionary) before calling these
methods.

BUGFIX: Proper quoting of keys, values and list values that contain
hashes (when writing). When ``list_values=False``, values containing
hashes are triple quoted.

Added the ``reload`` method. This reloads a ConfigObj from file. If
the filename attribute is not set then a ``ReloadError`` (a new
exception inheriting from ``IOError``) is raised.

BUGFIX: Files are read in with 'rb' mode, so that native/non-native
line endings work!

Minor efficiency improvement in ``unrepr`` mode.

Added missing docstrings for some overridden dictionary methods.

Added the ``reset`` method. This restores a ConfigObj to a freshly
created state.

Removed old CHANGELOG file.


Changes in Validate 0.3.x
==================

BUGFIX: ``None`` as a default value handled correctly.

BUGFIX: Unicode checks no longer broken.

Improved performance with a parse cache.

New ``get_default_value`` method. Given a check it returns the default
value (converted to the correct type) or raises a ``KeyError`` if the
check doesn't specify a default.

Added 'tuple' check and corresponding 'is_tuple' function (which
always returns a tuple).

BUGFIX: A quoted 'None' as a default value is no longer treated as
None,
but as the string 'None'.

BUGFIX: We weren't unquoting keyword arguments of length two, so an
empty string didn't work as a default.

BUGFIX: Strings no longer pass the 'is_list' check. Additionally, the
list checks always return lists.

A couple of documentation bug fixes.

Removed CHANGELOG from module.

Michael Foord
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,535
Members
45,007
Latest member
obedient dusk

Latest Threads

Top