Redex no longer has extra checks to eliminate redundant matches
(as those checks are prohibitively expensive for the lambdajs model)
so redundancy in the grammar can, when combined with context
decomposition or named patterns, lead to significant slowdowns
I'm fairly certain that the change in commit 25e9bd2a190acf861 isn't
right, but I'm having trouble generating tests to demonstrate the
original bug or this correction.
This removes all the SVG sources, parsing, and marked-layer colorizing, the PNG binaries in the distribution, and the dependence of DrRacket on `slideshow/pict'.
Icons are now produced by drawing on a bitmap-dc%, inferring or building a z map, choosing a material, and sending these to a two-pass ray tracer. This is for the most part hidden behind an API consisting of functions from colors and optional sizes and materials to `bitmap%'s.
Contracts and documentation forthcoming.
Previously, if a dispatched build failed the files from the previous
build would still get copied. This was an intentional feature, since
only the compiled binaries of these builds are used, and usually these
would work fine (with the zo files that were built on the main machine).
Now, the build directory is deleted when starting, which means that any
failure in a remote build means that the whole build will fail. This
turns out to be better since when there are problems, the previous
behavior could be very confusing. In addition, the racket setup itself
rarely fails, so this won't make a difference.
* Use `ssh' to copy the repo tgz, so it can also create the build
directory in a single connection.
* Use "racket" in the build materials directory name (since it's used in
random machines).
* Use `chcon' to make files accessible to the web server under selinux.
* "YYYY-MM-DD HH:MM" in log time strings (leave the one on the web page
as is).
* Uniform machine+platform labels in headers on dispatched builds. The
main build machine doesn't have them.
On dispatched builds the status is printed in their own logs in a
greppable way, and these lines are removed when these logs are displayed
as part of the main log.