Skip to content

Instantly share code, notes, and snippets.

@BigRoy
Last active August 29, 2024 16:03
Show Gist options
  • Save BigRoy/909d1178447f945cb482e3f571c97eaa to your computer and use it in GitHub Desktop.
Save BigRoy/909d1178447f945cb482e3f571c97eaa to your computer and use it in GitHub Desktop.
OpenPype codebase refactor to AYON core

Transition code from OpenPype to Ayon Core

Refactor

Publishing data refactor

  • Use folderPath instead of asset | ynput/ayon-core#81

    • instance.data["asset"] -> instance.data["folderPath"]
    • context.data["asset"] -> context.data["folderPath"]
  • Use productName instead of subset | ynput/ayon-core#113

    • instance.data["subset"] -> instance.data["productName"]
    • context.data["subset"] -> context.data["productName"]

Others

  • Entity data structure changed + added task entities, see Major Changes in PR | ynput/ayon-core#165
  • Anatomy templates data structure changed. | ynput/ayon-core#190
  • Do not use legacy_io, use ayon_api | ynput/ayon-core#8
  • Do not use openpype.client or ayon_core.client, use ayon_api | ynput/ayon-core#165
  • Do not use ayon_core.lib.applications, use ayon_applications - Applications moved to Addon | ynput/ayon-core#297
  • AVALON_ prefixed environment variables are replaced with AYON_ equivalents | ynput/ayon-core#33
  • Refactor OpenPypePyblishPluginMixin -> AYONPyblishPluginMixin | There is still backwards compatibility however
  • Move over any settings (OpenPype .json) to the relevant Ayon server Addon.
  • AVALON_ACTIONS is removed | ynput/ayon-core#273
  • Launcher actions now take selection argument instead of session | ynput/ayon-core#306
  • Ayon CLI arguments --asset replaced with --folder | ynput/ayon-core#197

Upcoming

  • There may be upcoming entity & pipeline function changes | unsure which
  • At some point openpype_modules.* access would also not to be refactored.
  • The AYON_MENU_LABEL logic should be removed and be refactored to just be targeting AYON.
  • Remove any remaining mindbender or polly mentions in readme or codebase.

  • asset -> folder -> so what was asset name before, is now folder["name"]
    • do note that folder names are not required to be unique, like which was the case in openpype for asset names. in ayon the unique key for folder is the path. That's why in most code where you used asset["name"] you now see usage of folder["path"]. ⚠️ So this may be something to keep an eye out for.
  • subset -> product
  • family -> productType
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment