- GhidraScriptUtil how has (static) initialize & dispose
- initialize is either through (headed/GUI) GhidraScriptMgrPlugin or
directly (headless)
- BundleHost
- now owns bundle paths (script dirs)
- save and restore to SaveState for use by GUI
- no static instances
- GhidraScriptUtil BundleHost coincides with GUI's when both are used
- generates events
- conservative use of auto-vivification
- BundleStatusCompoentProvider / PathManager
- better split between GUI & model
- subscribes to GUI's BundleHost for events
- provider registers for generated events, controls BundleHost
- move bundle compiler into source bundle
- activate action attempts to activate in topological order
- modified suppression of RowObjectSelectionManager.repair
- add animation for clean operation
- move serialization and bundleevents from provider into
bundlestatusmodel
- add summary field to bundle status
- add more precise tracking of requirements
- make status updates asynchronous via OSGiListener
- minimize access to BundleHost instance (JavaScriptProvider is still bad)
- BundlePath
- restrict construction to osgi package
- remove "editable" attribute and fix incorrect reference
- remove references in GhidraScriptUtil
- BundlePath attribute choice came down only to system or user
- user filtering on "enabled" were redundant
- move compilation from JavaScriptProvider to BundheHost
- PathManager was most of a ComponentProvider anyway, so this isn't a
huge change
- this makes bundle status available w/out the GhidraScript component
- it's no longer modal, e.g. script directory list updates are immediate
- note: timeout increased by 33% in waitForTaskEnd because the entire
script directory needs to compiled now
- complete recursive wipe of binary artifacts added to @After action
- move bundle host into GhidraScriptMgrPlugin
- remove access to script class files and bin directory
- remove JavaScriptClassLoader
- add loadClass to JavaScriptProvider to load non-GhidraScript classes