Skip to content

Commit 63c8ecf

Browse files
authored
Don't autoimport FigureWidget unless ipywidgets is installed and >= 7.0.0 (#1425)
* Don't autoimport FigureWidget unless ipywidgets is installed and >= 7.0.0 * Remove LooseVersion and ipywidgets from graph_objs namespace
1 parent 385854d commit 63c8ecf

File tree

3 files changed

+11
-4
lines changed

3 files changed

+11
-4
lines changed

Diff for: codegen/__init__.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -235,10 +235,13 @@ def perform_codegen():
235235
optional_figure_widget_import = """
236236
try:
237237
import ipywidgets
238-
from ._figurewidget import FigureWidget
238+
from distutils.version import LooseVersion
239+
if LooseVersion(ipywidgets.__version__) >= LooseVersion('7.0.0'):
240+
from ._figurewidget import FigureWidget
241+
del LooseVersion
242+
del ipywidgets
239243
except ImportError:
240244
pass
241-
242245
"""
243246
root_datatype_imports.append(optional_figure_widget_import)
244247

Diff for: plotly/basewidget.py

+1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
from .serializers import custom_serializers
1616
from .version import __frontend_version__
1717

18+
1819
@widgets.register
1920
class BaseFigureWidget(BaseFigure, widgets.DOMWidget):
2021
"""

Diff for: plotly/graph_objs/__init__.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,13 @@
7979

8080
try:
8181
import ipywidgets
82-
from ._figurewidget import FigureWidget
82+
from distutils.version import LooseVersion
83+
if LooseVersion(ipywidgets.__version__) >= LooseVersion('7.0.0'):
84+
from ._figurewidget import FigureWidget
85+
del LooseVersion
86+
del ipywidgets
8387
except ImportError:
8488
pass
85-
8689
from ._deprecations import (
8790
Data, Annotations, Frames, AngularAxis, Annotation, ColorBar, Contours,
8891
ErrorX, ErrorY, ErrorZ, Font, Legend, Line, Margin, Marker, RadialAxis,

0 commit comments

Comments
 (0)