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.
What is this fixing or adding?
The
from_any
type annotation is usuallyAny
, but this type alias is for better narrowing of the generics.The default typing has been explored and discussed ArchipelagoMW#2173 and ArchipelagoMW#2899
and it looks like no type annotation is the best we can do for it. (It will inherit the type from the base class. Some type checkers will infer the type for better checking.)
The
tuple
instead oflist
protects against global mutability bugs we've seen before.__init__
can turn the tuple into alist
I don't know if you want to do error checking instead of the
text.get("text", "")
default empty string.get_option_name
is aclassmethod
in the superclass. I'm not sure whether you were trying to override that or make a new instance method. I assumed override.In general, you should prefer
isinstance(x, ...)
overtype(x)
(especially when this code is designed for inheritance).How was this tested?
just unit tests