Skip to content

Commit 0f4dcbd

Browse files
committed
Avoid signature code on py2
1 parent 69a6712 commit 0f4dcbd

File tree

2 files changed

+21
-18
lines changed

2 files changed

+21
-18
lines changed

js/scripts/templates/py_wrapper.mustache

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
import inspect
2-
1+
import six
32
from ipywidgets import Widget, DOMWidget, widget_serialization, Color, register
43
from traitlets import (
54
Unicode, Int, CInt, Instance, ForwardDeclaredInstance, This, Enum,
@@ -41,6 +40,7 @@ class {{ className }}({{ superClass.className }}):
4140
{{/each}}
4241

4342

44-
# Include explicit signature since the metaclass screws it up
45-
{{ className }}.__signature__ = inspect.signature({{ className }}.__init__)
46-
43+
if six.PY3:
44+
import inspect
45+
# Include explicit signature since the metaclass screws it up
46+
{{ className }}.__signature__ = inspect.signature({{ className }}.__init__)

pythreejs/core/Renderer.py

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
"""
22
"""
3-
from inspect import Signature, Parameter
43

4+
import six
55
from ipywidgets import widget_serialization, Color
66
from traitlets import (
77
Unicode, CInt, Instance, Float, Tuple, Undefined, link)
@@ -58,15 +58,18 @@ def freeze(self):
5858
}
5959
self.send(content)
6060

61-
# Include explicit signature since the metaclass screws it up
62-
parameters = [
63-
Parameter('scene', Parameter.POSITIONAL_OR_KEYWORD),
64-
Parameter('camera', Parameter.POSITIONAL_OR_KEYWORD),
65-
Parameter('controls', Parameter.POSITIONAL_OR_KEYWORD, default=None),
66-
]
67-
for name in ('width', 'height', 'background', 'background_opacity'):
68-
parameters.append(Parameter(
69-
name, Parameter.KEYWORD_ONLY, default=getattr(Renderer, name).default_value))
70-
parameters.append(Parameter('kwargs', Parameter.VAR_KEYWORD))
71-
Renderer.__signature__ = Signature(parameters=tuple(parameters))
72-
del parameters
61+
62+
if six.PY3:
63+
from inspect import Signature, Parameter
64+
# Include explicit signature since the metaclass screws it up
65+
parameters = [
66+
Parameter('scene', Parameter.POSITIONAL_OR_KEYWORD),
67+
Parameter('camera', Parameter.POSITIONAL_OR_KEYWORD),
68+
Parameter('controls', Parameter.POSITIONAL_OR_KEYWORD, default=None),
69+
]
70+
for name in ('width', 'height', 'background', 'background_opacity'):
71+
parameters.append(Parameter(
72+
name, Parameter.KEYWORD_ONLY, default=getattr(Renderer, name).default_value))
73+
parameters.append(Parameter('kwargs', Parameter.VAR_KEYWORD))
74+
Renderer.__signature__ = Signature(parameters=tuple(parameters))
75+
del parameters

0 commit comments

Comments
 (0)