| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-01-20 | [Rust] Fix UB for basic block analysis context out params (#7908) | Mason Reed | |
| 2026-01-14 | Allow controlling which address is used for instructions created when ↵ | Mark Rowe | |
| inlining during analysis Previously the address of the instruction in the function being inlined was used as the new instruction's address when copying it during inlining. Now there is an additional option: use the address of the call instruction that is being replaced as the new instruction's address. This new mode is useful when inlining thunks or stub functions, but care must be taken if using it beyond that. The benefit is that it ensures that when a function contains multiple calls to the same stub function, each inlined copy ends up with distinct addresses. This ensures that call type adjustments and other overrides that are stored on the function and keyed by address can be applied independently to each callsite that was inlined. The trade-off is that if the function being inlined contains non-trivial logic, all of the inlined instructions sharing an address will limit what type of adjustments can be applied to them. The Objective-C and shared cache workflows are updated to take advantage of this new mode when they enable inlining of stub functions. This will make it possible for multiple calls to the same runtime function within a single function to have separate call type adjustments applied in the future. | |||
| 2026-01-13 | [Rust] Fix misc doc comments missing | Mason Reed | |
| 2026-01-13 | [Rust API] Add BinaryViewExt::{tags_all_scopes, tag_types, tags_by_type} | Josh Ferrell | |
| 2026-01-11 | [Rust] More session scoped logs | Mason Reed | |
| Assign the `session_id` span field before calling into the relocation handler so logs get scoped to the specific view. | |||
| 2026-01-11 | [Rust] Add top level documentation to `tracing` and `logger` | Mason Reed | |
| 2026-01-11 | [Rust] Enter more session scoped tracing spans for debug info and binary ↵ | Mason Reed | |
| view callbacks | |||
| 2026-01-11 | [Rust] Replace `log` with `tracing` | Mason Reed | |
| - Added more documentation - Replaced global named logger for plugins, fixing the issue when the CU has multiple (e.g. statically linked demo) - Simplified some misc code This is a breaking change, but I believe there is no better time to make it, we cannot continue to use the `log` crate, it is too limited for our needs. | |||
| 2026-01-01 | update copyrights for 2026 | Jordan Wiens | |
| 2025-12-29 | Fix QualifiedName::default() incorrectly creating QualifiedName with empty ↵ | Truman Kilen | |
| separator | |||
| 2025-12-25 | [Rust API] Add TypeBuilder::set_signed | Josh Ferrell | |
| 2025-12-24 | [Rust] Fix `BinaryViewExt::address_comments` leaking and refactor | Mason Reed | |
| 2025-12-24 | [Rust API] Add BinaryViewExt.address_comments | Josh Ferrell | |
| 2025-12-15 | Add PossibleValueSet operation APIs and fixes to PVS python API | Josh Ferrell | |
| 2025-12-15 | [Rust] Return Array in more debug info functions (#7744) | Mason Reed | |
| 2025-12-15 | [Rust] Misc `QualifiedName` cleanup | Mason Reed | |
| - Added some unit tests - Improved documentation - Made `QualifiedName::new` and `QualifiedName::new_with_separator` generic over `Into<String>` | |||
| 2025-12-15 | [Rust] Move `QualifiedName` to own module | Mason Reed | |
| This is used in more places than types, so its best we keep it separate. | |||
| 2025-12-15 | [Rust] Misc documentation and internal cleanup of types module | Mason Reed | |
| 2025-12-15 | [Rust] Restructure type APIs into `types` module | Mason Reed | |
| This helps with documentation, giving a single module for those working with types to find related APIs Also split out enumeration and structure APIs into their own file, since they have their own backing data separate from `Type`. | |||
| 2025-12-15 | [Rust] Add `Function::defined_symbol` to use when getting the default ↵ | Mason Reed | |
| function symbol is not warranted | |||
| 2025-12-11 | [Rust] Implement data notification API | Rubens Brandão | |
| 2025-12-10 | [Rust] Fix untyped `expr_idx` within MLIL `ILReferenceSource` | Mason Reed | |
| 2025-12-10 | [Rust] Add APIs to retrieve type archives for a binary view | Mason Reed | |
| 2025-12-10 | [Rust] New type for `TypeArchiveId` | Mason Reed | |
| Prevents type confusions considering there are at times, three different id types being referred to in the type archive API | |||
| 2025-12-10 | [Rust] Add module comment to data renderer | Mason Reed | |
| 2025-12-10 | [Rust] Refactor `AnalysisProgress` returned from ↵ | Mason Reed | |
| `BinaryViewExt::analysis_progress` | |||
| 2025-12-10 | [Rust] Remove deprecated MLIL functions | Mason Reed | |
| These have been deprecated since last stable, so they will be removed now. I do believe that there might be some external users of this api so we should alert them. | |||
| 2025-12-10 | [Rust] Impl `Display` for `FileMetadata` | Mason Reed | |
| 2025-12-10 | [Rust] Impl `Display` for `Symbol` | Mason Reed | |
| 2025-12-10 | [Rust] Add string reader helpers and fix `analysis_info` | Mason Reed | |
| - `analysis_info` was causing a double free with function refs, also did not need to be wrapped in a Result | |||
| 2025-12-10 | [Rust] More architecture module documentation and misc cleanup | Mason Reed | |
| 2025-12-10 | [Rust] Make `InstructionTextToken` field `expr_index` optional | Mason Reed | |
| There was a TODO there to document that it is optional, we should just wrap it in `Option` instead. | |||
| 2025-12-10 | [Rust] Remove `UnusedRegisterStackInfo` and update architecture documentation | Mason Reed | |
| 2025-12-10 | [Rust] Add misc documentation | Mason Reed | |
| 2025-12-10 | [Rust] Misc cleanup for ABB | Mason Reed | |
| 2025-12-10 | [Rust] Impl `Display` for `VersionInfo` | Mason Reed | |
| 2025-12-10 | [Rust] Move architecture module code into more reasonable files | Mason Reed | |
| To keep backwards compatibility for commonly referenced code we re-export them within the architecture module. Also does some light refactoring of some newly added APIs to keep them more consistent with other parts of the codebase. | |||
| 2025-12-10 | [Rust] Remove redundant `ArchAndAddr` type | Mason Reed | |
| Use `Location` instead, `arch` can be a nullptr | |||
| 2025-12-10 | [Rust] Fix leaking list in `Function::guided_source_blocks` | Mason Reed | |
| Forgot to call `BNFreeArchitectureAndAddressList`, also use `Location` instead of `ArchAndAddr`. | |||
| 2025-12-10 | [Rust] Add `LowLevelILSSARegister` type (#7745) | Mason Reed | |
| 2025-12-10 | [Rust] Fix crash when calling `LowLevelILFunction::generate_ssa_form` ↵ | Mason Reed | |
| without an owner You cannot generate SSA form of an LLIL function without a backing function unfortunately. | |||
| 2025-12-05 | [Rust] Fix misc clippy lints and warnings | Mason Reed | |
| These are introduced after changing to Rust 1.91.1 | |||
| 2025-12-04 | Pass arch to finalized LowLevelILFunction (#7729) | Truman Kilen | |
| Co-authored-by: Mason Reed <mason@vector35.com> | |||
| 2025-11-25 | Fix rust documentation warnings. | Brian Potchik | |
| 2025-11-24 | Add APIs for getting files in a project folder | Josh Ferrell | |
| 2025-11-24 | [Rust] Fix misc broken doc links | Mason Reed | |
| 2025-11-24 | Add AnalysisContext FFI for SectionMap queries. | Brian Potchik | |
| 2025-11-23 | Add IsOffsetReadOnlySemantics API. | Brian Potchik | |
| 2025-11-23 | [Rust] Clarify and expand on the current set of queryable offset properties | Mason Reed | |
| Now that we have more duplicate API's we need to clarify and cross link between them to help alleviate the confusion for readers. | |||
| 2025-11-23 | [Rust] Fix misc formatting | Mason Reed | |
