We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent f55d40f commit e260032Copy full SHA for e260032
2 files changed
src/scyjava/_script.py
@@ -91,15 +91,19 @@ def apply(self, arg):
91
# Last statement looks like an expression. Evaluate!
92
last = ast.Expression(block.body.pop().value)
93
94
- _globals = {name: module for name, module in sys.modules.items() if name != '__main__'}
95
-
+ # _globals = {name: module for name, module in sys.modules.items() if name != '__main__'}
+ # _globals = {__builtins__: builtins, '__name__': '__main__','__file__': '<string>', '__package__': None,}
96
+ # _globals.update(globals())
97
+ # _globals = None
98
+ # _globals = locals()
99
+ script_globals = script_locals
100
exec(
- compile(block, "<string>", mode="exec"), _globals, script_locals
101
+ compile(block, "<string>", mode="exec"), script_globals, script_locals
102
)
103
if last is not None:
104
return_value = eval(
105
compile(last, "<string>", mode="eval"),
- _globals,
106
+ script_globals,
107
script_locals,
108
109
except Exception:
tests/it/script_scope.py
@@ -29,6 +29,7 @@
29
script = """
30
#@ int age
31
#@output String cbrt_age
32
+import numpy as np
33
import math
34
35
def calculate_cbrt(age):
@@ -57,5 +58,5 @@ def calculate_cbrt(age):
57
58
sys.stderr.write(f"{trace}\n")
59
raise e
60
-assert return_value == "The rounded cube root of my age is 2"
61
assert statement == "2"
62
+assert return_value == "The rounded cube root of my age is 2"
0 commit comments