Skip to content

Commit 67b3bc7

Browse files
committed
fix mypy typing errors
1 parent 52c4687 commit 67b3bc7

File tree

8 files changed

+45
-43
lines changed

8 files changed

+45
-43
lines changed

src/simple_process_bigraph_runtime/generation/composite_generator.py

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from typing import Any, cast
22

33
from process_bigraph_lang.dsl.model import Model, StoreDef, ProcessDef, Store, Type
4-
from vivarium import Vivarium
4+
from vivarium import Vivarium # type: ignore[import-untyped]
55

66

77
def process_composite(model: Model, assembler: Vivarium):
@@ -32,18 +32,22 @@ def process_composite(model: Model, assembler: Vivarium):
3232
store_path_str: str = composite_def.name + "::" + store.name
3333
store_path = [composite_def.name, store.name]
3434

35-
for state_def in store_def.states:
36-
state_type = cast(Type, state_def.type.ref_object)
37-
assert isinstance(state_type, Type)
38-
store_path_to_value_map[store_path_str] = state_def.default.val \
39-
if state_def.default is not None \
40-
else _determine_builtin_default(state_type)
41-
42-
for state_def in store_def.states:
43-
if state_def.name in input_bindings:
44-
input_bindings[state_def.name] = store_path
45-
if state_def.name in output_bindings:
46-
output_bindings[state_def.name] = store_path
35+
if store_def.states:
36+
for state_def in store_def.states:
37+
state_type = cast(Type, state_def.type.ref_object)
38+
assert isinstance(state_type, Type)
39+
store_path_to_value_map[store_path_str] = state_def.default.val \
40+
if state_def.default is not None \
41+
else _determine_builtin_default(state_type)
42+
43+
for state_def in store_def.states:
44+
if state_def.name in input_bindings:
45+
input_bindings[state_def.name] = store_path
46+
if state_def.name in output_bindings:
47+
output_bindings[state_def.name] = store_path
48+
49+
if not process_def.python_path:
50+
raise ValueError(f"Process definition {process_def.name} has no python path")
4751

4852
assembler.add_process(
4953
name=process.name,

src/simple_process_bigraph_runtime/generation/process_generator.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
from process_bigraph_lang.dsl.model import ProcessDef
2-
from vivarium import Vivarium
2+
from vivarium import Vivarium # type: ignore[import-untyped]
3+
from vivarium.vivarium import VivariumTypes # type: ignore[import-untyped]
34

45

56
def register_process_defs(assembler: Vivarium, process_defs: list[ProcessDef]) -> None:
67
# note: does not actually dynamically build processes...yet
7-
registry = assembler.core
8+
registry: VivariumTypes = assembler.core
89
for process_def in process_defs:
10+
if not process_def.python_path:
11+
raise ValueError(f"Process definition {process_def.name} has no python path")
912
python_path = ".".join(process_def.python_path.path)
1013
if not registry.process_registry.find(python_path):
1114
raise ValueError(f"Unknown process definition {process_def.name}")

src/simple_process_bigraph_runtime/generation/type_generator.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from process_bigraph_lang.dsl.model import Type
2-
from vivarium import Vivarium
2+
from vivarium import Vivarium # type: ignore[import-untyped]
33

44

55
def register_types(assembler: Vivarium, types_to_register: list[Type]):

src/simple_process_bigraph_runtime/generation/unit_generator.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
from process_bigraph_lang.dsl.model import Unit
2-
from vivarium import Vivarium
2+
from vivarium import Vivarium # type: ignore[import-untyped]
33

44
def register_units(assembler: Vivarium, units_to_register: list[Unit]) -> None:
55
for unit_to_register in units_to_register:

src/simple_process_bigraph_runtime/main.py

Lines changed: 12 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,23 @@
1-
import sys
21
import os
3-
import warnings
2+
import sys
3+
from pathlib import Path
44

55
import typer
6+
from bigraph_viz import plot_bigraph # type: ignore[import-untyped]
7+
from process_bigraph import Composite, ProcessTypes # type: ignore[import-untyped]
68
from process_bigraph_lang.dsl.model import Model
79
from typing_extensions import Annotated
10+
from vivarium import Vivarium # type: ignore[import-untyped]
811

9-
from simple_process_bigraph_runtime.generation.process_generator import register_process_defs
10-
11-
with warnings.catch_warnings(): # Temporary minimal_impact bug in process_bigraphs
12-
warnings.simplefilter("ignore", SyntaxWarning)
13-
#warnings.filterwarnings("error", category=SyntaxWarning)
14-
from process_bigraph import ProcessTypes
12+
import simple_process_bigraph_runtime.registry.spatio_flux_library as spatioflux
13+
import simple_process_bigraph_runtime.registry.toy_library as toy
1514
from simple_process_bigraph_runtime import dsl_adapter
16-
from vivarium import Vivarium
17-
from process_bigraph import Composite
18-
15+
from simple_process_bigraph_runtime.generation.composite_generator import process_composite
16+
from simple_process_bigraph_runtime.generation.process_generator import register_process_defs
1917
from simple_process_bigraph_runtime.generation.type_generator import register_types
2018
from simple_process_bigraph_runtime.generation.unit_generator import register_units
21-
from simple_process_bigraph_runtime.generation.composite_generator import process_composite
22-
import simple_process_bigraph_runtime.registry.spatio_flux_library as spatioflux
23-
import simple_process_bigraph_runtime.registry.toy_library as toy
24-
from bigraph_viz import plot_bigraph
2519

26-
plot_settings = {
20+
plot_settings: dict[str, str | bool] = {
2721
'remove_process_place_edges': True
2822
}
2923
save_images = True
@@ -37,7 +31,7 @@
3731

3832
@app.command()
3933
def validate(pblang_path: Annotated[str, typer.Argument(help="Path to the pblang file to validate")]):
40-
ast_model: Model = generatePythonModel(pblang_path)
34+
ast_model: Model = generatePythonModel(Path(pblang_path))
4135
_, pb_doc, pb_core = performConversion(ast_model)
4236
plot_bigraph(state=pb_doc['state'], schema=pb_doc['composition'],
4337
core=pb_core,
@@ -48,7 +42,7 @@ def validate(pblang_path: Annotated[str, typer.Argument(help="Path to the pblang
4842

4943
@app.command()
5044
def execute(duration: float, pblang_path: Annotated[str, typer.Argument(help="Path to the pblang file to validate")]):
51-
ast_model: Model = generatePythonModel(pblang_path)
45+
ast_model: Model = generatePythonModel(Path(pblang_path))
5246
pb_composite, _0, _1 = performConversion(ast_model)
5347

5448
pb_composite.run(duration)

src/simple_process_bigraph_runtime/registry/spatio_flux_library.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
1-
from typing import Any
2-
from process_bigraph import Process, Composite, ProcessTypes, pp
3-
from bigraph_schema import default
4-
from vivarium import Vivarium
5-
from spatio_flux import processes
1+
from bigraph_schema import default # type: ignore[import-untyped]
2+
from spatio_flux import processes # type: ignore[import-untyped]
3+
from vivarium import Vivarium # type: ignore[import-untyped]
4+
65

76
def apply_non_negative(schema, current, update, top_schema, top_state, path, core):
87
new_value = current + update

src/simple_process_bigraph_runtime/registry/toy_library.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import os.path
22

3-
from process_bigraph import Process, Step
4-
from vivarium import Vivarium
3+
from process_bigraph import Process, Step # type: ignore[import-untyped]
4+
from vivarium import Vivarium # type: ignore[import-untyped]
55

66
complex_number = {
77
"real" : "float",

tests/test_add.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
from pathlib import Path
22

33
from process_bigraph_lang.dsl.model import Model, ProcessDef
4-
from vivarium import Vivarium
4+
from vivarium import Vivarium # type: ignore[import-untyped]
55

66
import simple_process_bigraph_runtime.registry.toy_library as toy
77
from simple_process_bigraph_runtime.generation.composite_generator import process_composite
@@ -31,11 +31,13 @@ def test_add(model_path_abc: Path) -> None:
3131
print(core)
3232

3333
add_num: ProcessDef = ast_model.processDefs[0]
34+
assert add_num.python_path
3435
assert ".".join(add_num.python_path.path) == 'toy.AddFloatsRepeatedly'
3536
assert ".".join(add_num.python_path.path) in core.process_registry.registry
3637

3738
print(core.process_registry.registry)
3839

3940
print_results: ProcessDef = ast_model.processDefs[1]
41+
assert print_results.python_path
4042
assert ".".join(print_results.python_path.path) == 'toy.SaveFloatToFile'
4143
assert ".".join(print_results.python_path.path) in core.process_registry.registry

0 commit comments

Comments
 (0)