-
Notifications
You must be signed in to change notification settings - Fork 42
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
pyblish lite does not catch exceptions as well as QML #122
Comments
Does #109 implement a solution to this? Merging that seems like the best next step overall. |
surprising this is controlled by the GUI. |
Surprising that a visual property is controlled by a GUI? 🤔 If I remember correctly, collectors was initially invisible always, and considered an implementation detail. Nothing a user would be in a position to do anything with, since the validators are what matters. I think they were unhidden later on in QML due to it not really being a problem having all of it visible even though you were unable to take action about it. |
is it justs a visual bug? if so then it makes sense before this happened, i believed all states were controlled in pyblish base. including all try excepts but it seems some of this work is done by the GUI. which means more places to update code. |
rereading this I realize I come over quite critical sometime 😓 |
tried going through the flow in lite but i can't figure out where the code decides to hide a plugin in the window when it failed. the only thing i did found is, it seems it is a UI bug. the whole flow continues, and the exception doesnt stop the whole process. any pointers on where to look for a fix? |
The original motivation for collectors was to have a bunch of them always active, no matter the project or environment you were in. The asset you were working with would then decide which collector recognised it and picked it up. At that point, having tons of unrelated collectors appear in the UI wasn't ideal. As time progressed however it became clear that collectors took time and it wasn't feasible to wait for those that are obviously not related; so today's standard practice is to only register those that relate to what you want to publish. The Lite GUI just hasn't been as frequently updated as QML; which was partly the point. QML was the main UI, with Lite being a "lightweight" option for those unable to physically run QML. Due to it being more complex to run, due to it using QML and in some cases Python 3 (back when Python 2 was still very much the only option in VFX).
I did have a quick look just now, but also wasn't able to track this down. It was too long ago to remember how I actually did this.. :( But, things to keep an eye on is the ProxyModel, maybe take that out of the equation to see if that matters. It's responsible for showing and hiding things in the model. |
left QML, right lite
recently switched to lite, and noticed that exceptions in a collector mess with the UI.
expected behaviour:
if a collector fails due to an exception, a red box shows in the UI
just like how QML handles it
current behaviour:
lite hides the collector plugin and it's unclear what is going on
The text was updated successfully, but these errors were encountered: