Skip to content

chore: prepare release v0.19.0 - #2024

Merged
danbugs merged 2 commits into
mainfrom
chore-prepare-release-v0.19.0
Nov 4, 2026
Merged

danbugs merged 2 commits into
mainfrom
chore-prepare-release-v0.19.0

Conversation

@danbugs

@danbugs danbugs commented Nov 4, 2026 •

Copy link
Copy Markdown
Contributor

Prepares the v0.19.0 release per docs/how-to-make-releases.md (the Cargo.toml version and CHANGELOG steps). The tag and GitHub release are cut after this merges.

  • Bump the workspace version 0.18.0 → 0.19.0, and the internal hyperlight-* dependency version requirements with it.
  • Roll the CHANGELOG [Prerelease] section into [v0.19.0], add a fresh empty [Prerelease], and update the compare-link footer ([v0.19.0] added; [Prerelease] now compares from v0.19.0).
  • Sync the root Cargo.lock and src/tests/rust_guests/Cargo.lock to the new versions (workspace-only; no other dependencies touched).
  • Drop a stray .heap_size(8 << 20) call in the scratch_allocated_bytes test: Remove the legacy heap region from snapshots #1968 removed SandboxBuilder::heap_size, but Expose how much scratch a sandbox has allocated #2019's test (which landed separately) still called it, so main stopped compiling its tests once both merged. Folding the one-line fix in here so the release compiles.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

No active review issues block the v0.19.0 version and release-note updates.

No open issues 🎉

What changed in this PR

Prepares Hyperlight’s workspace packages and release notes for v0.19.0. Tagging and publishing the GitHub release remain post-merge steps.

Changes:

  • Sets the workspace version and internal dependency requirements to 0.19.0.
  • Synchronizes both lockfiles without changing third-party dependencies.
  • Finalizes the v0.19.0 changelog section, adds an empty Prerelease section, and updates comparison links.
File Description
src/​tests/​rust_guests/​Cargo.lock Aligns test-guest workspace packages with v0.19.0.
CHANGELOG.md Defines the dated v0.19.0 release section and comparison links.
Cargo.toml Sets workspace and internal dependency versions to v0.19.0.
Cargo.lock Aligns root workspace packages with v0.19.0.

Review effort: Balanced

ludfjig
ludfjig previously approved these changes Nov 4, 2026
Bump the workspace version from 0.18.0 to 0.19.0 (and the internal
hyperlight-* dependency versions with it), roll the CHANGELOG's
[Prerelease] section into [v0.19.0] with a fresh empty [Prerelease] and
the compare-link footer, and sync the root and rust_guests Cargo.lock
files to match.  Follows docs/how-to-make-releases.md; the tag is cut
after this merges.

Signed-off-by: danbugs <danilochiarlone@gmail.com>
@danbugs
danbugs force-pushed the chore-prepare-release-v0.19.0 branch from ea60906 to 2e8aa2f Compare November 4, 2026 19:06
@danbugs danbugs added the C-deps For PRs that update dependencies or related components label Nov 4, 2026
ludfjig
ludfjig previously approved these changes Nov 4, 2026
#1968 removed SandboxBuilder::heap_size (and set_heap_size/get_heap_size),
but the scratch_allocated_bytes_counts_written_pages test added by #2019
still called it, so main stopped compiling its tests once both landed —
which is why clippy and miri fail on every PR.  Drop the .heap_size(8 << 20)
line; the test already sizes scratch with .scratch_size(16 << 20).

Signed-off-by: danbugs <danilochiarlone@gmail.com>
@danbugs danbugs added the S-needs-goldens Regenerate snapshot golden fixtures label Nov 4, 2026
@danbugs danbugs removed the S-needs-goldens Regenerate snapshot golden fixtures label Nov 4, 2026
@hyperlight-gh-bot

Copy link
Copy Markdown

Benchmark Results

Measured commit: df85b91797a2
Baseline commit: 94071f4baef0

kvm / amd (Linux) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

decode_vec_bytes_copy encode_control
375.17 µs (➖ 1.01x faster)
byte_chunks 775.65 ns (➖ 1.00x slower)
vec_bytes 579.98 ns (➖ 1.01x faster)

payload_allocation

slot_pool_segmented
65536 142.16 ns (➖ 1.00x slower)
262144 520.98 ns (➖ 1.57x faster)

sandboxes

create_initialized_and_drop
medium 13.36 ms (➖ 1.03x slower)

slot_pool

alloc_dealloc_4096 alloc_dealloc_128 alloc_dealloc_1500
7.71 ns (➖ 1.01x faster) 7.73 ns (➖ 1.00x slower) 7.67 ns (➖ 1.01x faster)

snapshot_files

load_snapshot_unverified
small 106.34 µs (➖ 1.08x slower)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
65536 1.93 µs (➖ 1.09x faster) 2.05 µs (➖ 1.08x slower)
262144 7.16 µs (➖ 1.19x faster) 7.21 µs (➖ 1.02x faster)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
8192 1.07 µs (➖ 1.06x slower) 1.05 µs (➖ 1.04x slower)
65536 6.15 µs (➖ 1.03x faster) 6.21 µs (➖ 1.04x faster)
262144 27.16 µs (➖ 1.00x faster)
kvm / intel (Linux) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

decode_vec_bytes_copy encode_control
651.30 µs (➖ 1.01x faster)
byte_chunks 686.68 ns (➖ 1.01x slower)
vec_bytes 501.37 ns (➖ 1.02x faster)

payload_allocation

slot_pool_segmented
65536 153.87 ns (➖ 1.00x faster)
262144 493.09 ns (➖ 1.00x slower)

sandboxes

create_initialized_and_drop
medium 14.54 ms (➖ 1.02x faster)

slot_pool

alloc_dealloc_4096 alloc_dealloc_128 alloc_dealloc_1500
6.77 ns (➖ 1.00x faster) 6.77 ns (➖ 1.00x faster) 6.76 ns (➖ 1.00x faster)

snapshot_files

load_snapshot_unverified
small 47.75 µs (➖ 1.00x faster)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
65536 2.13 µs (➖ 1.02x slower) 2.13 µs (➖ 1.00x slower)
262144 7.52 µs (➖ 1.00x slower) 7.52 µs (➖ 1.01x slower)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
8192 711.97 ns (➖ 1.00x slower) 712.06 ns (➖ 1.03x faster)
65536 7.02 µs (➖ 1.01x faster) 6.99 µs (➖ 1.01x faster)
262144 30.08 µs (➖ 1.02x slower)
mshv3 / amd (Linux) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

decode_vec_bytes_copy encode_control
339.38 µs (➖ 1.27x slower)
byte_chunks 942.87 ns (➖ 1.04x faster)
vec_bytes 727.00 ns (➖ 1.01x slower)

payload_allocation

slot_pool_segmented
65536 237.79 ns (➖ 1.23x slower)
262144 739.80 ns (➖ 1.01x slower)

sandboxes

create_initialized_and_drop
medium 64.84 ms (➖ 1.05x slower)

slot_pool

alloc_dealloc_4096 alloc_dealloc_128 alloc_dealloc_1500
9.50 ns (➖ 1.00x faster) 9.52 ns (➖ 1.00x faster) 9.62 ns (➖ 1.00x slower)

snapshot_files

load_snapshot_unverified
small 109.80 µs (➖ 1.05x slower)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
65536 2.23 µs (➖ 1.01x faster) 2.41 µs (➖ 1.02x faster)
262144 10.05 µs (➖ 1.04x slower) 10.66 µs (➖ 1.08x faster)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
8192 1.25 µs (➖ 1.03x slower) 1.22 µs (➖ 1.05x faster)
65536 8.32 µs (➖ 1.19x faster) 8.35 µs (➖ 1.16x faster)
262144 36.07 µs (➖ 1.06x faster)
mshv3 / intel (Linux) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

decode_vec_bytes_copy encode_control
655.13 µs (➖ 1.18x faster)
byte_chunks 916.02 ns (➖ 1.03x faster)
vec_bytes 654.97 ns (➖ 1.01x faster)

payload_allocation

slot_pool_segmented
65536 252.91 ns (➖ 1.03x faster)
262144 720.55 ns (➖ 1.07x slower)

sandboxes

create_initialized_and_drop
medium 82.12 ms (➖ 1.00x slower)

slot_pool

alloc_dealloc_4096 alloc_dealloc_128 alloc_dealloc_1500
8.72 ns (➖ 1.00x slower) 8.69 ns (➖ 1.00x faster) 8.70 ns (➖ 1.01x faster)

snapshot_files

load_snapshot_unverified
small 54.52 µs (➖ 1.01x faster)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
65536 2.33 µs (➖ 1.01x slower) 2.28 µs (➖ 1.02x faster)
262144 7.96 µs (➖ 1.00x slower) 8.01 µs (➖ 1.01x faster)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
8192 907.31 ns (➖ 1.00x slower) 886.08 ns (➖ 1.03x faster)
65536 7.45 µs (➖ 1.01x faster) 7.53 µs (➖ 1.00x slower)
262144 40.83 µs (➖ 1.04x slower)
hyperv-ws2025 / amd (Windows) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

decode_vec_bytes_copy encode_control
2.09 ms (➖ 1.08x slower)
byte_chunks 1.19 µs (➖ 1.00x faster)
vec_bytes 789.72 ns (➖ 1.01x slower)

payload_allocation

slot_pool_segmented
65536 230.11 ns (➖ 1.00x faster)
262144 786.84 ns (➖ 1.03x faster)

sandboxes

create_initialized_and_drop
medium 11.12 ms (➖ 1.04x faster)

slot_pool

alloc_dealloc_4096 alloc_dealloc_128 alloc_dealloc_1500
10.05 ns (➖ 1.08x faster) 10.01 ns (➖ 1.05x faster) 10.02 ns (➖ 1.02x faster)

snapshot_files

load_snapshot_unverified
small 795.66 µs (➖ 1.04x slower)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
65536 2.29 µs (➖ 1.12x faster) 2.60 µs (➖ 1.08x slower)
262144 9.23 µs (➖ 1.01x slower) 9.26 µs (➖ 1.01x slower)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
8192 1.23 µs (➖ 1.11x faster) 1.22 µs (➖ 1.06x faster)
65536 8.79 µs (➖ 1.05x faster) 8.79 µs (➖ 1.04x faster)
262144 43.84 µs (➖ 1.02x slower)
hyperv-ws2025 / intel (Windows) (➖ stable)

No benchmark improved or regressed.

Benchmark Results

function_call_codec

decode_vec_bytes_copy encode_control
3.24 ms (➖ 1.10x faster)
byte_chunks 1.17 µs (➖ 1.04x faster)
vec_bytes 776.70 ns (➖ 1.03x faster)

payload_allocation

slot_pool_segmented
65536 211.83 ns (➖ 1.00x slower)
262144 736.15 ns (➖ 1.02x faster)

sandboxes

create_initialized_and_drop
medium 13.41 ms (➖ 1.00x faster)

slot_pool

alloc_dealloc_4096 alloc_dealloc_128 alloc_dealloc_1500
10.01 ns (➖ 1.00x faster) 9.69 ns (➖ 1.00x slower) 9.62 ns (➖ 1.00x faster)

snapshot_files

load_snapshot_unverified
small 637.16 µs (➖ 1.04x faster)

virtq_readonly

slot_pool_segmented slot_pool_segmented_fragmented
65536 2.52 µs (➖ 1.10x slower) 2.39 µs (➖ 1.06x slower)
262144 7.54 µs (➖ 1.01x faster) 7.69 µs (➖ 1.01x slower)

virtq_readwrite

slot_pool_segmented slot_pool_segmented_fragmented
8192 1.09 µs (➖ 1.03x slower) 1.07 µs (➖ 1.08x faster)
65536 8.21 µs (➖ 1.01x faster) 8.27 µs (➖ 1.01x slower)
262144 49.05 µs (➖ 1.05x slower)

Reported by cargo ci bench-report --candidate run:41896641184 --config-file bench_report.toml.

@danbugs
danbugs enabled auto-merge (squash) November 4, 2026 20:16
@danbugs
danbugs merged commit a030884 into main Nov 4, 2026
307 of 354 checks passed
@danbugs
danbugs deleted the chore-prepare-release-v0.19.0 branch November 4, 2026 22:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

C-deps For PRs that update dependencies or related components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants