Skip to main content

A Python module for managing config files in keyword style json format.

Project description

Install

  1. Install Python

  2. Install kwconfig via pip

pip install kwconfig

For the latest developer version, see Developer Install.

Usage

import kwconfig

# Specify a file path for creating kwconfig object
config = kwconfig.manage('config.json', defaults={'key0': 'value0'})

# Update the config file with a key and value dict
config.update({'key1': 'value1', 'key2': 'value2'})

# Add a keyword dict to existing config file
# If a key exists, it will be updated
# If a key does not exist, it will be added
other_config = {'key3': 'value3'}
other_config = config.add(other_config)

# Write new values using keyword dict
config.overwrite({
  'new_key1': 'new_value1',
  'new_key2': 'new_value2'
})

# Obtain a dict of the config file contents
kw = config.read()

# Remove the key named "key1"
config.remove('key1')

# Reset to defaults
config.reset()

For more usage details, see the Documentation.

Developer Notes

Developer Install

Install the latest developer version with pip from github:

pip install git+https://github.com/rrwen/kwconfig

Install from git cloned source:

  1. Ensure git is installed

  2. Clone into current path

  3. Install via pip

git clone https://github.com/rrwen/kwconfig
cd kwconfig
pip install . -I

Tests

  1. Ensure unittest is available

  2. Run tests

pip install . -I
python -m unittest

Documentation Maintenance

  1. Ensure sphinx is installed pip install -U sphinx

  2. Update the documentation in docs/

pip install . -I
sphinx-build -b html docs/source docs

Upload to Github

  1. Ensure git is installed

  2. Add all files and commit changes

  3. Push to github

git add .
git commit -a -m "Generic update"
git push

Upload to PyPi

  1. Ensure twine is installed pip install twine

  2. Ensure sphinx is installed pip install -U sphinx

  3. Run tests and check for OK status

  4. Delete dist directory

  5. Update the version in kwconfig/__init__.py

  6. Update the documentation in docs/

  7. Create source distribution

  8. Upload to PyPi

pip install . -I
python -m unittest
sphinx-build -b html docs/source docs
python setup.py sdist
twine upload dist/*

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kwconfig-1.0.1.tar.gz (2.4 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page