Skip to content
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

Bugfix: Only list discovered components in the GUI #313

Conversation

EdwardLarson
Copy link
Collaborator

One sentence summary of this PR (This should go in the CHANGELOG!)

Link to Related Issue(s)
Previously the GUI backend server used an OFRAKEnvironment object to get the list of components offered to the user to run. However this includes components from all installed OFRAK packages, including ones that weren't discovered as part of spinning up the server. So if the user selected one of these components, they would get an error.

Additionally, if an OFRAK package was installed without all of its dependencies, any import errors could be avoided by not importing/discovering the package. However since getting the component list through the OFRAKEnvironment always imports all installed modules, a user could not avoid getting import errors for such installed, incomplete, and unused packages when using the OFRAK GUI.

Please describe the changes in your request.

  • Use the current OFRAKContext's ComponentLocator to get components
  • Replace most of the filtering logic with the standard ComponentLocator filters
  • Also get rid of an unnecessary OFRAKContext method get_all_tags, replace it with the call it wrapped ResourceTag.all_tags

Anyone you think should look at this, specifically?
@rbs-jacob

Copy link
Member

@rbs-jacob rbs-jacob left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me! Feel free to merge when you feel this is ready.

@EdwardLarson EdwardLarson merged commit 7bdeeef into redballoonsecurity:master May 23, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants