Originally taken from here, cached as a gist so I can find it later. "Angolmois" is a music video game, that plays real BeatMania files, so it's a pretty full-featured game. At least, as full as you're gonna find in Rust from as long ago as it was started.
Angolmois Rust edition went through six different Rust releases without almost no change on the features, and the changes are as follows:
- 0.6 to 0.7 took 1,179 lines of diff. (Angolmois is about 6,000 lines long.)
- 0.7 to 0.8 took 1,622 lines of diff.
- 0.8 to 0.9 took 1,119 lines of diff.
- 0.9 to 0.10 took 2,248 lines of diff.
- 0.10 to 0.11-pre (master) took 1,128 lines of diff so far. As 0.11 is expected to be released on early July, the final diff would weigh some 1,500 lines.
It includes the syntax changes, semantic changes, standard library changes, external library changes (rust-sdl; I indeed upstreamed some additions from Angolmois), bug workarounds and removals and so on. But it seems that the amount of overall change is stable; about 1/4 of the total code has to be changed per each release. (0.9 to 0.10 includes an extensive Vec conversion, so it is a sort of outlier.) Fortunately, starting with approximately 0.9, most required changes can be applied by making it compile again (a virtue of strong type system).