Skip to main content

Is a configuration management tool

Project description


Configuration files behave like cancer tumor. As soon as one is created with a handful of parameters, it starts to grow. And in a couple of month it becomes huge hardly supportable monster with dozens of parameters, which affects on different subsystems of the project like metastasis.

The goal of ConfigTree project is to restrain the monster, but without overkill for small projects. It can be used in Python programs as well as in programs written in other languages.

ConfigTree will be useful for you, if you want to:

  • keep default configuration options and environment-specific ones separated;
  • fine-tune files to load for each environment;
  • validate configuration;
  • have templates and automation in your configuration files.

The full documentation is available at Read the Docs.



  • Fixed bug in Walker.environment method.


  • Fixed bugs in ITree.rare_copy and ITree.rare_keys methods.


  • Fixed bugs in Loader class.


  • Added abstract base class ITree to unify type checking;
  • Fixed pop method of Tree and BranchProxy;
  • Added rare_copy method into Tree and BranchProxy;
  • Unified rarefy function, it now handles any mapping object.


  • Dropped Python 2.6 support.
  • Completely reworked loading process (see migration guide):
    • functions load, loaderconf are deprecated in favor of class Loader;
    • function make_walk is deprecated in favor of Walker;
    • function make_update is deprecated in favor of Updater;
    • module configtree.conv and its plugins (from entry point with the same name) is deprecated in favor or configtree.formatter;
    • shell command configtree is deprecated in favor of ctdump.


  • Dropped Python 3.2 support due to coverage package. The code should still work OK, but it will not be tested anymore.
  • Added loaderconf function to be able to read loader configuration from module in a clean way.


  • Added copy method into Tree and BranchProxy classes.
  • Added human readable representation of BranchProxy class.
  • Added rare iterators into Tree and BranchProxy classes.
  • Added rarefy function.
  • Added rare JSON converter.


  • Initial release.

Download files

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

Files for ConfigTree, version 0.5.3
Filename, size File type Python version Upload date Hashes
Filename, size ConfigTree-0.5.3.tar.gz (22.2 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page