[racket-dev] new package system status

From: Neil Van Dyke (neil at neilvandyke.org)
Date: Wed Nov 20 14:10:05 EST 2013

What's the status of the package system?

This morning I thought I'd compromise, and use the new package system 
for a package that would only ever need one version installed per Racket 
installation (though I still really want multiple-installed-version 
support for libraries, like PLaneT has in some form).  This was the 
fourth time I tried to use the new package system, and what I found was:

* The documentation for the package system in 5.3.6 does not seem to 
reflect previous discussion, and the chapter title still says "(Beta)".

* "https://pkg.racket-lang.org/" has roughness like requiring JavaScript 
to navigate, which is not only bad for browsers but bad for search 
engines.  (Usually, for this kind of site, we'd want to start with a 
page structure, and then add in backward-compatible JS for slickness.)

* How are people even supposed to view package documentation while 
browsing packages on "https://pkg.racket-lang.org/"?  For example, I 
looked at a package that I knew had documentation (someone had put an 
old version of one of my PLaneT packages into "pkg.racket-lang.org"[*]), 
and the only way one could view the documentation in any form is if they 
knew to navigate several clicks through the Github repository to find 
the ".scrbl" source file buried in one of the directory trees.

I understand that PLaneT was a pain to package for, especially without 
McFly, and so people releasing packages like that the new package system 
means less immediate work for them ("just put github repo URLs for them 
all, and let G-d sort 'em out"), but it's unclear that the new package 
system is improving its third-party packages story.  Is it still focused 
on breaking up core Racket, and someday we'll see more thinking about 
third-party packages?

[*] Ahem, in the process of someone forking my package into the new 
thing, they lost my name from the metadata, broke my legal notices, and 
added a "LICENSE" file that claimed copyright to their name.  I'm sure 
that was just a careless accident, since that package has some of the 
very first Scheme code I ever wrote, and nobody would claim ownership of 
it intentionally. :)

Neil V.

Posted on the dev mailing list.