Commit Graph

939 Commits

Author SHA1 Message Date
David Euresti
2fdcd2e9e8 Let MutableMapping.pop take a different default type. (#1044)
This is particularly useful for the idiom `d.pop(k, None)` to remove an item if it exists.

Fixes #278
2017-03-20 12:10:38 -07:00
David Euresti
d57bce361f Reorder 2/os/__init__.py for combining
This was a simple reordering of the lines in the file so that it looks like 3/os/__init__.py.
This should let us more easily combine the files
2017-03-20 12:06:20 -07:00
Semyon Proshev
25c66a011e Add zip stubs for 5 and more arguments. (#1041)
* Add `zip` stubs for 5 and more arguments.

* Update `zip` stubs for 6+ arguments.
2017-03-20 11:38:38 -07:00
Günther Noack
014a23ae06 Define _T5 2017-03-20 17:29:39 +01:00
Günther Noack
8e0d38fd77 Update itertools.pyi 2017-03-20 17:16:26 +01:00
Günther Noack
536d192897 Update itertools.pyi 2017-03-20 16:56:55 +01:00
Jelle Zijlstra
48920fea7e Remove xxsubtype stubs (#1039)
As suggested by Guido
2017-03-20 08:43:19 -07:00
Jelle Zijlstra
7448f23d9f spwd: move to 2and3 and add missing argument 2017-03-20 08:39:24 -07:00
Günther Noack
42f37c0f04 5-ary izip 2017-03-20 15:17:39 +01:00
Eddie Antonio Santos
16babfdfda Stub for tty (#1038)
Adds Python 2 and 3 stubs for `tty` module.  Addresses one of the missing stubs mentioned in #1019.
2017-03-19 17:35:31 -07:00
Jelle Zijlstra
658abe7c9e Merge and complete stubs for sysconfig (#1040)
* unify and complete sysconfig stubs

* add missing imports

* and another
2017-03-19 17:34:08 -07:00
Jelle Zijlstra
ee22a489d9 quopri: unify 2 and 3, add types 2017-03-19 13:08:54 -07:00
Jelle Zijlstra
7906059adb pyclbr: move to 2and3 (#1034)
* pyclbr: move to 2and3

This module is completely identical between 2 and 3 in CPython (apart from a small few syntax changes).

* fix typo
2017-03-19 13:05:07 -07:00
Jelle Zijlstra
13dbbf9084 Add some missing types to urllib2 (#1012)
* add some missing types to urllib2 stubs

There are still a number of missing types in this file.

* uri is the union, not realm
2017-03-19 12:47:58 -07:00
David Euresti
d43f3be914 Unify stdlib/{2,3}/typing.pyi
Also fix signature of IO.seek, IO.truncate, IO.write, and MutableMapping.update
Fixes #1016

Note: I couldn't put typing.pyi in 2and3 because of an import cycle when adding `import sys` to 2/typing.pyi
2017-03-19 09:43:40 -07:00
David Wetterau
f35500caa8 Add stub for "binhex" module for 2and3 (#1028)
* added binhex for 2 and 3

* fix flake8 and use IO
2017-03-18 16:28:22 -07:00
Jelle Zijlstra
db0c106d2f add Optional to ddirs 2017-03-18 15:16:56 -07:00
Semyon Proshev
4cd137189a Remove object as the only ancestor for classes in Python 3 stubs. 2017-03-18 14:57:57 -07:00
Jelle Zijlstra
efdf2f1b17 add compileall stubs to 3 and add types to the ones in 2 (#1023)
* add compileall stubs to 3 and add types to the ones in 2

Didn't merge the stubs because all functions have additional parameters since 3.2,
so there would be no shared code between 2 and 3.

* add comment
2017-03-18 14:55:47 -07:00
David Wetterau
50327f00ee Add types for parse_qs and parse_qsl when taking bytes as input (#1020) 2017-03-18 14:52:30 -07:00
Jelle Zijlstra
cb7949b14e fixes to dis stubs (#1025)
- Add sys.version_info checks (mypy now supports them)
- Went over Python 3 docs and corrected a few things
- Reexport things that are imported from opcode
2017-03-18 14:50:31 -07:00
Jelle Zijlstra
5898d75913 stub for statistics (#1021)
* stub for statistics

* fix missing imports

* drop int from the typevar
2017-03-18 14:41:42 -07:00
Jukka Lehtosalo
f296b37e80 Fixes to unittest stubs (#1024)
* Fixes to unittest stubs

* Make types more precise
2017-03-18 14:35:33 -07:00
Semyon Proshev
99a1afd72b Update input parameter type for os.fsencode (+bytes) and os.fsdecode (+str). 2017-03-18 18:12:27 +03:00
Jelle Zijlstra
52dcfeed12 merge 2 and 3 stubs for unicodedata (#1013)
* merge 2 and 3 stubs for unicodedata
* fix a few return types to str in py2
2017-03-17 10:39:44 -07:00
Tadeu Manoel
da6d4314d3 Add missing method 'indices' in 'slice' builtin (#1007) 2017-03-16 09:18:24 -07:00
Jelle Zijlstra
349ff59f33 change empty bodies from "pass" to "..."
CONTRIBUTING.md says to prefer ... Not the most impactful change but fixing
these will allow us to lint for it in the future and get a consistent style.
2017-03-16 09:13:08 -07:00
jkleint
17be26165d Relax type of TestCase.assertCountEqual() params from Sequence to Iterable (#1006)
The stubs for `unittest.TestCase.assertCountEqual()` specify the parameters are Sequences; in fact the method works fine with Iterables, as the first thing the method does is convert them to lists.  [1]  The docs do say sequences, but it appears there is no reason they cannot be Iterables.

[1]: https://github.com/python/cpython/blob/master/Lib/unittest/case.py#L1156
2017-03-15 22:25:20 -07:00
Eddie Antonio Santos
a2fe3f4c59 Add os.supports_* sets (new in 3.3) (#1005)
* Add os.supports_* sets (new in 3.3)
* Use Callable[..., Any] instead of builtin.function.
2017-03-15 22:24:16 -07:00
Martijn Pieters
3f0eb995aa Complete the tokenize module type hints (#984)
* Complete the tokenize module type hints
* Add missing import for Optional
* Use a 3.5-style named tuple, untokenize speaks with forked tongue so use Any
* Use explicit types for fields
2017-03-15 09:57:17 -07:00
Jelle Zijlstra
48b1962951 drop union return type from getaddrinfo (#1002) 2017-03-14 11:45:09 -07:00
Jelle Zijlstra
11350ed8cc Fix missing argument types in py3 stdlib (#995)
Still missing a few in _subprocess (a Windows-only private module) and decimal
(I gave up).
2017-03-14 11:43:42 -07:00
Antoine Reversat
01b3915b3f Add encoding and errors keyword arguments (new in 3.6) (#1001) 2017-03-14 10:44:10 -07:00
David Euresti
514bf736da Add stub for ftplib to 2and3 (#956) 2017-03-14 08:22:05 -07:00
Łukasz Langa
05cba488a5 Revert "Fix click annotation syntax and add missing keyword arguments to subprocess (new in 3.76) (#999)"
This reverts commit 43a1f761b2.
2017-03-14 08:13:14 -07:00
=^_^=
45f4a1e913 Allow nested tuples in isinstance/issubclass (#998)
Fixes #997
2017-03-14 08:04:12 -07:00
Antoine Reversat
43a1f761b2 Fix click annotation syntax and add missing keyword arguments to subprocess (new in 3.76) (#999)
* Fix click annotations

* Add encoding and errors keyword arguments (new in 3.6)
2017-03-14 08:02:12 -07:00
Ivan Levkivskyi
b430318ac0 Fix non-subscriptable type aliases (#993) 2017-03-13 17:24:34 -07:00
Semyon Proshev
52da2a176b Fix datetime stubs (#992) 2017-03-13 09:12:46 -07:00
Semyon Proshev
e4fdd0eb62 Update stubs for pathlib.PurePath and pathlib.Path classes due to PEP-519. 2017-03-13 18:35:50 +03:00
Semyon Proshev
10860386d8 Update stubs for os.path, os.fsencode and os.fsdecode functions due to PEP-519. 2017-03-13 18:34:18 +03:00
Semyon Proshev
48b271c862 Update stub for builtin open function due to PEP-519. 2017-03-13 18:33:02 +03:00
Ivan Levkivskyi
0bf23b3727 Add __annotations__ to Python 3 (#990) 2017-03-13 07:38:38 -07:00
Jelle Zijlstra
eb07fd3c1a make sure typevars defined in stubs are private (#989)
And also a few type aliases I noticed in the process.

Found using 59f9cac095
2017-03-13 07:32:40 -07:00
Jelle Zijlstra
984307bf45 fix odd version comparisons (#988)
"> (3,)" works but looks like the code is checking for Python 4.

"<= (3, 5)" was intended to check for versions up to and including 3.5, and probably works that
way in current type checkers. However, sys.version_info is actually a 5-tuple that is greater
than (3, 5), so a hypothetical type checker that uses the full version info would interpret
this check incorrectly.

This ensures that all version_info comparisons use <, >=, ==, or !=.
2017-03-12 20:48:48 -07:00
Jelle Zijlstra
3e94c46e64 Add missing methods and @coroutine decorators to AbstractEventLoop (#958)
Closes #953.

I reviewed the documentation at https://docs.python.org/3/library/asyncio-eventloop.html#asyncio.AbstractEventLoop and added missing methods and missing @coroutine decorators.

I ran mypy on the sample file from the issue report to confirm that mypy handles the combination of @abstractmethod and @coroutine correctly.

Also fixed a number of types in this file that are annotated as Any but could be given more precise types (e.g., sockets and protocol factories).
2017-03-12 20:21:25 -07:00
Jelle Zijlstra
b6eec58d2c remove checks against patch versions (#987)
Both mypy and pytype only use the major and minor version in type checking. Using
checks like "sys.version_info >= (3, 4, 4)" won't actually work properly for
people type checking their code using version 3.4, because (3, 4) >= (3, 4, 4) will
always be false (at least in mypy's approach; not sure if pytype is different).
2017-03-12 20:16:09 -07:00
Marcin Kurczewski
2dbb5f0bc3 Fix unicodedata (#983)
Fixes #982.
2017-03-12 19:38:39 -07:00
Jelle Zijlstra
47a19c761c fix typo in http.client (#985) 2017-03-12 19:33:47 -07:00
Jelle Zijlstra
555f45b876 remove "return" statements from builtins.pyi (#986)
Type checkers shouldn't care that these methods are returning the same object.
2017-03-12 19:33:29 -07:00