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
Currently, because we use return False rather than continue when an entry point fails to load, if one entry point fails then none of the rest of the entry points for that plugin are registered. There also isn't any detail given, so the logs just look like:
ERROR Failed to load <entry point> from <plugin-name> for unknown reason. Skipping
This PR means that when an entry point fails, only that specific entry point is skipped, and we'll log the reason.
Wouldn't this result in partially loaded plugins? Should we want to stop loading entry points for a specific plugin if there is a fail and warn the user? Partial loading of plugins could lead to undefined behaviour. I agree the logging needs to be improved around this.
It would, but I think a partially loaded plugin is better than an aborted plugin. For example, the thing that motivated this was the Cedrus plugin failing to load due to an error in Riponda VoiceKey - meaning the old Cedrus Button Box Component wasn't loading, despite it not being at all dependent on the Riponda backend. If an entry point can still load without error I think we should allow it to, even if there's a problem with another entry point in the same plugin.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Currently, because we use
return Falserather thancontinuewhen an entry point fails to load, if one entry point fails then none of the rest of the entry points for that plugin are registered. There also isn't any detail given, so the logs just look like:This PR means that when an entry point fails, only that specific entry point is skipped, and we'll log the reason.