Skip to content

Releases: serialport/node-serialport

v6.0.4

26 Oct 03:03
Compare
Choose a tag to compare

Commits 6.0.4 (2017-10-26)

Bug Fixes

  • packages: just-extend isn't necessary anymore (#1376) (8f650c3)
  • windows: bad parameter for ReadThread (windows) (#1377) (6f3afbe)

v6.0.3

22 Oct 16:08
Compare
Choose a tag to compare

Commits 6.0.3 (2017-10-22)

Bug Fixes

v6.0.0

09 Oct 22:38
Compare
Choose a tag to compare

Commits 6.0.0 (2017-10-09)

Features

  • open: Throw on incorrect baudrate option (#1347) (a3b8d35)
  • parsers: Add cctalk parsers (#1342) (bcb492f)
  • test: tone down codecov comments (#1289) (749ffac)
  • windows: Add ERROR_INVALID_PARAMETER to supported bindings errors (#1354) (4ff9c67)

Bug Fixes

Chores

BREAKING CHANGES

  • binaries: We switched to prebuild a breaking change because it's substantially changes our install processes. It's also possible the install flags to ensure downloading or building from source has changed slightly. That's not our api per say, but it's enough.
  • windows: We previously hard coded to have RTS on for windows at all times it now default to off.

v6.0.0-beta3

07 Oct 13:51
Compare
Choose a tag to compare
v6.0.0-beta3 Pre-release
Pre-release
  • docs: add missing parsers to properties list (3faadac)

  • open: Throw on incorrect baudrate option (#1347) (a3b8d35)

  • parsers: Add cctalk parsers (#1342) (bcb492f)

v6.0.0-beta2

07 Sep 02:23
Compare
Choose a tag to compare
v6.0.0-beta2 Pre-release
Pre-release

This is a bug fix release that includes one of the best bug fixes we could ask for. @dustmop has rewritten our windows read/write subsystem! This should bring reads and writes down from 100% cpu to 1-2% cpu. Give it a try!

Bug Fixes

  • docs: Add a note about windows support 76b7191, closes #1299
  • docs: correct default highWaterMark to 65536 bytes e83ec4e
  • package: update debug to version 3.0.0 #1292 4987750
  • docs: Fixed typo in upgrade guide #1321 bf251a9
  • windows: Asynchronous callbacks for reading and writing #1328 69de595, closes #1221

6.0.0-beta1 (2017-08-07)

07 Aug 22:42
Compare
Choose a tag to compare
Pre-release

Diff

Bug Fixes

Chores

Features

BREAKING CHANGES

  • binaries: I'm considering the switch to prebuild a breaking change because it's substantially changes our install processes. It's also possible the install flags to ensure downloading or building from source has changed slightly. That's not our api per say, but it's enough.
  • windows: We previously hard coded to have RTS on for windows at all times it now default to off.

v5.1.0-beta5: Lets try prebuild

04 Aug 03:00
Compare
Choose a tag to compare
Pre-release
- Build once on each platform
- upload to github

v5.0.0 🎉

30 Jul 04:37
Compare
Choose a tag to compare

Nearly a year in the making Node SerialPort 5.0.0 is a major rewrite that improves stability, compatibility and performance. The api surface is similar to version 4 there have been a number of changes to ensure consistent error handling and operation of a serial port. Notably we are now a Stream! We also introduced a bindings layer. A small low level api to provide access to underlying hardware. External bindings written in other languages or targeting other platforms can now be used.

Some major cpu performance gains on unix platforms can be found and we're less buggy and better performing on Windows too.

With this release we are now only supporting LTS nodejs platforms and we are dropping NodeJS 0.10, 0.12, 5 and 7 support. We loved directly supporting so many platforms but it was getting in the way making a solid library.

See our upgrade guide for detail on what to change to upgrade your app to use serialport@5.0.0. It's not much!

Thank you to the 25 people who committed code and documentation and every person who submitted bug reports and tested changes!

Notable Changes

  • [all] Streams rewrite, node serialport is now a node stream! 🎉
  • [all] Drop NodeJS 0.10, 0.12, 5, and 7 support
  • [all] Add node 8 support (we now only support LTS node versions)
  • [all] Introduce a binding layer to provide a common low level interface to work with different platforms.
  • [unix] New read/write subsystem. Write CPU dropped from 100% to 0-2%. @reconbot (Thanks to @indutny for getting me unstuck many times!)
  • [windows] Rewrite reading so it's pausable thanks to @munyirik
  • [docs] An overhaul how we document the api leveraging JSDOC
  • [docs] An overhaul of the format and language in our docs thanks to @LappleApple

Features

  • [all] isOpen is now a property #899
  • [all] SerialPort.list now has more consistent output across all platforms.
  • [all] SerialPort.list returns a promise if a callback is not provided thanks to @MikeKovarik for bug fixes
  • [all] A promise aware serialport-repl script for debugging and testing.
  • [all] add #get to retrieve modem status flags thanks to @jgillick!
  • [all] Add a MockBinding object for testing serialports in your project. Used internally too!
  • [all] Add electron precompiled binaries thanks to @Mike-Dax
  • [all] Add regex stream parser and tests @jessicaquynh
  • [all] Allow reopening after an open error #910
  • [all] calls to .drain now queue behind port open and in progress writes reported by and with lots of testing help from @tuna-f1sh
  • [all] Change parsers to be transform streams #922
  • [all] Change the default highWaterMark to 64k to match fs.ReadStream
  • [all] Conform to NodeJS error message formats
  • [all] Exposed mocking serialport via require('serialport/test')
  • [all] Have drain wait for pending JS write operations before calling system drain thanks to @digitalhack for reporting it
  • [all] port.path is now read only #898
  • [all] Refactor internals to make use of es6 and promises
  • [all] Remove lowercase options #898
  • [all] Remove the c++ write queue
  • [all] Remove unnecessary dependencies and polyfills thanks to @mscdex
  • [all] Remove v8 deprecation warnings thanks to @indutny again
  • [all] Removed the disconnect event. The close event now fires with a disconnect error object in the event of a disconnection.
  • [all] SerialPort can now be compressed with uglify-es thanks to @rwaldron
  • [all] update bindings to version 1.3.0
  • [all] Upgrade debug and node-pre-gyp
  • [all] Upgrade to non deprecated buffer methods
  • [docs] Add more installation notes on sudo, windows 10, electron and node 7
  • [docs] Add socketio example @jessicaquynh
  • [docs] Electron build docs #965 via @chalkers
  • [docs] Mark new features in 5.0.0 with the fact they started in 5.0.0
  • [docs] Update parser docs to be correct #970 via @jacobq
  • [linux] SerialPort.list is now faster and less resource intensive thanks to @akaJes!
  • [linux] Add the ttyAP subsystem to serialport list thanks to @fly19890211 for reporting it
  • [osx] SerialPort.list now returns the tty instead of the cu thanks to @kishinmanglani
  • [unix] Flush now gives errors and flushes tx and rx #900
  • [unix] Move setting up the baudrate to the end of the open() to better support custom baudrates
  • [windows] Refactoring of .list for Windows so it's significantly smaller thanks to @Zensey

Fixes

  • [all] Fix baud rate parsing in serialport-terminal thanks to @radio-miskovice for reporting it!
  • [all] Fix memory leak during opening a port thanks to @indutny
  • [all] fixed a crash when pausing while reading thanks to @bminer and @baffo32 and others to debug and fix this
  • [all] Upgrade nan to fix compile issues on some platforms thanks to @thom-nic
  • [docs] fixed a typo thanks to @amilajack
  • [docs] Spelling fixes via @Awk34
  • [unix] fix a bug when poller errors would be unhandled thanks to @thiago-sylvain for reporting
  • [windows] Fix file handle leak during opens when errors occur thanks to @enami
  • [windows] Fix flush behavior using PurgeComm fixing #962 via @samisaham
  • [windows] Fix unhandled promise rejection when calling read on Windows
  • [windows] Remove read and write timeouts solving #781 via @giseburt

We also had help testing, debugging, and designing from; @alaq @arve0 @techninja @noopkat @HipsterBrown and more!

v5.0.0-beta9

30 Jul 00:23
Compare
Choose a tag to compare
v5.0.0-beta9 Pre-release
Pre-release
Version 5.0.0-beta9

This closes all known bugs!

- [all] `SerialPort.list` now has more consistent output across all platforms.
- [all] Add promise support to serialport-repl
- [all] Add write recording capabilities to the mock bindings
- [all] calls to `.drain` now queue behind port open and in progress writes reported by and with lots of testing help from @tuna-f1sh
- [all] Change the default high water mark to 64k to match `fs.ReadStream`
- [all] fix(package): update bindings to version 1.3.0
- [all] SerialPort can now be compressed with `uglify-es` thanks to @rwaldron
- [docs] fixed a typo thanks to @amilajack
- [linux] `SerialPort.list` is now faster and less resource intensive thanks to @akaJes!
- [osx] `SerialPort.list` now returns the `tty` instead of the `cu` thanks to @@kishinmanglani
- [unix] fix a bug when poller errors would be unhandled thanks to @thiago-sylvain for reporting

Version 5.0.0-beta8

17 Jul 13:31
Compare
Choose a tag to compare
Version 5.0.0-beta8 Pre-release
Pre-release

If we're lucky this will be the last of the betas. The remaining potentially blocking issues have to do with improving SerialPort.list which would change their output. The two issues are #1220 and #1084. I need help on those two issues, if I'm not able to close them soon, I'll release anyway, and they'll be fixed for 6x. This release is large enough. -@reconbot

  • [linux] Add the ttyAP subsystem to serialport list thanks to @fly19890211 for reporting it
  • [all] Have drain wait for pending JS write operations before calling system drain thanks to @digitalhack for reporting it
  • [unix] Move setting up the baudrate to the end of the open() to better support custom baudrates