sharp 0.35.x Bun repro¶
Minimal standalone reproduction for AutoMobile issue
#3014. It intentionally
has no AutoMobile dependencies and pins sharp@0.35.3, the sharp 0.35.x line
called out in the image-backend design record.
Upstream tracking:
Run from this directory:
bun install
bun run repro
The script imports sharp, prints Bun/platform/sharp runtime versions, creates a
small PNG entirely through sharp, exercises lossy/lossless/near-lossless WebP
encodes, reads WebP metadata, and prints ok if the process survives.
To validate the full behavior without mutating this directory, run the repo helper from the root:
bash scripts/validate-sharp-bun-repro.sh
The helper copies this standalone package into scratch/, installs with the
checked-in lockfile, runs bun run repro, and asserts sharp 0.35.3, WebP
metadata, nonzero lossy/lossless/near-lossless outputs, and the final ok
marker.
Local result captured for issue #3014 on 2026-07-07:
darwin arm64, Bun1.3.14, sharp0.35.3, libvips8.18.3: passed; output is inscratch/sharp-bun-0.35-repro/local-output.txt.- Linux container check was not exercised because the local Docker daemon was
unavailable; attempted output is in
scratch/sharp-bun-0.35-repro/linux-container-output.txt.
For issue #3014 validation, capture output from the repo root:
mkdir -p scratch/sharp-bun-0.35-repro
(
cd docs/reproductions/sharp-bun-035
bun install
bun run repro
) > scratch/sharp-bun-0.35-repro/local-output.txt 2>&1
Optional Linux container check:
docker run --rm \
-v "$PWD/docs/reproductions/sharp-bun-035:/repro" \
-w /repro \
oven/bun:1.3.14 \
sh -lc 'bun install && bun run repro' \
> scratch/sharp-bun-0.35-repro/linux-container-output.txt 2>&1