[racket-dev] Planet require gone wild
I think you just ran into all of the problems with planet1 at the same
time. I started with kazzmir/peg and browsed sources, and as far as I
can tell, all of the packages you got are actually transitively required
by kazzmir/peg. So it's not a PLaneT implementation bug.
It looks like there's a chance to cut out most of the other packages by
some small changes to schemeunit. I'll see if I can do that.
Here are my notes as of the point where I got tired of chasing links.
The best part is when kazzmir/peg (a Packrat parsing library) depends on
bzlib/parseq (a combinator-based parsing library)---with six degrees of
separation.
peg -> memoize
memoize -> schemeunit:3 (for testing)
schemeunit:3 -> sake:1 (in build.ss !!)
-> require:1:3 (in check-test.ss)
sake:1 -> schemeunit:3
-> unlib:3 (in base.ss)
-> galore:4
unlib:3 -> planet package directories
-> autoplanet:1 (from autoplanet.ss)
-> cce/scheme:6 (from base.ss)
-> bzlib/date:1 (same)
-> bzlib/date-tz:1 (same)
-> schematics/namespace:1 (same)
-> schematics/schemeunit:3 (same)
autoplanet:1 -> schemeunit:3
bzlib/date:1 -> bzlib/base:1 (from depend.ss)
-> bzlib/parseq:1 (same)
bzlib/date-tz:1 -> bzlib/base:1 (from depend.ss)
-> bzlib/file:1 (same)
-> bzlib/date:1 (same)
bzlib/base:1 -> zitterbewegung/uuid-v4:1
....
Ryan
On 08/01/2013 09:57 PM, Greg Hendershott wrote:
> p.s. The About text from DrRacket is:
>
> Welcome to DrRacket, version 5.90.0.3--2013-07-30(c126a8aa/d), english by PLT.
>
> Just to confirm I ran the DrRacket built from HEAD = c126a8a, not an
> older version by accident.
>
>
> On Thu, Aug 1, 2013 at 9:55 PM, Greg Hendershott
> <greghendershott at gmail.com> wrote:
>> I'm running HEAD = c126a8a from about 1 week ago.
>>
>> I wanted to try the PEG Planet 1 package.
>>
>> My source file was simply this:
>>
>> #lang racket
>> (require (planet kazzmir/peg:2:0/peg))
>>
>> 1. Using command-line Racket, I got:
>>
>> Welcome to Racket v5.90.0.3.
>> ; uncaught exception:
>> '#&"/Users/greg/src/scheme/collects/markdown/markdown/peg.rkt"
>>
>> Huh.
>>
>> I had the bright idea of trying this again, in DrRacket 5.90.0.3.
>>
>> 2. Right away, I got a red message:
>>
>> make-directory: forbidden (write) access to
>> /Users/greg/Library/Racket/planet/300/5.90.0.3
>>
>> Strange...
>>
>> 3. Perhaps dumbly, I decided to hit Run, anyway.
>>
>> What happened is that it installed a LOT of Planet packages. I let it
>> run for awhile, thinking maybe there were more dependencies for `peg'
>> than I realized. But the names flying by were making less and less
>> sense. I got worried it was running wild and doing something like
>> maybe trying to install ALL Planet packages.
>>
>> Plus then it started spitting out the following in the eval pane:
>>
>> Welcome to DrRacket, version 5.90.0.3--2013-07-30(c126a8aa/d) [3m].
>> Language: racket [custom]; memory limit: 2048 MB.
>> Library/Racket/planet/300/5.90.0.3/cache/cce/scheme.plt/6/3/class.ss:36:16:
>> module: identifier is already imported
>> at: send+
>> in: (define-syntaxes (send+) (new-lambda (stx) (syntax-case stx ()
>> ((s+ expr clause ...) (syntax/loc stx (let* ((obj expr)) (send obj .
>> clause) ... obj))))))
>> Library/Racket/planet/300/5.90.0.3/cache/cce/scheme.plt/6/3/contract.ss:319:30:
>> proj-get: unbound identifier in module
>> in: proj-get
>> Library/Racket/planet/300/5.90.0.3/cache/cce/scheme.plt/6/3/contract.ss:319:30:
>> proj-get: unbound identifier in module
>> in: proj-get
>> raco setup: error: during making for <planet>/cce/scheme.plt/6/3
>> (Scheme Utilities: (planet cce/scheme))
>> raco setup: Library/Racket/planet/300/5.90.0.3/cache/cce/scheme.plt/6/3/class.ss:36:16:
>> module: identifier is already imported
>> raco setup: at: send+
>> raco setup: in: (define-syntaxes (send+) (new-lambda (stx)
>> (syntax-case stx () ((s+ expr clause ...) (syntax/loc stx (let* ((obj
>> expr)) (send obj . clause) ... obj))))))
>> raco setup: error: during making for <planet>/cce/scheme.plt/6/3/reference
>> raco setup: Library/Racket/planet/300/5.90.0.3/cache/cce/scheme.plt/6/3/contract.ss:319:30:
>> proj-get: unbound identifier in module
>> raco setup: in: proj-get
>> raco setup: error: during Building docs for
>> /Users/greg/Library/Racket/planet/300/5.90.0.3/cache/cce/scheme.plt/6/3/reference/manual.scrbl
>> raco setup: Library/Racket/planet/300/5.90.0.3/cache/cce/scheme.plt/6/3/contract.ss:319:30:
>> proj-get: unbound identifier in module
>> raco setup: in: proj-get
>> Library/Racket/planet/300/5.90.0.3/cache/cce/scheme.plt/6/3/contract.ss:319:30:
>> proj-get: unbound identifier in module
>> in: proj-get
>> Library/Racket/planet/300/5.90.0.3/cache/cce/scheme.plt/6/3/contract.ss:319:30:
>> proj-get: unbound identifier in module
>> in: proj-get
>> . . ../../../../../../../../../../../src/plt/racket/racket/collects/setup/private/omitted-paths.rkt:71:2:
>> user break
>> . . src/plt/racket/racket/collects/planet/private/resolver.rkt:606:8: user break
>>>
>>
>> So I hit Stop in DrRacket (as you see from "user break"). Whew.
>>
>> 4. Here's everything it just installed. The only 2 I expected were
>> `peg' and `memoize`:
>>
>> /Users/greg/Library/Racket/planet/300/5.90.0.3/cache:
>> total used in directory 0 available 146890512
>> drwxr-xr-x 10 greg staff 340 Aug 1 21:34 .
>> drwxr-xr-x 5 greg staff 170 Aug 1 21:32 ..
>> drwxr-xr-x 9 greg staff 306 Aug 1 21:33 bzlib
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:34 cce
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:32 dherman
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:32 kazzmir
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:32 ryanc
>> drwxr-xr-x 5 greg staff 170 Aug 1 21:35 schematics
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 untyped
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 zitterbewegung
>>
>> /Users/greg/Library/Racket/planet/300/5.90.0.3/cache/bzlib:
>> total used in directory 0 available 146891616
>> drwxr-xr-x 9 greg staff 306 Aug 1 21:33 .
>> drwxr-xr-x 10 greg staff 340 Aug 1 21:34 ..
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 base.plt
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 date-tz.plt
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 date.plt
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 file.plt
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 os.plt
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 parseq.plt
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 port.plt
>>
>> /Users/greg/Library/Racket/planet/300/5.90.0.3/cache/cce:
>> total used in directory 0 available 146891608
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:34 .
>> drwxr-xr-x 10 greg staff 340 Aug 1 21:34 ..
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:34 scheme.plt
>>
>> /Users/greg/Library/Racket/planet/300/5.90.0.3/cache/dherman:
>> total used in directory 0 available 146891608
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:32 .
>> drwxr-xr-x 10 greg staff 340 Aug 1 21:34 ..
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:32 memoize.plt
>>
>> /Users/greg/Library/Racket/planet/300/5.90.0.3/cache/kazzmir:
>> total used in directory 0 available 146891600
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:32 .
>> drwxr-xr-x 10 greg staff 340 Aug 1 21:34 ..
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:32 peg.plt
>>
>> /Users/greg/Library/Racket/planet/300/5.90.0.3/cache/ryanc:
>> total used in directory 0 available 146891600
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:32 .
>> drwxr-xr-x 10 greg staff 340 Aug 1 21:34 ..
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:32 require.plt
>>
>> /Users/greg/Library/Racket/planet/300/5.90.0.3/cache/schematics:
>> total used in directory 0 available 146891592
>> drwxr-xr-x 5 greg staff 170 Aug 1 21:35 .
>> drwxr-xr-x 10 greg staff 340 Aug 1 21:34 ..
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:35 namespace.plt
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 sake.plt
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:32 schemeunit.plt
>>
>> /Users/greg/Library/Racket/planet/300/5.90.0.3/cache/untyped:
>> total used in directory 0 available 146891592
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 .
>> drwxr-xr-x 10 greg staff 340 Aug 1 21:34 ..
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 unlib.plt
>>
>> /Users/greg/Library/Racket/planet/300/5.90.0.3/cache/zitterbewegung:
>> total used in directory 0 available 146891592
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 .
>> drwxr-xr-x 10 greg staff 340 Aug 1 21:34 ..
>> drwxr-xr-x 3 greg staff 102 Aug 1 21:33 uuid-v4.plt
>>
>>
>> Please let me know what else I can try or do that might be helpful.
>>
>> For the moment I haven't touched anything, leaving it as-is in case
>> you might need that.
> _________________________
> Racket Developers list:
> http://lists.racket-lang.org/dev
>