Skip to content

v0.2.3 — Now With Actual Multi-Arch

Choose a tag to compare

@Bonuspunkt Bonuspunkt released this 27 Feb 17:56
· 7 commits to misstress since this release

The One Where We Actually Shipped Everything

All the things v0.1.0 should have had, plus a painful lesson in cross-compilation.

New since v0.1.0

  • Hot-reload via FileSystemWatcher — Drop files in, the path map rebuilds itself within a second. No restart needed. We solved the hard problem so you can keep deploying by drag-and-drop into a mounted volume like it's an FTP server.
  • FROM scratch image — The entire Docker image is now a single static binary in an empty container. No OS. No shell. No docker exec. No attack surface. Just vibes. ~12 MB total.
  • Multi-arch: amd64 + arm64 — Runs on your server, your Mac, your NAS. We originally promised armv7 too, but .NET Native AOT never actually supported 32-bit ARM. Take it up with Microsoft.
  • Cross-compilation instead of QEMU — We tried emulating arm64 under QEMU on GitHub Actions. The ILC compiler threw InvalidCastException because ARM64 atomics don't emulate correctly. We now cross-compile natively from amd64 with an Alpine aarch64 sysroot. It's faster and it doesn't crash. Revolutionary.
  • Build-only CI workflow — So we can catch Dockerfile disasters before tagging a release. This workflow didn't exist for v0.2.0 through v0.2.2. Those tags were deleted. We don't talk about them.
  • ENABLE_DIRECTORY_BROWSING env var — Set true or 1 to list directory contents. Your security team will love it.

Supported architectures

  • amd64 ✓
  • arm64 ✓
  • armv7 — no, and stop asking

Upgrade from v0.1.0

docker pull ghcr.io/bonuspunkt/casedropper:0.2

Your files will now hot-reload. Your image is now smaller. Your conscience remains your own.