Skip to content

About

Diff two AUTOSAR/Simulink codegen folders and see only the real changes — noise filtered, self-contained HTML report, zero dependencies

Topics

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

CodeGen Compare Tool

Compare AUTOSAR codegen baselines and review changes offline.

CI Python 3.8+ License: MIT

Download · Quick start · Features · User Guide · Tiếng Việt

Compare AUTOSAR MATLAB/Simulink codegen folders or ZIPs and review C/C++, ARXML, RTE and A2L changes. Only proven generator noise is filtered; unexplained differences remain real changes.

Quick start

  1. Download compare-tool.exe from Releases and open it. No Python installation is needed.
  2. Select BASELINE and CURRENT, then run the comparison.
  3. Review changes in the viewer or export an offline HTML report.

For CLI use, download compare_tool.pyz and run it with Python 3.8+, or use the source commands below. Replace python -m compare_tool with compare-tool.exe or python compare_tool.pyz for downloaded builds.

Run from source

git clone https://github.com/longvo92/codegen-compare-tool.git
cd codegen-compare-tool
python -m compare_tool baseline current --report report.html

The CLI uses only the Python standard library. For the desktop viewer:

python -m pip install -e ".[viewer]"
python -m compare_tool

Sample inputs: tests/fixtures/demo.

Usage

python -m compare_tool baseline current --no-report
python -m compare_tool --check-current current

Features and outputs

Feature / output Use it to
Folder or ZIP comparison Compare C/C++, ARXML, RTE and A2L baselines
Noise filtering Filter proven generator noise while retaining unexplained changes
Desktop viewer Review changes side by side
HTML report Share results offline or as a CI artifact
--no-report Review summaries and diagnostics in the terminal
--check-current PATH Check CURRENT RTE/ARXML consistency before delivery
--json / --sarif Export comparison results for pipelines

CURRENT consistency findings are terminal-only; JSON/SARIF exports contain comparison results and old/new advisories.

Review the results

  • Modified, Added and Deleted need review. Comment and Unimportant contain only comments or proven noise. Not compared indicates an error.
  • Overview groups changes by model/SWC, including ports, runnables, events, RTE access and A2L objects.
  • Old/new regeneration warnings are advisory; unchanged output does not prove regeneration history.
  • --check-current uses delivery policy: failed rules exit 1; missing input, scan errors or unchecked items exit 2. See the User Guide for scope and exceptions.
  • Comparisons exit 0 when clean, 1 for real changes or enabled consistency failures, and 2 for errors/incomplete scans. --exit-zero suppresses only file-difference failures.

Documentation

See CLI flags for defaults and supported combinations, or run python -m compare_tool --help. HTML reports work offline without a server or external assets.

License

MIT · Long Vo Thien

About

Diff two AUTOSAR/Simulink codegen folders and see only the real changes — noise filtered, self-contained HTML report, zero dependencies

Topics

Resources

Contributing

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages