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 details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

Details for the file dotdotdot-1.0.11.tar.gz.

File metadata

  • Download URL: dotdotdot-1.0.11.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for dotdotdot-1.0.11.tar.gz
Algorithm Hash digest
SHA256 2ae71c32b350a9c5898cd6398cc99b708bb6fdb9ea16916d6a3035b7d63f2e4f
MD5 6dcc5fe7d5fb375afb8f53afe3a70889
BLAKE2b-256 db48b7ce289632593fd663fc565f24977e2b7b4a65b35b363c38aa35e9e50e77

See more details on using hashes here.

File details

Details for the file dotdotdot-1.0.11-py3-none-any.whl.

File metadata

  • Download URL: dotdotdot-1.0.11-py3-none-any.whl
  • Upload date:
  • Size: 4.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3

File hashes

Hashes for dotdotdot-1.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 6783ae585bb7fcd7a891da4b23207c1c2ed7a2003d81a95c27cd14b336da424b
MD5 ba78822ef1662ff78f4ae380faf90e1d
BLAKE2b-256 64530e960629c606af6158e287e7cb37970d4415597964edf02d72ec2e6c74d5

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