Releases: BinaryAnalysisPlatform/bap-ida-python
v2.3.0
v2.2.0
v2.1.0
v2.0.0
v1.6.0
v1.5.0
v1.4.0
v1.3.0
v1.2.0
v1.1.0
This is major update to the bap-ida-python package, it brings lots of
new features, here is the excerpt from the CHANGES.md:
- call BAP asynchronously (without blocking IDA)
- run several instances of BAP in parallel
- special attribute view (instead of
Alt-T
search) - neater comment syntax (attr=value instead of sexp)
- task manager for primitive job control
- plugins are now callable from the menu (try
Ctrl-3
) - each instance has its own view
- view selector can switch between views
- stderr and stdout are properly dumped into the view
- cross-platform implementation (Docker, Windows should work)
- more robust type emition
- new generic ida service integration (for calls to IDA from BAP)
- added unit tests
- Travis-CI integration
- code refactoring: more pythonic, PEP8 compilant, pylint-happy
The most neat features are:
- Run multiple instances of BAP without blocking IDA
- Lookup extracted attributes with the new attribute view
- Run plugins from the menu (no need to memorize all these shortcuts,
just useCtrl-3
to see them all) - More readable and robust comments (though still with issues)
From the software engineering perspective, the codebase was heavily
rewritten. The code is now more pythonic (subjective of course), PEP8
compilant, (some modules are even good to pylint), and, most
importantly, we now have tests. A big effort was spent on mocking the
IDA, and lots of bugs were fixed during the process. The coverage is
still very low, though.
This version also brings a new generic interface for the services, that
are provide by IDA to BAP (rooter, brancher, etc). As well as exposing
a new interface for the emit-ida-script plugin. These changes are
breaking, so bap.1.0.0 will not work with bap-ida-python 0.2.0.
The new interface exposes a singleton instance ida.service
that will
accept the service name, and the destination file.