You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
pyblish_plugin imports helper_functions
But my_plugin_folder is not in our sys path.
Loading pyblish_plugin will fail with module note found
possible solutions:
pyblish adds registered plugin paths to the system path.
To handle situations where 2 plugins both contain a file named helper_functions.py
we should always do import my_plugin_folder.helper_functions and not import helper_functions
discourage users from using import, and enforce that a plugin should be self contained.
this however severly limits plugins
ask user to handle environment management themselves correctly,
But this raises the entry bar for people who want to use pyblish.
Ideally an artist can download pyblish, download some plugins, load them in pyblish, and it all just works.
The text was updated successfully, but these errors were encountered:
Automatically adding paths to the PYTHONPATH could break pipelines.
But it does seems like a good solution for the Pyblish plugin marketplace platform.
ideally the marketplace would download plugins to a single folder, and only that folder needs adding to your env vars.
this issue came to my attention since i currently have several repos, each containing indivual pyblish plugins, but not all repos are added to the PYTHONPATH
this would not be an issue when you develop all plugins inhouse. since then you also handle env management.
it's more for handling third party plugins.
on first sight, it is not clear that a plugin might not work because of import issues. due to not having your env setup properly. this then results in a silent load, leaving the user confused. (but i registered the path, what is wrong?) this would show up in the console if the user enabled debug logging.
With the PR merged in addressing silent fail confusing this should show in console as an import exception
pyblish stores paths in a registered paths variable. It doesn't add module paths to the sys path.
this results in plugins failing to load sometimes.
example:
We have the following files in a folder
pyblish_plugin imports helper_functions
But my_plugin_folder is not in our sys path.
Loading pyblish_plugin will fail with module note found
possible solutions:
pyblish adds registered plugin paths to the system path.
To handle situations where 2 plugins both contain a file named helper_functions.py
we should always do
import my_plugin_folder.helper_functions
and notimport helper_functions
discourage users from using import, and enforce that a plugin should be self contained.
this however severly limits plugins
ask user to handle environment management themselves correctly,
But this raises the entry bar for people who want to use pyblish.
Ideally an artist can download pyblish, download some plugins, load them in pyblish, and it all just works.
The text was updated successfully, but these errors were encountered: