Dear SG15,

     I wanted to move away from the talk of package managers and other such things for a bit, to talk about something closer to the build system. Dependency management is becoming a bit of a hot topic now that modules have been pushed to Core for wording review. std::embed (p1040) is facing significant uphill challenges because it requires full Semantic Analysis to communicate dependency information, which is a no-go for preprocessor scanners and things like /showIncludes or -MMD.

     To address the problem of dependency tracking for a source file, I wanted to add a module directive called module-requires, p1130.

     This paper is supposed to allow folks the ability to say "some resource out there should trigger a re-compile of this file / module if it ever changes". If we get module:private;, we could tag it to the module's implementation only as well.

Any thoughts?

JeanHeyd Meneide