Skip to content

Commit c7e6078

Browse files
committed
remove deprecated before_first_request
1 parent 9dbc2ec commit c7e6078

File tree

1 file changed

+13
-2
lines changed

1 file changed

+13
-2
lines changed

dash/dash.py

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -497,6 +497,9 @@ def __init__( # pylint: disable=too-many-statements
497497
for plugin in plugins:
498498
plugin.plug(self)
499499

500+
# tracks internally if a function already handled at least one request.
501+
self._got_first_request = {"pages": False, "setup_server": False}
502+
500503
if self.server is not None:
501504
self.init_app()
502505

@@ -542,7 +545,7 @@ def _handle_error(_):
542545
"""Handle a halted callback and return an empty 204 response."""
543546
return "", 204
544547

545-
self.server.before_first_request(self._setup_server)
548+
self.server.before_request(self._setup_server)
546549

547550
# add a handler for components suites errors to return 404
548551
self.server.errorhandler(InvalidResourceError)(self._invalid_resources_handler)
@@ -1269,6 +1272,10 @@ def dispatch(self):
12691272
return response
12701273

12711274
def _setup_server(self):
1275+
if self._got_first_request["setup_server"]:
1276+
return
1277+
self._got_first_request["setup_server"] = True
1278+
12721279
# Apply _force_eager_loading overrides from modules
12731280
eager_loading = self.config.eager_loading
12741281
for module_name in ComponentRegistry.registry:
@@ -2022,8 +2029,12 @@ def enable_pages(self):
20222029
if self.pages_folder:
20232030
self._import_layouts_from_pages()
20242031

2025-
@self.server.before_first_request
2032+
@self.server.before_request
20262033
def router():
2034+
if self._got_first_request["pages"]:
2035+
return
2036+
self._got_first_request["pages"] = True
2037+
20272038
@self.callback(
20282039
Output(_ID_CONTENT, "children"),
20292040
Output(_ID_STORE, "data"),

0 commit comments

Comments
 (0)