Every @Async behaviour that surprises people, asserted by a test and captured to docs/output/: the self-invocation trap, what CGLIB cannot override, the IllegalArgumentException a plain return type throws, the unbounded queue that makes max-size decoration, spring.task.execution.propagate-context (new in Boot 4.1.0), the two Executor beans that leave @Async on an unpooled SimpleAsyncTaskExecutor, and JEP 491 measured on JDK 21 against JDK 25.
22 lines
806 B
Bash
Executable File
22 lines
806 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Regenerates every file under docs/output/. Nothing in this module's documentation, or in the
|
|
# article it accompanies, is typed by hand.
|
|
#
|
|
# scripts/run-all.sh # tests only
|
|
# scripts/run-all.sh /path/to/jdk21/bin/java # tests plus the JDK 21 vs JDK 25 pinning run
|
|
set -euo pipefail
|
|
cd "$(dirname "$0")/.."
|
|
mkdir -p docs/output
|
|
|
|
mvn -B test 2>&1 | grep -E 'Running |Tests run:|BUILD ' > docs/output/tests.txt
|
|
echo "wrote docs/output/tests.txt"
|
|
|
|
JAVA_BIN="$(command -v java)"
|
|
JAVAC_BIN="$(command -v javac)"
|
|
if [ $# -ge 1 ]; then
|
|
./scripts/pinning-probe.sh "$JAVAC_BIN" "$1" "$JAVA_BIN" > docs/output/pinning-probe.txt
|
|
else
|
|
./scripts/pinning-probe.sh "$JAVAC_BIN" "$JAVA_BIN" > docs/output/pinning-probe.txt
|
|
fi
|
|
echo "wrote docs/output/pinning-probe.txt"
|