difflicious icon indicating copy to clipboard operation
difflicious copied to clipboard

GUI for viewing diffs

Open jatcwang opened this issue 9 months ago • 0 comments

For diffs from larger data structures, users need a more interactive way to explore the diff as text diffs can get too overwhelming.

Requirements

  • Explore difflicious diff output
  • Parts of the diff can be expanded and minimise. This applies to both parts that are the same (no diff) or different

Architecture

  • Frontend in scala.js
  • Backend (server) will register new diffs from failed tests, and serve the frontend via an API.

Reporting diff errors

Ideally, we want minimal code change in the tests to enable reporting to the backend.

Possible approaches:

  • Using Implicits/givens, the "diff server reporter" is brought in via an import
  • Use some sort of ServiceLoader mechanism to automatically load the reporter if it's on the classpath, activated if an env var / system property is set.
    • Does not require code modification
    • Not cross platform

jatcwang avatar Mar 30 '25 08:03 jatcwang