diff --git a/adafruit_ble_berrymed_pulse_oximeter/adafruit_ble_transparent_uart.py b/adafruit_ble_berrymed_pulse_oximeter/adafruit_ble_transparent_uart.py index 59c071f..11ca66b 100644 --- a/adafruit_ble_berrymed_pulse_oximeter/adafruit_ble_transparent_uart.py +++ b/adafruit_ble_berrymed_pulse_oximeter/adafruit_ble_transparent_uart.py @@ -15,6 +15,12 @@ from adafruit_ble.uuid import VendorUUID from adafruit_ble.characteristics.stream import StreamOut, StreamIn +try: + from typing import Optional +except ImportError: + pass +from circuitpython_typing import ReadableBuffer, WriteableBuffer + __version__ = "0.0.0-auto.0" __repo__ = ( "https://github.com/adafruit/Adafruit_CircuitPython_BLE_Contec_Pulse_Oximeter.git" @@ -44,7 +50,7 @@ class TransparentUARTService(Service): buffer_size=64, ) - def __init__(self, service=None): + def __init__(self, service: Optional["TransparentUARTService"] = None): super().__init__(service=service) self.connectable = True if not service: @@ -55,7 +61,7 @@ def __init__(self, service=None): self._tx = self._server_rx self._rx = self._server_tx - def read(self, nbytes=None): + def read(self, nbytes: Optional[int] = None) -> Optional[bytes]: """ Read characters. If ``nbytes`` is specified then read at most that many bytes. Otherwise, read everything that arrives until the connection times out. @@ -66,7 +72,9 @@ def read(self, nbytes=None): """ return self._rx.read(nbytes) - def readinto(self, buf, nbytes=None): + def readinto( + self, buf: WriteableBuffer, nbytes: Optional[int] = None + ) -> Optional[int]: """ Read bytes into the ``buf``. If ``nbytes`` is specified then read at most that many bytes. Otherwise, read at most ``len(buf)`` bytes. @@ -76,7 +84,7 @@ def readinto(self, buf, nbytes=None): """ return self._rx.readinto(buf, nbytes) - def readline(self): + def readline(self) -> Optional[bytes]: """ Read a line, ending in a newline character. @@ -86,14 +94,14 @@ def readline(self): return self._rx.readline() @property - def in_waiting(self): + def in_waiting(self) -> int: """The number of bytes in the input buffer, available to be read.""" return self._rx.in_waiting - def reset_input_buffer(self): + def reset_input_buffer(self) -> None: """Discard any unread characters in the input buffer.""" self._rx.reset_input_buffer() - def write(self, buf): + def write(self, buf: ReadableBuffer) -> None: """Write a buffer of bytes.""" self._tx.write(buf) diff --git a/requirements.txt b/requirements.txt index 816986c..69791c4 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,5 +2,5 @@ # # SPDX-License-Identifier: Unlicense -Adafruit-Blinka +Adafruit-Blinka>=7.2.3 adafruit-circuitpython-ble diff --git a/setup.py b/setup.py index e630972..194bdf4 100644 --- a/setup.py +++ b/setup.py @@ -33,7 +33,7 @@ # Author details author="Adafruit Industries", author_email="circuitpython@adafruit.com", - install_requires=["Adafruit-Blinka", "adafruit-circuitpython-ble"], + install_requires=["Adafruit-Blinka>=7.2.3", "adafruit-circuitpython-ble"], # Choose your license license="MIT", # See https://pypi.python.org/pypi?%3Aaction=list_classifiers