Uh oh!
There was an error while loading. Please reload this page.
Add paho-mqtt stubs - #8853
Conversation
This comment has been minimized.
This comment has been minimized.
JonathanPlasse
commented
Oct 6, 2022
Should I make a pull request to |
This comment has been minimized.
This comment has been minimized.
srittau
left a comment
There was a problem hiding this comment.
Thank you! I did not compare the types in-depth against the implementation, but this all looks plausible to me. A few remarks below, though.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
srittau
commented
Oct 6, 2022
You are not required to do that, although I'm sure the homeassistant project would appreciate it. |
Diff from mypy_primer, showing the effect of this PR on open source code: core (https://github.com/home-assistant/core)
+ homeassistant/components/mqtt/client.py:340: error: Incompatible types in assignment (expression has type "None", variable has type "Client") [assignment]+ homeassistant/components/mqtt/client.py:375: error: Incompatible types in assignment (expression has type "Callable[[Any, Any, Any, int], None]", variable has type "Optional[_OnConnect]") [assignment]+ homeassistant/components/mqtt/client.py:376: error: Incompatible types in assignment (expression has type "Callable[[Any, Any, int], None]", variable has type "_OnDisconnect") [assignment]+ homeassistant/components/mqtt/client.py:379: error: Incompatible types in assignment (expression has type "Callable[[Any, Any, Any, Any], None]", variable has type "Optional[_OnSubscribe]") [assignment]+ homeassistant/components/mqtt/client.py:380: error: Incompatible types in assignment (expression has type "Callable[[Any, Any, Any, Any], None]", variable has type "Optional[_OnUnsubscribe]") [assignment]+ homeassistant/components/mqtt/client.py:733: error: Argument 1 to "error_string" has incompatible type "Optional[int]"; expected "int" [arg-type]+ homeassistant/components/mqtt/config_flow.py:370: error: Incompatible types in assignment (expression has type "Callable[[Any, Any, Any, Any], Any]", variable has type "Optional[_OnConnect]") [assignment]
apprise (https://github.com/caronc/apprise)
- apprise/plugins/NotifyMQTT.py:56: error: Cannot find implementation or library stub for module named "paho.mqtt.client"- apprise/plugins/NotifyMQTT.py:56: error: Cannot find implementation or library stub for module named "paho.mqtt"- apprise/plugins/NotifyMQTT.py:56: error: Cannot find implementation or library stub for module named "paho" |
JonathanPlasse
commented
Oct 6, 2022
Why does |
srittau
commented
Oct 6, 2022
It's a bit confusing. The |
JonathanPlasse
commented
Oct 6, 2022
Thank you for your help. |
Removals from `stubinfo.py`: - `atomicwrites` is archived and deprecated at runtime; stubs were removed from typeshed in python/typeshed#8925 - `attrs` has had inline types for a very long time now - `chardet` recently cut a release with inline types; typeshed's stubs were marked obsolete in python/typeshed#9318 - `cryptography` has had inline types for a very long time now; the only reason why it's still in typeshed is because other typeshed packages need `types-cryptography` as a dependency, and our testing infrastructure therefore can't currently cope with it being removed from typeshed. - `emoji` recently cut a release bundling stubs with the runtime package; typeshed's stubs were marked obsolete in python/typeshed#9051 - `termcolor` recently cut a release with inline types; typeshed's stubs were marked obsolete in python/typeshed#8746 - `prettytable` recently cut a release with inline types; typeshed's stubs were marked obsolete in python/typeshed#9023 Additions: - Stubs for `Xlib` were added in python/typeshed#9279 - Stubs for `consolemenu` were added in python/typeshed#8820 - Stubs for `dockerfile_parse` were added in python/typeshed#9305 - Stubs for `flask_migrate` were added in python/typeshed#8967 - Stubs for `paho.mqtt` were added in python/typeshed#8853 - Stubs for `pycocotools` were added in python/typeshed#9086 - Stubs for many `pywin32` modules were added in python/typeshed#8825, and multiple follow-up PRs - Stubs for `pyscreeze` were added in python/typeshed#8823
Hi!
This PR adds stubs for
paho-mqtt.Should I use the optional packages (
PySocksandssl) forpaho-mqttto type a socket type?I currently use
socket: socket.socket | Any | Nonewhich should besocket.socket | ssl.SslSocket | socks.socksocket | WebsocketWrapper.Would they be installed when installing the stubs?