Good news: it's super easy to add LTO to Rust projects, and only added 60 seconds to difftastic's link time:
[profile.release]
lto = true
Bad news: It only reduces the difftastic runtime by ~5%.
At least it didn't require much wrangling to try :)
miniblog.
Related Posts
A fun idea for a Ruby test runner: run all the tests, most relevant first, but never run for more than 1.8 seconds!
Compile times of 30-60 seconds are particularly challenging: they're too short to do something else, but too long to get into a flow state.
I find music helps avoid context switching at least.
Every time I make difftastic faster, people give it larger files!
Performance is adequate these days (I've not seen >10 seconds for several releases), but I was even forced to look at scaling of the textual diffing parts :)