[diffoscope] More lazy-loading for diffoscope html output

Ximin Luo infinity0 at debian.org
Thu Aug 25 12:31:00 CEST 2016


Hey all, I made some changes to diffoscope to improve the html output for very large diffs.

Previously, the default limits clashed with each other to make some features a bit useless - such as the lazy-loading-via-jquery behaviour. I've fixed this and also added the extra feature of splitting a very large single diff into multiple pieces. You can see a demo here:

https://people.debian.org/~infinity0/res/dfs-demo/

I'm diffing a file from rust 1.10 vs 1.12 so the difference is huge, but the demo should let you see that my new behaviour shows quite some good information *even when default limits are in place*. If you set --no-max (another option I added) the diff for rust.metadata.bin is actually 171 pieces but I stop generating at 4 pieces with the default limits.

I pushed the code to the better-lazy-loading branch, you can review it here:

https://anonscm.debian.org/cgit/reproducible/diffoscope.git/log/?h=better-lazy-loading

I will push this "soon" unless people complain. :p So please play around with it yourself etc, see that it doesn't break other stuff you expect to work.

For interest, here are all the files for the diff:

infinity0 at paradis:~/public_html/res/dfs-demo$ ls -Gg
total 17024
-rw-r--r-- 1  321142 Aug 25 10:10 127f9e34fa663025627ce4e6e3487d59-1.html
-rw-r--r-- 1  325125 Aug 25 10:10 127f9e34fa663025627ce4e6e3487d59-2.html
-rw-r--r-- 1  374787 Aug 25 10:10 127f9e34fa663025627ce4e6e3487d59-3.html
-rw-r--r-- 1  349588 Aug 25 10:10 127f9e34fa663025627ce4e6e3487d59-4.html
-rw-r--r-- 1  320284 Aug 25 10:10 127f9e34fa663025627ce4e6e3487d59-5.html
-rw-r--r-- 1  124030 Aug 25 10:10 127f9e34fa663025627ce4e6e3487d59-6.html
-rw-r--r-- 1  343620 Aug 25 10:10 127f9e34fa663025627ce4e6e3487d59.html
-rw-r--r-- 1 1030518 Aug 25 10:06 2314aac3d6e21fae9cfef641640897bc-1.html
-rw-r--r-- 1  170316 Aug 25 10:07 2314aac3d6e21fae9cfef641640897bc-2.html
-rw-r--r-- 1 1014449 Aug 25 10:06 2314aac3d6e21fae9cfef641640897bc.html
-rw-r--r-- 1 1009272 Aug 25 10:09 36483d5a21b9e37224ae281c336cff3f-1.html
-rw-r--r-- 1 1190830 Aug 25 10:08 36483d5a21b9e37224ae281c336cff3f.html
-rw-r--r-- 1  540297 Aug 25 10:05 652666226edd94fbe713000ef51e3532-1.html
-rw-r--r-- 1  611445 Aug 25 10:06 652666226edd94fbe713000ef51e3532-2.html
-rw-r--r-- 1  496947 Aug 25 10:06 652666226edd94fbe713000ef51e3532-3.html
-rw-r--r-- 1  552159 Aug 25 10:05 652666226edd94fbe713000ef51e3532.html
-rw-r--r-- 1  368267 Aug 25 10:08 6ced0b41b84c0bf536ecbd73b6066294-1.html
-rw-r--r-- 1 1853143 Aug 25 10:08 6ced0b41b84c0bf536ecbd73b6066294.html
-rw-r--r-- 1  897089 Aug 25 10:10 c652f7eed1306fdc3c79a981550b4ba6-1.html
-rw-r--r-- 1 1307112 Aug 25 10:09 c652f7eed1306fdc3c79a981550b4ba6.html
-rw-r--r-- 1  787924 Aug 25 10:10 d25dce363361f66ebda79a9d2a1f1ea2-1.html
-rw-r--r-- 1  578632 Aug 25 10:11 d25dce363361f66ebda79a9d2a1f1ea2-2.html
-rw-r--r-- 1  783829 Aug 25 10:10 d25dce363361f66ebda79a9d2a1f1ea2.html
-rw-r--r-- 1 2031524 Aug 25 10:11 index.html
lrwxrwxrwx 1      18 Aug 25 10:16 jquery.js -> ../../../jquery.js

-- 
GPG: ed25519/56034877E1F87C35
GPG: rsa4096/1318EFAC5FBBDBCE
https://github.com/infinity0/pubkeys.git


More information about the diffoscope mailing list