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)
Commit 0f80c71fab propagates read-only mode so that a documentation
database is not created for read operations, but `raco setup` (with
documentation-index support) attempts to read the database before
writing to it. Change `raco setup` to make sure the database
exists if a later write operation is expected to create it.
Merge bug fix to v6.0 (pending review)
Fixes a problem installation Planet packages under Windows,
for example, where attempting to open a read-only file in
write mode triggers an extremely slow result.
Merge bug fix to v6.0 (pending review)
Making the default match the docs fixes Planet package installation,
which otherwise tries to rebuild the index too frequently.
Merge bug fix to v6.0 (pending review)
The main change is to add an option to `syntax-local-infer-name` to
select whether `syntax-local-name` is used, and to use the new option
to disable `syntax-local-name` for the function expression in a
keyword `#%app`.
Improvements in the expander/compiler generalize a previous repair.
Merge to v6.0
The geometry used for keyboard navigation and tab-panel% instances
was wrong. That problem, in turn, exposed a potential infinite
loop in the function that computes the next tab position (when
geometries overlap). Fix both.
Closes PR 14255
Merge to v6.0