depend on redex-lib instead of all of redex
Avoid duplicating code in test files.
Add missing test.

(...which was tested accidentally in the url tests.)
show available snapshots on main page
raco setup: fix problem when documentation is not built

Support for pre-rendered documentation could get confused when
the location of source for already-built documentation changes.
add `filesystem-change-evt'

The `filesystem-change-evt' function takes a path to a file
or directory and returns an event that becomes ready when
the file or directory changes (conservatively, so false
positives are possible).

These events are supported on Linux, Mac OS X and other BSD
variants with kqueue(), and Windows.
use `filesystem-change-evt' and static roots to speed library search

Use `filesystem-change-evt' (where supported) to detect changes to
collection link files.

Add "static root" as a new kind of collection root directory in links
files. A static root directory is assumed to not change (in terms of
its collection subdirectories) as long as the links file itself does
not change.

Propagate the notion of static roots through `raco link' and `raco pkg
install'.

Change the `pkg-links' makefile target to install static links
instead of plain links.

The result of all of these changes is to cut 25%-33% of the
time for `racket -l racket', bringing it back in line with
the pre-package-reorganization time.
redex: "info.rkt" fix for moved documentation
minor Makefile and C fixes
`filesystem-change-evt' and use repairs
Email me on all Travis builds.
Package-database reading and related library improvements

The main result is that `path->selative-string/library' now generates
"<pkg>/..." strings.

To make that possible, minimal support for reading the
installed-package database moved to a new `pkg/path' library.

To make that possible and avoid poetntial problems from concurrent
reading and writing of the database file, `racket/file' now provides
`call-with-atomic-output-file', which implements the write-and-move
dance that CM uses for compiled bytcode (i.e., `with-compile-output').
The new function is used to write links and installed-package files.

Finally, `racket/base' provides the new function
`call-with-default-reading-parameterization', which is used to guard
various file `read's to make them consistent and avoid security holes.
fix shortcut for native packages
fix `call-with-default-reading-parameterization'

The `read-accept-compiled' parameter is supposed to be #f.
fix bug and test for `path->relative-string/library'
make help/help.rkt not run in drdr
add some missing responsibility info for drdr
add missing for-label require
drop non-relative paths in procedure source locations

A path that is not relative to the enclosing file can show up
due to cross-module inlining. Package-based modules do not have
a good relative path to "collects", which creates trouble for
distributing compiled modules where, say, `map' was inlined.

It might be possible to keep the path in module-path-index form
so that a path can be constructed appropriately at run time, but
it's much simpler to just punt on function source locations in
this relatively rare case.
pkg/path: add `path->pkg+subpath+collect'

I was going to use this extension to implement `path->module-path',
but it turns out that `path->module-path' already exists and in
a form that works with packages. Still, this extension might be
useful in the future.