Releases: hermit-os/loader
Releases · hermit-os/loader
0.5.2
🚀 Features
- UEFI MVP
🐛 Bug Fixes
- Decrease
dev
size to fix building with Rust 1.81.0 - (arch) Unused_unsafe
- (uefi) Migrate away from deprecated
uefi::table::boot
module - (xtask) Update OVMF to
edk2-stable202408-r1
- Don't create ModuleIter twice
- Merge ELF module mapping
- Don't unnecessarily align_down
- Improve the iterator handling
- Give values meaningful names
- Introduce map_range
📚 Documentation
- (readme) Document UEFI setup
Build
- (deps) Update
Cargo.lock
0.5.1
🚀 Features
- Add support for
R_ABS64
andR_GLOB_DAT
relocation types- This adds support for newlib-based position independent executables (PIEs)
- Color log levels
- (uefi) Add post-boot-services allocator
- (xtask) Change dist name for UEFI to
hermit-loader-x86_64.efi
🐛 Bug Fixes
- (x86_64/fdt) Use FdtWriterResult type alias
- (uefi) Unused_imports
- (uefi) Dead_code
- (microvm) Explicitly disable ACPI
- Use
OneShotMutex
instead ofSpinlock
🚜 Refactor
- (uefi) Reorder code
- (arch) Extract enter_kernel
- Extract
BootInfo::save
- Migrate from
exclusive_cell
totake-static
📚 Documentation
- (readme) Remove claim that Hermit loader is only for QEMU
- (readme) Enable command highlighting, remove prompt
- (readme) Update build docs
- (README) Add 64-bit RISC-V QEMU instructions
⚙️ Miscellaneous Tasks
- Run UEFI on all host systems, remove separate UEFI job
- (Cargo.toml) Sort dependencies
- Upgrade to edk2-stable202405
- Upgrade to opensbi-1.5.1
0.5.0
Highlights
- lib: riscv64: use RISC-V SBI 2.0 ratified DBCN write instead of deprecated legacy console write by @luojia65 in #306
- build(deps): bump hermit-entry from 0.9.10 to 0.10.0 by @mkroening in #326
- Uhyve now requires applications to use
hermit = "0.9.0"
- Uhyve now requires applications to use
What's Changed
- use from_{ref,mut} to eliminate casts to pointers by @cagatay-y in #272
- build(deps): update hermit-entry to 0.9.10 by @mkroening in #305
- ci: upgrade OpenSBI to version 1.4 by @mkroening in #312
- fix: clippy by @mkroening in #319
- fix(xtask): disambiguate distribution names by @mkroening in #320
- fix: rename
kernel_{start,end}
toloader_{start,end}
by @mkroening in #323 - feat: modularize console implementation for late UEFI output by @mkroening in #324
New Contributors
Full Changelog: v0.4.6...v0.5.0
0.4.6
Highlights
- Add alloc support by @duanyu-yu in #278
- Create devicetree for x86_64 by @duanyu-yu in #287
- feat: remove NASM by @mkroening in #297
What's Changed
- fix: enable unsafe_op_in_unsafe_fn lint by @mkroening in #288
- fix(x86_64-fc): enable clippy by @mkroening in #289
- fix(xtask): enable clippy for aarch64 by @mkroening in #290
- fix(xtask): enable clippy for x86_64-uefi by @mkroening in #291
- fix(x86_64-fc): fix unaligned reads by @mkroening in #293
- feat(xtask): add ci subcommand by @mkroening in #294
- feat(uefi): read application from file system by @mkroening in #300
New Contributors
- @duanyu-yu made their first contribution in #278
Full Changelog: v0.4.5...v0.4.6
0.4.5
What's Changed
- build(deps): bump cc from 1.0.79 to 1.0.82 by @dependabot in #248
- build(deps): Explicitly enable x86_64/instructions by @mkroening in #249
- build(deps): bump uart_16550 from 0.2.19 to 0.3.0 by @dependabot in #247
- Format imports by @mkroening in #250
- build(deps): update Cargo.lock by @mkroening in #251
- README: Remove qemu64 CPU, add KVM & invtsc by @mkroening in #245
- ci(deps): Enable brew update again by @mkroening in #252
- ci: Rename "Integration Test" to shorter "Run" by @mkroening in #253
- refactor: Replace align macros with align-address crate by @mkroening in #254
- refactor: Update print macros from kernel by @mkroening in #255
- fix: Leave .bss initialization of loader to firmware by @mkroening in #256
- feat: add 64-bit RISC-V support by @mkroening in #246
- fix: remove lib.rs by @mkroening in #257
- feat(riscv64): support guest-loader for kernel initrd by @mkroening in #258
- build(deps): bump log from 0.4.19 to 0.4.20 by @dependabot in #259
- build(deps): bump hermit-entry from 0.9.6 to 0.9.7 by @dependabot in #260
- build(deps): bump anyhow from 1.0.72 to 1.0.75 by @dependabot in #261
- build(deps): bump cc from 1.0.82 to 1.0.83 by @dependabot in #262
- feat: rename RustyLoader to hermit-loader by @mkroening in #265
- build(deps): bump hermit-entry from 0.9.7 to 0.9.9 by @dependabot in #263
- chore: remove GitLab CI config by @mkroening in #264
- build(deps): bump actions/checkout from 3 to 4 by @dependabot in #266
- docs: explain GDB usage by @mkroening in #267
- build(deps): bump x86_64 from 0.14.10 to 0.14.11 by @dependabot in #268
- fix(build.rs): don't recompile build script if features change by @mkroening in #269
- build(deps): bump the uefi group with 2 updates by @dependabot in #270
- Reduce casts to pointers by @cagatay-y in #271
- chore: release version 0.4.5 by @mkroening in #273
New Contributors
- @cagatay-y made their first contribution in #271
Full Changelog: v0.4.4...v0.4.5
v0.4.4
0.4.3
What's Changed
- add Firecracker support
- pass the DeviceTree to the kernel
Full Changelog: v0.4.2...v0.4.3
0.4.2
What's Changed
- Use Qemu's guest loader to support a initrd for aarch64 processors
Full Changelog: v0.4.1...v0.4.2
0.4.1
0.4.0
Breaking
This changes hermit-entry version to 2.
What's Changed
- Upgrade hermit-entry to 0.5.0 by @mkroening in #150
- Change name to RustyLoader by @jounathaen in #142
- Upgrade hermit-entry to 0.6.0 by @mkroening in #151
- Replace loaderlog with log crate by @mkroening in #153
- Move kernel loading to hermit-entry by @mkroening in #152
- build(deps): bump anyhow from 1.0.58 to 1.0.59 by @dependabot in #154
- Remove direct dependency on goblin and plain by @mkroening in #155
- Upgrade hermit-entry to 0.8.0 by @mkroening in #156
- Remove #![feature(maybe_uninit_write_slice)] by @mkroening in #157
- build(deps): bump anyhow from 1.0.59 to 1.0.60 by @dependabot in #159
- Paging: Remove specialization by @mkroening in #158
- Use stable toolchain channel by @mkroening in #160
- xtask: Rename Arch to Target by @mkroening in #161
- Upgrade to hermit-entry version 2 by @mkroening in #145
- Release version 0.4.0 by @mkroening in #162
Full Changelog: v0.3.1...v0.4.0