From c9b5b9ab3fa3a8d1fb50205c26a27649e2200f79 Mon Sep 17 00:00:00 2001 From: t4rk1n Date: Tue, 12 Feb 2019 13:30:39 -0500 Subject: [PATCH 1/3] :sparkles: Add component packages dist to hot reload watch. --- dash/dash.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/dash/dash.py b/dash/dash.py index 20448ce3c8..9c20bf726a 100644 --- a/dash/dash.py +++ b/dash/dash.py @@ -24,7 +24,7 @@ from .dependencies import Input, Output, State from .resources import Scripts, Css -from .development.base_component import Component +from .development.base_component import Component, ComponentRegistry from . import exceptions from ._utils import AttributeDict as _AttributeDict from ._utils import interpolate_str as _interpolate @@ -1155,9 +1155,14 @@ def enable_dev_tools(self, if self._dev_tools.hot_reload: self._reload_hash = _generate_hash() + component_packages_dist = [ + os.path.dirname(pkgutil.find_loader(package).path) + for package in ComponentRegistry.registry + ] + self._watch_thread = threading.Thread( target=lambda: _watch.watch( - [self._assets_folder], + [self._assets_folder] + component_packages_dist, self._on_assets_change, sleep_time=self._dev_tools.hot_reload_watch_interval) ) From 04a23bd7ea75e5250cd30b2dbe90351f01b33588 Mon Sep 17 00:00:00 2001 From: t4rk1n Date: Wed, 13 Feb 2019 11:56:36 -0500 Subject: [PATCH 2/3] :bug: Fix hot reload dist for python 2. --- dash/dash.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/dash/dash.py b/dash/dash.py index 9c20bf726a..246e5086e4 100644 --- a/dash/dash.py +++ b/dash/dash.py @@ -1155,9 +1155,15 @@ def enable_dev_tools(self, if self._dev_tools.hot_reload: self._reload_hash = _generate_hash() + component_packages_dist = [ - os.path.dirname(pkgutil.find_loader(package).path) - for package in ComponentRegistry.registry + os.path.dirname(package.path) + if hasattr(package, 'path') + else package.filename + for package in ( + pkgutil.find_loader(x) for x in + list(ComponentRegistry.registry) + ['dash_renderer'] + ) ] self._watch_thread = threading.Thread( From 5520e98e54848c6001a10e1c0a24b6c79ea3fb40 Mon Sep 17 00:00:00 2001 From: t4rk1n Date: Wed, 13 Feb 2019 11:58:04 -0500 Subject: [PATCH 3/3] :pencil: Update changelog --- CHANGELOG.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 5fbb8e87ad..4e36bb5fb8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,9 @@ - Fix missing component prop docstring error [#598](https://github.com/plotly/dash/issues/598) - Moved `__repr__` to base component instead of being generated. [#492](https://github.com/plotly/dash/pull/492) +## Added +- Added components libraries js/css distribution to hot reload watch. [#603](https://github.com/plotly/dash/pull/603) + ## [0.37.0] - 2019-02-11 ## Fixed - Fixed collections.abc deprecation warning for python 3.8 [#563](https://github.com/plotly/dash/pull/563)