[plt-scheme] Recent PLaneT problems and their solutions

From: Jacob Matthews (jacobm at cs.uchicago.edu)
Date: Sun Jan 15 15:28:37 EST 2006

There have been a number of recent issues that have floated over the  
mailing list surrounding PLaneT, PLT Scheme's automated package- 
distribution system. I've been working on them, and here are the  
solutions:

- The "Windows bug" that seemed to cause compilation errors in some  
packages. This is actually a subtle bug in the SchemeUnit PLaneT  
package. The problem is that one of SchemeUnit's macros introduces a  
so-called "3D value" into the compiled code, which is fine for  
compiled code that you just intend to _run_, but not fine for  
compiled code that you actually want to write out to disk. In fact  
certain SchemeUnit files do not compile at all under any platform. We  
are looking into ways of signalling these kinds of errors earlier to  
make debugging them easier. Note that due to a recent change in PLT  
Scheme regarding path-marshalling, the problem will not arise in  
recent SVN versions of PLT Scheme (but will arise in v301).

- A PLT Redex compilation problem. The PLT Redex package contained a  
packaging error that referenced a "reduction-semantics" collection  
that does not exist in release versions of PLT Scheme, but does exist  
in most developers' systems making the problem harder to see. This  
has been fixed in a new version of the redex.plt package, already  
released to PLaneT.

- The planet command-line tool's --remove flag. It was broken in  
v300; it is fixed in SVN and v301.

- The compile-subcollections info.ss field. In v300, this field had a  
different layout for PLaneT packages as for collections, creating an  
unnecessary potential error for package developers. This is fixed in  
SVN and v301; both layouts are now accepted for PLaneT packages.

- PLaneT server stability problems. I still cannot figure out why the  
server sometimes stops responding to requests, but while I'm working  
on it I've instituted an automatic recovery system so that no manual  
intervention will be required to correct the problem if it happens  
again.

;; --

Thanks to the mailing list all for your help with these problems.

-jacob



Posted on the users mailing list.