binaryninja-api icon indicating copy to clipboard operation
binaryninja-api copied to clipboard

Reinstalling a plugin doesn't work

Open fuzyll opened this issue 1 year ago • 3 comments

Version and Platform (required):

  • Binary Ninja Version: 4.1.5514-dev
  • OS Version: macOS 14.5
  • CPU Architecture: aarch64

Bug Description: I clicked "Reinstall" on a plugin and don't have the ability to enable or uninstall, only install.

Clicking the only available button ("Install") multiple times leads to strange behavior where it will claim to be installing or disabling the plugin.

Restarting the application, the plugin is no longer installed at all.

This affects official and community plugins equally.

Steps To Reproduce:

  1. Pick an installed plugin within the Plugin Manager
  2. Click "Reinstall" on that plugin
  3. Observe that it is successfully installed, but now only has the option to Install (no Disable, Uninstall, Reinstall)
  4. Any interaction with the "Install" button will cycle between installing or disabling the plugin
  5. Restarting (regardless of whether you followed step 4 above) will result in no longer having the plugin installed

Expected Behavior: I expect to have the ability to enable, reinstall, or uninstall the plugin I just reinstalled after the install has completed. I also expect to have the plugin installed when I restart.

Screenshots/Video Recording: image

image

Additional Information: This appears to have been broken since at least the 3.5 stable (3.5.4526), not the more recent build as I had originally stated.

fuzyll avatar Jun 14 '24 21:06 fuzyll

Updated this issue because it's worse than I had previously thought. Also updated Binary Ninja to make sure it would repro after the latest Plugin Manager change. It does.

fuzyll avatar Jun 14 '24 22:06 fuzyll

Turns out this has been broken since before 3.5.4526 stable... Changing impact accordingly, since I appear to be the first person to have reported it in nearly a year.

fuzyll avatar Jun 16 '24 16:06 fuzyll

Turns out this has been broken since before 3.5.4526 stable... Changing impact accordingly, since I appear to be the first person to have reported it in nearly a year.

Haha you are not the first person to notice this. I have also ran into this but just let is slipped (I should not). Per my memory, it only happens when the plugin has some dependencies. Like if it is a simple Python script then it works fine

xusheng6 avatar Jun 17 '24 05:06 xusheng6