| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-08-20 | [Rust] Add project path file retrieval related functions | Mason Reed | |
| 2025-08-20 | Deprecate Workflow::Instance in favor of Workflow::Get and Workflow::GetOrCreate | Mark Rowe | |
| Calls to `Workflow::Instance` that were looking up a built-in workflow name are updated to use `Workflow::Get`. Others use `Workflow::GetOrCreate`. | |||
| 2025-08-14 | [Mac] Consistently specify rpaths for plug-ins | Mark Rowe | |
| C++ plug-ins now consistently use the `plugin_rpath` or `ui_plugin_rpath` macros to ensure they have `SKIP_BUILD_RPATH` set when building on Mac (i.e., no `LC_RPATH` is added). Rust plug-ins have their build.rs updated to only specify `-Wl,-rpath` when building for Linux. It is not needed on macOS. On macOS we instead explicitly specify an `@rpath`-relative install name. This doesn't change any behavior, but avoids leaving an absolute path as the library's install name and is consistent with CMake's behavior for C++ plug-ins. | |||
| 2025-08-13 | [Rust] Add builder API for creating workflows | Mark Rowe | |
| `Workflow::new` is replaced by `Workflow::build` that returns a `Builder` type that supports the operations that mutate a workflow, such as registering activities. `Workflow::instance` is replaced by `Workflow::get` to make clear that it is intended to look up an existing workflow. `Workflow::cloned` is introduced to wrap the common pattern of retrieving an existing workflow and cloning it with the same name in order to modify it. `Builder::activity_before` / `Builder::activity_after` are introduced to wrap the common pattern of registering an activity then inserting it before or after a given activity. | |||
| 2025-08-13 | [Rust] Add a type-safe builder API for Activity configuration | Mark Rowe | |
| This makes it possible to see what structure the configuration takes and eliminates errors due to typos in JSON string literals. | |||
| 2025-08-13 | [Rust] Fix warnings about names that are not snake case | Mark Rowe | |
| The names can simply be omitted since they are only mentioned in the declaration of a function pointer. | |||
| 2025-08-07 | Fix clean builds when CMake is using Unix Makefiles | Mark Rowe | |
| The `$<TARGET_FILE:binaryninjaapi>` syntax does not do what is intended for Unix Makefiles. In practice there's no reason for this custom command to depend on the `binaryninjaapi` target. The Rust API uses core's C APIs directly rather than via the C++ API, and it already depends on binaryninjacore.h via `RUST_API_SOURCES`. Since it's running `cargo check` and not doing a full compilation this header-only dependency is sufficient. | |||
| 2025-08-06 | [Rust] Take download callbacks by reference to avoid boxing | Mason Reed | |
| 2025-08-03 | [Rust] Misc formatting | Mason Reed | |
| 2025-08-01 | Add LogForException APIs to pass stack trace information separate from the ↵ | Rusty Wagner | |
| message | |||
| 2025-07-30 | [Rust] Only re-run `cargo check` if inputs have changed | Mark Rowe | |
| 2025-07-30 | Change rust project APIs to accept "impl AsRef<Path>" instead of "&str" for ↵ | Josh Ferrell | |
| path arguments | |||
| 2025-07-29 | Add MemoryMap::add_unbacked_memory_region to rust api | Josh Ferrell | |
| 2025-07-28 | [Rust] Misc formatting | Mason Reed | |
| 2025-07-28 | [Rust] Add `BinaryViewExt::image_base` | Mason Reed | |
| 2025-07-28 | [Rust] Add docs for what the boolean return value does for some specific ↵ | Mason Reed | |
| "progress" like callbacks Still need to add more, consider changing the boolean to an enum that describes it better, so we do not need to copy paste docs around. | |||
| 2025-07-24 | make fields of LookupTableEntry public | alan | |
| 2025-07-22 | Fix non-clickable force analysis with rust render layer on | Mason Reed | |
| Fixes https://github.com/Vector35/binaryninja-api/issues/7139 | |||
| 2025-07-17 | [Rust] Misc fixes / formatting | Mason Reed | |
| - Fix cmake clean not cleaning target docs - Fix not prioritizing enterprise remote in collab tests - Some misc formatting - Fix incorrect assert in binary loading | |||
| 2025-07-17 | [Rust] Misc formatting fixes | Mason Reed | |
| 2025-07-15 | Add the ability to limit the number of results in the cross reference APIs | Rusty Wagner | |
| 2025-07-15 | [Rust] Update some tests | Mason Reed | |
| 2025-07-15 | [Rust] Add `BinaryView::search` and friends | Mason Reed | |
| 2025-07-15 | Move LLIL instruction retrieval into the LLIL function where it belongs | Mason Reed | |
| The python API was kept the same seeing as we are close to the release, will likely start deprecating some of those API's soon. | |||
| 2025-07-06 | [Rust] Add `FileMetadata::forget_undo_actions` | Mason Reed | |
| Need this for WARP, see next commit | |||
| 2025-07-06 | [Rust] Make `ReportCollection::add_*` optionally take a view | Mason Reed | |
| To allow for creating reports outside the context of a view | |||
| 2025-07-06 | [Rust] Fix typo for `MediumLevelILFunction::live_instruction_for_variable` param | Mason Reed | |
| 2025-07-06 | [Rust] Fix MLIL function expression index usage in place of instruction index | Mason Reed | |
| Discovered when poking at variable values in WARP | |||
| 2025-07-04 | [Rust] Fix double precision expression low level IL definition | Mason Reed | |
| 2025-07-04 | [WARP] Fix possible skipped instructions when multiple IL expressions are ↵ | Mason Reed | |
| appended for a given instruction | |||
| 2025-07-03 | [Rust] Fix clippy + rustfmt complaints | Mark Rowe | |
| The clippy complaint was a real issue: the doc comment intended for the commented-out `unresolved_indirect_branches` was being interpreted as the start of the doc comment for the following function. | |||
| 2025-07-04 | [Rust] Fix some grammar in README.md | Mason Reed | |
| 2025-07-04 | [Rust] Add missing `ADD_OVERFLOW`, `TEST_BIT` and `LLIL_REG_STACK_FREE_REG` ↵ | Mason Reed | |
| low level IL expressions | |||
| 2025-07-03 | Add get_files_by_path_in_project and get_path_in_project to C++ and python APIs | Alexander Khosrowshahi | |
| 2025-07-03 | api: indirect branch inlining support | Ryan Snyder | |
| 2025-07-03 | [Rust] Add simple binary view tags test | Mason Reed | |
| 2025-07-02 | [Rust] Misc cleanup | Mason Reed | |
| 2025-07-02 | [Rust] Add missing `LLIL_FLOAT_CONST` low level IL expression | Mason Reed | |
| 2025-07-02 | [Rust] Add missing `LLIL_FLAG_GROUP` and `LLIL_FLAG_COND` lifted IL expressions | Mason Reed | |
| 2025-07-02 | [Rust] Misc formatting | Mason Reed | |
| 2025-07-02 | [Rust] Add note for `Function::has_explicitly_defined_type` | Mason Reed | |
| 2025-07-02 | [Rust] Misc interaction handler fixes | Mason Reed | |
| 2025-07-02 | [Rust] Fixup some unit tests | Mason Reed | |
| 2025-07-02 | [Rust] Misc things for WARP | Mason Reed | |
| - Make LowLevelILFunction::from_raw public" - Add a helper to get lifted il from flow graph | |||
| 2025-07-02 | [Rust] Fix load options string not being terminated | Mason Reed | |
| 2025-07-02 | [Rust] Remove redundant `Result` from `Project::folders` | Mason Reed | |
| Also make `Project::file_by_path` take a `Path`. | |||
| 2025-07-02 | [Rust] Add some additional impls for ergonomics | Mason Reed | |
| 2025-07-02 | [Rust] Make `ProjectFile::path_on_disk` return `Option<PathBuf>` | Mason Reed | |
| This is what the API is trying to express, we should just Do The Right Thing:tm: | |||
| 2025-07-02 | [Rust] Misc `interaction::report` improvements | Mason Reed | |
| - Add `Debug` impl to `ReportCollection` - Fix flow graph related api's not being optional | |||
| 2025-07-02 | [Rust] Rerun bindings generator automatically when `BINARYNINJADIR` changes | Mason Reed | |
| This improves the experience when making changes to the core c ffi | |||
