The `catalog-archive` command not only copies a catalog, but also copies
all package sources referenced by the catalog to create a snapshot that
doesn't depend on any external pieces.
One reason you might want to do that is to download all packages on a
machine with general network access, and then building packages on a
(virtual) machine whose network access is limited.
This commit also adds support for relative package sources in the
catalog protocol, where a client converts a relative package source to
an absolute one. Since the relative-to-absolute conversion happens on
clients, relative sources will be of limited use until v6.0 and v6.0.1
become deprecated.
A new `current-pkg-lookup-version` parameter corrects the misuse of
`current-pkg-scope-version` for package-catalog queries.
This change solves a long-standing problem that reencoded output
was not flushed on exit, especially in the case that the
current output port is reencoded.
This provides approximately 6% speedup on
`racket -l math/scribblings/math.scrbl` and about
14% speedup on the `new-metrics` test.
Mostly this involves threading #f through the whole
of the inference process. There are several new
macros in `typed-racket/infer/fail` which are useful
for comprehensively using Maybe-monad style
programming in Racket. Of particular note is `%`,
which satisfies (% f e ...) => (and e ... (f e ...))
but with the obvious fixes.
This commit also weakens several contracts which
caused the build of DrRacket and/or `math` to fail
when contracts were enabled.
If you have anything user-specific installed, the `raco setup` generates
a user-specific documentation page. Visiting that page sets a cookie
(actually, browser local storage, when supported) that redirects searches
and "top" to the user-specific page.
The main installation-specific page now tells you when a redirect is
in place, and it gives you the option of forgetting it (which is handy
if you've removed your user-specific documentation directory, for example).
database in more convenient ways
- add a "update cache" button to online check syntax error message when
a missing module exn is raised, but there are no suggestions
- add an "update cache" link to the missing module exn printout