Commit Graph

37 Commits

Author SHA1 Message Date
Luke Street dc9eec66b0 Configurable diff algorithms & new default algorithm
Uses the similar crate to support new diff algorithms:
- Patience (new default)
- Levenshtein (old default)
- Myers
- LCS (Longest Common Subsequence)

Options in "Diff Options" -> "Algorithm..."
2023-11-21 11:48:18 -05:00
Luke Street 7b58f9a269 Adjust "Diffable" to exclude missing target objects 2023-10-09 12:47:22 -04:00
Luke Street d9e7dacb6d Version 0.5.1 2023-10-07 14:49:01 -04:00
Luke Street 04b4fdcd21 Reload objects when changed externally
Uses file modification timestamp polling for project config and objects to avoid unneeded complexity from the filesystem notification watcher.

Allows disabling `build_base` as well for projects using an external build system.
2023-10-07 14:48:34 -04:00
Luke Street e68629c339 Update ppc750cl (subi{,s,c} mnemonics, capstone-style CR bits) 2023-10-06 01:22:26 -04:00
Luke Street bb9ff4b928 Update all dependencies 2023-10-05 23:55:01 -04:00
Luke Street 57392daaeb Implement click-to-highlight
Highlights registers, instructions, arguments, symbols or addresses on click.

Resolves #7
2023-10-05 23:40:45 -04:00
Luke Street f4757b8d92 Version 0.4.4
Add `#[serde(default)]` to new AppConfig field
2023-10-04 23:52:00 -04:00
Luke Street 711f40b591 I forgot to bump the Cargo.toml version, oops 2023-09-10 00:24:53 -04:00
Luke Street 26932b2e44 Support `min_version` field in `objdiff.json` 2023-09-09 23:54:25 -04:00
Luke Street 192a06bc0b Project configuration improvements
- Support `completed` field for objects in project config. In object tree, displays red for incomplete, green for complete.
- Add support for one-sided diffs. A project can include objects without an associated source file for viewing.
- Add versioning to AppConfig, supporting upgrades without losing user configuration.
2023-09-09 23:43:12 -04:00
Luke Street 6b8e469261 Project configuration fixes & improvements
- Allow config to specify object "target_path" and "base_path" explicitly, rather than relying on relative path from the "target_dir" and "base_dir". Useful for more complex directory layouts.
- Fix watch_patterns in project config not using default.
- Fix "Rebuild on changes" not defaulting to true.
- Keep watching project config updates even when "Rebuild on changes" is false.
- Disable some configuration options when loaded from project config file.
2023-09-03 09:28:46 -04:00
Luke Street 3970bc8acf Document configuration file & more cleanup 2023-08-12 14:18:09 -04:00
Luke Street f5f6869029 Start project config file support & rework UI 2023-08-07 20:11:56 -04:00
Luke Street b02e32f2b7 Add dark/light theme toggle (light theme WIP) 2023-07-15 11:17:59 -04:00
Luke Street c7a326b160 Update all dependencies (again) 2023-07-06 10:37:57 -04:00
Luke Street 100f8f8ac5 Update all dependencies 2023-05-11 02:47:57 -04:00
Luke Street 2f778932a4 Version 0.3.1 2023-02-06 17:40:42 -05:00
Luke Street 42601b4750 Update cwdemangle 2023-02-06 17:40:42 -05:00
Luke Street 6ee11ca640 Add optional wgpu feature 2023-01-21 12:56:29 -05:00
Luke Street 2ab519d361 Update rabbitizer, deny.toml 2023-01-21 01:36:32 -05:00
Anghelo Carvajal ec062bf5ca
User rabbitizer crate (#22)
* Start using rabbitizer crate

* Fix reference problem

* bump rabbitizer version
2023-01-21 01:27:09 -05:00
Luke Street 4b58f69461 Upgrade all dependencies 2023-01-21 00:54:54 -05:00
Luke Street cd01b6254c Use rustls on Linux 2023-01-21 00:06:22 -05:00
Nick Condron 20dcc50695
Let-else reformatting (#23)
* Use let-else in App::post_rendering

* Use let-else in diff::reloc_eq

* Use let-else in diff::diff_objs

* Use let-else in views::data_diff::data_diff_ui

* Use let-else in views::function_diff::function_diff_ui

* Use let-else in views::function_diff::asm_row_ui

* Use let-else in views::jobs::jobs_ui

* Update rust-version in Cargo.toml
2023-01-16 16:51:40 -05:00
Luke Street e2fde3dbce Actually increment the version number 2022-12-12 01:17:03 -05:00
Luke Street 7219e72acf Version 0.2.2
- Add application icon
- Fixes for objects containing multiple
  sections with the same name
2022-12-10 10:34:03 -05:00
Luke Street d1d6f1101b Version 0.2.1 2022-12-08 01:51:32 -05:00
Luke Street 771a141110 Version 0.2.0
- Update checker & auto-updater
- Configure font sizes and diff colors
- Data diffing bug fixes & improvements
- Bug fix for low match percent
- Improvements to Jobs UI (cancel, dismiss errors)
- "Demangle" tool

Closes #6, #13, #17, #19
2022-12-06 17:53:32 -05:00
Luke Street ff9b378445 Fix MIPS relocation addends; update cwdemangle, ppc750cl 2022-11-05 13:16:44 -04:00
Luke Street d04838fe4e Update ppc750cl crate for more improved mnemonics & branch prediction bits 2022-10-10 17:54:52 -04:00
Luke Street c774a7b902 Update ppc750cl crate for improved CR bit & SPR decoding 2022-10-09 23:51:09 -04:00
Luke Street 3224be21db Rework function diff view (fixes #12) 2022-09-20 19:04:32 -04:00
Luke Street daaa5c86a2 Improved Windows support & simple WSL2 integration 2022-09-11 20:31:58 -04:00
Luke Street b55c919f4d Updates & initial MIPS support 2022-09-11 13:52:55 -04:00
Luke Street eebcb51d0d Bump MSRV to 1.62 2022-09-08 17:34:59 -04:00
Luke Street cb3c6062c7 Initial commit 2022-09-08 17:19:20 -04:00