FIX moler.device.device DeviceFactory._create_device() to pass all connection params down to device construction
There was bug: only io_type & variant were passed but no io_constructor_kwargs.
It worked for io_type "terminal" since it has empty io_constructor_kwargs.
@@ -226,10 +226,14 @@ class DeviceFactory(object):
if device_class and (not connection_desc):
connection_desc = cls._try_select_device_connection_desc(device_class, connection_desc)
+ conn_desc = dict(connection_desc)
+ io_type = conn_desc.pop("io_type")
+ variant = conn_desc.pop("variant", None)
constructor_parameters = {
"name": name,
- "io_type": connection_desc["io_type"],
- "variant": connection_desc["variant"],
+ "io_type": io_type,
+ "variant": variant,
+ "io_constructor_kwargs": conn_desc,
"sm_params": connection_hops,
"initial_state": initial_state
}
