[racket] how to declare dependency on Racket 6.0?

From: Matthew Flatt (mflatt at cs.utah.edu)
Date: Fri Jul 4 00:15:51 EDT 2014

That should work, although it's better to declare a dependency on
"base" instead of "racket":

 (define deps '(("base" #:version "6.0") ... )

You should generally declare a dependency on "base", anyway.


At least, that's the right way for v6.0 and later. If the goal is to
get a nice error message from v5.3.x, then you have to

 * use the old format without `#:version`:

       (define deps '(("base" "6.0") ... )

 * use `#lang setup/infotab` instead of `#lang info`
   for the "info.rkt" file, and

 * declare the dependency on "racket", after all, since "base" didn't
    exist as a package in v5.3.x:

       (define deps '(("racket" "6.0") ... )


For a while in v6.0.x, there were some problems with dependency
checking in `raco setup` when a package declares a dependency on
"racket". Otherwise, even though declaring a versioned dependency on
"base" is better, declaring a dependency on "racket" should work. Can
you say more about how it went wrong?


At Thu, 3 Jul 2014 16:22:56 -0700, Matthew Butterick wrote:
> On closer inspection, it seems possible that my recent install problems were a 
> side effect of Racket being installed as a package dependency by my Pollen 
> package, where the info.rkt contains this line: 
> 
> (define deps '(("racket" #:version "6.0") ... )
> 
> Is this the wrong way to declare this kind of dependency? Basically I just want 
> to signal that the package will not work with Racket 5.x.x.
> ____________________
>   Racket Users list:
>   http://lists.racket-lang.org/users

Posted on the users mailing list.