For example, make `raco exe --wrong` show "raco" instead of "racket"
as the error-reporting program. Normally, only `raco` and `setup-plt`
are implemented as "independent" launchers, because it's needed for
bootstrapping.
Now that the documentation-build phase of `raco setup` uses read-only
mode, contention between writing and reading sometimes (though
infrequently) triggers an SQLITE_IOERR_LOCK error. Change the SQLite
binding to expose that specific error, as well as SQLITE_IOERR_BLOCKED,
because a retry of the affected operation is appropriate.
Merge to release branch.
An invalid (needs-rollback?) transaction may correspond to a closed
underlying transaction. In that case, don't issue ROLLBACK command.
Using something like `raco pkg remove` in an incompletely
set up installation could lead to failures attempting to
access a database file that isn't there.
When `dynamic-require` is used to access an export that isn't a
variable defined in the same module, `dynamic-require` falls
back to `eval` in a fresh namespace, which can be expensive.
The new fast path handles the case that a variable is re-exported.
The new fast path is relevant to deserialization, which now
uses a submodule that re-exports from an enclosing module.
A change in `raise-reader-error` to use `srcloc->string` caused
tests to fail because `srcloc->string` doesn't show location
information if the source is #f.
The `parallel` form in a site configuration was working only
with leaf machines; now, it should be fixed for `sequential`
nested under `parallel`.
Also, fix timeout handling and reporting of failures.
Commit 5bae9773aa broke `chaperone-procedure` and `impersonate-procedure`
so that it didn't always produce a chaperone or impersonator. Also,
the arity-error changeds intended for that commit were not complete,
because tests were accidentally commented out.
The main repair involves a new internal property that keeps track of an
accessor that is used to extract a procedure from a field in a structure
type that has `prop:procedure`.
Commit 6ff7359212 didn't create a directory that might be missing
before trying to create a file in the directory.
Merge bug fix to v6.0 (pending review)
These accessors and removers required the target value
to have the same type variable as the collection, but
that's more conservative and less useful than Any.
(replacing it with an accessor function)
Also add some for-label requires and remove a guaranteed-to-fail
test case (the bug is documented in the contract gotchas section)