diff --git a/collects/compiler/compiler-unit.rkt b/collects/compiler/compiler-unit.rkt index bfc689b391..e12c74d443 100644 --- a/collects/compiler/compiler-unit.rkt +++ b/collects/compiler/compiler-unit.rkt @@ -1,3 +1,4 @@ +#lang scheme/base ;; Main compilation procedures ;; (c) 1997-2010 PLT @@ -5,7 +6,6 @@ ;; by dynamically linking to code supplied by the MzLib, dynext, and ;; compiler collections. -#lang scheme/base (require scheme/unit diff --git a/collects/scribblings/main/private/manuals.rkt b/collects/scribblings/main/private/manuals.rkt index 4c5b02600e..7ba5521a61 100644 --- a/collects/scribblings/main/private/manuals.rkt +++ b/collects/scribblings/main/private/manuals.rkt @@ -36,6 +36,7 @@ (lambda (i rec) (define dir (directory-record-path rec)) (define s (and (or all? (in-main-collects? dir)) + i (i 'scribblings))) (if (not s) null diff --git a/collects/scribblings/raco/setup.scrbl b/collects/scribblings/raco/setup.scrbl index 9e4e5f2245..0ab70734c5 100644 --- a/collects/scribblings/raco/setup.scrbl +++ b/collects/scribblings/raco/setup.scrbl @@ -1054,6 +1054,9 @@ An @deftech{unpackable} is one of the following: sub-directory of each collection directory (as determined by the @envvar{PLT_COLLECTION_PATHS} environment variable, etc.) and the file @filepath{cache.rkt} in the user add-on directory. + Note that the cache may be out of date by the time you call + @racket[get-info/full], so do not assume that it won't return + @racket[#f]. The result is in a canonical order (sorted lexicographically by directory name), and the paths it returns are suitable for @@ -1075,6 +1078,26 @@ An @deftech{unpackable} is one of the following: will only search the one that occurs first in the @envvar{PLT_COLLECTION_PATHS} environment variable.} +@defproc[(find-relevant-directory-records + [syms (listof symbol?)] + [key (or/c 'preferred 'all-available)]) + (listof directory-record?)]{ + Like @racket[find-relevant-directories], but returns @racket[directory-record] structs + instead of @racket[path?]s. +} + +@defstruct[directory-record ([maj integer?] + [min integer?] + [spec any/c] + [path path?] + [syms (listof symbol?)])]{ + A struct that records information about a collection or a @PLaneT package that has been installed. + Collections will have the major version being @racket[1] and the minor version being @racket[0]. + The @racket[spec] field is a quoted module spec; the @racket[path] field is where the @tt{info.rkt} + file for this collection or @PLaneT package exists on the filesystem the @racket[syms] field holds the + identifiers defined in that file. +} + @defproc[(reset-relevant-directories-state!) void?]{ Resets the cache used by @racket[find-relevant-directories].} diff --git a/collects/setup/getinfo.rkt b/collects/setup/getinfo.rkt index c4ceea59f5..6b03ae72ec 100644 --- a/collects/setup/getinfo.rkt +++ b/collects/setup/getinfo.rkt @@ -215,5 +215,5 @@ [syms (listof symbol?)])) (find-relevant-directory-records (->* [(listof symbol?)] - [(lambda (x) (memq x '(preferred all-available)))] + [(or/c 'preferred 'all-available)] (listof directory-record?)))) diff --git a/collects/tests/srfi/load-srfis.rktl b/collects/tests/srfi/load-srfis.rktl index 18759b8613..26c7bf11b8 100644 --- a/collects/tests/srfi/load-srfis.rktl +++ b/collects/tests/srfi/load-srfis.rktl @@ -24,7 +24,7 @@ (require srfi/35) (require srfi/35) (require srfi/40) -(require srif/41) +(require srfi/41) (require srfi/42) (require srfi/42ref) (require srfi/43)