Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 86514e1

Browse files
committed
feat: restore type checking portion of code generation
- Restore code removed in #4978. - (Partially) closes #5186. - Remove unneeded imports of `sys`.
1 parent c044f1e commit 86514e1

File tree

4 files changed

+38
-24
lines changed

4 files changed

+38
-24
lines changed

‎codegen/__init__.py

Lines changed: 26 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -271,24 +271,36 @@ def perform_codegen(reformat=True):
271271
root_datatype_imports.append(f"._deprecations.{dep_clas}")
272272

273273
optional_figure_widget_import = f"""
274-
__all__.append("FigureWidget")
275-
orig_getattr = __getattr__
276-
def __getattr__(import_name):
277-
if import_name == "FigureWidget":
278-
try:
279-
import ipywidgets
280-
from packaging.version import Version
281-
282-
if Version(ipywidgets.__version__) >= Version("7.0.0"):
283-
from ..graph_objs._figurewidget import FigureWidget
274+
if sys.version_info < (3, 7) or TYPE_CHECKING:
275+
try:
276+
import ipywidgets as _ipywidgets
277+
from packaging.version import Version as _Version
278+
if _Version(_ipywidgets.__version__) >= _Version("7.0.0"):
279+
from ..graph_objs._figurewidget import FigureWidget
280+
else:
281+
raise ImportError()
282+
except Exception:
283+
from ..missing_anywidget import FigureWidget
284+
else:
285+
__all__.append("FigureWidget")
286+
orig_getattr = __getattr__
287+
def __getattr__(import_name):
288+
if import_name == "FigureWidget":
289+
try:
290+
import ipywidgets
291+
from packaging.version import Version
292+
if Version(ipywidgets.__version__) >= Version("7.0.0"):
293+
from ..graph_objs._figurewidget import FigureWidget
294+
return FigureWidget
295+
else:
296+
raise ImportError()
297+
except Exception:
298+
from ..missing_anywidget import FigureWidget
284299
return FigureWidget
285300
else:
286301
raise ImportError()
287-
except Exception:
288-
from ..missing_anywidget import FigureWidget
289-
return FigureWidget
290302
291-
return orig_getattr(import_name)
303+
return orig_getattr(import_name)
292304
"""
293305
# ### __all__ ###
294306
for path_parts, class_names in alls.items():

‎codegen/utils.py

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -82,12 +82,16 @@ def build_from_imports_py(rel_modules=(), rel_classes=(), init_extra=""):
8282

8383
result = f"""\
8484
import sys
85-
from _plotly_utils.importers import relative_import
86-
__all__, __getattr__, __dir__ = relative_import(
87-
__name__,
88-
{repr(rel_modules)},
89-
{repr(rel_classes)}
90-
)
85+
from typing import TYPE_CHECKING
86+
if TYPE_CHECKING:
87+
{imports_str}
88+
else:
89+
from _plotly_utils.importers import relative_import
90+
__all__, __getattr__, __dir__ = relative_import(
91+
__name__,
92+
{repr(rel_modules)},
93+
{repr(rel_classes)}
94+
)
9195
9296
{init_extra}
9397
"""

‎plotly/__init__.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626
2727
"""
2828

29-
import sys
3029
from typing import TYPE_CHECKING
3130
from _plotly_utils.importers import relative_import
3231
import importlib.metadata
@@ -35,7 +34,7 @@
3534
__version__ = importlib.metadata.version("plotly")
3635
version = __version__
3736

38-
if sys.version_info< (3, 7) orTYPE_CHECKING:
37+
if TYPE_CHECKING:
3938
from plotly import (
4039
graph_objs,
4140
tools,

‎plotly/io/__init__.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
from _plotly_utils.importers import relative_import
2-
import sys
32
from typing import TYPE_CHECKING
43

5-
if sys.version_info< (3, 7) orTYPE_CHECKING:
4+
if TYPE_CHECKING:
65
from ._kaleido import (
76
to_image,
87
write_image,

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /