mio-serial
A serial port implementation for mio
5.0.7
6.6M downloads/mo
#3929 most downloaded on crates.io
berkowski/mio-serial
What this package is like to depend on
Last release 2 months ago
15 Jun 2026
Release timing varies
gaps range from 8 days to 1.9 years
Most releases are documented
notes for 17 of 23 stable releases
1 version withdrawn
withdrawn after publishing
10 years old
28 releases · first in 2016
1 release in the last 12 months
see the full history below
Release timeline
28 releases · Dec 2016 to Jun 2026Releases
latest 28-
5.0.715 Jun 2026Release notes
Open source →Changed
- Replaced the
winapidependency withwindows-sysfor Windows FFI, scoped to Windows targets only (#59). - Upgraded
nixto 0.31 (#54). - Cleaned up
rustfmt/clippywarnings and stopped usingString::leakin the test suite (#56, #55).
Fixed
- Converting a blocking serial port to an async
SerialStreamon Windows no longer fails when one of the port's current settings cannot be read; the unreadable setting is now logged and skipped instead of aborting the conversion (#60). - Repaired the test suite, which no longer compiled — and had a Windows-only build break in the fixtures — after the
String::leakremoval.
- Replaced the
-
5.0.631 Dec 2024Nothing published for this version
-
5.0.508 Feb 2023Nothing published for this version
-
5.0.412 Jan 2023Nothing published for this version
-
5.0.302 Nov 2022 -
5.0.204 Mar 2022 -
5.0.108 Aug 2021Release notes
Open source →Minor update to README.md
Changed
- Updated README.md example to use current release version of mio-serial
-
5.0.008 Aug 2021Release notes
Open source →Final release of version 5.0. No code changes since the previous 4.0.0-beta4.
Added
- ColinFinck added as maintainer for
mio-serial - estokes added as maintainer for
mio-serial
- ColinFinck added as maintainer for
-
4.0.0-beta423 Jul 2021 pre-releaseRelease notes
Open source →Added
- Check in CI tests for building against the MSRV (currently
1.41.0)
Changed
- Error returned from
SerialPort::try_clonechanged back tostd::io::ErrorKind::Other(had switched tostd::io::ErrorKind::Unsupported).Unsupportedrequires MSRV of1.53which is too high. (fix #27)
- Check in CI tests for building against the MSRV (currently
-
4.0.0-beta322 Jul 2021 pre-releaseRelease notes
Open source →Added
- Some logging hooks for debugging
Changed
- Renamed
SerialPortBuilderExt::open_asynctoSerialPortBuilderExt::open_native_asyncto reflect the original intention
-
4.0.0-beta216 Jul 2021 pre-releaseRelease notes
Open source →Added
- AsRawHandle, FromRawHandle, and IntoRawHandle impls for SerialStream on Windows
Fixed
- Potential double Drop issue on Windows between NamedPipe and COMPort
-
4.0.0-beta113 Jul 2021 pre-releaseRelease notes
Open source →This is a major update crossing two API-breaking dependency version jumps in
mioandserialport-rs.BREAKING CHANGES
This release contains multiple API breaking changes with the move to serialport-rs v4. Additional breaking changes were made to make the API more like mio/tokio where platform-specific implimentation details are provided with
#cfg[]guards instead of discrete structures like inserialport-rsSpecifically:
- Removed platform-specific
mio_serial::windows::Serialandmio_serial::unix::Serial - Added
mio_serial::SerialStreamwith platform specific requirements at compile time with#[cfg()] - Removed
COMPort::from_path, useSerialStream::open - Removed
TTYPort::from_path, useSerialStream::open - Removed
TTYPort::from_serial. Replaced with impl ofstd::convert::TryFrom<serialport::TTYPort> - Removed
SerialPortSettings,serialport-rsnow uses the builder pattern
Changed
- Removed "libudev" from the default features. Still available for use when desired.
- Bumped nix to 0.22
- Bumped mio to 0.7
- Bumped serialport-rs to 4.0.0
- Changed CHANGELOG from asciidoc to markdown
Added
SerialStreamstructure as the common entry point for serial port IO.SerialPortBuilderExtextension trait to addopen_asyncmethod toserialport::SerialPortBuildermuch like the already existingopenmethod.
Other
- Switched CI to appveyor for Windows, OSX, and Linux. It doesn't test as many targets, but some checks are better than none now that travis-ci is no longer an option.
- Removed platform-specific
-
3.3.115 Mar 2020Release notes
Open source →Added
- @flosse added #derive Debug support for the Serial struct in #20
- @vleesvlieg added automatic retrying for EINTR returns to file descriptors in #21
Changed
- Bumped nix to 0.17
-
3.3.023 Aug 2019 -
3.2.1401 Jun 2019 -
3.2.012 Jan 2019Nothing published for this version
-
3.1.112 Jan 2019 -
3.1.010 Nov 2018 -
3.0.106 Nov 2018Release notes
Open source →Changed
- Restricted serialport-rs to 3.0 serialport-rs 3.1 contains API breaking changes.
-
3.0.006 Oct 2018Release notes
Open source →Changed
- Bumped serialport-rs to 3.0 serialport-rs 3.0 contains breaking changes.
- Bumped nix to 0.11
mio-serialversion number will now track upstream serialport-rs. mio-serial is mostly feature complete at this point (at least for *nix) and this should help reduce confusion.
Fixed
- Merged #10 (thanks @yuja!). Addresses some windows timeout settings.
-
0.8.031 Mar 2018 -
0.7.026 Feb 2018Release notes
Open source →Changed
- Bumped serialport-rs to 2.1
Added
- Merged#4 @ndusart added windows support!
- Added appveyor config to support new windows impl.
-
0.6.028 Nov 2017Release notes
Open source →Added
- Closed #3 Reexport serialport::Error for error handling without importing serialport crate. Thanks @Idanko
-
0.5.015 Apr 2017Release notes
Open source →Added
- Added trust based ci
Changed
- Changed license back to MIT now that
serialport-rsis MPL-2.0 - Bumped
serialport-rsdependency to 1.0
-
0.4.013 Feb 2017 -
0.3.013 Feb 2017 withdrawn -
0.2.002 Feb 2017Nothing published for this version
-
0.1.011 Dec 2016Nothing published for this version