[racket] how to declare dependency on Racket 6.0?
I made that repair in response to your report, but since I wasn't able
to provoke the error, I thought I was probably on the wrong track.
At Fri, 4 Jul 2014 12:19:57 -0700, Matthew Butterick wrote:
> 1) I've changed my dependency to 'base'. (I don't need a nice error, I just
> need to block v5 users from installing the package.)
>
>
> 2) As for the earlier problem, I'm pretty sure it had to do with the "racket"
> mapping being null:
>
> https://github.com/plt/racket/commit/50715f7bda4bf9b745a47c4b3853ee48cc247198
>
> Because the installer was throwing an error about getting a null argument when
> it expected a list, like this:
>
> > raco setup: --- checking package dependencies ---
> > car: contract violation
> > expected: pair?
> > given: '()
> > context...:
> > /Users/MB/git/racket/racket/collects/setup/private/pkg-deps.rkt:283:2:
> check-mod!
> > ...
>
>
> And the error was coming from the same file, pkg-deps.rkt.
>
>
> I just rebuilt from git, and reinstalled my updated package, and things seem
> back to normal.
>
>
>
>
>
>
>
> On Jul 3, 2014, at 9:15 PM, Matthew Flatt <mflatt at cs.utah.edu> wrote:
>
> > 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
>
> ____________________
> Racket Users list:
> http://lists.racket-lang.org/users