mirror of
https://github.com/davidhalter/django-stubs.git
synced 2026-02-11 20:51:43 +08:00
Bump mypy 0.950 (#939)
* Bump mypy to 0.95x * Remove the * for inferred types There was an upstream change (https://github.com/python/mypy/pull/12459) to remove * from inferred types in the reveal_type output. As we are asserting the * to exist, all the test cases are now failing on the 0.950 release. Removing the expected * to mirror the upstream behaviour change should resolve the test failures.
This commit is contained in:
@@ -10,39 +10,39 @@
|
||||
d3: Tuple[Tuple[str, List[Union[str, int]]], ...] = (('foo', ['Foo']), ('bar', [2, 3]))
|
||||
var3 = MultiValueDict(d3)
|
||||
reveal_type(var1) # N: Revealed type is "django.utils.datastructures.MultiValueDict[Any, Any]"
|
||||
reveal_type(var2) # N: Revealed type is "django.utils.datastructures.MultiValueDict[builtins.str*, Union[builtins.str, builtins.int]]"
|
||||
reveal_type(var3) # N: Revealed type is "django.utils.datastructures.MultiValueDict[builtins.str*, Union[builtins.str, builtins.int]]"
|
||||
reveal_type(var2) # N: Revealed type is "django.utils.datastructures.MultiValueDict[builtins.str, Union[builtins.str, builtins.int]]"
|
||||
reveal_type(var3) # N: Revealed type is "django.utils.datastructures.MultiValueDict[builtins.str, Union[builtins.str, builtins.int]]"
|
||||
|
||||
# __getitem__, get, getlist (with proofs)
|
||||
d = MultiValueDict({'foo': ['Foo']})
|
||||
d.setlist('bar', [])
|
||||
# actually 'Foo'
|
||||
reveal_type(d['foo']) # N: Revealed type is "Union[builtins.str*, builtins.list[builtins.object]]"
|
||||
reveal_type(d['foo']) # N: Revealed type is "Union[builtins.str, builtins.list[builtins.object]]"
|
||||
# actually []
|
||||
reveal_type(d['bar']) # N: Revealed type is "Union[builtins.str*, builtins.list[builtins.object]]"
|
||||
reveal_type(d['bar']) # N: Revealed type is "Union[builtins.str, builtins.list[builtins.object]]"
|
||||
# actually None
|
||||
reveal_type(d.get('bar')) # N: Revealed type is "Union[builtins.str*, None]"
|
||||
reveal_type(d.get('bar')) # N: Revealed type is "Union[builtins.str, None]"
|
||||
# actually 1
|
||||
reveal_type(d.get('bar', 1)) # N: Revealed type is "Union[builtins.str, builtins.int*]"
|
||||
reveal_type(d.get('bar', 1)) # N: Revealed type is "Union[builtins.str, builtins.int]"
|
||||
# actually []
|
||||
reveal_type(d.getlist('bar')) # N: Revealed type is "builtins.list[builtins.str]"
|
||||
# actually []
|
||||
reveal_type(d.getlist('bar', [1])) # N: Revealed type is "Union[builtins.list[builtins.str], builtins.list*[builtins.int*]]"
|
||||
reveal_type(d.getlist('bar', [1])) # N: Revealed type is "Union[builtins.list[builtins.str], builtins.list[builtins.int]]"
|
||||
# actually True (note that default can be not a list)
|
||||
reveal_type(d.getlist('baz', True)) # N: Revealed type is "Union[builtins.list[builtins.str], builtins.bool*]"
|
||||
reveal_type(d.getlist('baz', True)) # N: Revealed type is "Union[builtins.list[builtins.str], builtins.bool]"
|
||||
|
||||
# setters
|
||||
reveal_type(d.setlistdefault('baz')) # N: Revealed type is "builtins.list[builtins.str*]"
|
||||
reveal_type(d.setlistdefault('baz')) # N: Revealed type is "builtins.list[builtins.str]"
|
||||
d.setlistdefault('baz', [1]) # E: List item 0 has incompatible type "int"; expected "str"
|
||||
reveal_type(d.setlistdefault('baz', [])) # N: Revealed type is "builtins.list[builtins.str*]"
|
||||
reveal_type(d.setlistdefault('baz', [])) # N: Revealed type is "builtins.list[builtins.str]"
|
||||
d.appendlist('baz', 'Baz')
|
||||
d.appendlist('baz', 1) # E: Argument 2 to "appendlist" of "MultiValueDict" has incompatible type "int"; expected "str"
|
||||
|
||||
# iterators
|
||||
# actually [('foo', 'Foo'), ('bar', [])]
|
||||
reveal_type(list(d.items())) # N: Revealed type is "builtins.list[Tuple[builtins.str*, Union[builtins.str*, builtins.list[builtins.object]]]]"
|
||||
reveal_type(list(d.keys())) # N: Revealed type is "builtins.list[builtins.str*]"
|
||||
reveal_type(list(d.items())) # N: Revealed type is "builtins.list[Tuple[builtins.str, Union[builtins.str, builtins.list[builtins.object]]]]"
|
||||
reveal_type(list(d.keys())) # N: Revealed type is "builtins.list[builtins.str]"
|
||||
# actually ['Foo', []]
|
||||
reveal_type(list(d.values())) # N: Revealed type is "builtins.list[Union[builtins.str*, builtins.list[builtins.object]]]"
|
||||
reveal_type(list(d.values())) # N: Revealed type is "builtins.list[Union[builtins.str, builtins.list[builtins.object]]]"
|
||||
# actually {'foo': 'Foo', 'bar': []}
|
||||
reveal_type(d.dict()) # N: Revealed type is "builtins.dict[builtins.str*, Union[builtins.str*, builtins.list[builtins.object]]]"
|
||||
reveal_type(d.dict()) # N: Revealed type is "builtins.dict[builtins.str, Union[builtins.str, builtins.list[builtins.object]]]"
|
||||
|
||||
@@ -5,10 +5,10 @@
|
||||
pass
|
||||
|
||||
reveal_type(force_bytes(123)) # N: Revealed type is "builtins.bytes"
|
||||
reveal_type(force_bytes(123, strings_only=True)) # N: Revealed type is "builtins.int*"
|
||||
reveal_type(force_bytes(123, strings_only=True)) # N: Revealed type is "builtins.int"
|
||||
|
||||
reveal_type(force_str(123)) # N: Revealed type is "builtins.str"
|
||||
reveal_type(force_str(123, strings_only=True)) # N: Revealed type is "builtins.int*"
|
||||
reveal_type(force_str('foo')) # N: Revealed type is "builtins.str*"
|
||||
reveal_type(force_str('foo', strings_only=True)) # N: Revealed type is "builtins.str*"
|
||||
reveal_type(force_str(S('foo'), strings_only=True)) # N: Revealed type is "main.S*"
|
||||
reveal_type(force_str(123, strings_only=True)) # N: Revealed type is "builtins.int"
|
||||
reveal_type(force_str('foo')) # N: Revealed type is "builtins.str"
|
||||
reveal_type(force_str('foo', strings_only=True)) # N: Revealed type is "builtins.str"
|
||||
reveal_type(force_str(S('foo'), strings_only=True)) # N: Revealed type is "main.S"
|
||||
|
||||
@@ -7,12 +7,12 @@
|
||||
@cached_property
|
||||
def attr(self) -> List[str]: ...
|
||||
|
||||
reveal_type(attr) # N: Revealed type is "django.utils.functional.cached_property[builtins.list*[builtins.str]]"
|
||||
reveal_type(attr) # N: Revealed type is "django.utils.functional.cached_property[builtins.list[builtins.str]]"
|
||||
reveal_type(attr.name) # N: Revealed type is "builtins.str"
|
||||
|
||||
reveal_type(Foo.attr) # N: Revealed type is "django.utils.functional.cached_property[builtins.list*[builtins.str]]"
|
||||
reveal_type(Foo.attr.func) # N: Revealed type is "def (*Any, **Any) -> builtins.list*[builtins.str]"
|
||||
reveal_type(Foo.attr) # N: Revealed type is "django.utils.functional.cached_property[builtins.list[builtins.str]]"
|
||||
reveal_type(Foo.attr.func) # N: Revealed type is "def (*Any, **Any) -> builtins.list[builtins.str]"
|
||||
|
||||
f = Foo()
|
||||
reveal_type(f.attr) # N: Revealed type is "builtins.list*[builtins.str]"
|
||||
reveal_type(f.attr) # N: Revealed type is "builtins.list[builtins.str]"
|
||||
f.attr.name # E: "List[str]" has no attribute "name"
|
||||
|
||||
Reference in New Issue
Block a user