1.9 KiB
IDAPython for IDA 7.00: backward-compatibility with 6.95 APIs
Availability of the backward-compatibility code
-
Backward-compatibility is provided by python.cfg's
AUTOIMPORT_COMPAT_IDA695directive. This directive is currently turned on by default, but in the future it will:- be turned off by default
- eventually disappear, and all the corresponding code will be removed
-
Consequently IDAPython script/plugin writers should try and port their code, with the help of the porting guide XXX FIXME URL? XXX.
-
Once you have done the porting, please check that your code works with
AUTOIMPORT_COMPAT_IDA695set toNO. -
If anything proves too hard or confusing, please let us know about it on support@hexrays.com, and we will help you, either by fixing IDAPython if needed, or by improving the documentation.
Coverage of the backward-compatibility code
-
We did what was reasonably feasible, to provide an IDAPython API that's as backward-compatible as possible with the IDA 6.95 API
-
However, we considered it unreasonable for some parts of the API to be ported. Most notably:
- the "processor module" API: existing processor modules will
have to be ported to the new API. Please see the SDK's
module/script/proctemplate.py(or any other*.pyfile in that directory) for examples how to use the new API. - processor module-related notifications: some of those have either been renamed, or have possibly changed signature
- the "processor module" API: existing processor modules will
have to be ported to the new API. Please see the SDK's
-
Most (all?) of the renamed functions, properties, etc... should be covered, in all modules:
idaapi,idc, ... If something doesn't work/isn't there anymore, it's likely an omission from our side. -
Please let us know about any missing bits & pieces, that you believe should be there and that we might have forgotten!