jiff/scripts/test-examples
Andrew Gallant 0541c1979c cargo: restore sanity to iterative development
I'm not sure when or how exactly it happened, but in the last weeks,
I've noticed that `rustc` gets effectively stun-locked whenever I make a
change to a source file in Jiff. A quick examination of what the fuck my
computer is doing seems to reveal that it's spending oodles of time
compiling diesel over and over.

I have no idea why this is happening and I don't really care to spend
the time unraveling the mysteries of diesel.

So I took a hammer to the problem. I have effectively shunted all
examples and all "integration" crates out of Jiff's core workspace and
into their own little bloated fiefdoms. To compensate for the fact that
`cargo test --all` no longer tests these things, I've added shell
scripts to run the requisite tests. And those shell scripts are now run
in CI.

I'm now back to a state where I can save a file in Jiff and I get
sub-second `cargo check` response times.
2025-04-10 20:54:30 -04:00

17 lines
495 B
Bash
Executable file

#!/bin/bash
# This script tests that every example builds.
#
# This isn't done as part of, e.g., `cargo build --all`, because we split the
# examples out of the main workspace to keep dependency trees smaller.
set -e
# cd to the directory containing this crate's Cargo.toml so that we don't need
# to pass --manifest-path to every `cargo` command.
cd "$(dirname "$0")/.."
for d in ./examples/*; do
echo "===== BUILDING EXAMPLE: $d ====="
cargo build --manifest-path "$d/Cargo.toml"
done