Skip to content

Commit b59ac20

Browse files
authored
Merge pull request #2047 from PGrawe/debug_env
Fixed bug that prevented env DASH_DEBUG to work
2 parents 1e57fb2 + 3655c0f commit b59ac20

File tree

3 files changed

+50
-1
lines changed

3 files changed

+50
-1
lines changed

CHANGELOG.md

+1
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ This project adheres to [Semantic Versioning](https://semver.org/).
99
- [#2043](https://github.com/plotly/dash/pull/2043) Fix bug
1010
[#2003](https://github.com/plotly/dash/issues/2003) in which
1111
`dangerously_allow_html=True` + `mathjax=True` works in some cases, and in some cases not.
12+
- [#2047](https://github.com/plotly/dash/pull/2047) Fix bug [#1979](https://github.com/plotly/dash/issues/1979) in which `DASH_DEBUG` as enviroment variable gets ignored.
1213

1314
## [2.4.1] - 2022-05-11
1415

dash/dash.py

+4-1
Original file line numberDiff line numberDiff line change
@@ -1896,7 +1896,7 @@ def run(
18961896
host=os.getenv("HOST", "127.0.0.1"),
18971897
port=os.getenv("PORT", "8050"),
18981898
proxy=os.getenv("DASH_PROXY", None),
1899-
debug=False,
1899+
debug=None,
19001900
dev_tools_ui=None,
19011901
dev_tools_props_check=None,
19021902
dev_tools_serve_dev_bundles=None,
@@ -1987,6 +1987,9 @@ def run(
19871987
19881988
:return:
19891989
"""
1990+
if debug is None:
1991+
debug = get_combined_config("debug", None, False)
1992+
19901993
debug = self.enable_dev_tools(
19911994
debug,
19921995
dev_tools_ui,

tests/unit/test_configs.py

+45
Original file line numberDiff line numberDiff line change
@@ -437,3 +437,48 @@ def test_app_invalid_delayed_config():
437437
app = Dash(server=False)
438438
with pytest.raises(AttributeError):
439439
app.init_app(app=Flask("test"), name="too late 2 update")
440+
441+
442+
@pytest.mark.parametrize(
443+
"debug_env, debug, expected",
444+
[
445+
(None, None, False),
446+
(None, True, True),
447+
(None, False, False),
448+
('True', None, True),
449+
('True', True, True),
450+
('True', False, False),
451+
('False', None, False),
452+
('False', True, True),
453+
('False', False, False),
454+
],
455+
)
456+
def test_debug_mode_run(empty_environ, debug_env, debug, expected):
457+
if debug_env:
458+
os.environ['DASH_DEBUG'] = debug_env
459+
app = Dash()
460+
with pytest.raises(AssertionError):
461+
app.run(debug=debug, port=-1)
462+
assert app._dev_tools.ui == expected
463+
464+
465+
@pytest.mark.parametrize(
466+
"debug_env, debug, expected",
467+
[
468+
(None, None, True),
469+
(None, True, True),
470+
(None, False, False),
471+
('True', None, True),
472+
('True', True, True),
473+
('True', False, False),
474+
('False', None, False),
475+
('False', True, True),
476+
('False', False, False),
477+
],
478+
)
479+
def test_debug_mode_enable_dev_tools(empty_environ, debug_env, debug, expected):
480+
if debug_env:
481+
os.environ['DASH_DEBUG'] = debug_env
482+
app = Dash()
483+
app.enable_dev_tools(debug=debug)
484+
assert app._dev_tools.ui == expected

0 commit comments

Comments
 (0)