On Thu, Dec 29, 2011 at 8:07 PM, Robby Findler <ro...@eecs.northwestern.edu> wrote: > I think that a minor variation on Neil's strategy should not be too > difficult to do (but I'll certainly agree that it is not an ideal > situation). What you'd do is first just download (via the "Bam" method > below :) the planet packages you want. Then, if you look inside this > directory: > > (build-path (find-system-path 'addon-dir) > "planet" > "300") > > you should find some files with extensions ".plt". Re-build that same > portion of the directory structure to contain those files in the > deployment environment, and then set the PLTPLANETURL environment > variable to something bogus.
That looks like a pretty reasonable way to get started. Thanks for telling me about the build-path and find-system-path operators, and the bogusifying of the PLT URL to prevent accidental hammering. > Also, FWIW, I maintain, in the weakest sense of the word, the current > planet service. (All I really do is react to emergencies that break > things.) Jay and Eli are looking into a whole new thing and have been > talking about it for more than a year, I believe, so hopefully plans > are firming up. Their system should be able to support this kind of > use-case much more effectively. I think that kind of thing is designed > in for them. I'd be interested in reading their current thoughts. Having used now a small stable of dependency management systems, my favorite, by far, is "bundler" for Ruby. It can handle upgrades, version pinning, allowing for auditing in upgrades of packages, preventing an executed program from using libraries that are not in its manifest (to prevent 'accidental' dependency), bin-directory generation for packages that install command line programs, and it will transitively consider all version requirements of all libraries to try and select the latest version -- should any one version exist -- that can satisfy all the constraints. Above all, it does that without being burdensome to use or understand. One could do worse than implementing the same thing, but for Racket. -- fdr _________________________ Racket Developers list: http://lists.racket-lang.org/dev