Skip to main content

A Python configuration library that's music to your ears.

Project description

configaro configuration library

What is it?

configaro is a Python 3 configuration library that's music to your ears.

Why should I care?

configaro has been created with the following design goals in mind:

  • provide a single file library with minimal dependencies
  • provide one with a simple, expressive API that is easy to use and gets out of your way
  • provide one that allows for hierarchical config data supporting dot-addressable access
  • provide one that allows for defaults and locals config modules
  • provide one with complete test coverage
  • provide one with complete documentation

If this sounds appealing to you, take a look:

import configaro as cfg

# Initialize the library with the name of the package containing your defaults.py config module
cfg.init('mypkg.config')

# Get the entire config object
config = cfg.get()
print(config)  # prints "{'greeting': 'Hello', 'subject': 'World'}"

# Config object provide attribute access style in addition to dict access style.    
print('f{config.greeting}, {config.subject}!')  # prints "Hello, World!"

# Config objects may be updated quite flexibly as well.
cfg.put(greeting='Goodbye', subject='Folks'}
cfg.put({'greeting': 'Goodbye', 'subject': 'Folks'}) 
cfg.put('greeting=Goodbye subject=Folks')

What about Python 2?

I have zero interest in supporting Python 2 at this point. If you are still using Python 2 then move along -- there's nothing to see here.

Installation

configaro may be installed from the Python package index:

$ pip3 install configaro

configaro may also be installed from source:

$ git clone https://github.com/mojochao/configaro.git
$ pip3 install .

If you install from source with .[dev] you should be able to run tests:

$ pytest

Documentation

configaro documentation is hosted on Read The Docs and should be consulted for information on integrating it into your project.

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

configaro-0.9.7.tar.gz (31.6 kB view details)

Uploaded Source

Built Distribution

configaro-0.9.7-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file configaro-0.9.7.tar.gz.

File metadata

  • Download URL: configaro-0.9.7.tar.gz
  • Upload date:
  • Size: 31.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for configaro-0.9.7.tar.gz
Algorithm Hash digest
SHA256 c2b78ca829aa4ede4c75e79e8c3fc17fadd5f08d3d9d7d060147681100cb0990
MD5 4f0038a473d9603c560fea5f3492991d
BLAKE2b-256 05e373b243abab65c1cb45a51a05a54a4c5812d9ebe1090424b2b064cc49d9da

See more details on using hashes here.

File details

Details for the file configaro-0.9.7-py3-none-any.whl.

File metadata

File hashes

Hashes for configaro-0.9.7-py3-none-any.whl
Algorithm Hash digest
SHA256 d2c8c87c0937c915365c4fb4d257f52a5a11188e0217404c2a151658cebe19f8
MD5 c7fa8423ee6f78d43aa361a22757395a
BLAKE2b-256 79e348fd48e312bf4afef3ebfcf689b9146448e9fc3f80cf6d01b1a7b03b12e9

See more details on using hashes here.

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