Utility functions and classes for .ini style configuration files.
Project description
Utility functions and classes for .ini style configuration files.
Latest release 20250103: Import and requirement update for recent changes elsewhere.
Class ConfigSectionWatcher(collections.abc.Mapping)
A class for monitoring a particular clause in a config file.
ConfigSectionWatcher.__init__(self, config, section, defaults=None):
Initialise a ConfigSectionWatcher to monitor a particular section
of a config file.
config: path of config file or ConfigWatcher
section: the section to watch
defaults: the defaults section to use, default 'DEFAULT'
ConfigSectionWatcher.__getitem__(self, key):
Mapping methods.
ConfigSectionWatcher.as_dict(self):
Return the config section as a dict.
ConfigSectionWatcher.keys(self):
Return the keys of the config section.
ConfigSectionWatcher.path:
The pathname of the config file.
Class ConfigWatcher(collections.abc.Mapping)
A monitor for a windows style .ini file.
The current SafeConfigParser object is presented as the .config property.
ConfigWatcher.__getitem__(self, section):
Return the ConfigSectionWatcher for the specified section.
ConfigWatcher.as_dict(self):
Construct and return a dictionary containing an entry for each section
whose value is a dictionary of section items and values.
ConfigWatcher.config:
Live configuration.
ConfigWatcher.path:
The path to the config file.
ConfigWatcher.section_keys(self, section):
Return the field names for the specified section.
ConfigWatcher.section_value(self, section, key):
Return the value of [section]key.
Class HasConfigIni
Class for objects with a config.ini file.
A section of the config is designated "our" configuration
and its fields parsed into a TagSet;
in particular the field values use the TagSet transcription syntax.
The default implementation is expected to be mixed into a
class with a .pathto(rpath) method, such as one which
inherits from HasFSPath.
The mixin provides the following attributes:
config: an on demand property which is aTagSetmade from the configuration file sectionconfig_ini: the relative path to the configuration fileconfigpath: the full pathname of the configuration fileconfig_flush(): update the configuration file if the tags have been modified
HasConfigIni.__init__(self, section, config_ini=None):
Initialise the configuration.
HasConfigIni.config:
The configuration as a TagSet.
HasConfigIni.config_flush(self):
Save the current configuration to the config.ini file if self.__modified.
HasConfigIni.configpath:
The path to the config.ini file.
HasConfigIni.info_dict(self, d=None):
Return an informational dict containing salient information
about this HasCOnfigIni, handy for use with pprint().
load_config(config_path, parser=None)
Load a configuration from the named config_path.
If parser is missing or None, use SafeConfigParser (just
ConfigParser in Python 3).
Return the parser.
Release Log
Release 20250103: Import and requirement update for recent changes elsewhere.
Release 20220606: HasConfigIni: new info_dict() method (name subject to change) to return a descriptive dict, part of a new scheme I'm trying out to report summary data from commands.
Release 20220430: New HasConfigIni mixin for classes keeping some configuration in a .ini config file section.
Release 20210306: Fix imports from collections.abc.
Release 20190101: Internal changes.
Release 20160828: Update metadata with "install_requires" instead of "requires".
Release 20150118: Initial PyPI release.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cs_configutils-20250103.tar.gz.
File metadata
- Download URL: cs_configutils-20250103.tar.gz
- Upload date:
- Size: 4.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
997138cf0b643dc7dd4ebc4c8a78861a2b972964e6211718e3e99df87e75f914
|
|
| MD5 |
23d9b8e9412098403a69847efdb72750
|
|
| BLAKE2b-256 |
f09c9c9ee02fb86bf5ec4c9da3c44e08d0fee1ca33de6f06e4af5bb7ba97d200
|
File details
Details for the file cs_configutils-20250103-py3-none-any.whl.
File metadata
- Download URL: cs_configutils-20250103-py3-none-any.whl
- Upload date:
- Size: 5.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7409ea168009d6ccffcbedbf24416f5b37a5abfb3c0c0a53ca5bdce3edff91c1
|
|
| MD5 |
120d06d4369e687f8a1a4eb65d4a217e
|
|
| BLAKE2b-256 |
c3e46151330309bdfd54e78becee35e5972aeeb741d546c1ce7f482cf27272d0
|