Skip to main content

Is a configuration management tool

Project description

ConfigTree

https://travis-ci.com/Cottonwood-Technology/ConfigTree.svg?branch=master https://badge.fury.io/py/ConfigTree.svg https://readthedocs.org/projects/configtree/badge/?version=latest

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.

Changes

0.6

  • Dropped deprecated features.

  • Fixed deprecation warnings on Python 3.7 and higher.

  • Migrated tests from Nose to PyTest.

0.5.3

  • Fixed bug in Walker.environment method.

0.5.2

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

0.5.1

  • Fixed bugs in Loader class.

0.5

  • 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.

0.4

  • 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.

0.3

  • 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 loaderconf.py module in a clean way.

0.2

  • 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.

0.1

  • Initial release.

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

ConfigTree-0.6.tar.gz (18.5 kB view details)

Uploaded Source

Built Distribution

ConfigTree-0.6-py2.py3-none-any.whl (20.7 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ConfigTree-0.6.tar.gz.

File metadata

  • Download URL: ConfigTree-0.6.tar.gz
  • Upload date:
  • Size: 18.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/2.7.15

File hashes

Hashes for ConfigTree-0.6.tar.gz
Algorithm Hash digest
SHA256 c94994c8ded1829ae41367b396ee1a7fc7707b4742ba243c88ca52adfa6707cf
MD5 8cde0cf33dc16439380e51cf8e6bd7e8
BLAKE2b-256 1ec1630728642358a519b4480a2f8d6f13a8066227a561d066469b67e02cb67d

See more details on using hashes here.

File details

Details for the file ConfigTree-0.6-py2.py3-none-any.whl.

File metadata

  • Download URL: ConfigTree-0.6-py2.py3-none-any.whl
  • Upload date:
  • Size: 20.7 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/44.1.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/2.7.15

File hashes

Hashes for ConfigTree-0.6-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1b9c35d871335ad4d6b3bbfa2b92d489aab69f635333549abffc34cb43915607
MD5 1ffb110bf57fa914e0e76d03823b228e
BLAKE2b-256 cb8f0804c49181d6a2fe599f08f4bedc5c129f0b7ad7221a1902820ba5a3fde1

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