Skip to content

Commit f4b2072

Browse files
committed
for backward compatibility added option not to force all to jinja templating
1 parent 89de186 commit f4b2072

2 files changed

Lines changed: 5 additions & 4 deletions

File tree

dotenv/main.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ def jinja_templating(variable):
2525
return variable
2626

2727

28-
def load_dotenv(dotenv_path, verbose=False, override=False):
28+
def load_dotenv(dotenv_path, verbose=False, override=False, jinja_template=False):
2929
"""
3030
Read a .env file and load into os.environ.
3131
"""
@@ -34,7 +34,8 @@ def load_dotenv(dotenv_path, verbose=False, override=False):
3434
warnings.warn("Not loading %s - it doesn't exist." % dotenv_path)
3535
return None
3636
for k, v in dotenv_values(dotenv_path).items():
37-
v = jinja_templating(v)
37+
if jinja_template:
38+
v = jinja_templating(v)
3839
if override:
3940
os.environ[k] = v
4041
else:

tests/test_core.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ def test_load_dotenv_variable_jinja_formatting(cli):
9595
set_key(dotenv_path, 'a', 'foo')
9696
set_key(dotenv_path, 'b', '{{a}}/bar')
9797
set_key(dotenv_path, 'c', '{bar}')
98-
success = load_dotenv(dotenv_path)
98+
success = load_dotenv(dotenv_path, jinja_template=True)
9999
assert success
100100
assert os.environ['a'] == 'foo'
101101
assert os.environ['b'] == 'foo/bar'
@@ -109,7 +109,7 @@ def test_load_dotenv_variable_filtering(cli):
109109
sh.touch(dotenv_path)
110110
set_key(dotenv_path, 'd', 'foo')
111111
set_key(dotenv_path, 'e', '{{a|upper}}')
112-
success = load_dotenv(dotenv_path)
112+
success = load_dotenv(dotenv_path, jinja_template=True)
113113
assert success
114114
assert os.environ['d'] == 'foo'
115115
assert os.environ['e'] == os.environ['a'].upper()

0 commit comments

Comments
 (0)