The --stats and --progress params had a couple issues:
codegen progress isn't updated when --threads=1 (always the case on Windows);
only stats need to collect reused modules (progress doesn't).
Idea for a follow-up: the report fiber of forked codegen could set unit.reused_previous_compilation instead of collecting reused module names, then we wouldn't need to collect the module names into a reused array (we can trust units to be updated) and the #print_codegen_stats method would count & filter has needed.
The
--stats
and--progress
params had a couple issues:--threads=1
(always the case on Windows);Idea for a follow-up: the report fiber of forked codegen could set
unit.reused_previous_compilation
instead of collecting reused module names, then we wouldn't need to collect the module names into a reused array (we can trustunits
to be updated) and the#print_codegen_stats
method would count & filter has needed.