Skip to content

Commit b8d9455

Browse files
committed
doc: streamline changelog
1 parent fb0907c commit b8d9455

File tree

1 file changed

+24
-20
lines changed

1 file changed

+24
-20
lines changed

Diff for: uefi/CHANGELOG.md

+24-20
Original file line numberDiff line numberDiff line change
@@ -11,24 +11,28 @@
1111
- `PcrEvent`/`PcrEventInputs` impl `Align`, `Eq`, and `PartialEq`.
1212
- Added `PcrEvent::new_in_box` and `PcrEventInputs::new_in_box`.
1313
- `VariableKey` impls `Clone`, `Eq`, `PartialEq`, `Ord`, `PartialOrd`, and `Hash`.
14+
- The traits `MemoryMap` and `MemoryMapMut` have been introduced together with
15+
the implementations `MemoryMapRef`, `MemoryMapRefMut`, and `MemoryMapOwned`.
16+
This comes with some changes. Read below. We recommend to directly use the
17+
implementations instead of the traits.
1418

1519
## Changed
1620
- **Breaking:** `uefi::helpers::init` no longer takes an argument.
1721
- The lifetime of the `SearchType` returned from
1822
`BootServices::register_protocol_notify` is now tied to the protocol GUID.
19-
- The traits `MemoryMap` and `MemoryMapMut` have been introduced together with
20-
the implementations `MemoryMapRef`, `MemoryMapRefMut`, and `MemoryMapOwned`.
2123
The old `MemoryMap` was renamed to `MemoryMapOwned`.
2224
- `pub fn memory_map(&self, mt: MemoryType) -> Result<MemoryMap>` now returns
2325
a `MemoryMapOwned`.
2426
- **Breaking:** `PcrEvent::new_in_buffer` and `PcrEventInputs::new_in_buffer`
2527
now take an initialized buffer (`[u8`] instead of `[MaybeUninit<u8>]`), and if
2628
the buffer is too small the required size is returned in the error data.
27-
- **Breaking** Exports of Memory Map-related types from `uefi::table::boot` are
29+
- **Breaking:** The type `MemoryMap` was renamed to `MemoryMapOwned`. `MemoryMap`
30+
is now a trait. Read the [documentation](https://docs.rs/uefi/latest/uefi/) of the
31+
`uefi > mem > memory_map` module to learn more.
32+
- **Breaking:** Exports of Memory Map-related types from `uefi::table::boot` are
2833
now removed. Use `uefi::mem::memory_map` instead. The patch you have to apply
2934
to the `use` statements of your code might look as follows:
3035
```diff
31-
1c1,2
3236
< use uefi::table::boot::{BootServices, MemoryMap, MemoryMapMut, MemoryType};
3337
---
3438
> use uefi::mem::memory_map::{MemoryMap, MemoryMapMut, MemoryType};
@@ -60,7 +64,7 @@
6064
- `Mode` is now `Copy` and `Clone`.
6165
- Added `TryFrom<&[u8]>` for `Time`.
6266

63-
## Changed
67+
## Changed (**BREAKING**)
6468
- `SystemTable::exit_boot_services` is now `unsafe`. See that method's
6569
documentation for details of obligations for callers.
6670
- `BootServices::allocate_pool` now returns `NonZero<u8>` instead of
@@ -104,7 +108,7 @@
104108
- Added `MemoryMap::from_raw`.
105109
- Implemented `Hash` for all char and string types.
106110

107-
## Changed
111+
## Changed (**BREAKING**)
108112
- `DevicePath::to_string` and `DevicePathNode::to_string` now return
109113
out-of-memory errors as part of the error type rather than with an `Option`.
110114

@@ -115,7 +119,7 @@
115119
- Implemented `Index`, `IndexMut`, `get`, and `get_mut` on `MemoryMap`.
116120
- Added `SystemTable::as_ptr`.
117121

118-
## Changed
122+
## Changed (**BREAKING**)
119123
- We fixed a memory leak in `GraphicsOutput::query_mode`. As a consequence, we
120124
had to add `&BootServices` as additional parameter.
121125
- `BootServices::free_pages` and `BootServices::free_pool` are now `unsafe` to
@@ -131,7 +135,7 @@
131135

132136
# uefi - 0.25.0 (2023-10-10)
133137

134-
## Changed
138+
## Changed (**BREAKING**)
135139
- MSRV bumped to 1.70.
136140
- `Input::wait_for_key_event` now returns an `Option<Event>`, and is no longer `const`.
137141
- `Protocol::wait_for_input_event` now returns an `Option<Event>`, and is no longer `const`.
@@ -166,15 +170,15 @@
166170
potentially-null interfaces without panicking.
167171
- `DevicePath::to_string` and `DevicePathNode::to_string`
168172

169-
## Changed
173+
## Changed (**BREAKING**)
170174
- Renamed `LoadImageSource::FromFilePath` to `LoadImageSource::FromDevicePath`
171175
- The `Deref` and `DerefMut` impls for `ScopedProtocol` will now panic if the
172176
interface pointer is null.
173177

174178

175179
# uefi - 0.23.0 (2023-06-04)
176180

177-
## Changed
181+
## Changed (**BREAKING**)
178182
- Fixed function signature bug in `BootServices::install_configuration_table`.
179183

180184

@@ -183,7 +187,7 @@
183187
## Added
184188
- Added `BootServices::install_configuration_table`.
185189

186-
## Changed
190+
## Changed (**BREAKING**)
187191
- Renamed `FileSystemIOErrorContext` to `IoErrorContext`.
188192
- `ResetType` is now a newtype-enum instead of a Rust enum. Its members now have
189193
upper-case names.
@@ -227,7 +231,7 @@
227231
- `MemoryType::BOOT_SERVICES_DATA` for UEFI boot drivers
228232
- `MemoryType::RUNTIME_SERVICES_DATA` for UEFI runtime drivers
229233

230-
## Changed
234+
## Changed (**BREAKING**)
231235
- The `global_allocator` module has been renamed to `allocator`, and is now
232236
available regardless of whether the `global_allocator` feature is enabled. The
233237
`global_allocator` feature now only controls whether `allocator::Allocator` is
@@ -273,7 +277,7 @@ Rust 1.68 or higher.
273277
is no sensible way of presenting a useful Debug representation, such as for
274278
Unions.
275279

276-
## Changed
280+
## Changed (**BREAKING**)
277281
- `SystemTable::exit_boot_services` now takes no parameters and handles
278282
the memory map allocation itself. Errors are now treated as
279283
unrecoverable and will cause the system to reset.
@@ -300,7 +304,7 @@ Rust 1.68 or higher.
300304
## Added
301305
- Added `table::boot::PAGE_SIZE` constant.
302306

303-
## Changed
307+
## Changed (**BREAKING**)
304308
- Fixed several protocol functions so that they work with unsized protocols
305309
(like `DevicePath`): `BootServices::locate_device_path`,
306310
`BootServices::get_handle_for_protocol`, `BootServices::test_protocol`,
@@ -324,7 +328,7 @@ Rust 1.68 or higher.
324328
integration with error-handling crates. (requires the **unstable** feature)
325329
- Added partial support for the TCG protocols for TPM devices under `uefi::proto::tcg`.
326330

327-
## Changed
331+
## Changed (**BREAKING**)
328332
- `UnalignedSlice` now implements `Clone`, and the `Debug` impl now
329333
prints the elements instead of the internal fields.
330334
- The unstable `negative_impls` feature is no longer required to use this library.
@@ -363,7 +367,7 @@ Rust 1.68 or higher.
363367
- Added `BootServices::register_protocol_notify`.
364368
- Added `SearchType::ByRegisterNotify`and `ProtocolSearchKey`.
365369

366-
## Changed
370+
## Changed (**BREAKING**)
367371
- Renamed crate feature `alloc` to `global_allocator`.
368372
- Renamed crate feature `exts` to `alloc`.
369373
- Fixed the definition of `AllocateType` so that `MaxAddress` and
@@ -424,7 +428,7 @@ Rust 1.68 or higher.
424428
- The `File` trait now knows the methods `is_regular_file` and `is_directory`.
425429
Developers profit from this on the struct `FileHandle`, for example.
426430

427-
## Changed
431+
## Changed (**BREAKING**)
428432
- Marked `BootServices::handle_protocol` as `unsafe`. (This method is
429433
also deprecated -- use `open_protocol_exclusive` or `open_protocol` instead.)
430434
- Deprecated `BootServices::locate_protocol` and marked it `unsafe`. Use
@@ -461,7 +465,7 @@ Rust 1.68 or higher.
461465
- Fixed an incorrect pointer cast in the `Rng` protocol that could cause
462466
undefined behavior.
463467

464-
## Changed
468+
## Changed (**BREAKING**)
465469
- Relaxed the version requirements for the `bitflags` and `log`
466470
dependencies to allow earlier patch versions.
467471
- Enabled `doc_auto_cfg` on docs.rs to show badges on items that are
@@ -484,7 +488,7 @@ Rust 1.68 or higher.
484488
- Included `cstr8` and `cstr16` macros from `uefi-macros` in the prelude.
485489
- Added `DevicePathInstance`, `DevicePathNode`, and `FfiDevicePath`.
486490

487-
## Changed
491+
## Changed (**BREAKING**)
488492
- `Time::new` now takes a single `TimeParams` argument so that date and
489493
time fields can be explicitly named at the call site.
490494
- The file info types now derive `PartialEq` and `Eq`.
@@ -523,7 +527,7 @@ Rust 1.68 or higher.
523527
- Added `Output::output_string_lossy`.
524528
- Added `ResultExt::handle_warning`.
525529

526-
## Changed
530+
## Changed (**BREAKING**)
527531
- Updated to the 2021 edition.
528532
- `File::open` now takes the filename as `&CStr16` instead of `&str`,
529533
avoiding an implicit string conversion.

0 commit comments

Comments
 (0)