Improve sync_wrapper's definition so that we get better typing#2178
Closed
Ten0 wants to merge 6 commits intoAppDaemon:devfrom
Closed
Improve sync_wrapper's definition so that we get better typing#2178Ten0 wants to merge 6 commits intoAppDaemon:devfrom
Ten0 wants to merge 6 commits intoAppDaemon:devfrom
Conversation
Because otherwise the type will enforce that the caller checks which variant it is, which is too verbose. Ultimately this probably means that we shouldn't overload methods like this, but instead should have a separate interface for the non-async case where all methods are explicitly non-async, so that we can remove those annotations from the async ones and then the typer can help us to not forget "await".
This would prevent from calling them with e.g. `str | None` with the previous changes.
Contributor
Author
|
Ah yeah now it's called @jsl12 since you self-assigned... this looks like something that probably wants to get fixed before the release. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Before, calling functions such as
self.get_stateorself.turn_onwith anything else but the required type (in these two cases, str) would not lead to a type error, but rather to a runtime error long down the chain.This now properly fails to typecheck.