multiboot2 0.14.0

Library that helps you to parse the multiboot information structure (mbi) from Multiboot2-compliant bootloaders, like GRUB. It supports all tags from the specification including full support for the sections of ELF-64. This library is `no_std` and can be used in a Multiboot2-kernel.
Documentation
# CHANGELOG for crate `multiboot2`

## 0.14.0 (2022-06-30)
- **BREAKING CHANGES** \
  This version includes a few small breaking changes that brings more safety when parsing strings from the
  multiboot information structure.
  - `BootLoaderNameTag::name` now returns a Result instead of just the value
  - `CommandLineTag::command_line` now returns a Result instead of just the value
  - `ModuleTag::cmdline` now returns a Result instead of just the value
  - `RsdpV1Tag::signature` now returns a Result instead of an Option
  - `RsdpV1Tag::oem_id` now returns a Result instead of an Option
  - `RsdpV2Tag::signature` now returns a Result instead of an Option
  - `RsdpV2Tag::oem_id` now returns a Result instead of an Option
- internal code improvements

## 0.13.3 (2022-06-03)
- impl `Send` for `BootInformation`

## 0.13.2 (2022-05-02)
- `TagType` now implements `Ord` so that it can be used in `BTreeSet`
- small internal improvements and restructuring of the code (no breaking changes to public API)

## 0.13.1 (2022-01-09)
- minor fix

## 0.13.0 (**yanked**)
- added missing getters for tag `ImageLoadPhysAddr`
- added missing getters for tags `EFIImageHandle32` and `EFIImageHandle64`

## 0.12.2 (2021-10-02)
- `TagType` now implements `Eq` and `Hash`
- internal improvements
  - `std` can be used in tests; the crate is still `no_std`
    - this implies that `cargo test` doesn't work on "non-standard" targets
    - CI (Ubuntu) still works.
  - code formatting/style
  - sensible style checks as optional CI job
  - `.editorconfig` file
  - prepared co-existence of crates `multiboot2` and `multiboot2-header`
    in a Cargo workspace inside the same repository

## 0.12.1 (2021-08-11)
- `TagType`-enum introduced in `v0.11` is now actually public
- internal code improvements

## 0.12.0 (2021-08-06)
- **breaking:** `load()` and `load_with_offset` now returns a result
- added public constant `MULTIBOOT2_BOOTLOADER_MAGIC`
- Rust edition 2018 (instead of 2015)
- internal code improvements

## 0.11.0 (2021-07-07)

- **breaking:** iterator functions (e.g. `ElfSectionsTag::sections()`) return `impl Iterator` instead of a concrete type
- lib now contains `TagType`-enum that contains
  all possible mbi tags that are specified (taken from spec)
- much improved debug-formatting of `BootInformation`
- internal code improvements / formatting

## 0.10.0 (2020-11-03)
- allow access to all memory regions (MemoryMap-Tag)
- internal code improvements

## 0.9.0 (2020-07-06)

- Add a `checksum_is_valid` method to the RSDP tags ([#64]https://github.com/rust-osdev/multiboot2/pull/64)

## 0.8.2 (2022-03-02)

- Add some basic documentation ([#62]https://github.com/rust-osdev/multiboot2/pull/62)
- Add MemoryAreaType, to allow users to access memory area types in a type-safe way ([#61]https://github.com/rust-osdev/multiboot2/pull/61)