Skip to content

Commit 5df873f

Browse files
Update docs for the switch from nightly to stable
1 parent c39af38 commit 5df873f

File tree

5 files changed

+15
-22
lines changed

5 files changed

+15
-22
lines changed

CHANGELOG.md

+3
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
## uefi - [Unreleased]
44

5+
As of this release, the UEFI crates work on the stable channel. This requires
6+
Rust 1.68 or higher.
7+
58
### Added
69

710
- Added the `ComponentName1` and `ComponentName2` protocols. The `ComponentName`

book/src/tutorial/building.md

+7-13
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,18 @@
11
# Building
22

3-
## Nightly toolchain
3+
## Toolchain
44

5-
Rust's nightly toolchain is currently required because uefi-rs uses some
6-
unstable features.
7-
8-
The easiest way to set this up is using a [rustup toolchain file]. In
9-
the root of your repository, add `rust-toolchain.toml`:
5+
In order to compile for UEFI, an appropriate target must be installed. The
6+
easiest way to set this up is using a [rustup toolchain file]. In the root of
7+
your repository, add `rust-toolchain.toml`:
108

119
```toml
1210
[toolchain]
13-
channel = "nightly"
14-
targets = ["x86_64-unknown-uefi"]
11+
targets = ["aarch64-unknown-uefi", "i686-unknown-uefi", "x86_64-unknown-uefi"]
1512
```
1613

17-
Here we have specified the `x86_64-unknown-uefi` target; there are also
18-
`i686-unknown-uefi` and `aarch64-unknown-uefi` targets available.
19-
20-
Note that nightly releases can sometimes break, so you might opt to pin
21-
to a specific release. For example, `channel = "nightly-2022-11-10"`.
14+
Here we have specified all three of the currently-supported UEFI targets; you
15+
can remove some if you don't need them.
2216

2317
## Build the application
2418

template/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ UEFI application developed using `uefi-rs`.
88

99
## File structure
1010

11-
- [`rust-toolchain.toml`](rust-toolchain.toml) sets the nightly channel.
11+
- [`rust-toolchain.toml`](rust-toolchain.toml) adds the UEFI targets.
1212
- [`Cargo.toml`](./Cargo.toml) shows the necessary dependencies.
1313
- [`src/main.rs`](./src/main.rs) has a minimal entry point that
1414
initializes the `uefi-services` crate and exits successfully.

uefi/README.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -49,10 +49,10 @@ For additional information, refer to the [UEFI specification][spec].
4949

5050
## MSRV
5151

52-
The uefi-rs crates currently require some [unstable features].
53-
The nightly MSRV is currently 2022-11-22.
52+
The minimum supported Rust version is currently 1.68, which is the first Rust
53+
release that fully supports all necessary features on the stable channel.
5454

55-
[unstable features]: https://github.com/rust-osdev/uefi-rs/issues/452
55+
In the future, our policy will be to support at least the past two stable releases.
5656

5757
## License
5858

uefi/src/lib.rs

+1-5
Original file line numberDiff line numberDiff line change
@@ -54,11 +54,7 @@
5454
//! - `panic-on-logger-errors` (enabled by default): Panic if a text
5555
//! output error occurs in the logger.
5656
//! - `unstable`: Enable functionality that depends on [unstable
57-
//! features] in the nightly compiler. Note that currently the `uefi`
58-
//! crate _always_ requires unstable features even if the `unstable`
59-
//! feature is not enabled, but once a couple more required features
60-
//! are stabilized we intend to make the `uefi` crate work on the
61-
//! stable channel by default.
57+
//! features] in the nightly compiler.
6258
//! As example, in conjunction with the `alloc`-feature, this gate allows
6359
//! the `allocator_api` on certain functions.
6460
//!

0 commit comments

Comments
 (0)