Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .devcontainer/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ RUN SNIPPET="export PROMPT_COMMAND='history -a' && export HISTFILE=/commandhisto

USER $USER

ARG RUST_TOOLCHAIN=1.86
ARG RUST_TOOLCHAIN=1.89

# Install rust
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y \
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/Benchmarks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:

- uses: hyperlight-dev/[email protected]
with:
rust-toolchain: "1.86"
rust-toolchain: "1.89"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/CargoAudit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,8 @@ jobs:
# TODO: Once the runner image is updated to include the necessary tools (without downloading), we can switch to the common workflow.
- uses: dtolnay/rust-toolchain@master
with:
toolchain: "1.86"
toolchain: "1.89"

- uses: rustsec/[email protected]
with:
token: ${{ secrets.GITHUB_TOKEN }}
3 changes: 1 addition & 2 deletions .github/workflows/CargoPublish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,7 @@ jobs:

- uses: hyperlight-dev/[email protected]
with:
rust-toolchain: "1.86"

rust-toolchain: "1.89"
- name: Check crate versions
shell: bash
run: |
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/CreateDevcontainerImage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ env:
IMAGE_NAME: ${{ github.repository }}-devcontainer
USER: vscode
GROUP: vscode
LLVM_VERSION: 17
RUST_TOOLCHAIN_DEFAULT: 1.86
LLVM_VERSION: 18
RUST_TOOLCHAIN_DEFAULT: 1.89
RUST_TOOLCHAIN_FILE: rust-toolchain.toml

# There is a single job in this workflow. It's configured to run on the latest available version of Ubuntu.
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/CreateRelease.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:

- uses: hyperlight-dev/[email protected]
with:
rust-toolchain: "1.86"
rust-toolchain: "1.89"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Expand All @@ -54,7 +54,7 @@ jobs:

- uses: hyperlight-dev/[email protected]
with:
rust-toolchain: "1.86"
rust-toolchain: "1.89"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Expand Down Expand Up @@ -114,7 +114,7 @@ jobs:

- uses: hyperlight-dev/[email protected]
with:
rust-toolchain: "1.86"
rust-toolchain: "1.89"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/copilot-setup-steps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,6 @@ jobs:

- uses: hyperlight-dev/[email protected]
with:
rust-toolchain: "1.86"
rust-toolchain: "1.89"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
2 changes: 1 addition & 1 deletion .github/workflows/dep_build_guest_binaries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ jobs:

- uses: hyperlight-dev/[email protected]
with:
rust-toolchain: "1.86"
rust-toolchain: "1.89"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/dep_fuzzing.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:

- uses: hyperlight-dev/[email protected]
with:
rust-toolchain: "1.86"
rust-toolchain: "1.89"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/dep_rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ jobs:

- uses: hyperlight-dev/[email protected]
with:
rust-toolchain: "1.86"
rust-toolchain: "1.89"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Expand Down Expand Up @@ -100,7 +100,7 @@ jobs:

- uses: hyperlight-dev/[email protected]
with:
rust-toolchain: "1.86"
rust-toolchain: "1.89"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -471,3 +471,4 @@ hyperlight_guest.h

# gdb
.gdbinit
trace/*
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ exclude = [
[workspace.package]
version = "0.9.0"
edition = "2024"
rust-version = "1.86"
rust-version = "1.88"
license = "Apache-2.0"
homepage = "https://github.com/hyperlight-dev/hyperlight"
repository = "https://github.com/hyperlight-dev/hyperlight"
Expand Down
2 changes: 1 addition & 1 deletion Justfile
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ like-ci config=default-target hypervisor="kvm":
{{ if os() == "linux" { "just clippy-exhaustive " + config } else { "" } }}

@# Verify MSRV
./dev/verify-msrv.sh hyperlight-host hyperlight-guest hyperlight-guest-bin hyperlight-common
./dev/verify-msrv.sh hyperlight-common hyperlight-guest hyperlight-guest-bin hyperlight-host hyperlight-component-util hyperlight-component-macro hyperlight-guest-tracing-macro hyperlight-guest-tracing

@# Build and move Rust guests
just build-rust-guests {{config}}
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,7 @@ After having an environment with a hypervisor setup, running the example has the

1. On Linux or WSL, you'll most likely need build essential. For Ubuntu, run `sudo apt install build-essential`. For
Azure Linux, run `sudo dnf install build-essential`.
2. [Rust](https://www.rust-lang.org/tools/install). Install toolchain v1.86 or later.
2. [Rust](https://www.rust-lang.org/tools/install). Install toolchain v1.89 or later.
3. [just](https://github.com/casey/just). `cargo install just` On Windows you also need [pwsh](https://learn.microsoft.com/en-us/powershell/scripting/install/installing-powershell-on-windows?view=powershell-7.4).
4. [clang and LLVM](https://clang.llvm.org/get_started.html).
- On Ubuntu, run:
Expand Down
2 changes: 1 addition & 1 deletion rust-toolchain.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[toolchain]
channel = "1.86"
channel = "1.89"
# Target used for guest binaries. This is an additive list of targets in addition to host platform.
# Will install the target if not already installed when building guest binaries.
targets = ["x86_64-unknown-none", "x86_64-unknown-linux-musl"]
2 changes: 0 additions & 2 deletions src/hyperlight_common/src/clippy.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,4 @@ disallowed-macros = [
{ path = "std::assert", reason = "no asserts in release builds" },
{ path = "std::assert_eq", reason = "no asserts in release builds" },
{ path = "std::assert_ne", reason = "no asserts in release builds" },
{ path = "std::assert_true", reason = "no asserts in release builds" },
{ path = "std::assert_false", reason = "no asserts in release builds" },
]
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ impl<'a> flatbuffers::Follow<'a> for ErrorCode {
type Inner = Self;
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
let b = flatbuffers::read_scalar_at::<u64>(buf, loc);
let b = unsafe { flatbuffers::read_scalar_at::<u64>(buf, loc) };
Self(b)
}
}
Expand All @@ -133,7 +133,9 @@ impl flatbuffers::Push for ErrorCode {
type Output = ErrorCode;
#[inline]
unsafe fn push(&self, dst: &mut [u8], _written_len: usize) {
flatbuffers::emplace_scalar::<u64>(dst, self.0);
unsafe {
flatbuffers::emplace_scalar::<u64>(dst, self.0);
}
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for FunctionCall<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down Expand Up @@ -290,14 +290,14 @@ pub fn size_prefixed_root_as_function_call_with_opts<'b, 'o>(
/// # Safety
/// Callers must trust the given bytes do indeed contain a valid `FunctionCall`.
pub unsafe fn root_as_function_call_unchecked(buf: &[u8]) -> FunctionCall {
flatbuffers::root_unchecked::<FunctionCall>(buf)
unsafe { flatbuffers::root_unchecked::<FunctionCall>(buf) }
}
#[inline]
/// Assumes, without verification, that a buffer of bytes contains a size prefixed FunctionCall and returns it.
/// # Safety
/// Callers must trust the given bytes do indeed contain a valid size prefixed `FunctionCall`.
pub unsafe fn size_prefixed_root_as_function_call_unchecked(buf: &[u8]) -> FunctionCall {
flatbuffers::size_prefixed_root_unchecked::<FunctionCall>(buf)
unsafe { flatbuffers::size_prefixed_root_unchecked::<FunctionCall>(buf) }
}
#[inline]
pub fn finish_function_call_buffer<'a, 'b, A: flatbuffers::Allocator + 'a>(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for FunctionCallResult<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down Expand Up @@ -513,7 +513,7 @@ pub fn size_prefixed_root_as_function_call_result_with_opts<'b, 'o>(
/// # Safety
/// Callers must trust the given bytes do indeed contain a valid `FunctionCallResult`.
pub unsafe fn root_as_function_call_result_unchecked(buf: &[u8]) -> FunctionCallResult {
flatbuffers::root_unchecked::<FunctionCallResult>(buf)
unsafe { flatbuffers::root_unchecked::<FunctionCallResult>(buf) }
}
#[inline]
/// Assumes, without verification, that a buffer of bytes contains a size prefixed FunctionCallResult and returns it.
Expand All @@ -522,7 +522,7 @@ pub unsafe fn root_as_function_call_result_unchecked(buf: &[u8]) -> FunctionCall
pub unsafe fn size_prefixed_root_as_function_call_result_unchecked(
buf: &[u8],
) -> FunctionCallResult {
flatbuffers::size_prefixed_root_unchecked::<FunctionCallResult>(buf)
unsafe { flatbuffers::size_prefixed_root_unchecked::<FunctionCallResult>(buf) }
}
#[inline]
pub fn finish_function_call_result_buffer<'a, 'b, A: flatbuffers::Allocator + 'a>(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,7 +66,7 @@ impl<'a> flatbuffers::Follow<'a> for FunctionCallType {
type Inner = Self;
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
let b = flatbuffers::read_scalar_at::<u8>(buf, loc);
let b = unsafe { flatbuffers::read_scalar_at::<u8>(buf, loc) };
Self(b)
}
}
Expand All @@ -75,7 +75,9 @@ impl flatbuffers::Push for FunctionCallType {
type Output = FunctionCallType;
#[inline]
unsafe fn push(&self, dst: &mut [u8], _written_len: usize) {
flatbuffers::emplace_scalar::<u8>(dst, self.0);
unsafe {
flatbuffers::emplace_scalar::<u8>(dst, self.0);
}
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for GuestError<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down Expand Up @@ -192,14 +192,14 @@ pub fn size_prefixed_root_as_guest_error_with_opts<'b, 'o>(
/// # Safety
/// Callers must trust the given bytes do indeed contain a valid `GuestError`.
pub unsafe fn root_as_guest_error_unchecked(buf: &[u8]) -> GuestError {
flatbuffers::root_unchecked::<GuestError>(buf)
unsafe { flatbuffers::root_unchecked::<GuestError>(buf) }
}
#[inline]
/// Assumes, without verification, that a buffer of bytes contains a size prefixed GuestError and returns it.
/// # Safety
/// Callers must trust the given bytes do indeed contain a valid size prefixed `GuestError`.
pub unsafe fn size_prefixed_root_as_guest_error_unchecked(buf: &[u8]) -> GuestError {
flatbuffers::size_prefixed_root_unchecked::<GuestError>(buf)
unsafe { flatbuffers::size_prefixed_root_unchecked::<GuestError>(buf) }
}
#[inline]
pub fn finish_guest_error_buffer<'a, 'b, A: flatbuffers::Allocator + 'a>(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for GuestLogData<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down Expand Up @@ -288,14 +288,14 @@ pub fn size_prefixed_root_as_guest_log_data_with_opts<'b, 'o>(
/// # Safety
/// Callers must trust the given bytes do indeed contain a valid `GuestLogData`.
pub unsafe fn root_as_guest_log_data_unchecked(buf: &[u8]) -> GuestLogData {
flatbuffers::root_unchecked::<GuestLogData>(buf)
unsafe { flatbuffers::root_unchecked::<GuestLogData>(buf) }
}
#[inline]
/// Assumes, without verification, that a buffer of bytes contains a size prefixed GuestLogData and returns it.
/// # Safety
/// Callers must trust the given bytes do indeed contain a valid size prefixed `GuestLogData`.
pub unsafe fn size_prefixed_root_as_guest_log_data_unchecked(buf: &[u8]) -> GuestLogData {
flatbuffers::size_prefixed_root_unchecked::<GuestLogData>(buf)
unsafe { flatbuffers::size_prefixed_root_unchecked::<GuestLogData>(buf) }
}
#[inline]
pub fn finish_guest_log_data_buffer<'a, 'b, A: flatbuffers::Allocator + 'a>(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for hlbool<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for hldouble<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for hlfloat<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for hlint<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for hllong<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for hlsizeprefixedbuffer<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for hlstring<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for hluint<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ impl<'a> flatbuffers::Follow<'a> for hlulong<'a> {
#[inline]
unsafe fn follow(buf: &'a [u8], loc: usize) -> Self::Inner {
Self {
_tab: flatbuffers::Table::new(buf, loc),
_tab: unsafe { flatbuffers::Table::new(buf, loc) },
}
}
}
Expand Down
Loading
Loading