diff --git a/conanfile.py b/conanfile.py index bcb276832b..d2cfbe3e41 100644 --- a/conanfile.py +++ b/conanfile.py @@ -303,7 +303,7 @@ class CuraConan(ConanFile): def requirements(self): self.requires("boost/1.81.0") self.requires("pyarcus/(latest)@ultimaker/cura_10475") - self.requires("curaengine/(latest)@ultimaker/cura_10475") + self.requires("curaengine/(latest)@ultimaker/cura_10619") self.requires("pysavitar/5.2.2") self.requires("pynest2d/5.2.2") self.requires("uranium/(latest)@ultimaker/cura_10475") diff --git a/cura/BackendPlugin.py b/cura/BackendPlugin.py index a92e4fe405..bbdd622d5f 100644 --- a/cura/BackendPlugin.py +++ b/cura/BackendPlugin.py @@ -6,9 +6,13 @@ from typing import Optional, List from UM.Logger import Logger from UM.Message import Message from UM.Settings.AdditionalSettingDefinitionAppender import AdditionalSettingDefinitionsAppender +from UM.PluginObject import PluginObject +from UM.i18n import i18nCatalog -class BackendPlugin(AdditionalSettingDefinitionsAppender): +class BackendPlugin(AdditionalSettingDefinitionsAppender, PluginObject): + catalog = i18nCatalog("cura") + def __init__(self) -> None: super().__init__() self.__port: int = 0 @@ -42,7 +46,7 @@ class BackendPlugin(AdditionalSettingDefinitionsAppender): if not self._plugin_command or "--port" in self._plugin_command: return self._plugin_command or [] - return self._plugin_command + ["--port", str(self.__port)] + return self._plugin_command + ["--address", self.getAddress(), "--port", str(self.__port)] def start(self) -> bool: """ diff --git a/plugins/CuraEngineBackend/Cura.proto b/plugins/CuraEngineBackend/Cura.proto index d5d7c92d0b..f60a7f96d8 100644 --- a/plugins/CuraEngineBackend/Cura.proto +++ b/plugins/CuraEngineBackend/Cura.proto @@ -19,8 +19,10 @@ enum SlotID { message EnginePlugin { SlotID id = 1; - optional string address = 2; - optional uint32 port = 3; + string address = 2; + uint32 port = 3; + string plugin_name = 4; + string plugin_version = 5; } message Slice diff --git a/plugins/CuraEngineBackend/StartSliceJob.py b/plugins/CuraEngineBackend/StartSliceJob.py index b1f92b3b25..892e4dfca6 100644 --- a/plugins/CuraEngineBackend/StartSliceJob.py +++ b/plugins/CuraEngineBackend/StartSliceJob.py @@ -314,6 +314,8 @@ class StartSliceJob(Job): plugin_message.id = slot plugin_message.address = plugin.getAddress() plugin_message.port = plugin.getPort() + plugin_message.plugin_name = plugin.getPluginId() + plugin_message.plugin_version = plugin.getVersion() for group in filtered_object_groups: group_message = self._slice_message.addRepeatedMessage("object_lists")