Description
There are missing type annotations for some functions in this library.
The typing
module does not exist on CircuitPython devices so the import needs to be wrapped in try/except to catch the error for missing import. There is an example of how that is done here:
try:
from typing import List, Tuple
except ImportError:
pass
Once imported the typing annotations for the argument type(s), and return type(s) can be added to the function signature. Here is an example of a function that has had this done already:
def wrap_text_to_pixels(
string: str, max_width: int, font=None, indent0: str = "", indent1: str = ""
) -> List[str]:
If you are new to Git or Github we have a guide about contributing to our projects here: https://learn.adafruit.com/contribute-to-circuitpython-with-git-and-github
There is also a guide that covers our CI utilities and how to run them locally to ensure they will pass in Github Actions here: https://learn.adafruit.com/creating-and-sharing-a-circuitpython-library/check-your-code In particular the pages: Sharing docs on ReadTheDocs
and Check your code with pre-commit
contain the tools to install and commands to run locally to run the checks.
If you are attempting to resolve this issue and need help, you can post a comment on this issue and tag both @FoamyGuy and @kattni or reach out to us on Discord: https://adafru.it/discord in the #circuitpython-dev
channel.
The following locations are reported by mypy to be missing type annotations:
- adafruit_ble/advertising/__init__.py:12
- adafruit_ble/advertising/__init__.py:17
- adafruit_ble/advertising/__init__.py:22
- adafruit_ble/advertising/__init__.py:45
- adafruit_ble/advertising/__init__.py:57
- adafruit_ble/advertising/__init__.py:85
- adafruit_ble/advertising/__init__.py:88
- adafruit_ble/advertising/__init__.py:93
- adafruit_ble/advertising/__init__.py:111
- adafruit_ble/advertising/__init__.py:139
- adafruit_ble/advertising/__init__.py:142
- adafruit_ble/advertising/__init__.py:149
- adafruit_ble/advertising/__init__.py:156
- adafruit_ble/advertising/__init__.py:160
- adafruit_ble/advertising/__init__.py:167
- adafruit_ble/advertising/__init__.py:174
- adafruit_ble/advertising/__init__.py:180
- adafruit_ble/advertising/__init__.py:239
- adafruit_ble/advertising/__init__.py:283
- adafruit_ble/advertising/__init__.py:291
- adafruit_ble/uuid/__init__.py:27
- adafruit_ble/uuid/__init__.py:44
- adafruit_ble/uuid/__init__.py:52
- adafruit_ble/uuid/__init__.py:62
- adafruit_ble/characteristics/__init__.py:75
- adafruit_ble/characteristics/__init__.py:97
- adafruit_ble/characteristics/__init__.py:113
- adafruit_ble/characteristics/__init__.py:135
- adafruit_ble/characteristics/__init__.py:144
- adafruit_ble/characteristics/__init__.py:159
- adafruit_ble/characteristics/__init__.py:181
- adafruit_ble/characteristics/__init__.py:198
- adafruit_ble/characteristics/__init__.py:219
- adafruit_ble/characteristics/__init__.py:243
- adafruit_ble/characteristics/__init__.py:251
- adafruit_ble/advertising/standard.py:34
- adafruit_ble/advertising/standard.py:53
- adafruit_ble/advertising/standard.py:59
- adafruit_ble/advertising/standard.py:77
- adafruit_ble/advertising/standard.py:93
- adafruit_ble/advertising/standard.py:128
- adafruit_ble/advertising/standard.py:132
- adafruit_ble/advertising/standard.py:141
- adafruit_ble/advertising/standard.py:162
- adafruit_ble/advertising/standard.py:176
- adafruit_ble/advertising/standard.py:192
- adafruit_ble/advertising/standard.py:212
- adafruit_ble/advertising/standard.py:250
- adafruit_ble/advertising/standard.py:268
- adafruit_ble/advertising/standard.py:294
- adafruit_ble/advertising/standard.py:318
- adafruit_ble/advertising/standard.py:325
- adafruit_ble/advertising/standard.py:367
- adafruit_ble/services/__init__.py:32
- adafruit_ble/characteristics/string.py:23
- adafruit_ble/characteristics/string.py:42
- adafruit_ble/characteristics/string.py:47
- adafruit_ble/characteristics/string.py:54
- adafruit_ble/characteristics/string.py:63
- adafruit_ble/characteristics/stream.py:26
- adafruit_ble/characteristics/stream.py:29
- adafruit_ble/characteristics/stream.py:41
- adafruit_ble/characteristics/stream.py:57
- adafruit_ble/characteristics/stream.py:74
- adafruit_ble/characteristics/stream.py:92
- adafruit_ble/characteristics/int.py:23
- adafruit_ble/characteristics/int.py:51
- adafruit_ble/characteristics/int.py:56
- adafruit_ble/characteristics/int.py:66
- adafruit_ble/characteristics/int.py:74
- adafruit_ble/characteristics/int.py:82
- adafruit_ble/characteristics/int.py:90
- adafruit_ble/characteristics/int.py:98
- adafruit_ble/characteristics/int.py:106
- adafruit_ble/characteristics/float.py:23
- adafruit_ble/characteristics/float.py:43
- adafruit_ble/characteristics/float.py:48
- adafruit_ble/services/nordic.py:47
- adafruit_ble/services/nordic.py:58
- adafruit_ble/services/nordic.py:69
- adafruit_ble/services/nordic.py:97
- adafruit_ble/services/midi.py:27
- adafruit_ble/services/circuitpython.py:26
- adafruit_ble/services/standard/hid.py:168
- adafruit_ble/services/standard/hid.py:190
- adafruit_ble/services/standard/hid.py:201
- adafruit_ble/services/standard/hid.py:323
- adafruit_ble/services/standard/hid.py:392
- adafruit_ble/services/standard/device_info.py:35
- adafruit_ble/services/standard/__init__.py:30
- adafruit_ble/__init__.py:39
- adafruit_ble/__init__.py:46
- adafruit_ble/__init__.py:59
- adafruit_ble/__init__.py:77
- adafruit_ble/__init__.py:121
- adafruit_ble/__init__.py:124
- adafruit_ble/__init__.py:141
- adafruit_ble/__init__.py:151
- adafruit_ble/__init__.py:202
- adafruit_ble/__init__.py:279
- adafruit_ble/__init__.py:319
- adafruit_ble/__init__.py:328