[plt-scheme] PLaneT development links

From: Dave Gurnell (d.j.gurnell at gmail.com)
Date: Sat Mar 14 05:50:52 EDT 2009

Noel wrote:
> Our autoplanet project does similar things:
>
>  http://svn.untyped.com/autoplanet/trunk/src/scribblings/autoplanet.scrbl

Autoplanet is actually on PLaneT now. We've rewritten it recently so  
(I think Noel mentioned an experimental version on plt-scheme a few  
months ago).

Here are the HTML docs:

     http://planet.plt-scheme.org/package-source/untyped/autoplanet.plt/1/1/planet-docs/autoplanet/index.html

I've put a couple of examples below this email.

We use this with a bash script called "vplt" ("Versioned PLT") that  
hooks up a specific version of PLT and puts the PLaneT cache in an  
application-specific location. This way we can have multiple apps on  
the same machine written in different versions of PLT with different  
versions of packages from our SVN. I don't think vplt is in our open  
source repository yet. I'll see if I can move it across later this  
weekend.

I've had a blog post on this in the works for a month but I'm too lazy  
to finish it.

-- Dave

===== EXAMPLE 1 =====

The script from my development machine:

#!/usr/bin/env mzscheme
#lang scheme

(require (planet untyped/autoplanet:1))

; Helpers ----------------------------------------

; string [string] -> path
(define (open-path package [branch "trunk"])
   (expand-user-path (format "~~/untyped/open/~a/~a/src" package  
branch)))

; Configuration ----------------------------------

(remove-hard-links)

; Install in-development packages from local folders:
(install-local "untyped" "excel.plt"      1  0 (open-path "excel"))
(install-local "untyped" "smoke.plt"      1  0 (open-path "smoke"))
(install-local "untyped" "unlib.plt"      3 14 (open-path "unlib"))
; etc...

===== EXAMPLE 2 =====

A script taken from a production app. The app's dependencies are fixed  
to specific versions downloaded from SVN:

#lang scheme/base

(require scheme/runtime-path
          (planet untyped/autoplanet:1))

; Helpers ----------------------------------------

; path
(define-runtime-path HACKS "planet-hacks")

; Main script body -------------------------------

; Packages downloaded from SVN are cached here:
(autoplanet-root (build-path (getenv "AUTOPLANET")))

(remove-hard-links)

; Download spefic versions of packages from our SVN:
(define OPEN-REVISION 150)
(install-svn "untyped" "unlib.plt"    3 14 "https://svn.untyped.com/unlib/trunk/src 
" OPEN-REVISION)
(install-svn "untyped" "excel.plt"    1 0  "https://svn.untyped.com/excel/trunk/src 
" OPEN-REVISION)
; etc...

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20090314/45f9a055/attachment.html>

Posted on the users mailing list.