#!/usr/bin/env bash # Regenerates every file under output/. # # ./scripts/run-all.sh # # Needs a JDK 25 and Maven 3.9 (and network access to Maven Central once). Transcripts 01-15 and the timing # comparison 16 are written by the test suite, so each figure in the article is an assertion that fails the # build if it stops being true. 17-24 are the compiler's own words, captured from the broken sources in # src/broken/; 25 is read out of the processor jar. 16 is a timing and therefore differs from run to run. set -euo pipefail cd "$(dirname "$0")/.." echo "== test suite (transcripts 01-16)" mvn -B test echo "== compile errors and processor behaviour (17-24)" ./scripts/compile-errors.sh echo "== processor jar facts (25)" ./scripts/capture-facts.sh echo echo "output:" ls -1 output