solara-ui 1.55.0__py3-none-any.whl → 1.55.1__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- solara/__init__.py +1 -1
- solara/server/static/solara_bootstrap.py +1 -1
- solara/validate_hooks.py +10 -4
- {solara_ui-1.55.0.dist-info → solara_ui-1.55.1.dist-info}/METADATA +1 -1
- {solara_ui-1.55.0.dist-info → solara_ui-1.55.1.dist-info}/RECORD +9 -9
- {solara_ui-1.55.0.data → solara_ui-1.55.1.data}/data/etc/jupyter/jupyter_notebook_config.d/solara.json +0 -0
- {solara_ui-1.55.0.data → solara_ui-1.55.1.data}/data/etc/jupyter/jupyter_server_config.d/solara.json +0 -0
- {solara_ui-1.55.0.dist-info → solara_ui-1.55.1.dist-info}/WHEEL +0 -0
- {solara_ui-1.55.0.dist-info → solara_ui-1.55.1.dist-info}/licenses/LICENSE +0 -0
solara/__init__.py
CHANGED
|
@@ -119,7 +119,7 @@ async def main():
|
|
|
119
119
|
]
|
|
120
120
|
for dep in requirements:
|
|
121
121
|
await micropip.install(dep, keep_going=True)
|
|
122
|
-
await micropip.install("/wheels/solara-1.55.
|
|
122
|
+
await micropip.install("/wheels/solara-1.55.1-py2.py3-none-any.whl", keep_going=True)
|
|
123
123
|
import solara
|
|
124
124
|
|
|
125
125
|
el = solara.Warning("lala")
|
solara/validate_hooks.py
CHANGED
|
@@ -31,11 +31,11 @@ noqa_pattern = re.compile(r".*# noqa(?::\s*([A-Z]{2,3}\d{2,3})(?:,\s*([A-Z]{2,3}
|
|
|
31
31
|
|
|
32
32
|
|
|
33
33
|
if sys.version_info < (3, 11):
|
|
34
|
-
ScopeNodeType = t.Union[ast.For, ast.While, ast.If, ast.Try, ast.FunctionDef]
|
|
34
|
+
ScopeNodeType = t.Union[ast.For, ast.While, ast.If, ast.Try, ast.FunctionDef, ast.AsyncFunctionDef]
|
|
35
35
|
TryNodes = (ast.Try,)
|
|
36
36
|
else:
|
|
37
37
|
# except* nodes are only standardized in 3.11+
|
|
38
|
-
ScopeNodeType = t.Union[ast.For, ast.While, ast.If, ast.Try, ast.TryStar, ast.FunctionDef]
|
|
38
|
+
ScopeNodeType = t.Union[ast.For, ast.While, ast.If, ast.Try, ast.TryStar, ast.FunctionDef, ast.AsyncFunctionDef]
|
|
39
39
|
TryNodes = (ast.Try, ast.TryStar)
|
|
40
40
|
|
|
41
41
|
|
|
@@ -100,7 +100,7 @@ class HookValidator(ast.NodeVisitor):
|
|
|
100
100
|
parsed = ast.parse(parsed_source)
|
|
101
101
|
# Get nodes from inside the function body
|
|
102
102
|
func_definition = t.cast(ast.FunctionDef, parsed.body[0])
|
|
103
|
-
self.function_scope: ast.FunctionDef = func_definition
|
|
103
|
+
self.function_scope: t.Union[ast.FunctionDef, ast.AsyncFunctionDef] = func_definition
|
|
104
104
|
self._root_function_scope = self.function_scope
|
|
105
105
|
# None means, *DO* qa
|
|
106
106
|
self.no_qa: t.Optional[t.Set[InvalidReactivityCause]] = None
|
|
@@ -129,7 +129,7 @@ class HookValidator(ast.NodeVisitor):
|
|
|
129
129
|
return InvalidReactivityCause.CONDITIONAL_USE
|
|
130
130
|
elif isinstance(node, (ast.For, ast.While)):
|
|
131
131
|
return InvalidReactivityCause.LOOP_USE
|
|
132
|
-
elif isinstance(node, ast.FunctionDef):
|
|
132
|
+
elif isinstance(node, (ast.FunctionDef, ast.AsyncFunctionDef)):
|
|
133
133
|
return InvalidReactivityCause.NESTED_FUNCTION_USE
|
|
134
134
|
elif isinstance(node, TryNodes):
|
|
135
135
|
return InvalidReactivityCause.EXCEPTION_USE
|
|
@@ -175,6 +175,12 @@ class HookValidator(ast.NodeVisitor):
|
|
|
175
175
|
self._visit_children_using_scope(node)
|
|
176
176
|
self.function_scope = old_function_scope
|
|
177
177
|
|
|
178
|
+
def visit_AsyncFunctionDef(self, node: ast.AsyncFunctionDef):
|
|
179
|
+
old_function_scope = self.function_scope
|
|
180
|
+
self.function_scope = node
|
|
181
|
+
self._visit_children_using_scope(node)
|
|
182
|
+
self.function_scope = old_function_scope
|
|
183
|
+
|
|
178
184
|
def _visit_children_using_scope(self, node: ScopeNodeType):
|
|
179
185
|
outer_scope = self.outer_scope
|
|
180
186
|
self.outer_scope = node
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
prefix/etc/jupyter/jupyter_notebook_config.d/solara.json,sha256=3UhTBQi6z7F7pPjmqXxfddv79c8VGR9H7zStDLp6AwY,115
|
|
2
2
|
prefix/etc/jupyter/jupyter_server_config.d/solara.json,sha256=D9J-rYxAzyD5GOqWvuPjacGUVFHsYtTfZ4FUbRzRvIA,113
|
|
3
|
-
solara/__init__.py,sha256
|
|
3
|
+
solara/__init__.py,sha256=-kOoajHZOJA7rILhQiR19_A8BVLw1CANxybDiFOD7sE,3647
|
|
4
4
|
solara/__main__.py,sha256=J_f3D_mgiNicU_ay_I-qn08GOViSXm04Ym0mopqh2Os,24853
|
|
5
5
|
solara/_stores.py,sha256=N2Ec-61XNFXwigBx8f5QYPx7gDXenCOBdmLPXiJB45E,12320
|
|
6
6
|
solara/alias.py,sha256=9vfLzud77NP8in3OID9b5mmIO8NyrnFjN2_aE0lSb1k,216
|
|
@@ -23,7 +23,7 @@ solara/settings.py,sha256=VeYkEdWeJePXldFvfdJteiiydWTqsNtpgsYscKm7lrA,2726
|
|
|
23
23
|
solara/tasks.py,sha256=Wjb-0ExfW2lMbT40sYG3yEzUMLOHKKzHshCahBOELk8,37599
|
|
24
24
|
solara/toestand.py,sha256=2fNxOFAg120yud4EmU2s8-aUx4N1D4T8VvdO6Oqi_4s,34357
|
|
25
25
|
solara/util.py,sha256=UUO3BfhXb3tGP-uj8UuTYMx6kuph6PiDp4XXm-f6uyg,9697
|
|
26
|
-
solara/validate_hooks.py,sha256=
|
|
26
|
+
solara/validate_hooks.py,sha256=JTXOnfSPhNQaZFuMYm5EuvB_TlnZz1kw8hqDMNu_B5M,10345
|
|
27
27
|
solara/components/__init__.py,sha256=j5Tv0tyzs80Bsl5hvTIF_x-RQyAvr3ooqIXnABamW44,3214
|
|
28
28
|
solara/components/alert.py,sha256=sNjlrCu2niR6LD9gZFXwvSBMszCKt6nRH58kE7RgsDw,5144
|
|
29
29
|
solara/components/applayout.py,sha256=Q1n8foPT1szjIKqjUum6QxFnUvNj_MheMmyc8r7FIsI,16753
|
|
@@ -146,7 +146,7 @@ solara/server/static/highlight-dark.css,sha256=xO8-vta9vG4s1OfJNHXWqiLWzx_gM03jo
|
|
|
146
146
|
solara/server/static/highlight.css,sha256=k8ZdT5iwrGQ5tXTQHAXuxvZrSUq3kwCdEpy3mlFoZjs,2637
|
|
147
147
|
solara/server/static/main-vuetify.js,sha256=R3qM4xMlstMpRUdRaul78p34z_Av2ONSTXksg2V9TqQ,9503
|
|
148
148
|
solara/server/static/main.js,sha256=mcx4JNQ4Lg4pNdUIqMoZos1mZyYFS48yd_JNFFJUqIE,5679
|
|
149
|
-
solara/server/static/solara_bootstrap.py,sha256=
|
|
149
|
+
solara/server/static/solara_bootstrap.py,sha256=38HW-1RWpzOwrCYtVEwprLqVFFEa5-kyQQriR3990LE,3195
|
|
150
150
|
solara/server/static/sun.svg,sha256=jEKBAGCr7b9zNYv0VUb7lMWKjnU2dX69_Ye_DZWGXJI,6855
|
|
151
151
|
solara/server/static/webworker.js,sha256=cjAFz7-SygStHJnYlJUlJs-gE_7YQeQ-WBDcmKYyjvo,1372
|
|
152
152
|
solara/server/templates/index.html.j2,sha256=JXQo1M-STFHLBOFetgG7509cAq8xUP0VAEtYDzz35fY,31
|
|
@@ -456,9 +456,9 @@ solara/widgets/vue/gridlayout.vue,sha256=LZk-YlqM7nv_7Y5TTq2xqfH1j2SLP1QOH5eiz7G
|
|
|
456
456
|
solara/widgets/vue/html.vue,sha256=48K5rjp0AdJDeRV6F3nOHW3J0WXPeHn55r5pGClK2fU,112
|
|
457
457
|
solara/widgets/vue/navigator.vue,sha256=3hhh2_sXpnsdM1vrs2nQ0bZHLCB10HhtQeYLS-tO85s,4790
|
|
458
458
|
solara/widgets/vue/vegalite.vue,sha256=zhocRsUCNIRQCEbD16er5sYnuHU0YThatRHnorA3P18,4596
|
|
459
|
-
solara_ui-1.55.
|
|
460
|
-
solara_ui-1.55.
|
|
461
|
-
solara_ui-1.55.
|
|
462
|
-
solara_ui-1.55.
|
|
463
|
-
solara_ui-1.55.
|
|
464
|
-
solara_ui-1.55.
|
|
459
|
+
solara_ui-1.55.1.data/data/etc/jupyter/jupyter_notebook_config.d/solara.json,sha256=3UhTBQi6z7F7pPjmqXxfddv79c8VGR9H7zStDLp6AwY,115
|
|
460
|
+
solara_ui-1.55.1.data/data/etc/jupyter/jupyter_server_config.d/solara.json,sha256=D9J-rYxAzyD5GOqWvuPjacGUVFHsYtTfZ4FUbRzRvIA,113
|
|
461
|
+
solara_ui-1.55.1.dist-info/METADATA,sha256=08VRBHu8t0-txUDqxhT2vJjIwQOHyhV53cQLvdQrjzY,7459
|
|
462
|
+
solara_ui-1.55.1.dist-info/WHEEL,sha256=C2FUgwZgiLbznR-k0b_5k3Ai_1aASOXDss3lzCUsUug,87
|
|
463
|
+
solara_ui-1.55.1.dist-info/licenses/LICENSE,sha256=fFJUz-CWzZ9nEc4QZKu44jMEoDr5fEW-SiqljKpD82E,1086
|
|
464
|
+
solara_ui-1.55.1.dist-info/RECORD,,
|
|
File without changes
|
{solara_ui-1.55.0.data → solara_ui-1.55.1.data}/data/etc/jupyter/jupyter_server_config.d/solara.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|