What's Changed
- Preserve fork checkpoints across runtime restarts by @BinSquare in #1065
- Support one-to-one port ranges in Smolfiles and CLI mappings by @fgrehm in #1066
- Add portable live checkpoints by @BinSquare in #1067
- Warn when a saved registry token has expired instead of surfacing a bare 401 by @BinSquare in #1068
- Serve a browser client on the VNC port so a machine's desktop opens in any browser by @BinSquare in #1070
- Bump the workspace to 1.13.1 by @BinSquare in #1071
- Add low-latency H.264 browser streaming by @BinSquare in #1073
- Support portable checkpoints for image-backed services by @BinSquare in #1076
- Stop typing stalling behind a frame wait and stop held keys repeating twice by @BinSquare in #1077
- fix(fork): resync clone wall clock after restore by @Bnjoroge1 in #1080
- Fix portable checkpoint restore startup by @BinSquare in #1078
- Keep Linux fork sources running by @BinSquare in #1081
- Keep macOS fork sources running by @BinSquare in #1082
- Pin libkrun to the merged continuation commit by @BinSquare in #1083
- Report why a container failed to create and stop the Vulkan injection shadowing image libraries by @BinSquare in #1084
- Keep the VNC session alive when a client announces its clipboard or asks to resize the desktop by @BinSquare in #1085
- Make checkpoint rollback roots safely forkable by @BinSquare in #1087
- Expose the portable checkpoint lifecycle by @BinSquare in #1091
- Accept an aarch64 checkpoint on any host providing the features its guest was given, and name the ones that are missing by @BinSquare in #1101
- Capture a Windows machine's console output so a failed boot leaves a record by @BinSquare in #1102
- Take the machine's storage read-only on shutdown so its filesystem is left clean by @BinSquare in #1100
- Pull a machine's image again when the guest no longer holds it by @BinSquare in #1106
- Document the S3 volume source in machine run's --volume help by @NickyHeC in #1104
- Parallelize direct batch fork admission by @BinSquare in #1103
- Set SSH_AUTH_SOCK for interactive runs so --ssh-agent works with -i/-t by @Qhilm in #1109
- Allow explicit read-only system mounts by @BinSquare in #1110
- Improve host mount performance and coherence by @BinSquare in #1112
- Rewrite the README's em-dash asides by @BinSquare in #1113
- Make branching the primary machine lifecycle by @BinSquare in #1118
- [Public Docs] Point contributors at the docs repository from the README by @NickyHeC in #1092
- Refresh libkrun with snapshot-safe vsock handling by @BinSquare in #1099
- Improve host mount performance and coherence by @BinSquare in #1114
- Fix squashed pack ownership when smolvm runs as root (#1095) by @BinSquare in #1096
- Stop the Vulkan driver injection from shadowing a workload's own libraries by @BinSquare in #1120
- Process virtio-fs requests on parallel queues by @BinSquare in #1121
- Refresh libkrun directory metadata handling by @BinSquare in #1125
- Explain why a branch was refused and show what each machine was branched from by @BinSquare in #1127
- Add staged mounts for metadata-heavy workloads by @BinSquare in #1126
- Make the browser desktop responsive by @BinSquare in #1123
- Run the aarch64 Omarchy desktop on the GPU on macOS hosts by @BinSquare in #1119
- Fix stale serve locks after out-of-band stops by @BinSquare in #1128
- Fix arm64 forks on heterogeneous CPUs by @BinSquare in #1130
- Ship the containerd shim in the Linux release so Kubernetes support is reachable by @BinSquare in #1132
- Build the containerd shim by package name and ship the engine its installer needs by @BinSquare in #1133
- Install the compressed disk templates so pack create works without e2fsprogs by @NickyHeC in #1122
- Serve the VM boot subcommand from the containerd shim so it needs no separate engine binary by @BinSquare in #1136
- Stop the Venus bridge logging on every fence poll and reading scanouts back from unbound or foreign images by @BinSquare in #1137
- Unpack packed layers into a staging directory and rename them into place so a layer directory only ever exists once it is complete by @BinSquare in #1140
- Give the macOS Omarchy desktop a working top bar and clickable browser chrome by @BinSquare in #1138
- Handle agent socket write backpressure by @BinSquare in #1145
- Rebuild the bundled libkrun and macOS virglrenderer from the merged sources by @BinSquare in #1141
- Speed up large OCI image preparation by @BinSquare in #1144
- Bind the guest's /dev/net/tun into VM-grade workloads by @BinSquare in #1146
- Park idle branchpoints until capture by @BinSquare in #1147
- Add a user directive to the Smolfile and a --user flag by @BinSquare in #1148
- Sweep fork-source lock files whose machine is gone instead of leaking one per name by @BinSquare in #1155
- Accept net_backend in a Smolfile so a checked-in file fully describes its networking by @BinSquare in #1156
- Report how the VM process ended when a command fails because it died by @BinSquare in #1154
- Let the Omarchy recipe install a pinned package set and survive a rerun by @BinSquare in #1152
- Bump libkrun to the NVIDIA fence-thread fix and rebuild the Linux blobs by @BinSquare in #1157
- fix: validate local image archive CPU architecture and improve launcher symlink resolution by @Vishv07 in #1117
- Bump the workspace to 1.14.0 by @BinSquare in #1158
New Contributors
Full Changelog: v1.13.0...v1.14.0