NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #3428 most downloaded on crates.io
Rust library for accessing serial ports.
Last release 9 years ago
no release in 18 months
Ships unpredictably
gaps range from 8 days to 13 months
Nearly every release is documented
notes for 16 of 16 stable releases
1 version withdrawn
withdrawn after publishing
12 years old
17 releases · first in 2015
Split implementation into multiple crates:
serial-core contains core abstractions.serial-unix provides Unix implementation.serial-windows provides Windows implementation.serial provides cross-platform interface.serial::posix module to serial::unix.Default for PortSettings.One column per quarter.
(#10) Added support for OS-specific baud rates for termios-based serial ports.
Upgraded libc dependency to v0.2.
libc dependency to v0.2.Nothing published for this version
Replaced dependence on time crate with std::time.
time crate with std::time.(#7) Added SystemPort type alias for native serial port type.
SystemPort type alias for native serial port type.Added SerialDevice trait as implementation trait for new serial port types. All types that implement SerialDevice will automatically implement SerialP
SerialDevice trait as implementation trait for new serial port types. All types that
implement SerialDevice will automatically implement SerialPort.ErrorKind variant: NoDevice.reconfigure() method to be object-safe and moved from SerialPortExt to SerialPort.serial::open() from io::Result to serial::Result.SerialPort trait that required knowledge of the port's Settings type.
Removed methods are read_settings() and write_settings(). They are still available via
SerialDevice.SerialPortExt trait.SerialPort usable as a trait object. SerialPort objects can now be boxed as
Box<SerialPort>.Added support for control signals to SerialPort trait. RTS and DTR control signals are settable. CTS, DSR, RI, and CD signals are readable.
SerialPort trait. RTS and DTR control signals are settable.
CTS, DSR, RI, and CD signals are readable.(#5) Fixed bug that kept PTY devices created with socat locked after closing device.
socat locked after closing device.When opening Unix TTY ports, they are now locked for exclusive access with TIOCEXL ioctl.
TIOCEXL ioctl.Added support for stable release channel.
serial::Error type to represent errors.SerialPort::configure() method to configure port directly from a PortSettings object.AsRawFd for Unix TTY ports.AsRawHandle for Windows COM ports.SerialPort::settings() to SerialPort::read_settings().SerialPort::apply_settings() to SerialPort::write_settings().io::Result return types to serial::Result.serial::Result from SerialPort::set_timeout() to allow function to perform I/O.SerialPortSettings getter methods to Option<T>, so undetermined
settings can be represented as None.SerialPortSettings::set_baud_rate() to serial::Result to allow the
method to return an error for unsupported baud rates.BaudOther).Added support for Windows COM ports.
serial::open() for opening system serial ports.io::Result from SerialPort::settings().Replaced use of built-in libc crate with libc package from crates.io.
libc crate with libc package from crates.io.std::time module with time package from crates.io.Updated to support latest Rust nightly compiler.
Migrated to new std::io module form std::old_io.
std::io module form std::old_io.Basic support for Unix TTY devices.
Your coding agent can read these notes before it upgrades. Set up the MCP server →