Skip to main content

Access application configuration using dot notation

Project description

dotdotdot

A minimalist python library to access application configuration using dot notation.


Usage

   (dot3.6) narora@nararombp ~/s/d/tests ๐“๐“ฎ๐“ฑ๐“ช๐“ป > cat test_config.yml
    test:
      nest:
        inty: 1
        stringy: 'string'
        listy: [1]
    (dot3.6) narora@nararombp ~/s/d/tests ๐“๐“ฎ๐“ฑ๐“ช๐“ป > python
    Python 3.6.4 (default, Dec 21 2017, 20:32:22)
    [GCC 4.2.1 Compatible Apple LLVM 7.3.0 (clang-703.0.31)] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import dotdotdot as dot
    >>> c = dot.load('test_config.yml')
    >>> type(c)
    <class 'dotdotdot.config.Config'>
    >>> type(c.test)
    <class 'dotdotdot.config.test'>
    >>> type(c.test.nest)
    <class 'dotdotdot.config.nest'>
    >>> type(c.test.nest.inty)
    <class 'int'>
    >>> type(c.test.nest.stringy)
    <class 'str'>
    >>> type(c.test.nest.listy)
    <class 'list'>
    >>> c.test.nest.inty
    1
    >>> c.test.nest.stringy
    'string'
    >>> c.test.nest.listy
    [1]
    >>>

Run tests

  • Python 2.7
(dot2.7) nehar@nehar-macbook ~/D/s/dotdotdot ๐“๐“ฎ๐“ฑ๐“ช๐“ป > pytest
=============== test session starts ===============
platform darwin -- Python 2.7.15, pytest-4.2.0, py-1.7.0, pluggy-0.8.1
rootdir: /Users/nehar/Documents/src/dotdotdot, inifile: pytest.ini
plugins: pep8-1.0.6, flake8-1.0.4
collected 3 items

tests/test_config.py ...                                                                                                                                                                                                                                [100%]

=============== deprecated python version ===============
You are using Python 2.7.15, which will no longer be supported in pytest 5.0
For more information, please read:
  https://docs.pytest.org/en/latest/py27-py34-deprecation.html
=============== 3 passed in 0.10 seconds ===============
(dot2.7) nehar@nehar-macbook ~/D/s/dotdotdot ๐“๐“ฎ๐“ฑ๐“ช๐“ป >
  • Python 3.7
(dot2.7) nehar@nehar-macbook ~/D/s/dotdotdot ๐“๐“ฎ๐“ฑ๐“ช๐“ป > vf activate dot3.7
(dot3.7) nehar@nehar-macbook ~/D/s/dotdotdot ๐“๐“ฎ๐“ฑ๐“ช๐“ป > pytest
/Users/nehar/venvs/dot3.7/lib/python3.7/site-packages/pep8.py:110: FutureWarning: Possible nested set at position 1
  EXTRANEOUS_WHITESPACE_REGEX = re.compile(r'[[({] | []}),;:]')
=============== test session starts ===============
platform darwin -- Python 3.7.1, pytest-4.2.0, py-1.7.0, pluggy-0.8.1
rootdir: /Users/nehar/Documents/src/dotdotdot, inifile: pytest.ini
plugins: pep8-1.0.6, flake8-1.0.4
collected 3 items

tests/test_config.py ...                                                                                                                                                                                                                                [100%]

=============== 3 passed in 0.09 seconds ===============
(dot3.7) nehar@nehar-macbook ~/D/s/dotdotdot ๐“๐“ฎ๐“ฑ๐“ช๐“ป >

Building the wheel

    (3.6) nehar@mac ~/s/dotdotdot ๐“๐“ฎ๐“ฑ๐“ช๐“ป > python setup.py bdist_wheel

Installation

    (3.6) nehar@mac ~/s/dotdotdot ๐“๐“ฎ๐“ฑ๐“ช๐“ป > pip install dist/dotdotdot-1.0.0-py3-none-any.whl
    Processing ./dist/dist/dotdotdot-1.0.0-py3-none-any.whl 
    Installing collected packages: dotdotdot
    Successfully installed dotdotdot-1.0.0

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

dotdotdot-1.0.11.tar.gz (5.0 kB view hashes)

Uploaded Source

Built Distribution

dotdotdot-1.0.11-py3-none-any.whl (4.9 kB view hashes)

Uploaded Python 3

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