50-minute + 10-minute session on day 2
After reviewing what diffoscope is already able to do, here are some more ideas of what it could do:
- Write a wrapper around
diffthat strips out large identical chunks and only feeds in smaller chunks so that diffing can work on huge files.
diffcurrently does not care about not supporting e.g. a million line long files because if your source code file is that large: you’re doing it wrong so diffoscope can have problems with huge diffs.
- Multithreaded/parallel processing.
- Better/smarter ELF diffing. Crazy idea, amongst others: use DWARF symbols to display the lines of code responsible for a given difference.
- Add a command line flag for “ignore profiles” removing differences that are not relevant or paths that can be ignored.
- Replace Open Build Service’s pkg-diff.sh tool with diffoscope to allow better understanding of package differences.
- Sandboxed environment to secure diffoscope on untrusted input.
- Internal anchor links in the HTML report to be able to jump around. Typically from a file in a file list to its differences.
- Image comparisons (GitHub does them right)
- Hint system that provides suggestions on how to fix a problem.
- Have a hosted web service for doing the diffing (will require a sandbox).
- Start an embedded HTML server so that you can view diffing results coming in as soon as they are computed.
Follow us on Twitter @ReproBuilds, Mastodon @email@example.com & Reddit and please consider making a donation. • Content licensed under CC BY-SA 4.0, style licensed under MIT. Templates and styles based on the Tor Styleguide. Logos and trademarks belong to their respective owners. • Patches welcome via our Git repository (instructions) or via our mailing list. • Full contact info