[racket-dev] package system, minimal builds and more

From: Sam Tobin-Hochstadt (samth at cs.indiana.edu)
Date: Wed Oct 2 10:39:42 EDT 2013

On Tue, Oct 1, 2013 at 9:20 AM, Tobias Hammer <tobias.hammer at dlr.de> wrote:
> Hi,
>
> i played a bit with the new package system, minimal installs and cross
> compiling. It works pretty good but i have a few problems and
> remarks/questions.
> I start with a fresh yesterdays minimal source
> (min-racket-5.90.0.9-src.tgz), build it (natively for linux) and try to
> install packages.
>
> (Given in no particular order)

First, thanks for the feedback!

> * compiler-lib install fails with the following error
> ./bin/raco pkg install -i compiler-lib
> Resolving "compiler-lib" via
> http://www.eecs.northwestern.edu/plt/snapshots/20130929-6d4ff30/catalog/
> Resolving "compiler-lib" via https://pkg.racket-lang.org
> Downloading checksum for compiler-lib
> Downloading
> http://racket-packages.s3-us-west-2.amazonaws.com/pkgs/b824ed762533834659b5f0ee047deafb101acc74/compiler-lib.zip
> raco pkg install: package conflicts with existing installed
>   package: compiler-lib
>   module path: compiler/option
>
> As its needed by racket-doc and similar it blocks install of a lot of
> packets

The problem here seems to be that the below problem causes it to fall
back to an older version from the central pkg catalog, which doesn't
work because of refactoring between when your snapshot was from, and
when the upload of that zip file to the pkg catalog happened.

Once we actually release the next version, we won't move things around
in ways that cause these compatibility issues.

I manually edited etc/config.rktd to point to the Utah snapshot page,
and then it worked.

> * the snapshot catalog seems to be nonexistent
> If i browse to
> http://www.eecs.northwestern.edu/plt/snapshots/20130929-6d4ff30/catalog/, i
> always get a 404. Is this intended?

I think this is a bug in how the Northwestern snapshots are set up,
because they should go to 'plt.eecs.northwestern.edu/snapshots/...'
instead.  I've cc'ed Robby, who can hopefully fix this.

> * redownload after fail
> the package manager seems to download every packet again after a failed
> install or user interruption. Would it be worth to reuse the once downloaded
> zips if the checksum is the same (similar to the behavior of apt).

I believe the package manager knows how to do this, but it doesn't
seem to be doing it here, even though there's checksum information in
the catalog files. Jay, do you know what's going on here?

> * raco pkg warnings
> On every command i get
> warning: tool "pkg" registered twice: "pkg" and
> #<path:/home/hamm_to/tmp/racket/_tmp/racket-5.90.0.9/collects/pkg>
> warning: tool "setup" registered twice: "setup" and
> #<path:/home//hamm_to/tmp/racket/_tmp/racket-5.90.0.9/collects/setup>
> warning: tool "link" registered twice: "link" and
> #<path:/home/hamm_to/tmp/racket/_tmp/racket-5.90.0.9/collects/setup>
>
> /home/hamm_to/tmp/racket/_tmp/racket-5.90.0.9/ is the used installation.

What command did you run to get this error? I haven't been able to replicate it.

> * More verbose require error
> If i require something nonexistent i get an exception like
> (require fdfsdfsdf)
> ; readline-input:4:8: collection not found
> ;   for module path: fdfsdfsdf
> ;   collection: "fdfsdfsdf"
> ;   in collection directories:
> ;    /home/hamm_to/.racket/snapshot/collects
> ;    /volume/USERSTORE/hamm_to/tmp/racket-qnx/linux-racket-5.90.0.9/collects
> ;    /home/hamm_to/.racket/snapshot/collects
> ;    /volume/USERSTORE/hamm_to/tmp/racket-qnx/linux-racket-5.90.0.9/collects
> ;    ... [22 additional linked and package directories]
>
> Is it possible to somehow show these additional 22 entries? Maybe not in the
> error but from raco?

You can see these with `raco pkg show`.  Is that what you're looking for?

Sam

Posted on the dev mailing list.