Skip to content

build: Bump uart_16550 from 0.4.0 to 0.6.0#421

Open
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/cargo/uart_16550-0.6.0
Open

build: Bump uart_16550 from 0.4.0 to 0.6.0#421
dependabot[bot] wants to merge 1 commit intomainfrom
dependabot/cargo/uart_16550-0.6.0

Conversation

@dependabot
Copy link
Copy Markdown
Contributor

@dependabot dependabot bot commented on behalf of github Mar 30, 2026

Bumps uart_16550 from 0.4.0 to 0.6.0.

Release notes

Sourced from uart_16550's releases.

v0.6.0

What's Changed

Full Changelog: rust-osdev/uart_16550@v0.5.0...v0.6.0

v0.5.0 (rewrite of the crate!)

  • Complete rewrite of the crate
  • The crate is by no means "minimalist" anymore. Now, uart_16550, is a simple yet highly configurable low-level driver for 16550 UART devices, typically known and used as serial ports or COM ports. Easy integration into Rust while providing fine-grained control where needed (e.g., for kernel drivers).
  • Changes were made to use this on real hardware
  • Common API for x86 port I/O and MMIO
  • 100% typed spec

We thank all past contributors. We've decided to completely rewrite the crate to clean up technical debt from the past, maintain the highest possible coding and API standards, and to make this crate ready for usage on real hardware, while keeping it easy to use in virtual machines.

Special Thanks

Special Thanks to Philipp Oppermann (@​phil-opp) and Martin Kröning (@​mkroening) for their very valuable review on the new crate!

Migration to v0.5.0

Old

use uart_16550::SerialPort;
const SERIAL_IO_PORT: u16 = 0x3F8;
let mut serial_port = unsafe { SerialPort::new(SERIAL_IO_PORT) };
serial_port.init();
// Now the serial port is ready to be used. To send a byte:
serial_port.send(42);
// To receive a byte:
let data = serial_port.receive();

New (Minimalistic)

... (truncated)

Changelog

Sourced from uart_16550's changelog.

0.6.0 - 2026-03-28

  • Rename Uart16550::try_send_bytes() to Uart16550::send_bytes()
  • Rename Uart16550::try_receive_bytes() to Uart16550::receive_bytes()
  • New public methods:
    • Uart16550::ready_to_receive()
    • Uart16550::ready_to_send()
  • Documentation improvements
  • Internal safety fixes (there was no UB, just making the internal code more robust)
  • Uart16550::new_mmio() and Uart16550Ttty::new_mmio() now accept a NonNull<u8> instead of a *mut u8. The recommended way to construct the MMIO address is to use:
    fn main() {
      // External MMIO address.
      let mmio_address = ptr::with_exposed_provenance_mut::<u8>(0x1000);
      let mmio_address = NonNull::new(mmio_address).unwrap();
      let mut uart = unsafe { Uart16550::new_mmio(mmio_address, 4).unwrap() };
    }

0.5.0 - 2026-03-20

  • Complete rewrite of the crate
  • The crate is by no means "minimalist" anymore. Now, uart_16550, is a simple yet highly configurable low-level driver for 16550 UART devices, typically known and used as serial ports or COM ports. Easy integration into Rust while providing fine-grained control where needed (e.g., for kernel drivers).
  • Changes were made to use this on real hardware
  • Common API for x86 port I/O and MMIO
  • 100% typed spec

We thank all past contributors. We've decided to completely rewrite the crate to clean up technical debt from the past, maintain the highest possible coding and API standards, and to make this crate ready for usage on real hardware, while keeping it easy to use in virtual machines.

Special Thanks

Special Thanks to Philipp Oppermann (@​phil-opp) and Martin Kröning (@​mkroening) for their very valuable review on the new crate!

Migration to v0.5.0

Old

use uart_16550::SerialPort;
</tr></table>

... (truncated)

Commits
  • efca483 chore: prepare v0.6.0
  • e3c8d25 Merge pull request #54 from phip1611/safety
  • 1934f2e lib: require NonNull<u8> for new_mmio() constructors
  • 23ab2f3 tests: add api test
  • d1eb768 Merge pull request #53 from phip1611/restructure
  • 8893849 doc: improve examples and wording + build on non-x86
  • 2b86ba7 ci: test cargo doc on multiple architectures
  • 347088c doc: add support for rustdocs' doc_cfg feature
  • b232b2c crate: split backend implementations into modules
  • 1f47a91 crate: move backend module to directory
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [uart_16550](https://github.com/rust-osdev/uart_16550) from 0.4.0 to 0.6.0.
- [Release notes](https://github.com/rust-osdev/uart_16550/releases)
- [Changelog](https://github.com/rust-osdev/uart_16550/blob/v0.6.0/CHANGELOG.md)
- [Commits](rust-osdev/uart_16550@v0.4.0...v0.6.0)

---
updated-dependencies:
- dependency-name: uart_16550
  dependency-version: 0.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Mar 30, 2026
Copy link
Copy Markdown

@cloud-hypervisor-bot cloud-hypervisor-bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Beep boop! I am also a 🤖 - let's join forces!

@dependabot merge

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant