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.10.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: dotdotdot-1.0.10.tar.gz
  • Upload date:
  • Size: 4.9 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.1

File hashes

Hashes for dotdotdot-1.0.10.tar.gz
Algorithm Hash digest
SHA256 d4d9be6ecbc2f98d58daf699df21b84cff1120036a36522b05bd9316b815fd85
MD5 76cb0ddb16570096d35ce9dfe42c2540
BLAKE2b-256 54335e3a4e4c1981a4ae81ad34d5c4000e6e869814284d34431f5ce8ceed92e8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dotdotdot-1.0.10-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.1

File hashes

Hashes for dotdotdot-1.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 e23d6f0a152e200821cdacb2786d6c3e303ecab1a9309a7756f39e36051cee0d
MD5 3a61b2eba8e28260a89e3e61a57885cb
BLAKE2b-256 b83294b879ef71f9308d9ef2a748f0d6449d13766a5106819ec7fbfbb432df36

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