[plt-scheme] backwards compatibility and planet libraries

From: Jacob Matthews (jacobm at cs.uchicago.edu)
Date: Wed Mar 9 12:21:09 EST 2005

Dave Herman wrote:

> What about *adding* new functionality? Given that planet often refuses 
> to update the minor version, if some code depends on a newer minor 
> version because it has new functionality, but planet won't update to 
> the newer version, that code will be broken.
>
> Does this mean I should up the major version even when I add 
> conservative extensions to the interface?

No. If you require functionality that wasn't added until, say, version 
1.6, you can specifically require that you get library version 1.6 or above:

(require (planet "file.ss" ("somebody" "somebodys-library.plt" 1 6)))

Even if you've got versions 1.0 through 1.5 installed locally, planet 
will fetch version 1.6 to satisfy this request (though if you ask for 
version 1.3 or above and it has version 1.6 it'll give you the local 
version 1.6, of course).

-jacob



Posted on the users mailing list.