Skip to main content

No project description provided

Project description

speckenv because a speck is a synonym for a dot and because Speck is awesome.

Usage

Read the settings contained in ./.env into os.environ (or a different mapping; pass a dict-like object as mapping):

from speckenv import read_speckenv

read_speckenv()

Note that read_speckenv uses os.environ.setdefault to set new values, which means that if a particular key exists more than once in the file the first value is retained, not the last.

If the file is named differently or resides in a different path, pass the full path as first argument to read_speckenv.

Read individual values:

from speckenv import env

SETTING1 = env('SETTING1')
SETTING2 = env('SETTING2', default='bla')
SETTING3 = env('SETTING3 ', required=True)  # Fail hard if missing.
SETTING4 = env('SETTING4', coerce=bool)  # Coercion is also applied
                                         # to default values

# Different mapping: env('SOMETHING', mapping=...)

The following values are evaluated as Python literals:

BOOL=True  # And False, None etc.
NUMBER=42
SWEET_HOME=['localhost', '127.0.0.1']

Additional whitespace around the equals sign is supported. Empty lines and lines starting with a # are ignored.

NOTE! You should treat everything except for the first argument to both env and read_speckenv as keyword-only. Since speckenv still supports Python 2 this isn’t enforced by the code right now.

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

speckenv-1.3.tar.gz (3.7 kB view details)

Uploaded Source

Built Distribution

speckenv-1.3-py2.py3-none-any.whl (4.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file speckenv-1.3.tar.gz.

File metadata

  • Download URL: speckenv-1.3.tar.gz
  • Upload date:
  • Size: 3.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.6

File hashes

Hashes for speckenv-1.3.tar.gz
Algorithm Hash digest
SHA256 8e5e1b2457e098df989f9cd55ff77ca426161a3207129075dc101fa0bcdeadea
MD5 3dc39cc0d1da5d306ea8d04b8032f4b6
BLAKE2b-256 8060434f80d62d31b9c16366dc1773e3d2900faf9153036e714dde07356fa129

See more details on using hashes here.

File details

Details for the file speckenv-1.3-py2.py3-none-any.whl.

File metadata

  • Download URL: speckenv-1.3-py2.py3-none-any.whl
  • Upload date:
  • Size: 4.4 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.2.0 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.6

File hashes

Hashes for speckenv-1.3-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 4a52952f5a7c336d26848077e8232e2981a1d088e60047536ffec649836e15d8
MD5 d7d58380595186bbc307174454f373c9
BLAKE2b-256 4b99a54d729cc0e814d18c6ce8c186b35fb010cdea79f144df676855e2eb5e3f

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