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 98a2985

Browse files
committed
feat: drop use of sys.version_info and TYPE_CHECKING
Removing the check for Python < 3.7 using `sys.version_info` and as a backup checking `typing.TYPE_CHECKING`; this saves us a little space and also cleans up the code. Proposing this as an enhancement beyond what's in the `codegen2` branch / PR #4978.
1 parent 2b3d47b commit 98a2985

File tree

2 files changed

+22
-38
lines changed

2 files changed

+22
-38
lines changed

‎packages/python/plotly/codegen/__init__.py

Lines changed: 16 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -267,36 +267,24 @@ def perform_codegen(reformat=True):
267267
root_datatype_imports.append(f"._deprecations.{dep_clas}")
268268

269269
optional_figure_widget_import = f"""
270-
if sys.version_info < (3, 7) or TYPE_CHECKING:
271-
try:
272-
import ipywidgets as _ipywidgets
273-
from packaging.version import Version as _Version
274-
if _Version(_ipywidgets.__version__) >= _Version("7.0.0"):
275-
from ..graph_objs._figurewidget import FigureWidget
276-
else:
277-
raise ImportError()
278-
except Exception:
279-
from ..missing_anywidget import FigureWidget
280-
else:
281-
__all__.append("FigureWidget")
282-
orig_getattr = __getattr__
283-
def __getattr__(import_name):
284-
if import_name == "FigureWidget":
285-
try:
286-
import ipywidgets
287-
from packaging.version import Version
288-
289-
if Version(ipywidgets.__version__) >= Version("7.0.0"):
290-
from ..graph_objs._figurewidget import FigureWidget
291-
292-
return FigureWidget
293-
else:
294-
raise ImportError()
295-
except Exception:
296-
from ..missing_anywidget import FigureWidget
270+
__all__.append("FigureWidget")
271+
orig_getattr = __getattr__
272+
def __getattr__(import_name):
273+
if import_name == "FigureWidget":
274+
try:
275+
import ipywidgets
276+
from packaging.version import Version
277+
278+
if Version(ipywidgets.__version__) >= Version("7.0.0"):
279+
from ..graph_objs._figurewidget import FigureWidget
297280
return FigureWidget
281+
else:
282+
raise ImportError()
283+
except Exception:
284+
from ..missing_anywidget import FigureWidget
285+
return FigureWidget
298286
299-
return orig_getattr(import_name)
287+
return orig_getattr(import_name)
300288
"""
301289
# ### __all__ ###
302290
for path_parts, class_names in alls.items():

‎packages/python/plotly/codegen/utils.py

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

7676
result = f"""\
7777
import sys
78-
from typing import TYPE_CHECKING
79-
if sys.version_info < (3, 7) or TYPE_CHECKING:
80-
{imports_str}
81-
else:
82-
from _plotly_utils.importers import relative_import
83-
__all__, __getattr__, __dir__ = relative_import(
84-
__name__,
85-
{repr(rel_modules)},
86-
{repr(rel_classes)}
87-
)
78+
from _plotly_utils.importers import relative_import
79+
__all__, __getattr__, __dir__ = relative_import(
80+
__name__,
81+
{repr(rel_modules)},
82+
{repr(rel_classes)}
83+
)
8884
8985
{init_extra}
9086
"""

0 commit comments

Comments
(0)

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