Skip to content

Fix IDA script API compatibility issues for IDA 9.0 RC1 and 9.1#171

Open
ZERO-A-ONE wants to merge 1 commit intoworawit:mainfrom
ZERO-A-ONE:main
Open

Fix IDA script API compatibility issues for IDA 9.0 RC1 and 9.1#171
ZERO-A-ONE wants to merge 1 commit intoworawit:mainfrom
ZERO-A-ONE:main

Conversation

@ZERO-A-ONE
Copy link

Description:

The current IDA script generation encounters API incompatibility issues in both IDA 9.0 RC1 and 9.1. This PR addresses these issues by updating the relevant APIs to support the new versions.
Although there was a previous pull request (#141) that submitted initial compatibility patches for IDA 9.0, compatibility issues still persist in IDA 9.0 RC1 and later versions, as discussed in that PR thread.

Changes Made:

I have referenced the official migration guide (https://docs.hex-rays.com/9.0/developer-guide/idapython/idapython-porting-guide-ida-9) to fix the API issues. The largest changes are due to the removal of two modules:

  • ida_struct
  • ida_enum

The APIs have been updated according to the official documentation and tested successfully on my IDA 9.0 RC1 installation.

Notes:

This fix is not compatible with IDA versions below 9.0
More compatibility testing may be needed for broader validation
We may need to consider providing different versions of IDA generation code for different IDA versions in the future

Testing:

Tested and verified working on IDA 9.0 RC1.

The current IDA script generation will encounter API incompatibility issues in both 9.0 RC1 and 9.1, and the relevant APIs have been fixed to support the new versions.
Copilot AI review requested due to automatic review settings August 19, 2025 07:52
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

}
return std::format("Code: {} ({:#x})", code.ToCString(), ep);
}
case dart::kArrayCid:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove this line will cause:

DartDumper.cpp: 685: error: Unhandle internal class _List (90)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants