shotgunsoftware / tk-multi-breakdown2

A Flow Production Tracking Pipeline Toolkit app that helps you see what is out of date in your scene across multiple projects.
https://developer.shotgridsoftware.com/tk-multi-breakdown2/
Other
4 stars 10 forks source link

Breakdown2 missing 'unpublished items' feature #82

Open skeleturtle opened 1 month ago

skeleturtle commented 1 month ago

tk-multi-breakdown had an unpublished items feature, where if the app wasn't able to gather the publish data for the path, it lumped the item into an OTHER_ITEMS group. It would be great if we could have this feature added back.

Currently I also fight with the gathering of publish files being all the way down into sgtk.util.find_publish which isn't something we'd want to go and have to fork since its a core utility, but when it fails there is very little feedback as to why, or what we can do to change the result.

staceyoue commented 1 month ago

Hi @skeleturtle - tk-multi-breakdown2 offers extended functionality from the original tk-multi-breakdown app, which requires valid published files (meaning, they can be found through the api method sgtk.util.find_publish). The "Unpublished Items" that the original breakdown app lists are not valid publishes, they are just files on local disk. There is no plan to include to "Unpublished Items" in tk-multi-breakdown2; if you need this functionality, you can continue to use the original tk-multi-breakdown app, or you can submit a request to Autodesk support.

skeleturtle commented 1 month ago

@staceyoue could there at least be better logging to track when a publish isn't found using the sgtk.util.find_publish? I have valid publishes that currently the api method fails to find, yet it doesn't provide any reasoning as to why.

staceyoue commented 1 month ago

@skeleturtle if a publish is not found by sgtk.util.find_publish, then it does not know anything about that publish, and so nothing can be logged. If an error occurs from trying to find the publish, then this error can and should be logged. If a publish should be but is not found, then this is a bug.

To help understand what publishes should be found, the steps the app takes to gather published files:

  1. Scans the scene for the DCC to find all references
  2. Extract the file path from the references found in the scene
  3. Find publishes from the file paths using sgtk.util.find_publish

Note that sgtk.util.find_publish may fail to find publish files if the PublishedFile entity does not have a path_cache set.