Skip to content

Custom frame range: Plugin works with specific family - #2040

Open
iLLiCiTiT wants to merge 3 commits into
enhancement/YN-0726--Custom-Frame-Range-Support-for-Local-Renderingfrom
enhancement/custom-frame-range-new-with-bw
Open

iLLiCiTiT wants to merge 3 commits into
enhancement/YN-0726--Custom-Frame-Range-Support-for-Local-Renderingfrom
enhancement/custom-frame-range-new-with-bw

Conversation

@iLLiCiTiT

Copy link
Copy Markdown
Member

Changelog Description

The custom frame plugin does work with specific family "custom.frame.range", but also has backwards compatibility for the families that were defined by deadline plugin but only for hosts that did work with deadline addon.

Additional info

Using this approach it still works for hosts that did work before, but hosts that would like to use this new feature has to add "custom.frame.range" to instance to be able to show the option.

Testing notes:

  1. Validate the proposed logic if actually makes sense!!!
  2. For hosts and families for which it was already working it should work.
  3. Add the "custom.frame.range" family to an instance in some other host to validate it shows for it too.

@iLLiCiTiT iLLiCiTiT self-assigned this Sep 4, 2026
@iLLiCiTiT iLLiCiTiT added the type: enhancement Improvement of existing functionality or minor addition label Sep 4, 2026
@ynbot ynbot added the size/S label Sep 4, 2026
@iLLiCiTiT
iLLiCiTiT requested review from BigRoy and moonyuet September 4, 2026 09:22
…al-Rendering' into enhancement/custom-frame-range-new-with-bw
@moonyuet

moonyuet commented Sep 4, 2026

Copy link
Copy Markdown
Member

Tested with ynput/ayon-3dsmax#163, works with me.

@iLLiCiTiT

iLLiCiTiT commented Sep 4, 2026

Copy link
Copy Markdown
Member Author

Tested with ynput/ayon-3dsmax#163, works with me.

Nice! @BigRoy do you think this is good idea?

@BigRoy BigRoy left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

I wonder if the family should actually be something like framerange.custom instead? 🤔 Fine with it either way - just feel like since we're pushing out more families as we intended that we need some naming rules? 🗡️

@LiborBatek

Copy link
Copy Markdown
Member

I have been using it while testing the ayon-3dsmax and its been working together well...

@iLLiCiTiT

Copy link
Copy Markdown
Member Author

just feel like since we're pushing out more families as we intended that we need some naming rules? 🗡️

I 100% agree, that's why I asked for you to take a look 🙂 . My initial idea was to use customizable.frame.range which exactly describes what "can" happen instead. Not sure if that is good idea tho...

Comment on lines +174 to +178
if not IS_FARM_HOST:
return False

families.add(i_product_base_type)
return bool(families.intersection(FARM_HOST_NAMES))

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's mark the below backwards compatibility in code cleary.

Suggested change
if not IS_FARM_HOST:
return False
families.add(i_product_base_type)
return bool(families.intersection(FARM_HOST_NAMES))
# Backwards compatibility for farm host/families logic
if not IS_FARM_HOST:
return False
families.add(i_product_base_type)
return bool(families.intersection(FARM_HOST_NAMES))

I also wonder whether if this returns True we should log it.

Suggested change
if not IS_FARM_HOST:
return False
families.add(i_product_base_type)
return bool(families.intersection(FARM_HOST_NAMES))
# Backwards compatibility for farm host/families logic
if not IS_FARM_HOST:
return False
families.add(i_product_base_type)
legacy_farm_families = families.intersection(FARM_HOST_NAMES)
if legacy_farm_families:
cls.log.debug(f"Detected legacy farm families: {legacy_farm_families}")
return True
return False

Just so that in time we can still notice which are using the old logic and whether we can deprecate them down the line.

@github-project-automation github-project-automation Bot moved this from Review In Progress to Merge Requested in PR reviewing Sep 16, 2026
@ynbot ynbot moved this to Review In Progress in PR reviewing Sep 16, 2026
@ynbot ynbot moved this from Merge Requested to Review In Progress in PR reviewing Sep 16, 2026
if i_families is not None:
families = set(i_families)

if "custom.frame.range" in families:

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd probably reverse them to something like:

framerange.custom_frames`

(I think if we were to pick that we'd need camelCase? framerange.customFrames?)
Or:

framerange.custom

@iLLiCiTiT

I think the . between frame and range is redundant, and even somewhat wrong.

…al-Rendering' into enhancement/custom-frame-range-new-with-bw
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/S type: enhancement Improvement of existing functionality or minor addition

Projects

Status: Review In Progress

Development

Successfully merging this pull request may close these issues.

5 participants