Skip to content

Releases: longvo92/dbc-compare-tool

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 05 Oct 15:43
2deb111

Added

  • Filterable OLD/NEW ECU Tx/Rx and technical context in Excel reports.
  • Include Unchanged mode in CLI and GUI to export all compared messages and signals without inflating change counts.

Changed

  • Pair renamed DBCs across the entire unmatched inventory using filename/folder keywords and content; shared keywords can match files with completely different messages. Show pairing reasons in DBC Overview.
  • Manual pairing now selects DBC files only and exports directly, without the signal-rename review dialog.
  • Organize the GUI into Baselines and Report sections, with a lighter execution log, clearer run status, and actions that stay visible when scrolling.

v0.4.2

Choose a tag to compare

@github-actions github-actions released this 25 Sep 16:04
bdf6638

Changed

  • Improve folder path handling and automatically create reports beside the new baseline when no output path is provided.

v0.4.1

Choose a tag to compare

@github-actions github-actions released this 15 Sep 15:55

Fixed

  • Improve comparison accuracy and manual pairing validation.

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 06 Sep 13:26
9449655

Changed

  • Replace the two run buttons with a single Run Compare: it uses your manual pairing when that pairing covers every file, and pairs files automatically otherwise.

Removed

  • The Signal Focus tab. Baseline Compare — the folder-to-folder change report — is now the only comparison mode.

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 15 Aug 15:28
0d8baa8

Added

  • Open Report button next to Export Excel in the Signal Focus results window, to open the exported report without hunting for it.

Changed

  • Simplify the interface: removed redundant section titles, moved the Baseline Compare "Include Change Types" checkboxes out of their own card, and Signal Focus progress now shows in the status bar instead of a shared log.
  • Lower the minimum Python version to 3.9, so the tool runs on machines that cannot upgrade.

Fixed

  • Improve rename-match confidence accuracy for ambiguous and event-like signals.
  • Warn instead of silently ignoring a message when a DBC reuses one CAN ID for two differently named messages.

v0.2.0

Choose a tag to compare

@github-actions github-actions released this 02 Aug 03:17
2e9832b

Added

  • Signal Focus tab: a second comparison mode for application-layer work. Pick the ECU node your software runs on, optionally paste or import the list of signals it uses, and get a report about those signals only — data type, scaling, range, unit, value table, and init value. Frames, CAN IDs, DLC, cycle time, and bit positions are treated as transport details, so a signal that merely moved to another message is no longer reported as removed and added. The result opens in its own window, filterable and sortable, with its own Excel export.
  • Per-value value-table comparison: every changed VAL_ entry is listed on its own, marked as relabeled, added, or removed. A raw value that kept its number but changed meaning is highlighted, since existing software keeps building against it silently.
  • Init value comparison: GenSigStartValue is now read and compared.
  • Signal list import: the application's signal list can be pasted directly or imported from a .txt/.csv file; comment lines and extra columns are ignored.

Changed

  • Two-tab main window: the folder-to-folder comparison moved into a Baseline Compare tab and works exactly as before. The window opens larger, the Execution Log takes less room, and a small window now scrolls instead of squeezing the controls.

v0.1.8 — DBC Compare Tool

Choose a tag to compare

@longvo92 longvo92 released this 21 Jul 16:32
efa93e1

First public release.

Compare two CAN DBC baseline folders and get a multi-sheet Excel change report: every added, removed, modified and renamed message and signal, with renamed .dbc files still paired as the same file.

Highlights in 0.1.8

  • Manual DBC pairing — a Manual Pairing… dialog to choose the new-baseline counterpart for each old file when automatic pairing is not what you want. Manually matched pairs show as Manually Paired on the DBC Overview sheet.
  • Separate run buttons — Run Auto Compare pairs by relative path and content similarity; Run Manual Compare uses your saved pairing and adds the rename review step.
  • Rename review before export — every auto-detected signal rename is listed with its confidence; reject one and it is exported as Removed + Added instead.

Full history: release notes.

What it does

  • Recursive .dbc discovery across both baseline folders.
  • File pairing by relative path, then by CAN ID overlap and message-layout similarity, so a renamed file is still compared as the same file.
  • Message rename detection (including a changed CAN ID), scored over DLC, transmitter, cycle time and signal layout.
  • Signal rename detection scored over start bit, length, byte order, signedness, factor/offset, unit and receivers — name similarity is supporting evidence only.
  • VAL_ value tables and CM_ comments compared for both messages and signals.
  • An unparsable DBC is flagged Parse Error and the rest of the comparison continues; UTF-8 with/without BOM and the CANdb++ default encoding are handled.
  • CLI mode using the same engine, for CI or batch runs.

Downloads

  • DbcCompareTool-0.1.8.exe — one-file Windows desktop app. Nothing to install, resources are bundled inside.
  • DbcCompareTool-0.1.8-pyzw.zip — thin zipapp for machines that already have Python 3.10+ and the dependencies. Unzip and keep resources/ next to the .pyzw, then run python DbcCompareTool-0.1.8.pyzw.

From source (installs the dbc-compare-tool CLI and dbc-compare-tool-gui commands):

pip install git+https://github.com/longvo92/dbc_compare_tool.git

Requirements

Windows for the desktop app; the comparison engine itself is platform-agnostic and runs on Python 3.10+. See the README for usage, CLI flags and the report layout.