From d3436a7536915cb3ea78362546d85cbb6fda3f1c Mon Sep 17 00:00:00 2001 From: Toke Stuart Jepsen Date: Tue, 9 Mar 2021 12:01:59 +0000 Subject: [PATCH 1/4] Cache plugins. --- avalon/api.py | 1 + avalon/pipeline.py | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/avalon/api.py b/avalon/api.py index aa8dcffa5..4139f75a4 100644 --- a/avalon/api.py +++ b/avalon/api.py @@ -57,6 +57,7 @@ registered_host, registered_config, registered_plugin_paths, + registered_plugins, registered_root, deregister_plugin, diff --git a/avalon/pipeline.py b/avalon/pipeline.py index f446a851d..b3b85b398 100644 --- a/avalon/pipeline.py +++ b/avalon/pipeline.py @@ -40,6 +40,8 @@ self._is_installed = False self._config = None self.data = {} +# The currently registered plugins from the last `discover` call. +self.registered_plugins = {} log = logging.getLogger(__name__) @@ -772,7 +774,11 @@ def discover(superclass): print("Warning: Overwriting %s" % plugin.__name__) plugins[plugin.__name__] = plugin - return sorted(plugins.values(), key=lambda Plugin: Plugin.__name__) + sorted_plugins = sorted( + plugins.values(), key=lambda Plugin: Plugin.__name__ + ) + self.registered_plugins[superclass.__name__] = sorted_plugins + return sorted_plugins def plugin_from_module(superclass, module): From 00ec2953a5578396b85dad5a71c071d9e2f42c25 Mon Sep 17 00:00:00 2001 From: Toke Stuart Jepsen Date: Wed, 10 Mar 2021 09:23:02 +0000 Subject: [PATCH 2/4] Rename plugin cache registry to "lastt_discovered_plugins". --- avalon/api.py | 3 ++- avalon/pipeline.py | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/avalon/api.py b/avalon/api.py index 4139f75a4..ac843faad 100644 --- a/avalon/api.py +++ b/avalon/api.py @@ -57,9 +57,10 @@ registered_host, registered_config, registered_plugin_paths, - registered_plugins, registered_root, + last_discovered_plugins, + deregister_plugin, deregister_plugin_path, diff --git a/avalon/pipeline.py b/avalon/pipeline.py index b3b85b398..7930b7b41 100644 --- a/avalon/pipeline.py +++ b/avalon/pipeline.py @@ -41,7 +41,7 @@ self._config = None self.data = {} # The currently registered plugins from the last `discover` call. -self.registered_plugins = {} +self.last_discovered_plugins = {} log = logging.getLogger(__name__) @@ -777,7 +777,7 @@ def discover(superclass): sorted_plugins = sorted( plugins.values(), key=lambda Plugin: Plugin.__name__ ) - self.registered_plugins[superclass.__name__] = sorted_plugins + self.last_discovered_plugins[superclass.__name__] = sorted_plugins return sorted_plugins From a13f13f65b86dfd344b9f7fabdf1518ddac9f553 Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Fri, 9 Apr 2021 10:58:02 +0200 Subject: [PATCH 3/4] return output of `groups_data` function --- avalon/tvpaint/lib.py | 1 + 1 file changed, 1 insertion(+) diff --git a/avalon/tvpaint/lib.py b/avalon/tvpaint/lib.py index 6b17b7f8a..3df69290f 100644 --- a/avalon/tvpaint/lib.py +++ b/avalon/tvpaint/lib.py @@ -192,6 +192,7 @@ def groups_data(): output = parse_group_data(data) os.remove(output_filepath) + return output def get_layers_pre_post_behavior(layer_ids): From 8e9e194fe051ee95911b56051ab83180c70daab9 Mon Sep 17 00:00:00 2001 From: iLLiCiTiT Date: Tue, 11 May 2021 17:17:44 +0200 Subject: [PATCH 4/4] ignore case sensitivity on user input text replacement --- avalon/tools/creator/app.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/avalon/tools/creator/app.py b/avalon/tools/creator/app.py index 66a55f06f..0a9aae614 100644 --- a/avalon/tools/creator/app.py +++ b/avalon/tools/creator/app.py @@ -349,9 +349,9 @@ def _on_data_changed(self): defaults = list(plugin.defaults) # Replace - compare_regex = re.compile( - subset_name.replace(user_input_text, "(.+)") - ) + compare_regex = re.compile(re.sub( + user_input_text, "(.+)", subset_name, flags=re.IGNORECASE + )) subset_hints = set() if user_input_text: for _name in existing_subset_names: