the grand unified configuration system
Latest commit 8eaaeed Aug 16, 2016 @willkg willkg committed on GitHub Merge pull request #166 from willkg/str-to-boolean-docs
Tweak docs regarding bool as a converter
Failed to load latest commit information.
configman version 0.13.0 Jul 11, 2016
demo use range instead of xrange Jul 1, 2016
docs Tweak docs regarding bool as a converter Aug 16, 2016
.travis.yml add py3{3,4,5} to travis Jul 1, 2016
AUTHORS corrected my name Oct 3, 2011
LICENSE adding requirements to manifest and bumping to 1.2.2 Apr 15, 2014 the (c) causes problems on pypi Mar 27, 2015
contribute.json Change irc channel to breakpad Feb 27, 2015
requirements.txt update packaging files for py3 Jul 1, 2016 fix py26 total_ordering Jul 6, 2016
test-requirements.txt issue 106 - require configobj Apr 8, 2014
tox.ini add total_ordering Jul 5, 2016



Copyright Mozilla, 2013 - 2015

General tool for setting up configuration options per namespaces. Supports reading and writing configs generally from and into config files.

Running tests

We use nose to run all the unit tests and tox to test multiple python versions. To run the whole suite just run:


tox will pass arguments after -- to nosetests. To run with test coverage calculation, run tox like this:

tox -- --with-coverage --cover-html --cover-package=configman

If you want to run a specific test in a testcase class, though, you might consider just using nosetests:

nosetests configman.tests.test_config_manager:TestCase.test_write_flat

Making a release

Because our .travis.yml has all the necessary information to automatically make a release, all you need to do is to push a commit onto master. Most likely you will only want to do this after you have edited the configman/version.txt file. Suppose you make some changes:

git add configman/
git commit -m "fixed something"

You might want to push that to your fork and make a pull request. Then, to update the version and make a release, first do this:

vim configman/version.txt
git add configman/version.txt
git commit -m "bump to version x.y.z"
git push origin master

After that travis, upon a successful build will automatically make a new tarball and wheel and upload it to PyPI