-
Notifications
You must be signed in to change notification settings - Fork 113
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
Get rid of soft-dependencies (excluding plugins) #844
Comments
interaction view can probably be axed entirely. it was a cute idea from a hackathon long past, probably should have been a plugin. |
What about other soft dependency things? This is an incomplete list but a For example, docker targets require at least
|
This is a good start :) #848 |
Related: #861 |
Description
Right now
angr management
has multiple soft dependencies:In
interaction_view.py
, for example, we soft require:archr
,keystone-engine
,nclib
, andslacrs
(though, this view seems useless without any of these installed).pyinstaller
gives us a frozen python environment, which means these features are simply not-usable for many of our users. I would (and still do) suggest moving something like theinteractions_view
into a plugin, but if it is a default plugin we ship, it will simply be unusable for users of the pyinstaller build.With that in mind, I think we should do one of the following:
extras_require
in ourpyproject.toml
.Users who installed
angr management
via either git or pip could then install these extra dependencies as needed via something likepip install angrmanagement[docker]
, which could installarchr
andkeystone-engine
for docker image target support.The pyinstaller build would then need to be built either without these options, preventing users from using these default plugins at all, or with all of these options, allowing users to use all of the default plugins.
Alternatives
Do
1
as much as possible, then do3
as much as possible for the rest, then apply strategy2
for any remaining soft dependencies. This is probably the best choice.Additional context
No response
The text was updated successfully, but these errors were encountered: