Skip to content

Releases: fullzer4/evalbox

evalbox-v0.2.0

Choose a tag to compare

@github-actions github-actions released this 29 May 19:48
4f39d95

Other

  • code quality improvements

evalbox-sys-v0.2.0

Choose a tag to compare

@github-actions github-actions released this 29 May 19:47
4f39d95

Added

  • ARM64 (aarch64) support, drop min kernel to 6.7

Fixed

  • add backticks to arch names in doc comments (clippy::doc_markdown)

Other

  • granular clippy lints and SAFETY comments

evalbox-sandbox-v0.2.0

Choose a tag to compare

@github-actions github-actions released this 29 May 19:47
4f39d95

Added

  • ARM64 (aarch64) support, drop min kernel to 6.7

Other

  • granular clippy lints and SAFETY comments
  • code quality improvements

evalbox-v0.1.1

Choose a tag to compare

@github-actions github-actions released this 22 Feb 21:25
a29cf17

Execute code like eval(), but safe. No containers, no VMs, no root.


Architecture Overhaul

The entire isolation model was replaced. Namespaces are gone - Landlock v5 is now the primary enforcement
layer.

Before (0.1.0) After (0.1.1)
7 namespace layers + Landlock Landlock v5 + seccomp + rlimits
clone() with CLONE_NEW* flags Plain fork()
pivot_root + bind mounts Landlock filesystem rules
Kernel 5.13+ Kernel 6.12+

Simpler, fewer moving parts, same security guarantees.

What Changed

Isolation

  • Landlock v5 replaces user, PID, network, mount, UTS, and IPC namespaces
  • RLIMIT_DATA (256 MiB) instead of RLIMIT_AS - no longer breaks Go, Java, or V8 runtimes
  • New dedicated rlimits module with CPU, core, and stack limits

Build

  • Nix flake migrated to flake-parts + import-tree (auto-discovery, zero boilerplate)
  • Restricted to x86_64-linux (arm not yet supported)

New

  • Seccomp user notify (SECCOMP_RET_USER_NOTIF) for optional syscall interception
  • SECURITY.md - vulnerability reporting policy
  • CONTRIBUTING.md - dev setup and testing guide
  • Security hardening roadmap

Removed

  • namespace.rs, rootfs.rs - namespace and pivot_root setup
  • nix/lib.nix, nix/checks.nix - replaced by flake-parts modules

Full Changelog: https://github.com/fullzer4/evalbox/blob/main/CHANGELOG.md