This branch updates loomto 0.3, adds a shell script (bin/loom.sh),
which runs Loom tests with default values for Loom's configuration
variables, and makes a few minor CI tweaks to improve performance
by installing smaller Rust toolchains.
The nightly Rust compiler is used to enable Loom's location tracking
support. This allows Loom to emit diagnostics that include the caller's
source code locations when errors occur. For example, after modifying
the code to cause an invalid concurrent mutable access, we get nice
panics like this:
This branch updates
loom
to 0.3, adds a shell script (bin/loom.sh
), which runs Loom tests with default values for Loom's configuration variables, and makes a few minor CI tweaks to improve performance by installing smaller Rust toolchains.The nightly Rust compiler is used to enable Loom's location tracking support. This allows Loom to emit diagnostics that include the caller's source code locations when errors occur. For example, after modifying the code to cause an invalid concurrent mutable access, we get nice panics like this:
The tests are compiled in release mode to improve performance, but debug assertions are enabled.
Any arguments to this script are passed to the
cargo test
invocation.Fixes #23