diff --git a/CHANGELOG.md b/CHANGELOG.md index 25075e8d36..7bff945c34 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -23,6 +23,7 @@ This project adheres to [Semantic Versioning](https://semver.org/). - [#3303](https://github.com/plotly/dash/pull/3303) Improve flatten_grouping performance (callback with dictionary output/input) - [#3304](https://github.com/plotly/dash/pull/3304) Speed up function _operation by 80% +- [#3323](https://github.com/plotly/dash/pull/3323) Make Dash instances WSGI compliant, can now call gunicorn on the dash app itself. ## [3.0.4] - 2025-04-24 diff --git a/dash/dash.py b/dash/dash.py index 17a6c93380..e2dc952fe7 100644 --- a/dash/dash.py +++ b/dash/dash.py @@ -2395,3 +2395,11 @@ def update(pathname_, search_, **states): Output(_ID_DUMMY, "children"), Input(_ID_STORE, "data"), ) + + def __call__(self, environ, start_response): + """ + This method makes instances of Dash WSGI-compliant callables. + It delegates the actual WSGI handling to the internal Flask app's + __call__ method. + """ + return self.server(environ, start_response)