PackageTrack
Sign in Get early access

serial

Rust library for accessing serial ports.

0.4.0 8.6M downloads/mo #3386 most downloaded on crates.io dcuddeback/serial-rs

What this package is like to depend on

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

11 years old

17 releases · first in 2015

0 releases in the last 12 months

see the full history below

Release timeline

17 releases · Mar 2015 to Jul 2017
2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release Withdrawn

Releases

latest 17
  1. 0.4.0 02 Jul 2017
    Release notes

    Changed

    • Split implementation into multiple crates:
    • Renamed serial::posix module to serial::unix.

    Removed

    • Removed implementation of Default for PortSettings.

    Fixed

    • Fixed bugs in the Windows implementation that did not reset parity, binary, or DTR control settings.
    Open source →
  2. 0.3.4 02 Jun 2016
    Release notes

    Fixed

    • (#16) Added missing Send implementation for Windows COM ports.
    • (#18) Fixed bug to allow opening non-standard Windows COM ports by name.
    • (#27) Added missing Debug implementation for Unix TTY port settings.
    Open source →
  3. 0.3.3 20 Mar 2016
    Release notes

    Added

    • Added support for OpenBSD.
    • (#10) Added support for OS-specific baud rates for termios-based serial ports.
    • (#10) Added BaudRate::from_speed() constructor.
    Open source →
  4. 0.3.2 06 Nov 2015
    Release notes

    Changed

    • Upgraded libc dependency to v0.2.
    Open source →
  5. 0.3.1 05 Nov 2015 withdrawn

    Nothing published for this version

  6. 0.3.0 16 Oct 2015
    Release notes

    Added

    • Added support for FreeBSD.

    Changed

    • Replaced dependence on time crate with std::time.
    • Minimum supported version of Rust is now 1.3.0.
    Open source →
  7. 0.2.1 04 Oct 2015
    Release notes

    Added

    • (#7) Added SystemPort type alias for native serial port type.
    Open source →
  8. 0.2.0 21 Jun 2015
    Release notes

    Added

    • Added SerialDevice trait as implementation trait for new serial port types. All types that implement SerialDevice will automatically implement SerialPort.
    • Added new ErrorKind variant: NoDevice.

    Changed

    • Changed reconfigure() method to be object-safe and moved from SerialPortExt to SerialPort.
    • Changed return type of serial::open() from io::Result to serial::Result.
    • Improved usefulness of errors returned by many methods by explicitly handling system error codes and using system error descriptions.

    Removed

    • Removed methods from 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.
    • Removed SerialPortExt trait.

    Fixed

    • (#4) Made SerialPort usable as a trait object. SerialPort objects can now be boxed as Box<SerialPort>.
    Open source →
  9. 0.1.3 07 Jun 2015
    Release notes

    Added

    • Added support for control signals to SerialPort trait. RTS and DTR control signals are settable. CTS, DSR, RI, and CD signals are readable.
    • Implemented control signals for Unix TTY devices.
    • Implemented control signals for Windows COM ports.
    Open source →
  10. 0.1.2 03 Jun 2015
    Release notes

    Fixed

    • (#5) Fixed bug that kept PTY devices created with socat locked after closing device.
    Open source →
  11. 0.1.1 27 May 2015
    Release notes

    Added

    • When opening Unix TTY ports, they are now locked for exclusive access with TIOCEXL ioctl.
    Open source →
  12. 0.1.0 25 May 2015
    Release notes

    Added

    • Added support for stable release channel.
    • Added serial::Error type to represent errors.
    • Added SerialPort::configure() method to configure port directly from a PortSettings object.
    • Implemented AsRawFd for Unix TTY ports.
    • Implemented AsRawHandle for Windows COM ports.

    Changed

    • Renamed SerialPort::settings() to SerialPort::read_settings().
    • Renamed SerialPort::apply_settings() to SerialPort::write_settings().
    • Changed io::Result return types to serial::Result.
    • Returning serial::Result from SerialPort::set_timeout() to allow function to perform I/O.
    • Changed return type of SerialPortSettings getter methods to Option<T>, so undetermined settings can be represented as None.
    • Changed return type of SerialPortSettings::set_baud_rate() to serial::Result to allow the method to return an error for unsupported baud rates.

    Removed

    • Removed uncommon baud rates: 50, 75, 134, 150, 200, 1800, and 230400 (still available with BaudOther).
    Open source →
  13. 0.0.5 17 Apr 2015
    Release notes

    Added

    • Added support for Windows COM ports.
    • Added cross-platform function serial::open() for opening system serial ports.

    Changed

    • Return io::Result from SerialPort::settings().
    Open source →
  14. 0.0.4 13 Apr 2015
    Release notes

    Changed

    • Replaced use of built-in libc crate with libc package from crates.io.
    • (#1) Replaced use of unstable std::time module with time package from crates.io.

    Fixed

    • Updated to support Rust 1.0.0-beta compiler.
    Open source →
  15. 0.0.3 03 Apr 2015
    Release notes

    Fixed

    • Updated to support latest Rust nightly compiler.
    Open source →
  16. 0.0.2 29 Mar 2015
    Release notes

    Changed

    • Migrated to new std::io module form std::old_io.

    Fixed

    • Updated to support latest Rust nightly compiler.
    Open source →
  17. 0.0.1 29 Mar 2015
    Release notes

    Added

    • Basic support for Unix TTY devices.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive