From f634a5bd44e8d0e394b280c8445663caaf4f079d Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Tue, 15 Aug 2023 11:27:15 +0200 Subject: [PATCH 1/4] Send over plugin name and version Might be needed during the handshake between engine and plugin Contributes to CURA-10619 --- cura/BackendPlugin.py | 3 ++- plugins/CuraEngineBackend/Cura.proto | 6 ++++-- plugins/CuraEngineBackend/StartSliceJob.py | 2 ++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/cura/BackendPlugin.py b/cura/BackendPlugin.py index a92e4fe405..b4a6ad8835 100644 --- a/cura/BackendPlugin.py +++ b/cura/BackendPlugin.py @@ -6,9 +6,10 @@ 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 -class BackendPlugin(AdditionalSettingDefinitionsAppender): +class BackendPlugin(AdditionalSettingDefinitionsAppender, PluginObject): def __init__(self) -> None: super().__init__() self.__port: int = 0 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") From eadf9881ef57e25bcc2ee2ee7d92ff5f5bd2a983 Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Wed, 16 Aug 2023 09:15:03 +0200 Subject: [PATCH 2/4] Use cura_10169 for the engine revert after merge Contributes CURA-10619 --- conanfile.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) 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") From b483537c43012b4009cae05559e251335e52ac02 Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Wed, 16 Aug 2023 14:26:54 +0200 Subject: [PATCH 3/4] Explicitly use address for plugin_command Contributes CURA-10619 --- cura/BackendPlugin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cura/BackendPlugin.py b/cura/BackendPlugin.py index b4a6ad8835..1003d46009 100644 --- a/cura/BackendPlugin.py +++ b/cura/BackendPlugin.py @@ -43,7 +43,7 @@ class BackendPlugin(AdditionalSettingDefinitionsAppender, PluginObject): 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: """ From 8cc54b0d8995b24a3680b5f1db1ad69cddb93219 Mon Sep 17 00:00:00 2001 From: Jelle Spijker Date: Wed, 16 Aug 2023 16:08:05 +0200 Subject: [PATCH 4/4] Add missing catalog to BackendPlugin Contribute to CURA-10619 --- cura/BackendPlugin.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cura/BackendPlugin.py b/cura/BackendPlugin.py index 1003d46009..bbdd622d5f 100644 --- a/cura/BackendPlugin.py +++ b/cura/BackendPlugin.py @@ -7,9 +7,12 @@ 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, PluginObject): + catalog = i18nCatalog("cura") + def __init__(self) -> None: super().__init__() self.__port: int = 0