-
Notifications
You must be signed in to change notification settings - Fork 9
Missing Type Annotations #17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
oh boy, so many questions. Black does not like line 122 in main version, 128 in mine - "error: cannot format adafruit_hue.py: Cannot parse: 124:8: resp = self._wifi.post(self._bridge_url, json=data)" also, id's according to hue interface appear to be able to be a string or int? groups definitely string, it appears. Also all the returns from the api calls appear to be a json body, which i've tentatively typehinted as 'str'. Is there a better way? |
@tcfranks thanks for working on this. Is your version pushed to a branch in github somewhere? If so I can take a look later tonight to try to see if I can figure out what the black formatting issue might be. for things that can be multiple types there a string does sound correct to me for json data. |
I think i introduced the line error - fixing it now. |
yep, totes mine. that's fixed. if you don't mind, look at line 41 here - how to type wifi_manager? Seems like a cheat to use 'Any' but also it's literally expecting the wifimanager object from one of two specific libraries, or it just raises a typeerror |
correct Missing Type Annotations #17
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: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:
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
andCheck 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:
The text was updated successfully, but these errors were encountered: