GP-1 Additional Change History revision

This commit is contained in:
ghidra1
2025-12-04 12:42:10 -05:00
parent d0f88bf902
commit 7b6351f7ec

View File

@@ -4,12 +4,17 @@
* _Data Types_. Added `RGB16` and `RGB32` Color primitive datatypes which have been implemented as unsigned integer types and will render a color patch for Data within the Listing. These default, respectively, to `RGB_565` and `ARGB_8888` encodings but can adopt a different RGB Encoding through the use of a Typedef and a default Setting. (GP-4310, Issue #6191)
* _Decompiler_. Implemented low-pcode-based abstract interpretation via the Università Ca Foscari's Library for Static Analysis (LiSA). (GP-5566)
* _Emulator_. Added an experimental Z3 Symbolic emulator with a summarization GUI. This feature is distributed as an installable extension. (GP-5727)
* _FileSystems_. Add support for zstd compression in GFileSystem via user-provided zstd or 7-Zip command line tools. (GP-5842)
* _Graphing_. Added a Function Graph tab to the Function Comparison widget. This allows users to see two functions side-by-side in Function Graph views, such as when viewing BSim functions. (GP-3648, Issue #1154)
* _Graphing_. Created a new prototype __Data Graph__ graphing feature with nodes that display data structures and values and edges that link one data structure to another via a pointer reference. (GP-5481)
* _GUI_. Updated the Xrefs Table to allow the user to delete references to the current location. (GP-2140, Issue #4317)
* _GUI_. Added a shared project repository connection status indicator to the root node of the project data tree. A popup menu action was also added to the root node allowing the connection to be established when in a disconnected state. (GP-5333)
* _GUI_. Added ability to toggle the displaying of function variables (parameters and locals) that are normally displayed just below the function signature. The variables display can be turned on/off globally or individually per function. (GP-5886, Issue #8385)
* _Importer_. Created an importer for the Decompiler debug format which is produced by the Decompiler. (GP-3947)
* _Importer_. Added a new loader for PA-RISC HP __System Object Module__ binaries. (GP-5942)
* _Importer:COFF_. Added support for importing big-endian COFF binaries. (GP-5645, Issue #1398, #8042)
* _Scripting_. Condensed the script categories into a better-organized subset of categories. (GP-3952)
* _Importer_. Added an option to mirror the local filesystem when importing programs and their libraries. Programs and libraries that exist on the local filesystem as symbolic links will have both their corresponding link file and resolved program file mirrored in the project. (GP-5343, Issue #7430)
* _Importer_. Added a new loader for HP-UX PA-RISC __System Object Module__ (SOM) binaries. (GP-5942)
* _Processors_. Added support for the NDS32 Processor. (GP-6007, Issue #1778)
* _Project_. Added expanded support for project link-files with the introduction of internal project folder and file links. The links behave similar to Linux symbolic links and allow a single folder or file to be referenced by alternative project paths. The GUI Project Tree and related project file chooser have also been improved with the ability to expand folder-links like folders (subject to filter restrictions at the API level). The main Project Tree will continue to rely on project views for following external folder-links. Some of the project tree's recursive traversal actions do not follow folder-links (e.g., Expand All). NOTE: Although Ghidra permits files and folders to have the same name, this should be avoided when utilizing link-files or Ghidra URLs due to the path ambiguity it can cause. This change also introduces a new file storage format which can create issues within a project if opened with an older version of Ghidra. While this version remains compatible with older Ghidra Server versions, adding link files to a repository will require a Ghidra Server upgrade to the latest version. (GP-3551)
### Improvements
* _Accessibility_. Fixed tooltips in the Symbol Tree to not read HTML markup to screen readers. (GP-5741, Issue #8228)
@@ -49,10 +54,7 @@
* _Emulator:JIT_. Added support for multi-precision integers (varnodes of size 9 or greater) to the JIT-accelerated p-code emulator. (GP-5214)
* _Exporter_. Updated the IDA Pro exporter to work with IDA Pro 9.x. (GP-5873, Issue #7392)
* _FID_. Updated the FID plugin to delay loading of FID DB resources. This will improve the tool load time when there are many FID DB objects in use. (GP-6073, Issue #8593)
* _FileSystems_. Add support for zstd compression in GFileSystem via user-provided zstd or 7-Zip command line tools. (GP-5842)
* _Graphing_. Added a Function Graph tab to the Function Comparison widget. This allows users to see two functions side-by-side in Function Graph views, such as when viewing BSim functions. (GP-3648, Issue #1154)
* _Graphing_. Update the Program Graph __Compact Hierarchical__ layout to have less space between nodes. (GP-4741)
* _GUI_. Added a shared project repository connection status indicator to the root node of the project data tree. A popup menu action was also added to the root node allowing the connection to be established when in a disconnected state. (GP-5333)
* _GUI_. Added ability to remember last user ID specified for server login prompts such as the Ghidra Server authentication prompt. (GP-5579, Issue #7454)
* _GUI_. Added ability to reorder program tabs via drag-n-drop. (GP-5646, Issue #8099)
* _GUI_. Updated the Data Type Manager to increase performance in deleting data types. (GP-5654, Issue #8104)
@@ -64,7 +66,6 @@
* _GUI_. Reduced some excessive Symbol Tree updates seen while performing auto-analysis. (GP-5826)
* _GUI_. Fixed bug in Memory Search where some GUI options were not initialized correctly to the last-used options. (GP-5883)
* _GUI_. Updated the __Next Instruction__ action to jump to the function entry point when the action is invoked from the function signature. (GP-5885, Issue #8385)
* _GUI_. Added ability to toggle the displaying of function variables (parameters and locals) that are normally displayed just below the function signature. The variables display can be turned on/off globally or individually per function. (GP-5886, Issue #8385)
* _GUI_. Added full data type path to Decompiler and Listing hovers. (GP-5913)
* _GUI_. Created new theme value for the Decompiler's middle-mouse highlight color so that the Listing and Decompiler colors may change independently. (GP-5947)
* _GUI_. Added convenience methods to `TableColumnDescriptor` to create simple columns using only a name, column type, and a function to map from the row object to the column object. (GP-5963, Issue #7346)
@@ -74,7 +75,7 @@
* _GUI_. Added accelerator mnemonics to the Memory Search dialog to help reduce manual navigation issues. (GP-5979, Issue #8264)
* _Headless_. The user can now specify headless loader options independently of what loader is being used. The headless importer will ignore loader options that are unsupported by the active loader. (GP-5545)
* _Help_. Added Processor, Language, and Compiler specification file names to __About Program__ dialog. (GP-5716, Issue #8163)
* _Importer_. Added an option to mirror the local filesystem when importing programs and their libraries. Programs and libraries that exist on the local filesystem as symbolic links will have both their corresponding link file and resolved program file mirrored in the project. (GP-5343, Issue #7430)
* _Importer:COFF_. Added support for importing big-endian COFF binaries. (GP-5645, Issue #1398, #8042)
* _Importer:PE_. The PeLoader no longer fails to import if a Data Directory does not parse successfully. (GP-4881, Issue #6864)
* _Languages_. Corrected handling of small integer parameters and structured data-type parameters for the PowerPC 64-bit default calling convention. (GP-4029)
* _Languages_. Added support for mixed integer/floating-point parameters and structured data-type parameters for MIPS calling conventions. (GP-4030)
@@ -85,8 +86,8 @@
* _Processors_. Refactored RISCV context and moved CSR registers into a CSR memory space to support custom instructions and RISCV variants. Also added sample RISCV variant Andestar. (GP-5975)
* _Processors_. Corrected AArch64 `fmadd` operand semantics ordering. (GP-6121, Issue #8454, #8625)
* _ProgramDB_. Improved performance of Symbol Table and its storage of `ExternalLocation` data. (GP-5498)
* _Project_. Added expanded support for project link-files with the introduction of internal project folder and file links. The links behave similar to Linux symbolic links and allow a single folder or file to be referenced by alternative project paths. The GUI Project Tree and related project file chooser have also been improved with the ability to expand folder-links like folders (subject to filter restrictions at the API level). The main Project Tree will continue to rely on project views for following external folder-links. Some of the project tree's recursive traversal actions do not follow folder-links (e.g., Expand All). NOTE: Although Ghidra permits files and folders to have the same name, this should be avoided when utilizing link-files or Ghidra URLs due to the path ambiguity it can cause. This change also introduces a new file storage format which can create issues within a project if opened with an older version of Ghidra. While this version remains compatible with older Ghidra Server versions, adding link files to a repository will require a Ghidra Server upgrade to the latest version. (GP-3551)
* _Scripting_. Python scripts that do not declare a `@runtime` metadata comment now default to PyGhidra instead of Jython. (GP-5415, Issue #7856)
* _Scripting_. Condensed the script categories into a better-organized subset of categories. (GP-3952)
* _Scripting_. Python scripts that do not declare a `@runtime` metadata comment now default to PyGhidra instead of Jython. Jython scripts will need to include the "`# @runtime Jython`" script header in order to continue running within the Jython environment. (GP-5415, Issue #7856)
* _Scripting_. Released PyGhidra 3.0.0. (GP-5637, Issue #6914, #6915)
* _Scripting_. Made a few speed improvements to the RecoverClassesFromRTTIScript. (GP-5831, Issue #8199)
* _Scripting_. Added new script methods to allow script writers to color the console output: `print(String, Color)` and `println(String, Color)`. (GP-5970, Issue #2849)
@@ -123,7 +124,6 @@
* _Processors_. Corrected 80251 `ANL` instruction variant disassembling as `ADD`. (GP-5903, Issue #8393)
* _Processors_. Fixed 80251 `ANL Areg,Data` source-mode disassembly bug. (GP-5904, Issue #8394)
* _Processors_. Added support for the eBPF `CALLX` instruction. (GP-5909, Issue #7972)
* _Processors_. Added support for the NDS32 Processor. (GP-6007, Issue #1778)
* _Processors_. Corrected PowerPC branch conditional instruction semantics. (GP-6049, Issue #8424)
* _Processors_. Fixed disassembly of various Xtensa big-endian instructions. (GP-6050, Issue #8537, #8544)
* _Processors_. Fixed pcode for SuperH `bclr` instruction. (GP-6065, Issue #8579)