summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES.rst25
-rw-r--r--documentation/conf.py6
-rw-r--r--documentation/pyserial_api.rst3
-rw-r--r--serial/__init__.py4
-rw-r--r--serial/serialposix.py4
-rw-r--r--serial/serialutil.py4
6 files changed, 34 insertions, 12 deletions
diff --git a/CHANGES.rst b/CHANGES.rst
index 096007e..56d42b7 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -683,8 +683,29 @@ Bugfixes (win32):
- [#162] Write in non-blocking mode returns incorrect value on windows
-Version 3.2.x 2017-xx-xx
---------------------------
+Version 3.3 2017-03-08
+------------------------
+Improvements:
+
+- [#206] Exclusive access on POSIX. ``exclusive`` flag added.
+- [#172] list_ports_windows: list_ports with 'manufacturer' info property
+- [#174] miniterm: change cancel impl. for console
+- [#182] serialutil: add overall timeout for read_until
+- socket: use non-blocking socket and new Timeout class
+- socket: implement a functional a reset_input_buffer
+- rfc2217: improve read timeout implementation
+- win32: include error message from system in ClearCommError exception
+- and a few minor changes, docs
+
+Bugfixes:
+
+- [#183] rfc2217: Fix broken calls to to_bytes on Python3.
+- [#188] rfc2217: fix auto-open use case when port is given as parameter
+
+Bugfixes (posix):
+
+- [#178] in read, count length of converted data
+- [#189] fix return value of write
Bugfixes (win32):
diff --git a/documentation/conf.py b/documentation/conf.py
index a03b171..64605a6 100644
--- a/documentation/conf.py
+++ b/documentation/conf.py
@@ -38,16 +38,16 @@ master_doc = 'index'
# General information about the project.
project = u'pySerial'
-copyright = u'2001-2016, Chris Liechti'
+copyright = u'2001-2017, Chris Liechti'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
# built documents.
#
# The short X.Y version.
-version = '3.2'
+version = '3.3'
# The full version, including alpha/beta/rc tags.
-release = '3.2.1'
+release = '3.3'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
diff --git a/documentation/pyserial_api.rst b/documentation/pyserial_api.rst
index 54d2ff3..65eeae5 100644
--- a/documentation/pyserial_api.rst
+++ b/documentation/pyserial_api.rst
@@ -52,7 +52,7 @@ Native ports
:param float inter_byte_timeout:
Inter-character timeout, :const:`None` to disable (default).
-
+
:param bool exclusive:
Set exclusive access mode (POSIX only). A port cannot be opened in
exclusive access mode if it is already open in exclusive access mode.
@@ -112,6 +112,7 @@ Native ports
.. versionchanged:: 2.5
*dsrdtr* now defaults to ``False`` (instead of *None*)
.. versionchanged:: 3.0 numbers as *port* argument are no longer supported
+ .. versionadded:: 3.3 ``exclusive`` flag
.. method:: open()
diff --git a/serial/__init__.py b/serial/__init__.py
index 4cd3a25..64c43c1 100644
--- a/serial/__init__.py
+++ b/serial/__init__.py
@@ -3,7 +3,7 @@
# This is a wrapper module for different platform implementations
#
# This file is part of pySerial. https://github.com/pyserial/pyserial
-# (C) 2001-2016 Chris Liechti <cliechti@gmx.net>
+# (C) 2001-2017 Chris Liechti <cliechti@gmx.net>
#
# SPDX-License-Identifier: BSD-3-Clause
@@ -13,7 +13,7 @@ import importlib
from serial.serialutil import *
#~ SerialBase, SerialException, to_bytes, iterbytes
-__version__ = '3.2.1'
+__version__ = '3.3'
VERSION = __version__
diff --git a/serial/serialposix.py b/serial/serialposix.py
index cff3417..bb2fa03 100644
--- a/serial/serialposix.py
+++ b/serial/serialposix.py
@@ -302,7 +302,7 @@ class Serial(SerialBase, PlatformSpecific):
"""Set communication parameters on opened port."""
if self.fd is None:
raise SerialException("Can only operate on a valid file descriptor")
-
+
# if exclusive lock is requested, create it before we modify anything else
if self._exclusive is not None:
if self._exclusive:
@@ -312,7 +312,7 @@ class Serial(SerialBase, PlatformSpecific):
raise SerialException(msg.errno, "Could not exclusively lock port {}: {}".format(self._port, msg))
else:
fcntl.flock(self.fd, fcntl.LOCK_UN)
-
+
custom_baud = None
vmin = vtime = 0 # timeout is done via select
diff --git a/serial/serialutil.py b/serial/serialutil.py
index 322b7e3..e4df90f 100644
--- a/serial/serialutil.py
+++ b/serial/serialutil.py
@@ -227,7 +227,7 @@ class SerialBase(io.RawIOBase):
self.dsrdtr = dsrdtr
self.inter_byte_timeout = inter_byte_timeout
self.exclusive = exclusive
-
+
# watch for backward compatible kwargs
if 'writeTimeout' in kwargs:
self.write_timeout = kwargs.pop('writeTimeout')
@@ -312,7 +312,7 @@ class SerialBase(io.RawIOBase):
def exclusive(self):
"""Get the current exclusive access setting."""
return self._exclusive
-
+
@exclusive.setter
def exclusive(self, exclusive):
"""Change the exclusive access setting."""