Repository navigation
Releases: hyperlight-dev/hyperlight
Releases · hyperlight-dev/hyperlight
Release list
Latest prerelease from main branch
What's Changed
Added
- Namespaced application metadata on immutable snapshots.
- Guest paging operations and AArch64 system-register macros in
hyperlight-guest. - Per-direction virtqueue configuration through
SandboxConfigurationand
SandboxBuilder, with allocations included in scratch sizing. - Shared virtqueue framing with a 12-byte
MsgHeaderand external byte values. ExternalValueSourceimplementations forRecvChainandSegments.- Producer batch completion without notification and segmented payload
assembly and extraction without flattening.
Changed
Sandboxis the primary initialized sandbox type.MultiUseSandboxremains
as a deprecated alias.Sandboxlives in the privatesandbox::initializedmodule and is reached
throughhyperlight_host::Sandboxorhyperlight_host::sandbox::Sandbox.
sandbox::initialized_multi_useremains as a deprecated public path.- C guests may omit
c_guest_dispatch_functionwhen they do not need custom
fallback dispatch. - Support overriding the guest log level when building or restoring initialized
snapshots. - Expose C guest
ByteChunksvalues as pointer and length arrays. - Return typed
hl_ReturnValueobjects from C guest functions through
hl_result_from_*constructors. - Guest tracing skips its per-call and per-callsite work while the guest log
level isOFF.hyperlight_guest_tracing::is_trace_enabledreports whether
the configured level is aboveOFFrather than whether the tracing state was
allocated. - Breaking: Virtqueue rings and pools occupy host-owned scratch before page
tables. Snapshots use ABI 5 and config schema v3. Existing snapshots must be
regenerated. - Host virtqueue access uses checked copies and atomics across mapped scratch.
Snapshot admission checks geometry, canonical rings, and distinct, aligned
H2G pool slots.
Consumers validate descriptors and payload accesses during use. - Virtqueue producers use concrete
SlotPoolallocation andBufferLease
ownership.BufferMapsupplies complete owners exposing initialized bytes. VirtqProducer::resetandGuestContext::prepare_snapshotare unsafe.
Peers must stay stopped with no live consumer-side chain handles until
their consumers are reset or replaced.ChainBuilder::build()allocates readable and writable requests.
writable_avail()reserves available upper-tier slots within the descriptor
budget. It may add zero slots to a nonempty chain.- Require guest logs and all host and guest function calls to use virtqueues.
- Keep registered Rust guest return values typed until transport encoding so
external byte results avoid intermediate FlatBuffer copies. - Store canonical virtqueue rings in versioned OCI transport layers. Config v3
rejects snapshots without transport state. - Running snapshots checkpoint dirty virtqueues before capture. Ordinary calls
keep their deferred result path. - Reject snapshot capture while guest-owned transport buffers are retained.
- Use the reclaimed stack pages to raise the default G2H and H2G pools to 12
and 8 pages. hyperlight_guest_bin::exception::arch, previously available on
amd64 only, has been deprecated in favour of new
architecture-independent exception handling hooks. The new
interfaces are significantly more liminited, but more portable; they
will be extended in the future.- MSHV: vCPU creation reads the partition's XSAVE format once. This removes
one hypercall from every restore.
Removed
RunPooland the run-specificAllocError::InvalidAlignvariant.- Remove legacy stack I/O, its
GuestHandlemethods, and its sandbox
configuration and builder options. - Embedded byte payload tables and their value-union variants.
Fixed
- AMD64 exception handlers clear the direction flag before calling Rust.
- Linear-time segment consumption for fragmented virtqueue messages.
- Allow reclaimed virtqueue completions to span multiple ring reuse cycles.
- Virtqueue consumers return errors when payload copies or runtime bookkeeping
cannot be allocated. - Use a 16 KiB-aligned default scratch size for Apple Silicon compatibility.
- Guest virtqueue copies reject overlapping buffers before accessing memory.
- Keep sandboxes usable after an H2G request exceeds available virtqueue capacity.
- Snapshot checkpoints ignore idle cancellation and clear partial abort state.
- Keep sandboxes usable when G2H calls exhaust reply capacity.
- Reject incompatible transport snapshots before changing sandbox state.
- Allow guest host-return conversions to call or log to the host.
Full Changelog (excl. dependencies)
- Fix crates.io publish detection by @jsturtevant in #1781
- Update community meetings to Monday's by @jsturtevant in #1779
- perf(snapshot): write the guest memory blob sparsely by @jprendes in #1788
- docs: add external byte stream proposal by @andreiltd in #1791
- docs: add HIP 0001 ring buffer proposal for Hyperlight I/O by @andreiltd in #1112
- docs: clarify host function access control in security.md by @JM00NJ in #1799
- feat: add external byte codecs by @andreiltd in #1792
- Fix ARM workflow runner routing by @simongdavies in #1814
- plumb
max_guest_log_levelthroughMultiUseSandbox::from_snapshotby @sethryanrollins in #1699 - Fix unused sandbox test import on ARM64 by @simongdavies in #1812
- Fix metrics test cancellation race by @simongdavies in #1816
- fix: use checked arithmetic in push_buffer (defense in depth) by @JM00NJ in #1820
- ci: add fuzz_push_pop_buffer to the CI fuzzing workflow by @JM00NJ in #1822
- feat: support guest log level overrides for initialized snapshots by @jprendes in #1833
- perf: skip guest tracing work while the log level is off by @jprendes in #1840
- fix: use try_into instead of as u64 cast in push_buffer by @JM00NJ in #1825
- feat: add virtqueue transport foundations by @andreiltd in #1793
- fix: adjust scratch size for benchmarks by @andreiltd in #1847
- feat: implement virtio based host-guest communication by @andreiltd in #1794
- ci: cut Miri test time from 16 minutes to 90 seconds by @jprendes in #1859
- Make ELF loading respect program header virtual addresses for non-PIE binaries by @cshung in #1530
- Add API for Snapshot metadata by @ludfjig in #1860
- Comment benchmark results on pull requests by @jprendes in #1529
- Map exact page-rounded lengths in simpleguest by @ludfjig in #1844
- Rename MultiUseSandbox to Sandbox by @jprendes in #1866
- [hip] Incremental snapshots by @ludfjig in #1823
- docs: rework virtual queue communication document by @andreiltd in #1869
- vmem: Add support for lazily zero-initialized memory regions by @syntactically in #1873
- vmem: Add function for modifying mappings in-place by @syntactically in #1874
- Weakly link c_guest_dispatch_function by @ludfjig in #1848
- vmem: Add stronger tlb invalidation barrier by @syntactically in #1876
- ci: redirect fuzzer stdout to /dev/null by @andreiltd in #1881
- fix: clear DF flag before calling exception handler by @andreiltd in #1882
- Fix failing nightly test due to missing guest binary by @ludfjig in #1885
- fix: Make the gdb feature a no-op in release builds. by @ludfjig in #1886
- ci: balance runner pools across vendors and persist fuzz corpus by @simongdavies in #1838
- refactor: share guest paging primitives by @andreiltd in #1889
- Compare pull requests against the right benchmark baseline by @jprendes in #1893
- Revert sparse snapshot blob writes (#1788) by @danbugs in #1898
- Compare pull requests against a baseline measured on the same machine by @jprendes in #1894
- feat(aarch64): add WHP backend for ARM64 Windows by @cshung in #1638
- Run Miri once per architecture, on the hosted runners by @jprendes in #1900
- Speed up full-window MSR restore audit by @jprendes in #1905
- Make sccache read-only outside main by @ludfjig in https://github.com/hyper...
Release v0.17.0
What's Changed
Added
- macOS/Apple Silicon support using Hypervisor.framework (single-address-space backend) by @syntactically in #1674
SandboxBuilder, the entry point for creating a sandbox. It gathers machine configuration, host functions, init data and memory mappings, then builds aMultiUseSandboxfrom a guest binary on disk, a guest binary in memory, or a snapshot by @jprendes in #1725MultiUseSandbox::status(), which returnsSandboxStatusfor inspecting sandbox lifecycle state (poisoned, unrecoverable) by @ludfjig in #1727- Support WIT source inputs directly in
host_bindgen!/guest_bindgen!component bindgen macros by @andreiltd in #1589
Changed
- Breaking: Guest MSR state is now saved and restored across snapshots.
SandboxConfiguration::guest_msrsdeclares the MSRs a guest depends on: declared MSRs are captured in a snapshot and restored, while every other MSR resets to a clean default. On KVM the guest may only read or write declared MSRs, on MSHV and WHP this is not enforced by @ludfjig in #991 - Breaking: Filesystem paths are now represented using
PathBuf.GuestBinary::FilePathnow stores aPathBufinstead of aString, andMultiUseSandbox::generate_crashdump_to_diracceptsInto<PathBuf>instead ofInto<String>. Callers passing aStringtoGuestBinary::FilePathmust convert it using.into()by @midsterx in #1652 - Breaking:
GuestBinary::Bufferowns its bytes as aVec<u8>, soGuestBinaryno longer borrows and carries no lifetime parameter by @jprendes in #1760 - Deprecate
MultiUseSandbox::poisonedin favor ofMultiUseSandbox::status().is_poisoned()by @ludfjig in #1727 MultiUseSandbox::restorehas been made more flexible and now accepts snapshots from any guest binary or memory layout when host functions are compatible by @ludfjig in #1728- Certain fixed guest addresses were changed on AArch64 to more easily accommodate 16k pages without wasting memory. Snapshots taken from sandboxes using the old addresses will not be loadable by new hyperlight versions by @syntactically in #1674
- Improvements to component bindgen: expose fallibility of host API calls, properly track positivity/negativity, disambiguate chains of associated types, support reading WAT text components by @syntactically in #1724, #1723, #1721, and #1732
Removed
Fixed
- Improved snapshot/OCI validation, rejecting malformed metadata and non-regular artifact files during load by @ludfjig in #1668
- Fix RSS peak on Windows by replacing scratch zeroing with a fresh allocation on restore by @danbugs in #1765
- Mark a sandbox unrecoverable in rare cases when snapshot restore fails while updating its VM mappings by @ludfjig in #1727
- Fix symbol resolution in guest core dumps for sandboxes created from snapshots by @ludfjig in #1618
- Fix dynamic mapping ownership on unmap failure by @ludfjig in #1675
- Reset XCR0 during x86 snapshot restore by @ludfjig in #1718
- Reseed guest libc
rand()andrandom()after restoring a snapshot to avoid multiple sandboxes sharing PRNG state by @ludfjig in #1667 - Validate ELF program headers in
ElfInfo::new()to prevent host process abort from malformed guest binaries. PT_LOAD segments are now bounds-checked,base_va/va_sizeare stored as fields, andload_at()uses fully checked arithmetic by @danbugs
Full Changelog (excl. dependencies)
- Adds optional repo variables for job timeout values by @simongdavies in #1600
- Fix CI caching and parameterize workflows by arch for future aarch64 by @ludfjig in #1597
- feat(ci): add mozilla sccache action by @andreiltd in #1580
- feat: support WIT source inputs in component bindgen macro by @andreiltd in #1589
- update PR validation and daily runs to reduce PR dependance on ARM64 runners by @simongdavies in #1603
- Automate removal of the ready-for-review label by @simongdavies in #1568
- Add snapshot golden tests by @ludfjig in #1446
- make sure nightly job failure adds release blocker label by @simongdavies in #1606
- PR label management needs PR write permission by @simongdavies in #1608
- Review label management by @simongdavies in #1610
- Rewrite copilot instructions by @ludfjig in #1636
- Disable arm runners since unavailable by @ludfjig in #1646
- Fix musl error assertion by @ludfjig in #1653
- Support core dump on snapshots created from snapshot/disk by @ludfjig in #1618
- feat(virtq): add virtio-villain inspired packed virtq coverage by @andreiltd in #1634
- Improve snapshot/oci validation by @ludfjig in #1668
- Fix bad state on unmap failure by @ludfjig in #1675
- Prevent MSRs from leaking across calls to
MultiuseSandbox::restoreby @ludfjig in #991 - Revert "Disable arm runners since unavailable (#1646)" by @syntactically in #1692
- fix: use PathBuf instead of String for guest binary and crash dump paths by @midsterx in #1652
- Reset xcr0 on restore by @ludfjig in #1718
- Minor quality-of-life improvements to component test/debug infrastructure by @syntactically in #1720
- Fix a couple of bugs in the guest component bindgen by @syntactically in #1732
- [hyperlight_component_util] Properly disambiguate chains of associated types by @syntactically in #1721
- [hyperlight_component_util] Properly track positivity/negativity by @syntactically in #1723
- [hyperlight_component_util] Expose the fallibility of calls to the host API by @syntactically in #1724
- Simplify GDB memory access by borrowing sandbox memory manager by @ludfjig in #1736
- Add initial single-sandbox-executing-at-a-time support for Hypervisor.framework by @syntactically in #1674
- Reseed libc rng on snapshot-restore by @ludfjig in #1667
- Add SandboxBuilder by @jprendes in #1725
- Introduce Unrecoverable sandbox state by @ludfjig in #1727
- Use short-form license pragmas by @yoshuawuyts in #1750
- Remove obsolete snapshot compatibility paths by @ludfjig in #1715
- Use SandboxBuilder across examples, tests and docs by @jprendes in #1746
- Correct deprecated-since attribute by @ludfjig in #1761
- Relax layout requirements for MultiUseSandbox::restore by @ludfjig in #1728
- fix(restore): replace scratch zero with fresh allocation on Windows by @danbugs in #1765
- Construct a SandboxBuilder from its guest source by @jprendes in #1760
- docs: add release-blocker resolution step to release checklist by @danbugs in #1773
- Cache MSRs that should be reset in default case by @ludfjig in #1772
- Batch register restore on MSHV and WHP by @ludfjig in #1774
- Avoid Cargo cache cleanup races on macOS by @ludfjig in #1777
Full Changelog (dependencies)
- chore(deps): bump actions/cache from 5.0.5 to 6.1.0 by @dependabot[bot] in #1598
- chore(deps): bump actions-rust-lang/setup-rust-toolchain from 1.16.1 to 1.17.0 by @dependabot[bot] in #1582
- chore(deps): bump addr2line from 0.2...
Release v0.16.0
What's Changed
Added
- Initial aarch64/KVM guest and host support, including memory layout, virtual memory operations, exception handlers, MMIO exits, register handling, and CI workflows by @syntactically in #1474
Snapshot::save,Snapshot::load, andSnapshot::checked_loadfor persisting and loading sandbox snapshots as OCI Image Layout directories by @ludfjig in #1465. Note that Hyperlight is at version 0.x, so a snapshot taken on one version may not load on another version.- Create sandboxes directly from snapshots by @ludfjig in #1459
- Cross-sandbox snapshot restore (snapshots are no longer tied to the sandbox that created them) by @ludfjig in #1499
- Support for WHP no-surrogate mode via
HYPERLIGHT_MAX_SURROGATES=0by @danbugs in #1578 - Wasmtime
flags!macro support for WIT flags types by @jsturtevant in #1327
Changed
- Breaking:
MultiUseSandbox::map_file_cowandUninitializedSandbox::map_file_cowno longer take a label argument. The APIs now accept only(file_path, guest_base)by @simongdavies in #1525. - Updated Rust toolchain to 1.94 by @simongdavies in #1527
- Updated surrogate process to
no_std, reducing overhead of loading unnecessary libraries by @simongdavies in #1533 - Replaced
tracing-logwith nativetracingmacros for guest log forwarding by @cshung in #1500 - MSHV: use VP register page for RIP/RAX writes in
run_vcpufor improved performance by @ludfjig in #1366 - MSHV: skip RIP advance on
VmAction::Haltfast path by @ludfjig in #1476 - Faster
memcpy/memsetimplementations by @ludfjig in #1473
Removed
- Removed the experimental
i686-guest,nanvix-unstable, andguest-counterfeature flags, along with 32-bit (i686) guest support and its page-table/snapshot code paths. Hyperlight guests are now 64-bit only (x86_64 and aarch64) by @simongdavies in #1525.
Fixed
- Fix colliding WIT import names by @jsturtevant in #1562
- Fix empty namespace paths in component codegen by @jsturtevant in #1331
- Fix
nomemconstraint onout32OUT-trap asm by @ludfjig in #1534 - Validate guest address ranges for overlapping regions in
map_regionby @Richard-Durkee in #1464
Full Changelog (excl. dependencies)
- feat(virtq): add packed virtio ring primitives by @andreiltd in #1382
- Refactor SandboxMemoryLayout by @ludfjig in #1455
- Move snapshot file + small reset_vcpu/apply_sregs refactor by @ludfjig in #1456
- mshv: use VP register page for RIP/RAX writes in run_vcpu by @ludfjig in #1366
- Fix broken rust cache by @ludfjig in #1477
- perf(mshv): skip RIP advance on VmAction::Halt fast path by @ludfjig in #1476
- Validate Guest Address Ranges for Overlapping Regions in map_region by @Richard-Durkee in #1464
- Create sandboxes directly from snapshots by @ludfjig in #1459
- Update README by @ludfjig in #1359
- Refactor shared memory host mappings by @ludfjig in #1485
- Remove unused blake3 hash from Snapshot by @ludfjig in #1497
- add file-backed ReadonlySharedMemory by @ludfjig in #1498
- Create inner workspace for rust guests to reduce compile time by @ludfjig in #1501
- refactor: replace tracing-log with native tracing macros for guest log forwarding by @cshung in #1500
- Build rust guests without hyperlight-libc by @ludfjig in #1505
- Allow 0xDEAD exitcode on windows guard page tests by @ludfjig in #1515
- Remove sandbox id (enable cross-sandbox snapshots) by @ludfjig in #1499
- Remove unused mapped_rgns field from memory manager by @ludfjig in #1510
- Faster c mem{cpy,set} by @ludfjig in #1473
- Remove Snapshot's empty regions field by @ludfjig in #1509
- Update surrogate process to nostd, avoid overhead of loading unecessary libraries by @simongdavies in #1533
- Really ensure that required version of cargo hyperlight is installed by @simongdavies in #1535
- refactor: use bytemuck Pod instead of AllValid by @andreiltd in #1542
- Remove i686-guest, nanvix-unstable and guest-counter features by @simongdavies in #1525
- fix(guest): drop nomem from out32 OUT-trap asm by @ludfjig in #1534
- fix: handle empty namespace paths in component codegen by @jsturtevant in #1331
- Fix just-clippyw recipe by @ludfjig in #1561
- fix: add wasmtime flags! macro support for WIT flags types by @jsturtevant in #1327
- feat(virtq): add high-level packed virtqueue producer/consumer api by @andreiltd in #1514
- Save/load snapshot from disk (oci format) by @ludfjig in #1465
- Initial aarch64/KVM support by @syntactically in #1474
- fix: disambiguate colliding WIT import names by @jsturtevant in #1562
- feat(whp): support no-surrogate mode via HYPERLIGHT_MAX_SURROGATES=0 by @danbugs in #1578
- Fix publish workflow to account for recent changes by @jprendes in #1588
- ci: increase benchmark timeout from 30 to 60 minutes by @danbugs in #1590
- Add cpu vendor to snapshots by @ludfjig in #1587
- fix: update tar-headers sysroot path for cargo-hyperlight 0.1.12 by @danbugs in #1593
Full Changelog (dependencies)
- chore(deps): bump cc from 1.2.61 to 1.2.62 by @dependabot[bot] in #1449
- chore(deps): bump tokio from 1.52.2 to 1.52.3 by @dependabot[bot] in #1448
- chore(deps): bump opentelemetry-semantic-conventions from 0.31.0 to 0.32.0 by @dependabot[bot] in #1450
- chore(deps): bump crate-ci/typos from 1.46.0 to 1.46.1 by @dependabot[bot] in #1447
- chore(deps): bump bindgen from 0.71.1 to 0.72.1 by @dependabot[bot] in #1442
- Add Ralph as maintainer by @jsturtevant in #1445
- chore(deps): bump metrics from 0.24.5 to 0.24.6 by @dependabot[bot] in #1453
- chore(deps): bump metrics-util from 0.20.3 to 0.20.4 by @dependabot[bot] in #1457
- chore(deps): bump spin from 0.10.0 to 0.11.0 by @dependabot[bot] in #1458
- chore(deps): bump crate-ci/typos from 1.46.1 to 1.46.2 by @dependabot[bot] in #1460
- chore(deps): bump built from 0.8.0 to 0.8.1 by @dependabot[bot] in #1468
- chore(deps): bump serde_json from 1.0.149 to 1.0.150 by @dependabot[bot] in #1467
- Add @squillace as a code owner by @jsturtevant in #1469
- chore(deps): bump goblin from 0.10.5 to 0.10.6 by @dependabot[bot] in #1471
- chore(deps): bump crate-ci/typos from 1.46.2 to 1.46.3 by @dependabot[bot] in #1470
- chore(deps): bump goblin from 0.10.6 to 0.10.7 by @dependabot[bot] in #1478
- chore(deps): bump rand from 0.9.2 to 0.10.1 by @dependabot[bot] in #1452
- chore(deps): bump OpenTelemetry crate set (opentelemetry, opentelemetry-otlp, opentelemetry_sdk) by @dependabot[bot] in #1463
- chore(deps): ...
Release v0.15.0
What's Changed
Added
#[main]and#[dispatch]macros for type-safe guest entry points by @jprendes in #1384- Implement
RegisterableforMultiUseSandboxby @danbugs in #1392 - Guest compilation support for aarch64 by @ludfjig in #1297
- i686 page tables, snapshot compaction, and copy-on-write support by @danbugs and @ludfjig in #1385
Changed
- Breaking: Replace musl with picolibc as C standard library for guests by @andreiltd in #831
- Replace
nanvix-unstablefeature flag withi686-guestandguest-counterfeatures by @danbugs and @ludfjig in #1385
Fixed
- Fix flaky gdb tests by detaching from inside the breakpoint commands by @ludfjig in #1435
- Fix scratch memory overlapping APIC on i686 by @ludfjig in #1393
- Several WHP fixes by @danbugs in #1388, #1387, and #1386
Full Changelog (excl. dependencies)
- feat: enable guest compilation for aarch64 by @ludfjig in #1297
- feat(clippy): add disallowed macros for asserts in clippy.toml by @simongdavies in #1376
- fix(whp): use NULL DACL for map_file_cow file mapping sections by @danbugs in #1386
- Re-export guest types and error utilities from
hyperlight_guest_binby @jprendes in #1383 - fix(whp): respect IO port access size in IoPortAccess exit handler by @danbugs in #1387
- fix(whp): handle unaligned files in map_file_cow by @danbugs in #1388
- feat: Add
#[main]and#[dispatch]macros for type-safe guest entry points by @jprendes in #1384 - feat(host): implement Registerable for MultiUseSandbox by @danbugs in #1392
- don't let scratch region overlap with kvm apic page by @ludfjig in #1393
- feat(guest): replace musl with picolibc by @andreiltd in #831
- Remove disallowed-macros lint by @simongdavies in #1397
- feat: i686 page tables, snapshot compaction, and CoW (standalone) by @danbugs in #1385
- fix(ci): pin cargo-hyperlight version by @andreiltd in #1413
- Use static picolibc.h file instead of generating it at buildtime by @jprendes in #1407
- fix(ci): force install cargo-hyperlight by @andreiltd in #1420
- Fix picolibc submodule commit by @ludfjig in #1427
- Fix flaky gdb tests by detaching from inside the bp commands by @ludfjig in #1435
- Move libc from hyperlight-guest-bin to hyperlight-libc by @jprendes in #1437
- Add hyperlight-libc to CI publishing by @jprendes in #1439
- Bump crates to 0.15.0 and CHANGELOG entries by @jprendes in #1440
- Fix C headers archive for picolibc by @jprendes in #1438
- Use latest cargo-hyperlight in release workflow by @jprendes in #1441
- Checkout picolibc submodule before building includes.tar.gz by @jprendes in #1443
- Checkout picolibc submodule before publishing crates by @jprendes in #1444
Full Changelog (dependencies)
- chore(deps): bump libc from 0.2.183 to 0.2.184 by @dependabot[bot] in #1358
- chore(deps): bump mshv-ioctls from 0.6.7 to 0.6.8 by @dependabot[bot] in #1361
- chore(deps): bump cc from 1.2.58 to 1.2.59 by @dependabot[bot] in #1363
- chore(deps): bump tokio from 1.50.0 to 1.51.0 by @dependabot[bot] in #1362
- chore(deps): bump tokio from 1.51.0 to 1.51.1 by @dependabot[bot] in #1365
- chore(deps): bump rand from 0.10.0 to 0.10.1 by @dependabot[bot] in #1371
- chore(deps): bump cc from 1.2.59 to 1.2.60 by @dependabot[bot] in #1370
- chore(deps): bump libc from 0.2.184 to 0.2.185 by @dependabot[bot] in #1375
- chore(deps): bump tokio from 1.51.1 to 1.52.0 by @dependabot[bot] in #1378
- chore(deps): bump bitflags from 2.11.0 to 2.11.1 by @dependabot[bot] in #1377
- chore(deps): bump uuid from 1.23.0 to 1.23.1 by @dependabot[bot] in #1396
- chore(deps): bump linkme from 0.3.35 to 0.3.36 by @dependabot[bot] in #1390
- chore(deps): bump actions/github-script from 8 to 9 by @dependabot[bot] in #1367
- chore(deps): bump tokio from 1.52.0 to 1.52.1 by @dependabot[bot] in #1394
- chore(deps): bump framehop from 0.15.0 to 0.16.0 by @dependabot[bot] in #1395
- chore(deps): bump wasmparser from 0.246.1 to 0.246.2 by @dependabot[bot] in #1364
- chore(deps): bump crate-ci/typos from 1.44.0 to 1.45.1 by @dependabot[bot] in #1374
- chore(deps): bump taiki-e/install-action from 2.75.15 to 2.75.20 by @dependabot[bot] in #1411
- chore(deps): bump libc from 0.2.185 to 0.2.186 by @dependabot[bot] in #1412
- chore(deps): bump wasmparser from 0.246.2 to 0.247.0 by @dependabot[bot] in #1405
- chore(deps): bump taiki-e/install-action from 2.75.20 to 2.75.22 by @dependabot[bot] in #1417
- chore(deps): bump cc from 1.2.60 to 1.2.61 by @dependabot[bot] in #1416
- chore(deps): bump blake3 from 1.8.4 to 1.8.5 by @dependabot[bot] in #1418
- chore(deps): bump crate-ci/typos from 1.45.1 to 1.45.2 by @dependabot[bot] in #1421
- chore(deps): bump wasmparser from 0.247.0 to 0.248.0 by @dependabot[bot] in #1426
- chore(deps): bump mshv-ioctls from 0.6.8 to 0.6.9 by @dependabot[bot] in #1429
- Add jsturtevant as maintainer and Move marosset to emeritus by @jsturtevant in #1428
- chore(deps): bump crate-ci/typos from 1.45.2 to 1.46.0 by @dependabot[bot] in #1432
- chore(deps): bump metrics from 0.24.3 to 0.24.5 by @dependabot[bot] in #1430
- chore(deps): bump metrics-util from 0.20.1 to 0.20.3 by @dependabot[bot] in #1433
- chore(deps): bump metrics-exporter-prometheus from 0.18.1 to 0.18.3 by @dependabot[bot] in #1434
- chore(deps): bump tokio from 1.52.1 to 1.52.2 by @dependabot[bot] in #1436
Full Changelog: v0.14.0...v0.15.0
Release v0.14.0
What's Changed
Changed
- Snapshot restore now uses copy-on-write, reducing restore latency by up to 99% (see paging notes) by @syntactically in #1315
map_regiononMultiUseSandboxnow works on Windows by @jsturtevant in #1330- Maximum sandbox memory size increased from ~1 GiB to ~16 GiB by @simongdavies in #1340
Fixed
- Windows surrogate process manager now uses SHA-stamped filenames to avoid conflicts when multiple Hyperlight versions coexist, and surrogate pool size is configurable via
HYPERLIGHT_INITIAL_SURROGATESandHYPERLIGHT_MAX_SURROGATESenvironment variables by @simongdavies in #1339 - Fix a race where guest cancellation could cause a pending TLB flush to be lost by @ludfjig in #1333
- Fix spurious
GuestAbortederrors after repeated cancel+restore cycles by @ludfjig in #1335
Full Changelog (excl. dependencies)
- Remove Linux-only restriction from map_region on MultiUseSandbox by @jsturtevant in #1330
- Defer clearing tlb flush flag by @ludfjig in #1333
- Clear abort buffer on each function call by @ludfjig in #1335
- moving a few more modules to tracing crate from log crate by @vshailesh in #1338
- feat: increase MAX_MEMORY_SIZE from ~1 GiB to ~16 GiB by @simongdavies in #1340
- CoW follow-up work by @syntactically in #1315
- feat: Windows SHA-stamped surrogate filename and configurable surrogate pool size by @simongdavies in #1339
- Try fix 1ES runners by @ludfjig in #1353
- feat: add coverage report generation with cargo-llvm-cov by @dblnz in #1301
- update hypervisor/mod.rs to use trace crate for logging by @vshailesh in #1352
- CoW Developer docs by @jsturtevant in #1305
- Fix formatting error in runs-on by @ludfjig in #1356
Full Changelog (dependencies)
- build(deps): bump opentelemetry-otlp from 0.31.0 to 0.31.1 by @dependabot[bot] in #1332
- Bump gdbstub from 0.7.9 to 0.7.10 by @dependabot[bot] in #1298
- Bump gdbstub_arch from 0.3.2 to 0.3.3 by @dependabot[bot] in #1300
- chore(deps): bump env_logger from 0.11.9 to 0.11.10 by @dependabot[bot] in #1337
- chore(deps): bump hyperlight-dev/ci-setup-workflow from 1.8.0 to 1.9.0 by @dependabot[bot] in #1336
- chore(deps): bump proptest from 1.10.0 to 1.11.0 by @dependabot[bot] in #1344
- chore(deps): bump cc from 1.2.57 to 1.2.58 by @dependabot[bot] in #1349
- chore(deps): bump uuid from 1.22.0 to 1.23.0 by @dependabot[bot] in #1346
- chore(deps): bump wasmparser from 0.245.1 to 0.246.1 by @dependabot[bot] in #1354
- Bump versions to 0.14.0 and add changelog entry by @ludfjig in #1355
- chore(deps): bump buddy_system_allocator from 0.12.0 to 0.13.0 by @dependabot[bot] in #1351
- chore(deps): bump blake3 from 1.8.3 to 1.8.4 by @dependabot[bot] in #1350
- chore(deps): bump addr2line from 0.26.0 to 0.26.1 by @dependabot[bot] in #1348
Full Changelog: v0.13.1...v0.14.0
Release v0.13.1
What's Changed
Fixed
Added
- Hardware interrupt support by @danbugs in #1272
- Copy-on-write file mapping support with labels by @simongdavies in #1320, #1322
- Re-export host functions from the
hyperlight_hostpackage by @jsturtevant in #1314 - Make
map_regionpublic by @jsturtevant in #1293 - Nanvix:
GuestCounterAPI and i686 guest layout behindnanvix-unstablefeature flag by @danbugs in #1270, #1271
Full Changelog (excl. dependencies)
- Move hypervisor/virtual_machine from log to tracing crate by @vshailesh in #1276
- refactor: replace init-paging feature with nanvix-unstable by @danbugs in #1291
- ci: add nanvix-unstable compile checks to CI and Justfile by @danbugs in #1294
- Make map_region public by @jsturtevant in #1293
- feat: use i686 layout for nanvix-unstable guests and make snapshot RWX by @danbugs in #1271
- fix: wrong flag passed to get_memory_access_violation on VmExit::MmioRead by @ludfjig in #1295
- Explicitly error out on host-guest version mismatch by @ludfjig in #1252
- docs: improve guest creation documentation by @jsturtevant in #1254
- Map file cow windows by @simongdavies in #1296
- Update issue template to not require specific format by @ludfjig in #1303
- Move benchmarks to daily cron by @ludfjig in #1302
- feat: enable hyperlight-host compilation for aarch64 by @ludfjig in #1285
- feat: add GuestCounter API behind nanvix-unstable feature flag by @danbugs in #1270
- fix: make map types public by @simongdavies in #1313
- Implement map_file_cow before a sandbox is initialised by @simongdavies in #1320
- feat: add hardware interrupt support by @danbugs in #1272
- Remove windows server 2022 from ci by @ludfjig in #1319
- feat: pass file mapping info via PEB with label support by @simongdavies in #1322
Full Changelog (dependencies)
- Bump docker/build-push-action from 6 to 7 by @dependabot[bot] in #1281
- Bump docker/metadata-action from 5 to 6 by @dependabot[bot] in #1282
- Bump tokio from 1.49.0 to 1.50.0 by @dependabot[bot] in #1274
- Bump libc from 0.2.182 to 0.2.183 by @dependabot[bot] in #1287
- Bump elfcore from 2.0.0 to 2.0.2 by @dependabot[bot] in #1292
- Bump tempfile from 3.26.0 to 3.27.0 by @dependabot[bot] in #1299
- build(deps): bump tracing-subscriber from 0.3.22 to 0.3.23 by @dependabot[bot] in #1312
- build(deps): bump cc from 1.2.56 to 1.2.57 by @dependabot[bot] in #1311
- build(deps): bump once_cell from 1.21.3 to 1.21.4 by @dependabot[bot] in #1308
- build(deps): bump actions/create-github-app-token from 2 to 3 by @dependabot[bot] in #1310
- Re-export host function types through hyperlight_host by @jsturtevant in #1314
- build(deps): bump dorny/paths-filter from 3 to 4 by @dependabot[bot] in #1307
- chore: prepare v0.13.1 release by @danbugs in #1324
Full Changelog: v0.13.0...v0.13.1
Release v0.13.0
What's Changed
Fixed
- fix(windows): prevent WHvDeletePartition race by @ludfjig in #1101
- Fix guest tracing filter by @dblnz in #977
- Add crashdump example and include snapshot/scratch in core dumps by @jsturtevant in #1264
Changed
- Make mem::exe::LoadInfo a struct, instead of an alias by @simongdavies in #1099
- Update snapshots by @simongdavies in #1098
- Breaking:
GuestFunctionDefinition::newnow takes a typed function pointer instead ofusizeby @ludfjig in #1241
Added
- Enable CoW by @syntactically in #1229
Removed
- Remove host function definition regions by @syntactically in #1178
Full Changelog (excl. dependencies)
- Build guest binaries on ubuntu instead of windows by @simongdavies in #1088
- Remove the last vestiges of autodetecting heap/stack size from exes by @simongdavies in #1097
- Remove name from surrogate job obj by @ludfjig in #1092
- fix(windows): prevent WHvDeletePartition race by @ludfjig in #1101
- Remove
HyperlightPEB::code_ptrby @simongdavies in #1100 - Fix clippy by @simongdavies in #1096
- Make mem::exe::LoadInfo a struct, instead of an alias by @simongdavies in #1099
- Update snapshots by @simongdavies in #1098
- Nix updates by @simongdavies in #1095
- ci: simplify check-guest-i686 to only test i686 builds by @danbugs in #1102
- fix runs on for create guest binaries job by @simongdavies in #1103
- Closes #651 : Modify host_bindgen proc_macro to support selecting specific world by @vshailesh in #1020
- Make PR Validation job more parallelized - add some rust caching by @simongdavies in #1104
- Crates.io Trusted publish by @jsturtevant in #1109
- fix: add id-token permission for cargo publish workflow by @jsturtevant in #1110
- ci: add i686 build check for hyperlight-common and hyperlight-guest by @danbugs in #1114
- Additional changes to validate page table setup and multiple sandbox sizes by @simongdavies in #1119
- Unify page table manipulation code between the guest and the host by @simongdavies in #1093
- Move and rename some Vm traits by @ludfjig in #1105
- Don't allocate in exception handler by @jsturtevant in #1125
- Run co-pilot on 1ES KVM runner by @simongdavies in #1126
- Create Sandboxes from Snapshots by @simongdavies in #1127
- fix workflow error: by @simongdavies in #1150
- Fix fuzzing workflow to build guest artifacts before fuzzing by @jsturtevant in #1153
- Remove duplicate GVA-to-GPA translation in sw breakpoint functions by @IrvingMg in #1137
- Don't load .gdbinit files during testing by @ludfjig in #1164
- Remove tracy due to compliation issues by @ludfjig in #1172
- Remove host function definition regions by @syntactically in #1178
- Run shared memory tests with miri by @ludfjig in #1174
- Add debug register abstraction for Vm by @ludfjig in #1180
- Richer errors for HyperlightVm by @ludfjig in #1162
- Optimize shared memory operations by @ludfjig in #1167
- Add scratch region by @syntactically in #1182
- Code refactor to set trace context in run_vcpu function. by @vshailesh in #1184
- Fix fp ABI for C guest by @ludfjig in #1192
- Properly CoW page tables to the scratch region by @syntactically in #1198
- Allow the guest to manage its own stack by @syntactically in #1205
- Run thread-heavy integration tests in serial by @ludfjig in #1216
- Reset more vcpu state on snapshot::restore by @ludfjig in #1120
- Remove
#[ignore]tests and GUEST env var, improve test ergonomics by @ludfjig in #1196 - Refactor hyperlight_component_util to use tracing crate by @vshailesh in #1234
- Avoid stale checked-in Cargo.lock files by @ludfjig in #1197
- refactor: remove dead guest stackoverflow reporting code by @jsturtevant in #1245
- fix: use app-slug output instead of /app API in dependabot workflow by @ludfjig in #1246
- Remove unused file by @jsturtevant in #1248
- fix: flaky gdb test by @jsturtevant in #1247
- Enable CoW by @syntactically in #1229
- Remove old leftover seccomp code by @ludfjig in #1258
- Remove unused cleanup workflow and set artifact retention by @ludfjig in #1257
- Save an unconditional clone of guest parameters for registered guest functions by @ludfjig in #1241
- Don't clone params on benchmark hotpath by @ludfjig in #1253
- Validate guest-writable fields in try_pop_buffer_into before allocation by @ludfjig in #1262
- fix: use checked arithmetic in bounds_check! to prevent overflow bypass by @ludfjig in #1263
- Fix tracing cow changes by @dblnz in #1260
- Fix guest tracing filter by @dblnz in #977
- Add crashdump example and include snapshot/scratch in core dumps by @jsturtevant in #1264
Full Changelog (dependencies)
- Bump actions/cache from 4 to 5 by @dependabot[bot] in #1111
- Bump actions/download-artifact from 6 to 7 by @dependabot[bot] in #1116
- Bump actions/upload-artifact from 5 to 6 by @dependabot[bot] in #1115
- Bump tracing-core from 0.1.35 to 0.1.36 by @dependabot[bot] in #1130
- Bump tracing from 0.1.43 to 0.1.44 by @dependabot[bot] in #1129
- Bump flatbuffers from 25.9.23 to 25.12.19 by @dependabot[bot] in #1133
- Bump serde_json from 1.0.145 to 1.0.146 by @dependabot[bot] in #1134
- Bump serde_json from 1.0.146 to 1.0.147 by @dependabot[bot] in #1136
- Bump tempfile from 3.23.0 to 3.24.0 by @dependabot[bot] in #1135
- Bump signal-hook-registry from 1.4.7 to 1.4.8 by @dependabot[bot] in #1138
- Bump cc from 1.2.50 to 1.2.51 by @dependabot[bot] in #1141
- Bump serde_json from 1.0.147 to 1.0.148 by @dependabot[bot] in #1140
- Bump syn from 2.0.111 to 2.0.112 by @dependabot[bot] in #1143
- Bump proc-macro2 from 1.0.103 to 1.0.104 by @dependabot[bot] in #1139
- Bump tokio from 1.48.0 to 1.49.0 by @dependabot[bot] in #1148
- Bump libc from 0.2.178 to 0.2.179 by @dependabot[bot] in #1146
- Bump crate-ci/typos from 1.40.0 to 1.41.0 by @dependabot[bot] in #1144
- Bump serial_test from 3.2.0 to 3.3.1 by @dependabot[bot] in #1147
- Bump syn from 2.0.112 to 2.0.113 by @dependabot[bot] in #1145
- Bump quote from 1.0...
Release v0.12.0
What's Changed
Fixed
- Fix guest tracing deadlock when exception happens during tracing data serialization by @dblnz in #1066
- Fix StackOverflow produced by guest logging by @dblnz in #1067
- Fix guest call to
haltnot dropping allocated trace data leading to memory leak by @dblnz in #1072 - Update the interrupt handler for 16byte alignment by @jsturtevant in #1037
Added
- Guest function improvements and macros by @jprendes in #851
- Add metric for erroneous vCPU kicks from stale cancellations by @Copilot in #1034
Removed
- Remove outdated
is_supported_platform(useis_hypervisor_presentinstead) and unusedExtraAllowedSyscallby @ludfjig in #1062
Full Changelog (excl. dependencies)
- Organize benchmarks and introduce 'size' dimension by @ludfjig in #1007
- Simplify cancellation by @ludfjig in #1024
- Deduplicate mem mgr and host functions from hv drivers by @ludfjig in #1013
- Move sregs to its own file by @ludfjig in #1043
- Fix cross-compilation of Windows surrogate binary on Linux by @ludfjig in #1045
- Add metric for erroneous vCPU kicks from stale cancellations by @Copilot in #1034
- [trace-dump] Fix
MemFreewriting to file formem_profilefeature by @dblnz in #1051 - Add TraceContext unit tests by @dblnz in #1006
- Add anyhow-inspired error utilities by @jprendes in #1052
- Remove old unused code by @ludfjig in #1062
- Fix guest tracing deadlock when exception happens during tracing data serialization by @dblnz in #1066
- Guest function improvements and macros by @jprendes in #851
- Fix StackOverflow produced by guest logging by @dblnz in #1067
- Update the interrupt handler for 16byte alignment by @jsturtevant in #1037
- fix auto approve script by @simongdavies in #1075
- Fix guest call to
haltnot dropping allocated trace data leading to memory leak by @dblnz in #1072 - Trim
Hypervisortrait by @ludfjig in #924 - Enable 32-bit x86 guest support by @danbugs in #1085
- Use Cargo hyperlight to build rust guests by @jsturtevant in #1084
- update release docs by @simongdavies in #1086
- Release v0.12.0 by @simongdavies in #1087
- Need to publish hyperlight-guest-macro by @simongdavies in #1089
Full Changelog (dependencies)
- Bump cc from 1.2.43 to 1.2.44 by @dependabot[bot] in #1003
- Bump syn from 2.0.108 to 2.0.109 by @dependabot[bot] in #1012
- Bump quote from 1.0.41 to 1.0.42 by @dependabot[bot] in #1015
- Bump tracing-forest from 0.2.0 to 0.3.0 by @dependabot[bot] in #1014
- Bump cc from 1.2.44 to 1.2.45 by @dependabot[bot] in #1018
- Bump syn from 2.0.109 to 2.0.110 by @dependabot[bot] in #1017
- Bump crate-ci/typos from 1.38.1 to 1.39.0 by @dependabot[bot] in #1001
- Bump crate-ci/typos from 1.39.0 to 1.39.1 by @dependabot[bot] in #1022
- Bump crate-ci/typos from 1.39.1 to 1.39.2 by @dependabot[bot] in #1023
- Bump cc from 1.2.45 to 1.2.46 by @dependabot[bot] in #1026
- Bump wasmparser from 0.240.0 to 0.241.2 by @dependabot[bot] in #1025
- Bump actions/checkout from 5 to 6 by @dependabot[bot] in #1035
- Bump signal-hook-registry from 1.4.6 to 1.4.7 by @dependabot[bot] in #1040
- Bump syn from 2.0.110 to 2.0.111 by @dependabot[bot] in #1038
- Bump cc from 1.2.46 to 1.2.47 by @dependabot[bot] in #1039
- Remove unused dependencies by @simongdavies in #1042
- Bump tracing-core from 0.1.34 to 0.1.35 by @dependabot[bot] in #1050
- Bump crate-ci/typos from 1.39.2 to 1.40.0 by @dependabot[bot] in #1048
- Bump wasmparser from 0.241.2 to 0.242.0 by @dependabot[bot] in #1049
- Bump cc from 1.2.47 to 1.2.48 by @dependabot[bot] in #1056
- Bump goblin from 0.10.3 to 0.10.4 by @dependabot[bot] in #1054
- Bump metrics-util from 0.20.0 to 0.20.1 by @dependabot[bot] in #1055
- Bump criterion from 0.7.0 to 0.8.0 by @dependabot[bot] in #1059
- Bump tracing from 0.1.41 to 0.1.43 by @dependabot[bot] in #1058
- Bump metrics from 0.24.2 to 0.24.3 by @dependabot[bot] in #1057
- Bump uuid from 1.18.1 to 1.19.0 by @dependabot[bot] in #1064
- Bump tracing-subscriber from 0.3.20 to 0.3.22 by @dependabot[bot] in #1063
- Bump metrics-exporter-prometheus from 0.17.2 to 0.18.0 by @dependabot[bot] in #1060
- Bump log from 0.4.28 to 0.4.29 by @dependabot[bot] in #1070
- Bump libc from 0.2.177 to 0.2.178 by @dependabot[bot] in #1068
- Bump wasmparser from 0.242.0 to 0.243.0 by @dependabot[bot] in #1069
- Bump linkme from 0.3.33 to 0.3.35 by @dependabot[bot] in #1073
- Bump metrics-exporter-prometheus from 0.18.0 to 0.18.1 by @dependabot[bot] in #1080
- Bump cc from 1.2.48 to 1.2.49 by @dependabot[bot] in #1081
- Bump criterion from 0.8.0 to 0.8.1 by @dependabot[bot] in #1079
Full Changelog: v0.11.0...v0.12.0
Release v0.11.0
What's Changed
Fixed
- Fixes a race condition in killing Sandboxes by @simongdavies in #959
Changed
- Unify register representation across hypervisors by @ludfjig in #907
- Guest tracing improvements to use
tracingcrate by @dblnz in #844 - Serialize guest trace data using flatbuffers by @dblnz in #999
Added
- Add support for mmapped memory in crashdumps and guest debugging by @dblnz in #943
- Add poison state to sandbox by @ludfjig in #931
- Crashdump on demand by @simongdavies in #972
Removed
Full Changelog (excl. dependencies)
- Restructure guest/host error handling by @ludfjig in #868
- Fix join github actions job by @ludfjig in #944
- Adding FFI functions for Hyperlight Guest CAPI by @vshailesh in #950
- Fix unused import error in nightly musl clippy exhaustive check by @Copilot in #948
- Unify register representation across hypervisors by @ludfjig in #907
- Add support for mmapped memory in crashdumps and guest debugging by @dblnz in #943
- Guest tracing improvements to use
tracingcrate by @dblnz in #844 - Remove seccomp by @dblnz in #971
- Crashdump on demand by @simongdavies in #972
- Add poison state to sandbox by @ludfjig in #931
- Fixes a race condition in killing Sandboxes by @simongdavies in #959
- Revert temporary fuzz fix by @ludfjig in #1000
- Allow windows more time to enter guest func for interrupt benchmark by @ludfjig in #1004
- Serialize guest trace data using flatbuffers by @dblnz in #999
Full Changelog (dependencies)
- Bump goblin from 0.10.1 to 0.10.2 by @dependabot[bot] in #936
- Bump cc from 1.2.39 to 1.2.40 by @dependabot[bot] in #935
- Bump crate-ci/typos from 1.37.1 to 1.37.2 by @dependabot[bot] in #934
- Bump windows-sys from 0.61.1 to 0.61.2 by @dependabot[bot] in #939
- Bump crate-ci/typos from 1.37.2 to 1.38.0 by @dependabot[bot] in #938
- Bump windows-result from 0.4.0 to 0.4.1 by @dependabot[bot] in #942
- Bump windows-version from 0.1.6 to 0.1.7 by @dependabot[bot] in #940
- Bump crate-ci/typos from 1.38.0 to 1.38.1 by @dependabot[bot] in #945
- Bump wasmparser from 0.239.0 to 0.240.0 by @dependabot[bot] in #949
- Bump windows from 0.62.1 to 0.62.2 by @dependabot[bot] in #941
- Bump libc from 0.2.176 to 0.2.177 by @dependabot[bot] in #952
- Bump gdbstub from 0.7.7 to 0.7.8 by @dependabot[bot] in #954
- Bump cc from 1.2.40 to 1.2.41 by @dependabot[bot] in #953
- Bump tokio from 1.47.1 to 1.48.0 by @dependabot[bot] in #955
- Bump cfg-if from 1.0.3 to 1.0.4 by @dependabot[bot] in #958
- Bump goblin from 0.10.2 to 0.10.3 by @dependabot[bot] in #960
- Bump syn from 2.0.106 to 2.0.107 by @dependabot[bot] in #961
- Bump rust-embed from 8.7.2 to 8.8.0 by @dependabot[bot] in #962
- Bump opentelemetry-otlp from 0.30.0 to 0.31.0 by @dependabot[bot] in #913
- Bump bitflags from 2.9.4 to 2.10.0 by @dependabot[bot] in #963
- Bump cbindgen from 0.29.0 to 0.29.2 by @dependabot[bot] in #965
- Bump proc-macro2 from 1.0.101 to 1.0.102 by @dependabot[bot] in #968
- Bump syn from 2.0.107 to 2.0.108 by @dependabot[bot] in #967
- Bump heapless from 0.8.0 to 0.9.1 by @dependabot[bot] in #976
- Bump proc-macro2 from 1.0.102 to 1.0.103 by @dependabot[bot] in #975
- Bump proptest from 1.8.0 to 1.9.0 by @dependabot[bot] in #981
- Bump cc from 1.2.41 to 1.2.43 by @dependabot[bot] in #982
- Bump actions/upload-artifact from 4 to 5 by @dependabot[bot] in #980
- Bump actions/download-artifact from 5 to 6 by @dependabot[bot] in #979
- Remove mshv2 feature by @dblnz in #973
- Fixes issues from merge and splits trait to expose only public method by @simongdavies in #994
- Update mshv crates to latest by @simongdavies in #993
- Bump rust-embed from 8.8.0 to 8.9.0 by @dependabot[bot] in #1002
- Bump 0.11.0 in preparation for release and update CHANGELOG.md by @dblnz in #1005
Full Changelog: v0.10.0...v0.11.0