document raco/all-tools, fix typos in raco documentation
This commit is contained in:
parent
f1d853eeac
commit
88b2d5d4e6
|
@ -106,7 +106,7 @@ collection. The following fields are used:
|
||||||
|
|
||||||
@item{@indexed-racket[compile-omit-paths] : A list of immediate file
|
@item{@indexed-racket[compile-omit-paths] : A list of immediate file
|
||||||
and directory paths that should not be compiled. Alternatively,
|
and directory paths that should not be compiled. Alternatively,
|
||||||
this field's value @racket['all], which is equivalent to
|
this field's value is @racket['all], which is equivalent to
|
||||||
specifying all files and directories in the collection (to
|
specifying all files and directories in the collection (to
|
||||||
effectively ignore the collection for
|
effectively ignore the collection for
|
||||||
compilation). Automatically omitted files and directories are
|
compilation). Automatically omitted files and directories are
|
||||||
|
@ -123,8 +123,9 @@ collection. The following fields are used:
|
||||||
contents of @racket[compile-omit-paths]. Do not use this
|
contents of @racket[compile-omit-paths]. Do not use this
|
||||||
field; it is for backward compatibility.}
|
field; it is for backward compatibility.}
|
||||||
|
|
||||||
@item{@indexed-racket[scribblings] : A list of pairs, each of which
|
@item{@indexed-racket[scribblings] : A list of lists, each of which
|
||||||
starts with a path for documentation source. The sources (and
|
starts with a path for documentation source. See @secref["setup-info"]
|
||||||
|
for more information. The sources (and
|
||||||
the files that they require) are compiled in the same way as
|
the files that they require) are compiled in the same way as
|
||||||
other module files, unless @racket[skip-docs?] is a true value.}
|
other module files, unless @racket[skip-docs?] is a true value.}
|
||||||
|
|
||||||
|
@ -133,7 +134,7 @@ collection. The following fields are used:
|
||||||
are compiled based on the file's extension, being in @racket[scribblings],
|
are compiled based on the file's extension, being in @racket[scribblings],
|
||||||
or being @racket[require]d by other compiled files.}
|
or being @racket[require]d by other compiled files.}
|
||||||
|
|
||||||
@item{@racket[module-suffixes] and @racket[doc-module-suffixes] ---
|
@item{@racket[module-suffixes] and @racket[doc-module-suffixes] :
|
||||||
Used indirectly via @racket[get-module-suffixes].}
|
Used indirectly via @racket[get-module-suffixes].}
|
||||||
|
|
||||||
]
|
]
|
||||||
|
@ -142,7 +143,7 @@ collection. The following fields are used:
|
||||||
|
|
||||||
|
|
||||||
@defproc[(compile-directory-zos [path path-string?]
|
@defproc[(compile-directory-zos [path path-string?]
|
||||||
[info ()]
|
[info procedure?]
|
||||||
[#:verbose verbose? any/c #f]
|
[#:verbose verbose? any/c #f]
|
||||||
[#:skip-path skip-path (or/c path-string? #f) #f]
|
[#:skip-path skip-path (or/c path-string? #f) #f]
|
||||||
[#:skip-paths skip-paths (listof path-string?) null]
|
[#:skip-paths skip-paths (listof path-string?) null]
|
||||||
|
@ -167,7 +168,7 @@ recognizing file suffixes that correspond to Racket modules for the
|
||||||
purposes of compiling files in a directory, running tests for files in
|
purposes of compiling files in a directory, running tests for files in
|
||||||
a directory, and so on. The set of suffixes always includes
|
a directory, and so on. The set of suffixes always includes
|
||||||
@filepath{.rkt}, @filepath{.ss}, and @filepath{.scm}, but it can be
|
@filepath{.rkt}, @filepath{.ss}, and @filepath{.scm}, but it can be
|
||||||
extended globally by @filepath{info.rkt} configuration in collections.}
|
extended globally by @filepath{info.rkt} configurations in collections.}
|
||||||
|
|
||||||
@history[#:added "6.3"]
|
@history[#:added "6.3"]
|
||||||
|
|
||||||
|
|
|
@ -23,7 +23,7 @@ archive.}
|
||||||
void?]{
|
void?]{
|
||||||
|
|
||||||
Packages @racket[dir] into @racket[dist-file]. If @racket[dist-file]
|
Packages @racket[dir] into @racket[dist-file]. If @racket[dist-file]
|
||||||
has no extension, a file extension is added automatcially (using the
|
has no extension, a file extension is added automatically (using the
|
||||||
first result of @racket[bundle-put-file-extension+style+filters]).
|
first result of @racket[bundle-put-file-extension+style+filters]).
|
||||||
|
|
||||||
The created archive contains a directory with the same name as
|
The created archive contains a directory with the same name as
|
||||||
|
|
|
@ -18,7 +18,7 @@ program can embed Racket with a set of modules so that it does not
|
||||||
need a @filepath{collects} directory to load modules at run time.
|
need a @filepath{collects} directory to load modules at run time.
|
||||||
|
|
||||||
If the embedded modules refer to runtime files, the files can be
|
If the embedded modules refer to runtime files, the files can be
|
||||||
gathers by supplying the @DFlag{runtime} argument to @exec{raco ctool
|
gathered by supplying the @DFlag{runtime} argument to @exec{raco ctool
|
||||||
--cmods}, specifying a directory @nonterm{dir} to hold the files.
|
--cmods}, specifying a directory @nonterm{dir} to hold the files.
|
||||||
Normally, @nonterm{dir} is a relative path, and files are found at run
|
Normally, @nonterm{dir} is a relative path, and files are found at run
|
||||||
time in @nonterm{dir} relative to the executable, but a separate path
|
time in @nonterm{dir} relative to the executable, but a separate path
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#lang scribble/doc
|
#lang scribble/doc
|
||||||
@(require scribble/manual "common.rkt"
|
@(require scribble/manual "common.rkt"
|
||||||
(for-label racket/base raco/command-name racket/cmdline))
|
(for-label racket/base raco/all-tools raco/command-name racket/contract/base racket/cmdline))
|
||||||
|
|
||||||
@title[#:tag "command"]{Adding a @exec{raco} Command}
|
@title[#:tag "command"]{Adding a @exec{raco} Command}
|
||||||
|
|
||||||
|
@ -11,8 +11,8 @@ command is added by defining @indexed-racket[raco-commands] in the
|
||||||
and then @exec{raco setup} (as called directly or as part of a package
|
and then @exec{raco setup} (as called directly or as part of a package
|
||||||
or @|PLaneT| installation) must index the @filepath{info.rkt} file.
|
or @|PLaneT| installation) must index the @filepath{info.rkt} file.
|
||||||
|
|
||||||
The value bound to @racket[raco-commands] must be a list of command
|
The value bound to @racket[raco-commands] must be a list of @deftech{command
|
||||||
specifications, where each specification is a list of four values:
|
specifications}, where each specification is a list of four values:
|
||||||
|
|
||||||
@racketblock[
|
@racketblock[
|
||||||
(list _command-string
|
(list _command-string
|
||||||
|
@ -40,7 +40,7 @@ The @racket[_description-string] is a short string used to describe the
|
||||||
command in response to @exec{raco help}. The description should not be
|
command in response to @exec{raco help}. The description should not be
|
||||||
capitalized or end with a period.
|
capitalized or end with a period.
|
||||||
|
|
||||||
The @racket[_prominence] value should be a read number or
|
The @racket[_prominence] value should be a real number or
|
||||||
@racket[#f]. A @racket[#f] value means that the command should not be
|
@racket[#f]. A @racket[#f] value means that the command should not be
|
||||||
included in the short list of ``frequently used commands.'' A number
|
included in the short list of ``frequently used commands.'' A number
|
||||||
indicates the relative prominence of the command; the @exec{help}
|
indicates the relative prominence of the command; the @exec{help}
|
||||||
|
@ -113,3 +113,23 @@ so that @exec{raco decompile --help} prints
|
||||||
|
|
||||||
Like @racket[short-program+command-name], but the path (if any) is not
|
Like @racket[short-program+command-name], but the path (if any) is not
|
||||||
stripped from the current executable's name.}
|
stripped from the current executable's name.}
|
||||||
|
|
||||||
|
@section{Accessing @exec{raco} Commands}
|
||||||
|
|
||||||
|
@defmodule[raco/all-tools]{The @racketmodname[raco/all-tools]
|
||||||
|
library collects the @indexed-racket[raco-commands] specifications for
|
||||||
|
installed packages, @|PLaneT| packages, and other collections.}
|
||||||
|
|
||||||
|
@defproc[(all-tools) (hash/c string? (list/c string? module-path? string? (or/c real? #f)))]{
|
||||||
|
Returns a hashtable with collection names as keys and @tech{command specifications} as values.
|
||||||
|
For example, the following program invokes @exec{raco make file.rkt}:
|
||||||
|
@racketblock[
|
||||||
|
(require raco/all-tools)
|
||||||
|
|
||||||
|
(define raco-make-spec (hash-ref (all-tools) "make"))
|
||||||
|
|
||||||
|
(parameterize ([current-command-line-arguments (vector "file.rkt")])
|
||||||
|
(dynamic-require (second raco-make-spec) #f))
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -166,7 +166,7 @@ directory}:
|
||||||
is @racket[""], otherwise it is @racket["CGC"].}
|
is @racket[""], otherwise it is @racket["CGC"].}
|
||||||
|
|
||||||
@item{@indexed-racket['3m-suffix] --- analogous to @racket['cgc-suffix], but
|
@item{@indexed-racket['3m-suffix] --- analogous to @racket['cgc-suffix], but
|
||||||
for 3m. A @racket[#f] value means that if the @filepath{racket}
|
for 3m. A @racket[#f] value means that if the @exec{racket}
|
||||||
binary identifies itself as CGC, then the suffix is
|
binary identifies itself as CGC, then the suffix is
|
||||||
@racket["3m"], otherwise it is @racket[""].}
|
@racket["3m"], otherwise it is @racket[""].}
|
||||||
|
|
||||||
|
|
|
@ -3,10 +3,10 @@
|
||||||
|
|
||||||
@title[#:tag "demod"]{@exec{raco demod}: Demodularizing Programs}
|
@title[#:tag "demod"]{@exec{raco demod}: Demodularizing Programs}
|
||||||
|
|
||||||
The @exec{raco demod} command takes a racket module and flattens
|
The @exec{raco demod} command takes a Racket module and flattens
|
||||||
all of its dependencies into a single compiled module.
|
all of its dependencies into a single compiled module.
|
||||||
A file @filepath{@nonterm{name}.rkt} is demodularized into
|
A file @filepath{@nonterm{name}.rkt} is demodularized into
|
||||||
@filepath{@nonterm{name}_rkt_merged.zo}.
|
@filepath{@nonterm{name}_rkt_merged.zo}.
|
||||||
|
|
||||||
The demodularized zo file can be run by passing it as an argument to
|
The demodularized zo file can be run by passing it as an argument to
|
||||||
the racket command-line program.
|
the @exec{racket} command-line program.
|
||||||
|
|
|
@ -161,7 +161,7 @@ embeds the module @racket[m] from the file @filepath{m.rkt}, without
|
||||||
prefixing the name of the module; the @racket[literal-sexpr] argument
|
prefixing the name of the module; the @racket[literal-sexpr] argument
|
||||||
to go with the above might be @racket['(require m)]. When submodules
|
to go with the above might be @racket['(require m)]. When submodules
|
||||||
are available and included, the submodule is given a name by
|
are available and included, the submodule is given a name by
|
||||||
symbol-appending the @racket[write] form of submodule path to the
|
symbol-appending the @racket[write] form of the submodule path to the
|
||||||
enclosing module's name.
|
enclosing module's name.
|
||||||
|
|
||||||
Modules are normally compiled before they are embedded into the target
|
Modules are normally compiled before they are embedded into the target
|
||||||
|
@ -233,7 +233,7 @@ currently supported keys are as follows:
|
||||||
@item{@racket['framework-root] (Mac OS) : A string to prefix the
|
@item{@racket['framework-root] (Mac OS) : A string to prefix the
|
||||||
executable's path to the Racket and GRacket frameworks
|
executable's path to the Racket and GRacket frameworks
|
||||||
(including a separating slash); note that when the prefix
|
(including a separating slash); note that when the prefix
|
||||||
starts @filepath{@"@"executable_path/} works for a
|
start @filepath{@"@"executable_path/} works for a
|
||||||
Racket-based application, the corresponding prefix start for
|
Racket-based application, the corresponding prefix start for
|
||||||
a GRacket-based application is
|
a GRacket-based application is
|
||||||
@filepath{@"@"executable_path/../../../}; if @racket[#f] is
|
@filepath{@"@"executable_path/../../../}; if @racket[#f] is
|
||||||
|
@ -297,7 +297,7 @@ created executable maintains its built-in (relative) path to the main
|
||||||
@racket[(find-system-path 'collects-dir)] when the executable is
|
@racket[(find-system-path 'collects-dir)] when the executable is
|
||||||
run---plus a potential list of other directories for finding library
|
run---plus a potential list of other directories for finding library
|
||||||
collections---which are used to initialize the
|
collections---which are used to initialize the
|
||||||
@racket[current-library-collection-paths] list in combination with
|
@racket[current-library-collection-paths] list in combination with the
|
||||||
@envvar{PLTCOLLECTS} environment variable. Otherwise, the argument
|
@envvar{PLTCOLLECTS} environment variable. Otherwise, the argument
|
||||||
specifies a replacement; it must be either a path, string, or
|
specifies a replacement; it must be either a path, string, or
|
||||||
list of paths and strings. In the last case, the first path
|
list of paths and strings. In the last case, the first path
|
||||||
|
@ -313,7 +313,7 @@ is initialized to an empty list, and
|
||||||
use of @tech[#:doc reference-doc]{collection links files}.
|
use of @tech[#:doc reference-doc]{collection links files}.
|
||||||
|
|
||||||
If the @racket[#:launcher?] argument is @racket[#t], then
|
If the @racket[#:launcher?] argument is @racket[#t], then
|
||||||
@racket[lid-list] should be null, @racket[literal-files] should be
|
@racket[mod-list] should be null, @racket[literal-files] should be
|
||||||
null, @racket[literal-sexp] should be @racket[#f], and the platform
|
null, @racket[literal-sexp] should be @racket[#f], and the platform
|
||||||
should be Windows or Mac OS. The embedding executable is created in
|
should be Windows or Mac OS. The embedding executable is created in
|
||||||
such a way that @racket[(find-system-path 'exec-file)] produces the
|
such a way that @racket[(find-system-path 'exec-file)] produces the
|
||||||
|
@ -439,7 +439,7 @@ Returns three values suitable for use as the @racket[extension],
|
||||||
respectively.
|
respectively.
|
||||||
|
|
||||||
If Racket/GRacket launchers for the current platform were directories
|
If Racket/GRacket launchers for the current platform were directories
|
||||||
form the user's perspective, the @racket[style] result is suitable for
|
from the user's perspective, the @racket[style] result is suitable for
|
||||||
use with @racket[get-directory], and the @racket[extension] result may
|
use with @racket[get-directory], and the @racket[extension] result may
|
||||||
be a string indicating a required extension for the directory name. }
|
be a string indicating a required extension for the directory name. }
|
||||||
|
|
||||||
|
|
|
@ -107,7 +107,7 @@ The @exec{raco exe} command accepts the following command-line flags:
|
||||||
to the executable. The default is to have no path, which means that
|
to the executable. The default is to have no path, which means that
|
||||||
the @racket[current-library-collection-paths] and
|
the @racket[current-library-collection-paths] and
|
||||||
@racket[current-library-collection-links] parameters are
|
@racket[current-library-collection-links] parameters are
|
||||||
initialized at empty when the executable starts. Beware that
|
initialized as @racket[null] when the executable starts. Beware that
|
||||||
various other directories are located relative to the @tech{main
|
various other directories are located relative to the @tech{main
|
||||||
collection directory} by default (see @secref["config-file"]), so
|
collection directory} by default (see @secref["config-file"]), so
|
||||||
that installing @nonterm{path} may allow other directories to be
|
that installing @nonterm{path} may allow other directories to be
|
||||||
|
|
|
@ -50,7 +50,7 @@ the following additional associations apply to launchers:
|
||||||
@itemize[
|
@itemize[
|
||||||
|
|
||||||
@item{@racket['independent?] (Windows) --- a boolean; @racket[#t]
|
@item{@racket['independent?] (Windows) --- a boolean; @racket[#t]
|
||||||
creates an old-style launcher that work with any
|
creates an old-style launcher that works with any
|
||||||
Racket or GRacket binary, like @exec{raco.exe}. No other
|
Racket or GRacket binary, like @exec{raco.exe}. No other
|
||||||
@racket[aux] associations are used for an old-style launcher.}
|
@racket[aux] associations are used for an old-style launcher.}
|
||||||
|
|
||||||
|
@ -335,7 +335,7 @@ platforms.}
|
||||||
|
|
||||||
@defproc[(racket-launcher-is-actually-directory?) boolean?]{
|
@defproc[(racket-launcher-is-actually-directory?) boolean?]{
|
||||||
|
|
||||||
Like @racket[gracket-launcher-is-actuall-directory?], but for Racket
|
Like @racket[gracket-launcher-is-actually-directory?], but for Racket
|
||||||
launchers. The result is @racket[#f] for all platforms.}
|
launchers. The result is @racket[#f] for all platforms.}
|
||||||
|
|
||||||
|
|
||||||
|
@ -358,7 +358,7 @@ Returns three values suitable for use as the @racket[extension],
|
||||||
@racket[style], and @racket[filters] arguments to @racket[put-file],
|
@racket[style], and @racket[filters] arguments to @racket[put-file],
|
||||||
respectively.
|
respectively.
|
||||||
|
|
||||||
If GRacket launchers for the current platform were directories form the
|
If GRacket launchers for the current platform were directories from the
|
||||||
user's perspective, the @racket[style] result is suitable for use with
|
user's perspective, the @racket[style] result is suitable for use with
|
||||||
@racket[get-directory], and the @racket[extension] result may be a
|
@racket[get-directory], and the @racket[extension] result may be a
|
||||||
string indicating a required extension for the directory name. }
|
string indicating a required extension for the directory name. }
|
||||||
|
@ -508,7 +508,7 @@ are as follows:
|
||||||
@item{@filepath{.extreg} @'rarr @racket['extension-register] as
|
@item{@filepath{.extreg} @'rarr @racket['extension-register] as
|
||||||
@racket[read] content (a single S-expression), but with
|
@racket[read] content (a single S-expression), but with
|
||||||
relative (to the @filepath{.extreg} file) paths converted
|
relative (to the @filepath{.extreg} file) paths converted
|
||||||
absolute; for use on Windows}
|
to absolute paths; for use on Windows}
|
||||||
|
|
||||||
]}
|
]}
|
||||||
|
|
||||||
|
|
|
@ -12,6 +12,7 @@
|
||||||
compiler/compilation-path
|
compiler/compilation-path
|
||||||
compiler/compile-file
|
compiler/compile-file
|
||||||
syntax/modread
|
syntax/modread
|
||||||
|
(only-in racket/unit define-signature)
|
||||||
(only-in compiler/compiler compile-zos)))
|
(only-in compiler/compiler compile-zos)))
|
||||||
|
|
||||||
|
|
||||||
|
@ -268,7 +269,7 @@ consistent with the caching of the default module name resolver (see
|
||||||
|
|
||||||
If @racket[use-compiled-file-paths] contains an empty list when
|
If @racket[use-compiled-file-paths] contains an empty list when
|
||||||
@racket[make-compilation-manager-load/use-compiled-handler] is called,
|
@racket[make-compilation-manager-load/use-compiled-handler] is called,
|
||||||
then @racket[exn:fail:contract] exception is raised.
|
then an @racket[exn:fail:contract] exception is raised.
|
||||||
|
|
||||||
If the @racket[delete-zos-when-rkt-file-does-not-exist?] argument is a true
|
If the @racket[delete-zos-when-rkt-file-does-not-exist?] argument is a true
|
||||||
value, then the returned handler will delete @filepath{.zo} files
|
value, then the returned handler will delete @filepath{.zo} files
|
||||||
|
@ -282,7 +283,7 @@ the security guard in the @racket[current-security-guard] when
|
||||||
the files are created is used (not the security guard at the point
|
the files are created is used (not the security guard at the point
|
||||||
@racket[make-compilation-manager-load/use-compiled-handler] is called).
|
@racket[make-compilation-manager-load/use-compiled-handler] is called).
|
||||||
|
|
||||||
The continuation the compilation of a module is marked with a
|
The continuation of the compilation of a module is marked with a
|
||||||
@racket[managed-compiled-context-key] and the module's source path.
|
@racket[managed-compiled-context-key] and the module's source path.
|
||||||
|
|
||||||
@emph{Do not} install the result of
|
@emph{Do not} install the result of
|
||||||
|
@ -300,7 +301,6 @@ structure:
|
||||||
@racketblock[
|
@racketblock[
|
||||||
(struct compile-event (timestamp path type) #:prefab)
|
(struct compile-event (timestamp path type) #:prefab)
|
||||||
]
|
]
|
||||||
|
|
||||||
The @racket[timestamp] field is the time at which the event occured in
|
The @racket[timestamp] field is the time at which the event occured in
|
||||||
milliseconds since the epoch. The @racket[path] field is the path of a file
|
milliseconds since the epoch. The @racket[path] field is the path of a file
|
||||||
being compiled for which the event is about. The @racket[type] field is a symbol
|
being compiled for which the event is about. The @racket[type] field is a symbol
|
||||||
|
@ -311,7 +311,7 @@ are @racket['locking], @racket['start-compile], @racket['finish-compile], and
|
||||||
@history[#:changed "6.1.1.8" @elem{Added identification of the compilation
|
@history[#:changed "6.1.1.8" @elem{Added identification of the compilation
|
||||||
context via @racket[managed-compiled-context-key].}
|
context via @racket[managed-compiled-context-key].}
|
||||||
#:changed "6.6.0.3" @elem{added check on a source's SHA1 hash to complement the
|
#:changed "6.6.0.3" @elem{added check on a source's SHA1 hash to complement the
|
||||||
timestamp check, where the altter can be disabled
|
timestamp check, where the latter can be disabled
|
||||||
via @racket[use-compile-file-check].}]}
|
via @racket[use-compile-file-check].}]}
|
||||||
|
|
||||||
|
|
||||||
|
@ -363,7 +363,7 @@ to the module's source.
|
||||||
[orig-handlers (string? any/c . -> . void?)])
|
[orig-handlers (string? any/c . -> . void?)])
|
||||||
(string? any/c . -> . void?)]{
|
(string? any/c . -> . void?)]{
|
||||||
|
|
||||||
Produces a handler suitable for use as a
|
Produces a handler suitable for use as an
|
||||||
@racket[error-display-handler] value, given an existing such value.
|
@racket[error-display-handler] value, given an existing such value.
|
||||||
The generated handler shows information about the compilation context
|
The generated handler shows information about the compilation context
|
||||||
when the handler's second argument is an exception whose continuation
|
when the handler's second argument is an exception whose continuation
|
||||||
|
@ -402,7 +402,7 @@ A parameter for a procedure of one argument that is called to report
|
||||||
the procedure is a string.
|
the procedure is a string.
|
||||||
|
|
||||||
The default value of the parameter logs the argument, along with
|
The default value of the parameter logs the argument, along with
|
||||||
@racket[current-inexact-milliseconds] to, a logger named @racket['compiler/cm]
|
@racket[current-inexact-milliseconds], to a logger named @racket['compiler/cm]
|
||||||
at the @racket['debug] level.
|
at the @racket['debug] level.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -529,7 +529,7 @@ result will not call @racket[proc] with @racket['unlock].)
|
||||||
(-> (or/c 'lock 'unlock) bytes? boolean?)]{
|
(-> (or/c 'lock 'unlock) bytes? boolean?)]{
|
||||||
|
|
||||||
Returns a function that follows the @racket[parallel-lock-client]
|
Returns a function that follows the @racket[parallel-lock-client]
|
||||||
by communicating over @racket[pc]. The argument must have
|
by communicating over @racket[pc]. The argument must
|
||||||
be the result of @racket[make-compile-lock].
|
be the result of @racket[make-compile-lock].
|
||||||
|
|
||||||
This communication protocol implementation is not kill safe. To make it kill safe,
|
This communication protocol implementation is not kill safe. To make it kill safe,
|
||||||
|
@ -544,7 +544,7 @@ result will not call @racket[proc] with @racket['unlock].)
|
||||||
@defproc[(make-compile-lock) place-channel?]{
|
@defproc[(make-compile-lock) place-channel?]{
|
||||||
Creates a @racket[place-channel?] that can be used with
|
Creates a @racket[place-channel?] that can be used with
|
||||||
@racket[compile-lock->parallel-lock-client] to avoid concurrent
|
@racket[compile-lock->parallel-lock-client] to avoid concurrent
|
||||||
compilations of the same racket source files in multiple places.
|
compilations of the same Racket source files in multiple places.
|
||||||
}
|
}
|
||||||
|
|
||||||
@defproc[(install-module-hashes! [bstr btyes?]
|
@defproc[(install-module-hashes! [bstr btyes?]
|
||||||
|
@ -576,9 +576,8 @@ messages are instances of a @racket[parallel-compile-event] prefab structure:
|
||||||
@racketblock[
|
@racketblock[
|
||||||
(struct parallel-compile-event (worker event) #:prefab)
|
(struct parallel-compile-event (worker event) #:prefab)
|
||||||
]
|
]
|
||||||
|
|
||||||
The worker field is the index of the worker that the created the event. The event
|
The worker field is the index of the worker that the created the event. The event
|
||||||
field is a @racket[compile-event] as document in
|
field is a @racket[compile-event] as documented in
|
||||||
@racket[make-compilation-manager-load/use-compiled-handler].
|
@racket[make-compilation-manager-load/use-compiled-handler].
|
||||||
|
|
||||||
|
|
||||||
|
@ -629,7 +628,7 @@ The return value is @racket[(void)] if it was successful, or @racket[#f] if ther
|
||||||
[_prefix string?]
|
[_prefix string?]
|
||||||
[_exn (or/c exn? (cons/c string? string?) #f)]
|
[_exn (or/c exn? (cons/c string? string?) #f)]
|
||||||
[_out string?]
|
[_out string?]
|
||||||
[_err srtring?]
|
[_err string?]
|
||||||
[_message string?])
|
[_message string?])
|
||||||
void?)]
|
void?)]
|
||||||
[collects-tree (listof any/c)]) (void)]{
|
[collects-tree (listof any/c)]) (void)]{
|
||||||
|
@ -639,10 +638,10 @@ compile collections in parallel. The @racket[worker-count] argument
|
||||||
specifies the number of compilation workers to spawn during parallel
|
specifies the number of compilation workers to spawn during parallel
|
||||||
compilation. The @racket[setup-fprintf] and @racket[append-error]
|
compilation. The @racket[setup-fprintf] and @racket[append-error]
|
||||||
functions communicate intermediate compilation results and errors. The
|
functions communicate intermediate compilation results and errors. The
|
||||||
@racket[collects-tree] argument is a compound datastructure containing
|
@racket[collects-tree] argument is a compound data structure containing
|
||||||
an in-memory tree representation of the collects directory.
|
an in-memory tree representation of the collects directory.
|
||||||
|
|
||||||
When the @racket[_exn] argument to @racket[append-error] is a part of
|
When the @racket[_exn] argument to @racket[append-error] is a pair of
|
||||||
strings, the first string is a long form of the error message, and the
|
strings, the first string is a long form of the error message, and the
|
||||||
second string is a short form (omitting evaluation context
|
second string is a short form (omitting evaluation context
|
||||||
information, for example).
|
information, for example).
|
||||||
|
@ -748,7 +747,7 @@ See also @racket[managed-compile-zo].}
|
||||||
(values path? path?)]{
|
(values path? path?)]{
|
||||||
|
|
||||||
Determines the directory that holds the bytecode form of @racket[path]
|
Determines the directory that holds the bytecode form of @racket[path]
|
||||||
plus base name of @racket[path].
|
plus the base name of @racket[path].
|
||||||
|
|
||||||
The directory is determined by checking @racket[roots] in order, and
|
The directory is determined by checking @racket[roots] in order, and
|
||||||
for each element of @racket[roots] checking @racket[modes] in order.
|
for each element of @racket[roots] checking @racket[modes] in order.
|
||||||
|
@ -781,7 +780,7 @@ path.}
|
||||||
The @DFlag{no-deps} mode for @exec{raco make} is an improverished
|
The @DFlag{no-deps} mode for @exec{raco make} is an improverished
|
||||||
form of the compilation, because it does not track import
|
form of the compilation, because it does not track import
|
||||||
dependencies. It does, however, support compilation of non-module
|
dependencies. It does, however, support compilation of non-module
|
||||||
source in an namespace that initially imports @racketmodname[scheme].
|
source in a namespace that initially imports @racketmodname[scheme].
|
||||||
|
|
||||||
Outside of a module, top-level @racket[define-syntaxes],
|
Outside of a module, top-level @racket[define-syntaxes],
|
||||||
@racket[module], @racket[#%require],
|
@racket[module], @racket[#%require],
|
||||||
|
@ -831,4 +830,4 @@ module and use @exec{raco make} in its default mode.
|
||||||
@(close-eval cm-eval)
|
@(close-eval cm-eval)
|
||||||
|
|
||||||
@; ----------------------------------------------------------------------
|
@; ----------------------------------------------------------------------
|
||||||
@include-section["api.scrbl"]
|
@include-section["api.scrbl"]
|
||||||
|
|
|
@ -221,7 +221,7 @@ flags:
|
||||||
(as opposed to installation-specific) setup actions.}
|
(as opposed to installation-specific) setup actions.}
|
||||||
|
|
||||||
@item{@DFlag{no-planet} --- refrain from any setup actions for
|
@item{@DFlag{no-planet} --- refrain from any setup actions for
|
||||||
@|PLaneT| actions; this flags is implied by @DFlag{no-user}.}
|
@|PLaneT| actions; this flag is implied by @DFlag{no-user}.}
|
||||||
|
|
||||||
@item{@DFlag{avoid-main} --- refrain from any setup actions that
|
@item{@DFlag{avoid-main} --- refrain from any setup actions that
|
||||||
affect the installation, as opposed to user-specific actions.}
|
affect the installation, as opposed to user-specific actions.}
|
||||||
|
@ -316,7 +316,7 @@ installed as a package using @exec{raco pkg} (see @other-manual['(lib
|
||||||
facilities for uninstalling the package and managing dependencies.
|
facilities for uninstalling the package and managing dependencies.
|
||||||
|
|
||||||
An older approach is to supply a @filepath{.plt} file to @exec{raco
|
An older approach is to supply a @filepath{.plt} file to @exec{raco
|
||||||
setup} with the @Flag{A} flag, the files contained in the
|
setup} with the @Flag{A} flag; the files contained in the
|
||||||
@filepath{.plt} archive are unpacked (according to specifications
|
@filepath{.plt} archive are unpacked (according to specifications
|
||||||
embedded in the @filepath{.plt} file) and only collections specified
|
embedded in the @filepath{.plt} file) and only collections specified
|
||||||
by the @filepath{.plt} file are compiled and setup. Archives processed
|
by the @filepath{.plt} file are compiled and setup. Archives processed
|
||||||
|
@ -361,7 +361,7 @@ Optional @filepath{info.rkt} fields trigger additional actions by
|
||||||
|
|
||||||
More precisely a @racketidfont{scribblings} entry must be a value
|
More precisely a @racketidfont{scribblings} entry must be a value
|
||||||
that can be generated from an expression matching the following
|
that can be generated from an expression matching the following
|
||||||
@racket[entry] grammar:
|
@racket[_entry] grammar:
|
||||||
|
|
||||||
@racketgrammar*[
|
@racketgrammar*[
|
||||||
#:literals (list)
|
#:literals (list)
|
||||||
|
@ -417,16 +417,16 @@ Optional @filepath{info.rkt} fields trigger additional actions by
|
||||||
is not itself located in the main installation.}
|
is not itself located in the main installation.}
|
||||||
|
|
||||||
@item{@racket['depends-all] : Indicates that the document should
|
@item{@racket['depends-all] : Indicates that the document should
|
||||||
be re-built if any other document is rebuilt---except for
|
be rebuilt if any other document is rebuilt---except for
|
||||||
documents that have the @racket['no-depend-on] flag.}
|
documents that have the @racket['no-depend-on] flag.}
|
||||||
|
|
||||||
@item{@racket['depends-all-main] : Indicates that the document
|
@item{@racket['depends-all-main] : Indicates that the document
|
||||||
should be re-built if any other document is rebuilt that is
|
should be rebuilt if any other document is rebuilt that is
|
||||||
installed into the main installation---except for documents
|
installed into the main installation---except for documents
|
||||||
that have the @racket['no-depend-on] flag.}
|
that have the @racket['no-depend-on] flag.}
|
||||||
|
|
||||||
@item{@racket['depends-all-user] : Indicates that the document
|
@item{@racket['depends-all-user] : Indicates that the document
|
||||||
should be re-built if any other document is rebuilt that is
|
should be rebuilt if any other document is rebuilt that is
|
||||||
installed into the user's space---except for documents
|
installed into the user's space---except for documents
|
||||||
that have the @racket['no-depend-on] flag.}
|
that have the @racket['no-depend-on] flag.}
|
||||||
|
|
||||||
|
@ -561,7 +561,7 @@ Optional @filepath{info.rkt} fields trigger additional actions by
|
||||||
|
|
||||||
A @racketidfont{release-note-files} entry must be a value
|
A @racketidfont{release-note-files} entry must be a value
|
||||||
that can be generated from an expression matching the following
|
that can be generated from an expression matching the following
|
||||||
@racket[entry] grammar:
|
@racket[_entry] grammar:
|
||||||
|
|
||||||
@racketgrammar*[
|
@racketgrammar*[
|
||||||
#:literals (list)
|
#:literals (list)
|
||||||
|
@ -814,7 +814,7 @@ Optional @filepath{info.rkt} fields trigger additional actions by
|
||||||
When @exec{raco setup} is run with no arguments,@margin-note*{Unless
|
When @exec{raco setup} is run with no arguments,@margin-note*{Unless
|
||||||
@DFlag{check-pkg-deps} is specified, dependency checking is disabled
|
@DFlag{check-pkg-deps} is specified, dependency checking is disabled
|
||||||
if any collection is specified for @exec{raco setup}.} after building
|
if any collection is specified for @exec{raco setup}.} after building
|
||||||
all collections and documentation, @exec{raco setup} check package
|
all collections and documentation, @exec{raco setup} checks package
|
||||||
dependencies. Specifically, it inspects compiled files and
|
dependencies. Specifically, it inspects compiled files and
|
||||||
documentation to check that references across package boundaries are
|
documentation to check that references across package boundaries are
|
||||||
reflected by dependency declarations in each package-level
|
reflected by dependency declarations in each package-level
|
||||||
|
@ -874,7 +874,7 @@ cooperate with @racket[raco make] are visible for dependency checking.
|
||||||
|
|
||||||
Dependency checking is sensitive to whether a dependency is needed
|
Dependency checking is sensitive to whether a dependency is needed
|
||||||
only as a build-time dependency. If @exec{raco setup} detects that a
|
only as a build-time dependency. If @exec{raco setup} detects that a
|
||||||
missing dependency could be added as a built-time dependency, it will
|
missing dependency could be added as a build-time dependency, it will
|
||||||
suggest the addition, but @exec{raco setup} will not suggest
|
suggest the addition, but @exec{raco setup} will not suggest
|
||||||
converting a normal dependency to a build-time dependency (since every
|
converting a normal dependency to a build-time dependency (since every
|
||||||
normal dependency counts as a build-time dependency, too).
|
normal dependency counts as a build-time dependency, too).
|
||||||
|
@ -931,7 +931,7 @@ Runs @exec{raco setup} with various options:
|
||||||
assuming that documentation is built}
|
assuming that documentation is built}
|
||||||
|
|
||||||
@item{@racket[force-user-docs?] --- if true, then when building
|
@item{@racket[force-user-docs?] --- if true, then when building
|
||||||
documentation, create a user-specific documentation entry point
|
documentation, creates a user-specific documentation entry point
|
||||||
even if it has the same content as the installation}
|
even if it has the same content as the installation}
|
||||||
|
|
||||||
@item{@racket[clean?] --- if true, enables cleaning mode instead of setup mode}
|
@item{@racket[clean?] --- if true, enables cleaning mode instead of setup mode}
|
||||||
|
@ -1030,7 +1030,7 @@ form.}
|
||||||
}
|
}
|
||||||
|
|
||||||
@defboolparam[verbose on?]{
|
@defboolparam[verbose on?]{
|
||||||
If on, prints message from @exec{make} to @envvar{stderr}.
|
If on, prints messages from @exec{make} to @envvar{stderr}.
|
||||||
@defaults[@racket[#f]]}
|
@defaults[@racket[#f]]}
|
||||||
|
|
||||||
@defboolparam[make-verbose on?]{
|
@defboolparam[make-verbose on?]{
|
||||||
|
@ -1141,7 +1141,7 @@ form.}
|
||||||
@defboolparam[archive-implies-reindex on?]{
|
@defboolparam[archive-implies-reindex on?]{
|
||||||
If on, when @racket[archives] has a non-empty list of packages, if any
|
If on, when @racket[archives] has a non-empty list of packages, if any
|
||||||
documentation is built, then suitable documentation start pages, search pages,
|
documentation is built, then suitable documentation start pages, search pages,
|
||||||
and master index pages are re-built. @defaults[@racket[#t]]}
|
and master index pages are rebuilt. @defaults[@racket[#t]]}
|
||||||
|
|
||||||
@defparam[current-target-directory-getter thunk (-> path-string?)]{
|
@defparam[current-target-directory-getter thunk (-> path-string?)]{
|
||||||
A thunk that returns the target directory for unpacking a relative
|
A thunk that returns the target directory for unpacking a relative
|
||||||
|
@ -1280,7 +1280,7 @@ function for installing a single @filepath{.plt} file.
|
||||||
|
|
||||||
@defproc[(get-links-search-files) path?]{
|
@defproc[(get-links-search-files) path?]{
|
||||||
Returns a list of paths to installation @tech[#:doc
|
Returns a list of paths to installation @tech[#:doc
|
||||||
reference-doc]{collection links files} that are search in
|
reference-doc]{collection links files} to search in
|
||||||
order. (Normally, the result includes the result of
|
order. (Normally, the result includes the result of
|
||||||
@racket[(find-links-file)], which is where new installation-wide
|
@racket[(find-links-file)], which is where new installation-wide
|
||||||
links are installed by @exec{raco link} or @racket[links].) The
|
links are installed by @exec{raco link} or @racket[links].) The
|
||||||
|
@ -1512,7 +1512,7 @@ function for installing a single @filepath{.plt} file.
|
||||||
#f)]{
|
#f)]{
|
||||||
|
|
||||||
Accepts a path to a directory. If it finds either a well-formed
|
Accepts a path to a directory. If it finds either a well-formed
|
||||||
an @filepath{info.rkt} file or an @filepath{info.ss} file (with
|
@filepath{info.rkt} file or an @filepath{info.ss} file (with
|
||||||
preference for the @filepath{info.rkt} file),
|
preference for the @filepath{info.rkt} file),
|
||||||
it returns an info procedure that accepts either one
|
it returns an info procedure that accepts either one
|
||||||
or two arguments. The first argument to the info procedure is
|
or two arguments. The first argument to the info procedure is
|
||||||
|
@ -1532,8 +1532,8 @@ function for installing a single @filepath{.plt} file.
|
||||||
is raised. If the @filepath{info.rkt} file loaded, @racket[get-info/full]
|
is raised. If the @filepath{info.rkt} file loaded, @racket[get-info/full]
|
||||||
returns the @racket[get-info] file. If the @filepath{info.rkt} file does not exist,
|
returns the @racket[get-info] file. If the @filepath{info.rkt} file does not exist,
|
||||||
then @racket[get-info/full] does
|
then @racket[get-info/full] does
|
||||||
the same checks for the @filepath{info.rkt} file, either raising an exception
|
the same checks for the @filepath{info.ss} file, either raising an exception
|
||||||
or returning the @racket[get-info] function from the @filepath{info.rkt} file.
|
or returning the @racket[get-info] function from the @filepath{info.ss} file.
|
||||||
|
|
||||||
The @filepath{info.rkt} (or @filepath{info.ss}) module is loaded
|
The @filepath{info.rkt} (or @filepath{info.ss}) module is loaded
|
||||||
into @racket[namespace] if it is not @racket[#f], or a private,
|
into @racket[namespace] if it is not @racket[#f], or a private,
|
||||||
|
@ -1580,7 +1580,7 @@ function for installing a single @filepath{.plt} file.
|
||||||
If @racket[mode] is specified, it must be either
|
If @racket[mode] is specified, it must be either
|
||||||
@racket['preferred] (the default), @racket['all-available],
|
@racket['preferred] (the default), @racket['all-available],
|
||||||
@racket['no-planet], or @racket['no-user]. If @racket[mode] is
|
@racket['no-planet], or @racket['no-user]. If @racket[mode] is
|
||||||
@racket['all-available], @racket[find-relevant-collections] returns
|
@racket['all-available], @racket[find-relevant-directories] returns
|
||||||
all installed directories whose info files contain the specified
|
all installed directories whose info files contain the specified
|
||||||
symbols---for instance, all versions of all installed PLaneT
|
symbols---for instance, all versions of all installed PLaneT
|
||||||
packages will be searched if @racket['all-available] is
|
packages will be searched if @racket['all-available] is
|
||||||
|
@ -1590,7 +1590,7 @@ function for installing a single @filepath{.plt} file.
|
||||||
will be returned. If @racket[mode] is @racket['no-planet], then
|
will be returned. If @racket[mode] is @racket['no-planet], then
|
||||||
PLaneT packages are not included in the search. If @racket[mode] is
|
PLaneT packages are not included in the search. If @racket[mode] is
|
||||||
@racket['no-user], then only installation-wide directories are
|
@racket['no-user], then only installation-wide directories are
|
||||||
search, which means omitting @|PLaneT| package directories.
|
searched, which means omitting @|PLaneT| package directories.
|
||||||
|
|
||||||
Collection links from the installation-wide @tech[#:doc
|
Collection links from the installation-wide @tech[#:doc
|
||||||
reference-doc]{collection links file} or packages with installation
|
reference-doc]{collection links file} or packages with installation
|
||||||
|
@ -1604,7 +1604,7 @@ function for installing a single @filepath{.plt} file.
|
||||||
|
|
||||||
@defproc[(find-relevant-directory-records
|
@defproc[(find-relevant-directory-records
|
||||||
[syms (listof symbol?)]
|
[syms (listof symbol?)]
|
||||||
[key (or/c 'preferred 'all-available)])
|
[key (or/c 'preferred 'all-available 'no-planet 'no-user)])
|
||||||
(listof directory-record?)]{
|
(listof directory-record?)]{
|
||||||
Like @racket[find-relevant-directories], but returns @racket[directory-record] structs
|
Like @racket[find-relevant-directories], but returns @racket[directory-record] structs
|
||||||
instead of @racket[path?]s.
|
instead of @racket[path?]s.
|
||||||
|
@ -1618,7 +1618,7 @@ function for installing a single @filepath{.plt} file.
|
||||||
A struct that records information about a collection or a @PLaneT package that has been installed.
|
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].
|
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}
|
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
|
file for this collection or @PLaneT package exists on the filesystem; the @racket[syms] field holds the
|
||||||
identifiers defined in that file.
|
identifiers defined in that file.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@ Command-line flags:
|
||||||
before unpacking or listing the archive content.}
|
before unpacking or listing the archive content.}
|
||||||
|
|
||||||
@item{@Flag{f} or @DFlag{force} --- replace files that exist already;
|
@item{@Flag{f} or @DFlag{force} --- replace files that exist already;
|
||||||
fails that the archive says should be replaced will be replaced
|
files that the archive says should be replaced will be replaced
|
||||||
without this flag.}
|
without this flag.}
|
||||||
|
|
||||||
]
|
]
|
||||||
|
@ -103,7 +103,7 @@ while the second will refer to the main installation.}
|
||||||
Traverses the content of @racket[archive], which must be a
|
Traverses the content of @racket[archive], which must be a
|
||||||
@filepath{.plt} archive that is created with the default unpacking
|
@filepath{.plt} archive that is created with the default unpacking
|
||||||
unit and configuration expression. The configuration expression is not
|
unit and configuration expression. The configuration expression is not
|
||||||
evaluated, the unpacking unit is not invoked, and not files are
|
evaluated, the unpacking unit is not invoked, and files are not
|
||||||
unpacked to the filesystem. Instead, the information in the archive is
|
unpacked to the filesystem. Instead, the information in the archive is
|
||||||
reported back through @racket[on-config], @racket[on-setup-unit],
|
reported back through @racket[on-config], @racket[on-setup-unit],
|
||||||
@racket[on-directory], and @racket[on-file], each of which can build on
|
@racket[on-directory], and @racket[on-file], each of which can build on
|
||||||
|
@ -113,7 +113,7 @@ final value is returned.
|
||||||
The @racket[on-config-fn] function is called once with an S-expression
|
The @racket[on-config-fn] function is called once with an S-expression
|
||||||
that represents a function to implement configuration information.
|
that represents a function to implement configuration information.
|
||||||
The second argument to @racket[on-config] is @racket[initial-value],
|
The second argument to @racket[on-config] is @racket[initial-value],
|
||||||
and the function's result is passes on as the last argument to @racket[on-setup-unit].
|
and the function's result is passed on as the last argument to @racket[on-setup-unit].
|
||||||
|
|
||||||
The @racket[on-setup-unit] function is called with the S-expression
|
The @racket[on-setup-unit] function is called with the S-expression
|
||||||
representation of the installation unit, an input port that points to
|
representation of the installation unit, an input port that points to
|
||||||
|
|
|
@ -90,7 +90,7 @@ structures that are produced by @racket[zo-parse] and consumed by
|
||||||
|
|
||||||
When an element of @racket[stxs] is @racket[#f], it coresponds to a
|
When an element of @racket[stxs] is @racket[#f], it coresponds to a
|
||||||
syntax object that was optimized away at the last minute. The slot
|
syntax object that was optimized away at the last minute. The slot
|
||||||
must not be referenced vt a @racket[topsyntax] form.
|
must not be referenced by a @racket[topsyntax] form.
|
||||||
|
|
||||||
The @racket[src-inspector-desc] field provides an inspector name that
|
The @racket[src-inspector-desc] field provides an inspector name that
|
||||||
is used within syntax-object bindings. At run time, the prefix gets
|
is used within syntax-object bindings. At run time, the prefix gets
|
||||||
|
@ -278,7 +278,7 @@ binding, constructor, etc.}
|
||||||
created by @racket[body] forms (not counting the @racket[prefix]
|
created by @racket[body] forms (not counting the @racket[prefix]
|
||||||
array).
|
array).
|
||||||
|
|
||||||
The @racket[dummy] variable is used to access to the top-level
|
The @racket[dummy] variable is used to access the top-level
|
||||||
namespace.
|
namespace.
|
||||||
|
|
||||||
The @racket[lang-info] value specifies an optional module path that
|
The @racket[lang-info] value specifies an optional module path that
|
||||||
|
@ -643,7 +643,7 @@ binding, constructor, etc.}
|
||||||
run-time path. The @racket[simple-scopes] field records scopes that
|
run-time path. The @racket[simple-scopes] field records scopes that
|
||||||
are attached to the syntax object at all phases, and @racket[multi-scopes]
|
are attached to the syntax object at all phases, and @racket[multi-scopes]
|
||||||
records phase-specific scopes (which are always attached as a group)
|
records phase-specific scopes (which are always attached as a group)
|
||||||
along with a phase shift for every scope within the group).}
|
along with a phase shift for every scope within the group.}
|
||||||
|
|
||||||
@defstruct+[(module-shift zo) ([from (or/c #f module-path-index?)]
|
@defstruct+[(module-shift zo) ([from (or/c #f module-path-index?)]
|
||||||
[to (or/c #f module-path-index?)]
|
[to (or/c #f module-path-index?)]
|
||||||
|
|
Loading…
Reference in New Issue
Block a user