Access env variables by one line declaration with automatic typecasting
Project description
ENViscerate
One line access to environment variables, handling typecasts automatically. Simply declare a variable with the same name, assigning it to the output of the function env(default_value)
where default_value
is of the type you want the env variable casted as. It is easier to say with an example
from enviscerate import env
HOME = env('/this/dir')
Will set the value of HOME with the following precedence
- env var
$HOME
- .env file supplied value
- value
'/this/dir'
you supplied to env() function above
features
- if type is dict, it will be parsed as JSLOB using jsonofabitch module(if available). parsed as JSON using builtin json.loads() otherwise
- if bool it will be set to
True
ifstr(val).lower() in ["t", "true", "1", "yes", "y"]
forenv(val)
andFalse
otherwise - If
None
, the case ofenv()
, you will getNone
if the variable is not declared and a string otherwise - otherwise it will be casted as whatever you supply. presumably an
int
float
orstr
but with no presumptions or restrictions thereof - It will use dotenv if available but does not require it, but will spit warnings to avoid frustrating mysterious why-are-my-settings-not-registering hickups
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
enviscerate-0.0.1.tar.gz
(2.8 kB
view details)
Built Distribution
File details
Details for the file enviscerate-0.0.1.tar.gz
.
File metadata
- Download URL: enviscerate-0.0.1.tar.gz
- Upload date:
- Size: 2.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1404177d1495845eaadc5e11878bcee1ec68454bd2531cc63bf7ae3918fbda46 |
|
MD5 | 2ebf5e6df666b3bbc472baf556f35f47 |
|
BLAKE2b-256 | 39b904f23d8a9efad8f35fc5c14ec66d4fc43e92acde188cc9b3dbc6b1964ec0 |
File details
Details for the file enviscerate-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: enviscerate-0.0.1-py3-none-any.whl
- Upload date:
- Size: 3.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b18f046dc8f0e79ff1ef19cd3c0e21cae0347238bcd56b081b12d47bb16fc02f |
|
MD5 | cf719d12b137054d34ede467a2dbeb78 |
|
BLAKE2b-256 | e2b91ba9bec41d891a0b3e041e53094dabcc6ae5b77e4ffd2c4425c3fe304e2b |