From 65be5efb5c6137957222ae3c158314d806622479 Mon Sep 17 00:00:00 2001 From: Jakub Jezek Date: Wed, 15 May 2019 09:57:58 +0200 Subject: [PATCH 1/2] fix(nuke): increment script version when prerender desabled --- pype/plugins/nuke/publish/increment_script_version.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pype/plugins/nuke/publish/increment_script_version.py b/pype/plugins/nuke/publish/increment_script_version.py index e8071ede93..2e33e65528 100644 --- a/pype/plugins/nuke/publish/increment_script_version.py +++ b/pype/plugins/nuke/publish/increment_script_version.py @@ -21,11 +21,12 @@ class IncrementScriptVersion(pyblish.api.ContextPlugin): prerender_check = list() families_check = list() for instance in instances: - if ("prerender" in str(instance)): + if ("prerender" in str(instance)) and instance.data.get("families", None): prerender_check.append(instance) if instance.data.get("families", None): families_check.append(True) + if len(prerender_check) != len(families_check): from pype.lib import version_up path = context.data["currentFile"] From 346c824f720a35decb2237f0b6d489597f3b091e Mon Sep 17 00:00:00 2001 From: Jakub Jezek Date: Wed, 15 May 2019 10:43:12 +0200 Subject: [PATCH 2/2] feat(nuke): fixing handles for publishing writes --- pype/plugins/nuke/publish/collect_instances.py | 5 ++++- pype/plugins/nuke/publish/collect_writes.py | 3 +++ pype/plugins/nuke/publish/validate_script.py | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/pype/plugins/nuke/publish/collect_instances.py b/pype/plugins/nuke/publish/collect_instances.py index 8a2bb06fff..e9db556a9f 100644 --- a/pype/plugins/nuke/publish/collect_instances.py +++ b/pype/plugins/nuke/publish/collect_instances.py @@ -17,6 +17,10 @@ class CollectNukeInstances(pyblish.api.ContextPlugin): def process(self, context): asset_data = io.find_one({"type": "asset", "name": api.Session["AVALON_ASSET"]}) + + # add handles into context + context.data['handles'] = int(asset_data["data"].get("handles", 0)) + self.log.debug("asset_data: {}".format(asset_data["data"])) instances = [] # creating instances per write node @@ -51,7 +55,6 @@ class CollectNukeInstances(pyblish.api.ContextPlugin): "family": avalon_knob_data["family"], "avalonKnob": avalon_knob_data, "publish": node.knob('publish').value(), - "handles": int(asset_data["data"].get("handles", 0)), "step": 1, "fps": int(nuke.root()['fps'].value()) diff --git a/pype/plugins/nuke/publish/collect_writes.py b/pype/plugins/nuke/publish/collect_writes.py index ce37774ac9..68cd227280 100644 --- a/pype/plugins/nuke/publish/collect_writes.py +++ b/pype/plugins/nuke/publish/collect_writes.py @@ -35,10 +35,12 @@ class CollectNukeWrites(pyblish.api.ContextPlugin): output_type = "mov" # Get frame range + handles = instance.context.data.get('handles', 0) first_frame = int(nuke.root()["first_frame"].getValue()) last_frame = int(nuke.root()["last_frame"].getValue()) if node["use_limit"].getValue(): + handles = 0 first_frame = int(node["first"].getValue()) last_frame = int(node["last"].getValue()) @@ -76,6 +78,7 @@ class CollectNukeWrites(pyblish.api.ContextPlugin): "outputDir": output_dir, "ext": ext, "label": label, + "handles": handles, "startFrame": first_frame, "endFrame": last_frame, "outputType": output_type, diff --git a/pype/plugins/nuke/publish/validate_script.py b/pype/plugins/nuke/publish/validate_script.py index ad4a83b32f..08c91dab31 100644 --- a/pype/plugins/nuke/publish/validate_script.py +++ b/pype/plugins/nuke/publish/validate_script.py @@ -28,7 +28,7 @@ class ValidateScript(pyblish.api.InstancePlugin): ] # Value of these attributes can be found on parents - hierarchical_attributes = ["fps", "resolution_width", "resolution_height", "pixel_aspect"] + hierarchical_attributes = ["fps", "resolution_width", "resolution_height", "pixel_aspect", "handles"] missing_attributes = [] asset_attributes = {}