[racket-dev] updated proposal for moving to packages

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Fri Jun 7 07:57:26 EDT 2013

At Thu, 6 Jun 2013 11:35:20 -0600, Jay McCarthy wrote:
> On Thu, Jun 6, 2013 at 9:33 AM, Matthew Flatt <mflatt at cs.utah.edu> wrote:
> > Since code in a package can synthesize a module reference dynamically,
> > any static enforcement would have to be approximate, naturally (e.g.,
> > checks on all `require's). Approximate checks would be useful, and I
> > don't think anyone has implemented them, yet. [...]
> 
> Matthew and I also once talked about have raco (make|setup) know about
> dependencies and signal a failure on a require outside the
> dependencies set. Is that still imaginable?

Yes.

Specifically, I think `raco setup' could

 * check imports in ".zo" files (skipping "_scrbl.zo" files) to make
   sure that they are included in the enclosing package's `deps', and

 * check dependencies recorded in ".dep" files (including "_scrbl.dep")
   to make sure that they are included in the enclosing package's
   `deps' plus `build-deps'.


Posted on the dev mailing list.