-
Notifications
You must be signed in to change notification settings - Fork 14
Feature: Launch app when task or folder is missing from context #101
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Feature: Launch app when task or folder is missing from context #101
Conversation
|
I won't be devil's advocate here because I'm not the one who decided, but the decision in past was that host integrations do require a task to be able to launch them. Which is also connected to actions showed in UIs BTW. |
|
I'll insist on this, blocking to basically launch an app on raw folders is a strong limitation. Avoiding workfile creation on folders I'd understand, but there are many use cases where we would like to open at a hierarchy folder context, and overviewing an editing is one of them. |
|
Adding my 2 cents,
|
I think it's okay to allow a process to work when someone knows what they are doing, while not supporting it as regular behaviour.
That's the next step of Stax integration: make possible to publish a review to several tasks during a single publish. We'll see how it goes. |
| missing_context = [] | ||
| if not folder_entity: | ||
| missing_context.append('folder') | ||
| if not task_entity: | ||
| missing_context.append('task') | ||
| log.warning( | ||
| f"Missing {', '.join(missing_context)} from context. " | ||
| "Skipping workfile preparation." | ||
| ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| missing_context = [] | |
| if not folder_entity: | |
| missing_context.append('folder') | |
| if not task_entity: | |
| missing_context.append('task') | |
| log.warning( | |
| f"Missing {', '.join(missing_context)} from context. " | |
| "Skipping workfile preparation." | |
| ) | |
| log.warning( | |
| "Task is not set. Skipping workfile preparation." | |
| ) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shall I raise an error when a folder is not provided? I can imagine working without tasks but not without folders ATM.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure about that. Considering what actually happens here in this function, it should be just:
if not task_entity:
log.warning(
"Task is not set. Skipping workfile preparation."
)
returnThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm sorry of maybe getting it wrong, but I've added above, which is about folder too
missing_context = []
if not folder_entity:
missing_context.append('folder')What am I missing?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You don't have to, the information has no value, only what matters is if is set task.
The message should be "Task is not set. Skipping workfile preparation." and it doesn't matter if folder is or is not set, the task is the important bit.
Sure - but you'd never be in a working context because in AYON, that requires an active task. The logic assumes or is written around the fact that you're always working in a task. So the only thing you would only be able to do outside a task is launch the app - but you couldn't initialize the full launch logic due to not being inside a task to work in... and hence unable to initialize work directories, etc. Also, if the launcher would show applications... for all folders, even when not actively in a task. Then I can assure you that you'll face situations where people do not know what they're doing where they'll be launching that app unintentionally outside of a task. Hence, if we would allow it in some form then:
Admittedly it sounds like what you're doing is purely viewing... and that viewing you wouldn't save any workfiles for - in a way... you're not in a working context perhaps. Hence it's not a "workfiles host integration" and perhaps for those cases the strictness can be lifted. |
|
I think this special behaviour may need additional tweaks to prevent using some AYON tools. e.g. the workfile tools. |
|
I agree with most of @BigRoy statement and I'll contribute to the brainstorming.
I'm not saying that every host should appear on every folder. Only that it should be possible to launch any app on a folder without a task in context, but not by default in the launcher. Maybe I wasn't explicit enough there, making it "possible" doesn't mean "accessible" all the time.
I think this isn't up to the application to decide. For example, Stax is a way of working with Blender, so if you prevent Blender to be launched from folders, you're blocking Stax to function. My point is: All is about what kind of data you're about to create. Most of the time DCCs are used to create production data, which are meant to be used in the final render. In such case, tasks are the way to work. |
Changelog Description
Allow to launch an application from a context without folder nor task.
Additional review information
This feature is based on stax integration use case: we want to open a folder which doesn't have a task, like an episode, in order to open blender in the episode context and load all shots from this episode.
Testing notes: