Skip to content

Commit

Permalink
Merge pull request #521 from Freax13/merge-master-into-next
Browse files Browse the repository at this point in the history
Merge master into next
  • Loading branch information
Freax13 authored Dec 1, 2024
2 parents 8468914 + 7fa88e9 commit 8ca2ab9
Show file tree
Hide file tree
Showing 20 changed files with 549 additions and 121 deletions.
10 changes: 8 additions & 2 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ jobs:
- nightly
- 1.59
runs-on: ubuntu-latest
env:
# rustup prioritizes environment variables over rust-toolchain.toml files.
RUSTUP_TOOLCHAIN: ${{ matrix.rust }}
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@master
Expand Down Expand Up @@ -53,7 +56,7 @@ jobs:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@nightly
with:
targets: x86_64-unknown-linux-musl, i686-unknown-linux-gnu, thumbv7em-none-eabihf
targets: x86_64-unknown-linux-musl, i686-unknown-linux-musl, thumbv7em-none-eabihf

- run: cargo build

Expand All @@ -69,9 +72,12 @@ jobs:

- name: "Build on non x86_64 platforms"
run: |
cargo build --target i686-unknown-linux-gnu --no-default-features --features nightly
cargo build --target i686-unknown-linux-musl --no-default-features --features nightly
cargo build --target thumbv7em-none-eabihf --no-default-features --features nightly
- run: cargo test --target i686-unknown-linux-musl --no-default-features --features nightly
if: runner.os == 'Linux'

bootloader-test:
name: "Bootloader Integration Test"

Expand Down
5 changes: 3 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ license = "MIT/Apache-2.0"
name = "x86_64"
readme = "README.md"
repository = "https://github.com/rust-osdev/x86_64"
version = "0.15.1"
version = "0.15.2"
edition = "2018"
rust-version = "1.59" # Needed to support inline asm and default const generics

Expand All @@ -28,8 +28,9 @@ rustversion = "1.0.5"
[features]
default = ["nightly", "instructions"]
instructions = []
nightly = [ "const_fn", "step_trait", "abi_x86_interrupt", "asm_const" ]
nightly = ["const_fn", "step_trait", "abi_x86_interrupt", "asm_const"]
abi_x86_interrupt = []
# deprecated, no longer needed
const_fn = []
asm_const = []
step_trait = []
Expand Down
40 changes: 40 additions & 0 deletions Changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,46 @@
- [add `Mapper::clear` to clear any page table entry regardless of the present flag](https://github.com/rust-osdev/x86_64/pull/484)
- [`Mapper::unmap` now also returns the flags of the page ](https://github.com/rust-osdev/x86_64/pull/484)

# 0.15.2 – 2024-11-30

This release is compatible with Rust nightlies starting with `nightly-2024-11-23` (this only applies when the `nightly` feature is used).

## New Features

- [add `GlobalDescriptorTable::limit`](https://github.com/rust-osdev/x86_64/pull/413)
- [constify PhysFrame functions](https://github.com/rust-osdev/x86_64/pull/489)
- [add `size` and `len` for `PageRange`, `PhysFrameRange`, `PageRangeInclusive` and `PhysFrameRangeInclusive`](https://github.com/rust-osdev/x86_64/pull/491)
- [TryFrom implementation for ExceptionVector](https://github.com/rust-osdev/x86_64/pull/506)

## Fixes

- [Only enable instructions on `x86_64`](https://github.com/rust-osdev/x86_64/pull/483)
- [Ensure that Page actually implements Hash](https://github.com/rust-osdev/x86_64/pull/490)
- [fix field order for INVPCID descriptor](https://github.com/rust-osdev/x86_64/pull/508)
- [fix typo in "InvPicdCommand"](https://github.com/rust-osdev/x86_64/pull/509)
- [fix signature of Step::steps_between implementations](https://github.com/rust-osdev/x86_64/pull/513)

## Other Improvements

- [docs: add aliases for `in{,b,w,l}` and `out{,b,w,l}`](https://github.com/rust-osdev/x86_64/pull/474)
- [ci: migrate away from unmaintained actions](https://github.com/rust-osdev/x86_64/pull/478)
- [chore: migrate from legacy `rust-toolchain` to `rust-toolchain.toml`](https://github.com/rust-osdev/x86_64/pull/479)
- [test: replace `x86_64-bare-metal.json` with `x86_64-unknown-none`](https://github.com/rust-osdev/x86_64/pull/477)
- [docs: fix and detect warnings](https://github.com/rust-osdev/x86_64/pull/475)
- [CI: Set `-Crelocation-model=static` in `RUSTFLAGS` for bootloader test job](https://github.com/rust-osdev/x86_64/pull/480)
- [silence warning about cast](https://github.com/rust-osdev/x86_64/pull/482)
- [fix cfg related warnings](https://github.com/rust-osdev/x86_64/pull/485)
- [fix warnings](https://github.com/rust-osdev/x86_64/pull/488)
- [don't use label starting with 1](https://github.com/rust-osdev/x86_64/pull/492)
- [fix testing](https://github.com/rust-osdev/x86_64/pull/495)
- [remove `#![feature(asm_const)]`](https://github.com/rust-osdev/x86_64/pull/496)
- [Remove stabilized const_mut_refs feature](https://github.com/rust-osdev/x86_64/pull/501)
- [Fix clippy warnings](https://github.com/rust-osdev/x86_64/pull/502)
- [fix CI job for building on MSRV](https://github.com/rust-osdev/x86_64/pull/510)
- [gate HandlerFunc behind target_arch = "x86{\_64}"](https://github.com/rust-osdev/x86_64/pull/507)
- [Typo fix in TaskStateSegment comment](https://github.com/rust-osdev/x86_64/pull/504)
- [Minor clarification DescriptorTablePointer::limit comment](https://github.com/rust-osdev/x86_64/pull/503)

# 0.15.1 – 2024-03-19

## New Features
Expand Down
Loading

0 comments on commit 8ca2ab9

Please sign in to comment.