mill icon indicating copy to clipboard operation
mill copied to clipboard

Current `semanticDbData` implementation isn't incremental

Open lefou opened this issue 1 year ago • 0 comments

I've identified some issues with our current approach to generate semanticdb data in a Scala 2.13 module:

  • When we stop scalac after phase semanticdb-typer, zinc is not able to incrementally compile the next round, therefore we effectively always generate all semanticdb files in each run
  • If we don't stop scalac after phase semanticdb-typer, we can generate semanticdb data incrementally, but we also unnecessarily compile all scala files to class files
  • Incremental compilation doesn't seem to clean semanticdb files for removed sources. So, we need to manually remove those that belong to non-existing source files

Originally posted by @lefou in https://github.com/com-lihaoyi/mill/issues/3080#issuecomment-2076564757

lefou avatar Apr 25 '24 09:04 lefou