Commit Graph

91 Commits

Author SHA1 Message Date
David Euresti
f7aedb4d21 Fix type annotations in fnmatch for Python 2.
Make some AnyStr others _EitherStr.
2017-02-22 20:15:35 -08:00
Andrey Vlasovskikh
295788b672 Missing special attributes of class instances inherited from object (#943)
* Missing special attributes of class instances inherited from object
* object.__reduce__ returns a tuple

It's up to its inheritors to return either a tuple or a string.
2017-02-20 11:50:14 -08:00
David Euresti
dbea48fc7a Make 2nd argument to ModuleType an optional kwarg (#941) 2017-02-20 11:10:59 -08:00
Andrey Vlasovskikh
39d89ef233 Class 'property' inherits from 'object' for PY2 2017-02-20 11:04:27 -08:00
Andrey Vlasovskikh
7212f23f7b Added missing 'property' attributes 2017-02-20 11:04:27 -08:00
Andrey Vlasovskikh
43c1369901 More precise type for 'slice' constructor
start and stop arguments are required even though they can be None.
2017-02-20 11:03:30 -08:00
Matthias Kramm
f869a5d351 fix bugs in stdlib/2/csv.py (#932) 2017-02-13 20:21:19 -08:00
Jelle Zijlstra
a778704b30 add Counter, Deque, ChainMap (#928) 2017-02-11 10:52:09 -08:00
Tom Manderson
65b45282f4 Update python 2 UUID stubs (#922) 2017-02-08 15:19:56 -08:00
Matthias Kramm
7a211921dd asctime/strftime take a tuple, too (#921) 2017-02-07 16:22:47 -08:00
David Euresti
db84eb7844 Fix hashlib to accept multiple data types (#918) 2017-02-06 17:24:48 -08:00
David Euresti
6eca1a04da Some ssl fixes (#919)
Fix return of wrap_socket.
Add read, write, pending to SSLSocket
Fix argument to socket.setdefaulttimeout
2017-02-06 17:23:22 -08:00
rchen152
c9e992ea8d Fix a few return types in stdlib/2/inspect.pyi. (#916) 2017-02-06 08:19:14 -08:00
Mike Patek
c760a4e949 Make OrderedDict inherit from Reversible (#912)
Fixes #904
2017-02-01 09:23:43 -08:00
Matthias Kramm
b240b241f0 add stdlib/2/repr.pyi (#910) 2017-01-31 14:56:48 -08:00
Matthias Kramm
6855a20a51 add TestCase.failureException (#907) 2017-01-31 14:37:52 -08:00
Matthias Kramm
295ffbe4f3 improve inspect.pyi (#908) 2017-01-31 14:34:18 -08:00
Matthias Kramm
293dcfa661 fix socket.sendto (#909) 2017-01-31 14:32:15 -08:00
Matthias Kramm
987f465b4f add missing import 2017-01-31 09:25:45 -08:00
Valérian Rousset
fe15d91041 merge */xml/etree into 2and3/xml/etree (#899)
Fixes #287.
2017-01-30 13:19:28 -08:00
Lucas Wiman
7c93bb07e1 Update annotations for unittest.skip* methods. (#877) 2017-01-29 20:33:49 -08:00
Jelle Zijlstra
6e84021f56 ChainMap fixes (#878)
- It didn't exist before 3.3 (https://docs.python.org/3/library/collections.html#chainmap-objects)
- It's not a subclass of dict
2017-01-29 20:29:29 -08:00
Matt Kimball
bb5ba13315 Moved syslog from 2/ to 2and3/. Allow both forms of syslog.syslog. (#884) 2017-01-29 20:19:13 -08:00
miedzinski
d486e2a8d5 Add typing.ClassVar (fixes #888) (#889) 2017-01-29 17:15:04 -08:00
Andrey Vlasovskikh
2d46679da8 Added attributes present in inheritors of types.InstanceType (#885) 2017-01-29 11:26:30 -08:00
Andrey Vlasovskikh
bb33cb0119 Added __instancecheck__ and __subclasscheck__ to type (#887) 2017-01-29 11:17:01 -08:00
Andrey Vlasovskikh
8ce64ce782 Updates to slice built-in (#891)
Makes args and attributes optional.
2017-01-29 11:16:23 -08:00
Andrey Vlasovskikh
2b25b3ef6d Argument of input() is not restricted to str (#890) 2017-01-29 10:34:32 -08:00
Lucas Wiman
c048984ab9 Update stub of str to match documentation. (#893) 2017-01-29 10:14:32 -08:00
Lucas Wiman
6d1edb285d Expand several stdlib methods to accept unicode or str. (#869)
Expand several stdlib methods to accept unicode or str.
2017-01-27 16:03:25 +00:00
Andrey Vlasovskikh
c8435f4315 Added object.__sizeof__ (#865)
* Added object.__sizeof__

* Removed __sizeof__ inherited from object

* Made sqlite3 classes for Python 2 inherit from object

* Removed __sizeof__ inherited from object
2017-01-26 12:05:53 -08:00
Andrey Vlasovskikh
025f31dcc9 Added class super to builtins (#867) 2017-01-26 11:53:59 -08:00
Andrey Vlasovskikh
1d1a2e458c Added methods of typing.NamedTuple (#864) 2017-01-26 11:52:59 -08:00
Andrey Vlasovskikh
39df0d0725 Added object as the base class of type (#866) 2017-01-26 11:46:15 -08:00
Bertrand Bonnefoy-Claudet
c5ffe4f1d9 Fix returned decoder/encoder types in codecs 2017-01-23 10:32:53 -08:00
Alex Frieder
db09b441ce Add __nonzero__ to numeric builtin types 2017-01-20 12:41:16 -08:00
Jukka Lehtosalo
f2579e532f Update signature of dict.get (#852)
Without this change, mypy can't infer proper types for cases like
`d.get(k, [])` where it needs type context to infer the type of
`[]`. We add the value type to the second argument to `get` using
union types, and this provides the context. This doesn't affect
the effective signature of `get`, other than providing the type
context for mypy.

Also removed some related redundant method definitions where we can
just inherit the base class definition. This makes it easier to
keep the method signatures consistent.

Note that this requires a few mypy PRs before mypy will be able to
use this effectively:

* https://github.com/python/mypy/pull/2718
* https://github.com/python/mypy/pull/2715
2017-01-20 07:41:54 -08:00
Ethan
3b30996733 Change ast's parse signature to return Module (#836) 2017-01-17 09:49:41 -08:00
Jukka Lehtosalo
35978a7ca5 Make signature of DictMixin.get consistent with Mapping.get (#838) 2017-01-17 14:08:49 +00:00
Jukka Lehtosalo
734ad44a11 Make MRO of UserDict.DictMixin consistent with Mapping (#837)
This fixes MRO conflicts produced by mypy when using multiple
inheritance.
2017-01-17 13:55:31 +00:00
Guido van Rossum
70d012ed0b Remove trailing commas, pytype doesn't like them 2017-01-13 13:59:07 -08:00
Łukasz Langa
37fc626ffd Add type signature for a WSGI Application to wsgiref (#825)
This type is something core to Python and is useful when typing web applications,
but doesn't actually exist in the stdlib anywhere.  I put this in wsgiref, but I am
open to suggestions as for a better place.

(Original PR by @rowillia.)
2017-01-13 13:36:34 -08:00
Roy Williams
41ba734fc2 Fix return type of next when default parameter is provided.
**test_next.py**:
```python
z = (x*2 for x in range(10))
reveal_type(next(z, None))
```

Before:
```shell
test_next.py:2: error: Revealed type is 'builtins.int*'
```

After:
```shell
test_next.py:2: error: Revealed type is 'Union[builtins.int*, builtins.None]'
```
2017-01-13 09:46:51 -08:00
Eric Moyer
2580702036 Match py2 assert*IsInstance with isinstance
The python2 unittest `assertIsInstance` and `assertNotIsInstance` stub
did not allow using a tuple of classes, but that behavior is [in the
documentation][1]. This commit copies the type stub for the isinstance
built-in to the stubs for `assertIsInstance` and `assertNotIsInstance`

I made this commit in response to @gvanrossum's request in
python/typeshed#802 (which fixed this issue for python 3) that I apply
the same fix to python 2.

[1]: https://docs.python.org/2.7/library/unittest.html#unittest.TestCase.assertNotIsInstance
2017-01-12 09:29:23 -08:00
Roy Williams
6008b9dbb1 Overload signature of get to return an Optional value and to allow default to take any type to match runtime behavior.
This chage more closely matches the behavior of `get` at runtime.  Users can pass whatever they want in to the default
parameter and it will be returned if the key is absent.  Additionally, `get` should return an `Optional` if called with
only one parameter.

```python
z = {'a': 22}
reveal_type(z.get('b'))
reveal_type(z.get('b', 22))
reveal_type(z.get('b', 'hello'))
```

Before:
```shell
test_get_default.py:2: error: Revealed type is 'builtins.int*'
test_get_default.py:3: error: Revealed type is 'builtins.int*'
test_get_default.py:4: error: Revealed type is 'builtins.int*'
test_get_default.py:4: error: Argument 2 to "get" of "dict" has incompatible type "str"; expected "int"
```

After:
```shell
test_get_default.py:2: error: Revealed type is 'Union[builtins.int*, builtins.None]'
test_get_default.py:3: error: Revealed type is 'builtins.int'
test_get_default.py:4: error: Revealed type is 'Union[builtins.int, builtins.str*]'
```
2017-01-11 22:02:29 -08:00
Łukasz Langa
4603baaa6c Restore stdlib/2/builtins.pyi as a symlink to __builtin__.pyi (#823)
This was broken by python/typeshed@fe0e374.

I confirmed no changes so far were made to builtins.pyi that would require
porting.
2017-01-11 17:24:14 -08:00
David Fisher
2cb8e184cc Add NoReturn (#811)
* Add NoReturn
2017-01-04 13:38:05 -08:00
z33ky
93bb4604cb Add special methods for object (#774)
* Add special methods for object

* Add __format__ to 2/__builtin__.pyi too

* Remove redundant __format__ from float.
2017-01-04 13:52:51 +00:00
lionel-github
f775ef3bc5 Fix RawConfigParser.read stub for Python 2. (#808)
Bring it in line with the stub used in the Python 3 version.
2017-01-02 15:36:03 -08:00
Lukasz Langa
bacd6c0aed Add missing Set imports. 2016-12-21 01:17:55 -08:00