Pyserial

Latest version: v3.5

Safety actively analyzes 628903 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 7

2.7

---------------------------
- Win32: setRTS and setDTR can be called before the port is opened and it will
set the initial state on port open.
- Posix: add platform specific method: outWaiting (already present for Win32)
- Posix: rename flowControl to setXON to match name on Win32, add
flowControlOut function
- rfc2217: zero polls value (baudrate, data size, stop bits, parity) (Erik
Lundh)
- Posix: [Patch pyserial:28] Accept any speed on Linux [update]
- Posix: [Patch pyserial:29] PosixSerial.read() should "ignore" errno.EINTR
- OSX: [Patch pyserial:27] Scan by VendorID/Product ID for USB Serial devices
- Ensure working with bytes in write() calls

Bugfixes:

- [Bug 3540332] SerialException not returned
- [Bug pyserial:145] Error in socket_connection.py
- [Bug pyserial:135] reading from socket with timeout=None causes TypeError
- [Bug pyserial:130] setup.py should not append py3k to package name
- [Bug pyserial:117] no error on lost conn w/socket://

Bugfixes (posix):

- [Patch 3462364] Fix: NameError: global name 'base' is not defined
- list_ports and device() for BSD updated (Anders Langworthy)
- [Bug 3518380] python3.2 -m serial.tools.list_ports error
- [Bug pyserial:137] Patch to add non-standard baudrates to Cygwin
- [Bug pyserial:141] open: Pass errno from IOError to SerialException
- [Bug pyserial:125] Undefined 'base' on list_ports_posix.py, function usb_lsusb
- [Bug pyserial:151] Serial.write() without a timeout uses 100% CPU on POSIX
- [Patch pyserial:30] [PATCH 1/1] serial.Serial() should not raise IOError.

Bugfixes (win32):

- [Bug 3444941] ctypes.WinError() unicode error
- [Bug 3550043] on Windows in tools global name 'GetLastError' is not defined
- [Bug pyserial:146] flush() does nothing in windows (despite docs)
- [Bug pyserial:144] com0com ports ignored due to missing "friendly name"
- [Bug pyserial:152] Cannot configure port, some setting was wrong. Can leave
port handle open but port not accessible

2.6

---------------------------
New Features:

- Moved some of the examples to serial.tools so that they can be used
with ``python -m``
- serial port enumeration now included as ``serial.tools.list_ports``
- URL handlers for ``serial_for_url`` are now imported dynamically. This allows
to add protocols w/o editing files. The list
``serial.protocol_handler_packages`` can be used to add or remove user
packages with protocol handlers (see docs for details).
- new URL type: hwgrep://<regexp> uses list_ports module to search for ports
by their description
- several internal changes to improve Python 3.x compatibility (setup.py,
use of absolute imports and more)

Bugfixes:

- [Bug 3093882] calling open() on an already open port now raises an exception
- [Bug 3245627] connection-lost let rfc2217 hangs in closed loop
- [Patch 3147043] readlines() to support multi-character eol

Bugfixes (posix):

- [Patch 3316943] Avoid unneeded termios.tcsetattr calls in serialposix.py
- [Patch 2912349] Serial Scan as a Module with Mac Support

Bugfixes (win32):

- [Bug 3057499] writeTimeoutError when write Timeout is 0
- [Bug 3414327] Character out of range in list_ports_windows
- [Patch 3036175] Windows 98 Support fix
- [Patch 3054352] RTS automatic toggle, for RS485 functionality.
- Fix type definitions for 64 bit Windows compatibility

2.5

---------------------------
New Features:

- [Bug 2976262] dsrdtr should default to False
``dsrdtr`` parameter default value changed from ``None`` (follow ``rtscts``
setting) to ``False``. This means ``rtscts=True`` enables hardware flow
control on RTS/CTS but no longer also on DTR/DSR. This change mostly
affects Win32 as on other platforms, that setting was ignored anyway.
- Improved xreadlines, it is now a generator function that yields lines as they
are received (previously it called readlines which would only return all
lines read after a read-timeout). However xreadlines is deprecated and not
available when the io module is used. Use ``for line in Serial(...):``
instead.

Bugfixes:

- [Bug 2925854] test.py produces exception with python 3.1
- [Bug 3029812] 2.5rc2 readline(s) doesn't work

Bugfixes (posix):

- [BUG 3006606] Nonblocking error - Unix platform

Bugfixes (win32):

- [Bug 2998169] Memory corruption at faster transmission speeds.
(bug introduced in 2.5-rc1)

2.5rc2

---------------------------
New Features:

- Documentation update, now written with Sphinx/ReST
- Updated miniterm.py example
- experimental RFC-2217 client support (serial.rfc2217.Serial, see docs)
- add ``loop://`` device for testing.
- add ``serial.serial_for_url`` factory function (support for native ports and
``rfc2217``, ``socket`` and ``loop`` URLs)
- add new example: ``rfc2217_server.py``
- tests live in their own directory now (no longer in examples)

Bugfixes:

- [Bug 2915810] Fix for suboption parsing in rfc2217
- Packaging bug (missed some files)

Bugfixes (posix):

- improve write timeout behavior
- [Bug 2836297] move Linux specific constants to not break other platforms
- ``poll`` based implementation for ``read`` is in a separate class
``PosixPollSerial``, as it is not supported well on all platforms (the
default ``Serial`` class uses select).
- changed error handling in ``read`` so that disconnected devices are
detected.


Bugfixes (win32):

- [Bug 2886763] hComPort doesn't get initialized for Serial(port=None)

2.5rc1

---------------------------
New Features:

- Python 3.x support (through 2to3)
- compatible with Python io library (Python 2.6+)
- Support for Win32 is now written on the top of ctypes (bundled with
Python 2.5+) instead of pywin32 (patch by Giovanni Bajo).
- 1.5 stop bits (STOPBITS_ONE_POINT_FIVE, implemented on all platforms)
- miniterm application extended (CTRL+T -> menu)
- miniterm.py is now installed as "script"
- add scanlinux.py example
- add port_publisher example
- experimental RFC-2217 server support (examples/rfc2217_server.py)
- add ``getSettingsDict`` and ``applySettingsDict`` serial object methods
- use a ``poll`` based implementation on Posix, instead of a ``select`` based,
provides better error handling [removed again in later releases].

Bugfixes:

- Improve and fix tcp_serial_redirector example.
- [Bug 2603052] 5-bit mode (needs 1.5 stop bits in some cases)

Bugfixes (posix):

- [Bug 2810169] Propagate exceptions raised in serialposix _reconfigure
- [Bug 2562610] setting non standard baud rates on Darwin (Emmanuel Blot)

Bugfixes (win32):

- [Bug 2469098] parity PARITY_MARK, PARITY_SPACE isn't supported on win32
- [SF 2446218] outWaiting implemented
- [Bug 2392892] scanwin32.py better exception handling
- [Bug 2505422] scanwin32.py Vista 64bit compatibility

2.4

---------------------------
New Features:

- [Patch 1616790] pyserial: Add inter-character timeout feature
- [Patch 1924805] add a setBreak function
- Add mark/space parity
- Add .NET/Mono backend (IronPython)

Bugfixes (posix):

- [Bug 1783159] Arbitrary baud rates (Linux/Posix)

Bugfixes (win32):

- [Patch 1561423] Add mark/space parity, Win32
- [Bug 2000771] serial port CANNOT be specified by number on windows
- examples/scanwin32.py does no longer return \\.\ names
- fix \\.\ handling for some cases

Bugfixes (jython):

- The Jython backend tries javax.comm and gnu.io (Seo Sanghyeon)

Page 3 of 7

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.