Commit Graph
3573 Commits
Author SHA1 Message Date
Jelle ZijlstraandŁukasz Langa db0c106d2f add Optional to ddirs 2017-03-18 15:16:56 -07:00
Semyon ProshevandŁukasz Langa 4cd137189a Remove object as the only ancestor for classes in Python 3 stubs. 2017-03-18 14:57:57 -07:00
Jelle ZijlstraandŁukasz Langa 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 WetterauandJukka Lehtosalo 50327f00ee Add types for parse_qs and parse_qsl when taking bytes as input (#1020) 2017-03-18 14:52:30 -07:00
Jelle ZijlstraandJukka Lehtosalo 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 ZijlstraandŁukasz Langa 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 LehtosaloandŁukasz Langa 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 ZijlstraandŁukasz Langa 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 ManoelandŁukasz Langa da6d4314d3 Add missing method 'indices' in 'slice' builtin (#1007) 2017-03-16 09:18:24 -07:00
Jelle ZijlstraandŁukasz Langa 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
jkleintandŁukasz Langa 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 SantosandŁukasz Langa 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 PietersandŁukasz Langa 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 ZijlstraandGuido van Rossum 48b1962951 drop union return type from getaddrinfo (#1002) 2017-03-14 11:45:09 -07:00
Jelle ZijlstraandGuido van Rossum 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 ReversatandGuido van Rossum 01b3915b3f Add encoding and errors keyword arguments (new in 3.6) (#1001) 2017-03-14 10:44:10 -07:00
David EurestiandGuido van Rossum 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
=^_^=andGuido van Rossum 45f4a1e913 Allow nested tuples in isinstance/issubclass (#998)
Fixes #997
2017-03-14 08:04:12 -07:00
Antoine ReversatandGuido van Rossum 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 LevkivskyiandGuido van Rossum b430318ac0 Fix non-subscriptable type aliases (#993) 2017-03-13 17:24:34 -07:00
Semyon ProshevandGuido van Rossum 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 LevkivskyiandGuido van Rossum 0bf23b3727 Add __annotations__ to Python 3 (#990) 2017-03-13 07:38:38 -07:00
Jelle ZijlstraandGuido van Rossum eb07fd3c1a make sure typevars defined in stubs are private (#989)
And also a few type aliases I noticed in the process.

Found using https://github.com/JelleZijlstra/stublint/commit/59f9cac0951f431fbc3abf8803adeaac6e489aac
2017-03-13 07:32:40 -07:00
Jelle ZijlstraandGuido van Rossum 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 ZijlstraandGuido van Rossum 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 ZijlstraandGuido van Rossum 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 KurczewskiandGuido van Rossum 2dbb5f0bc3 Fix unicodedata (#983)
Fixes #982.
2017-03-12 19:38:39 -07:00
Jelle ZijlstraandGuido van Rossum 47a19c761c fix typo in http.client (#985) 2017-03-12 19:33:47 -07:00
Jelle ZijlstraandGuido van Rossum 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
Jelle ZijlstraandGuido van Rossum 155fdd0cd4 Fixes to tempfile stubs (#981)
Fixes #975

And a few more things I noticed while reading the tempfile docs.

    In 3.5, most functions in tempfile were changed to accept either str or bytes in their prefix and suffix arguments, and return bytes or str accordingly. This seemed like a case for AnyStr.
    We were missing tempdirb and tempprefixb, added in 3.5.
    TemporaryFile and others were declared as returning BinaryIO, but they actually return either binary or text IO depending on the mode passed in. I changed the return type to IO[Any], similar to builtins.open.
2017-03-12 19:32:46 -07:00
Matthias KrammandGitHub 02bd2bdf69 Make pickle accept IO[str] instead of BinaryIO. (#980)
* Make pickle accept IO[str] instead of BinaryIO.

This makes the following code work:
pickle.Unpickler(cStringIO.StringIO())
(Which didn't work before because cStringIO.StringIO inherits "only"
 from IO[str], not BinaryIO)

* Use bytes instead of str.
2017-03-10 20:24:20 -08:00
=^_^=andGuido van Rossum 82f1104e59 Add Collection to typing.pyi (#967)
Fixes #965
2017-03-10 15:52:08 -08:00
Jelle ZijlstraandGuido van Rossum cf6c563ce1 codecs: merge 2 and 3 stubs (#960) 2017-03-10 15:50:14 -08:00
Ivan LevkivskyiandGuido van Rossum bd5b33f3b1 Fix frozenset (#979) 2017-03-10 13:59:32 -08:00
Sebastian MeßmerandMatthias Kramm 85866fe1b9 Fix unittest/mock.pyi (#973)
* Fix unittest/mock.pyi

Add a lot of missing types

* Fix formatting

* Make two and from_kall bool

* Further style fixes

* style fixes
2017-03-08 06:50:28 -08:00
Dominik MiedzińskiandMatthias Kramm 4f51a4f2fc Improve ABCMeta.register signature (#962)
* Improve ABCMeta.register signature

* Fix ABCMeta.register return type for Python 3.3+
2017-03-07 16:42:06 -08:00
Hong MinheeandMatthias Kramm aa54fc1958 Add missing attribs to urllib.response.addinfourl (#968) 2017-03-07 16:38:52 -08:00
David EurestiandMatthias Kramm a1e74b9261 Add stub for filecmp to 2and3 (#955)
* Add stub for filecmp to 2and3

* Fix spacing

* Moar spacing

* Use _SupportsBool

* Code review
2017-03-07 16:36:25 -08:00
David EurestiandMatthias Kramm 63590301f7 Add stubs for py_compile. (#954)
* Add stubs for py_compile.

* Correct Text
2017-03-07 16:35:45 -08:00
rchen152andMatthias Kramm f34c550f04 Correct some return types in itertools.pyi from Iterable to Iterator. (#947)
* Fix a few return types in stdlib/2/inspect.pyi.

* Rename _FrameRecord to _FrameInfo

* Correct some return types in itertools.pyi from Iterable to Iterator.
2017-03-07 06:42:50 -08:00
Sebastian MeßmerandGuido van Rossum 6ffaadbd67 Fix string.pyi (#971)
Add missing types for two arguments
2017-03-06 08:08:36 -08:00
Sebastian MeßmerandGuido van Rossum afde2fd234 Fix type stubs for logging (#972)
Add missing type for two parameters
2017-03-06 08:05:42 -08:00
Sebastian MeßmerandGuido van Rossum ba82ac08ed Fix type stubs in type.pyi (#970)
Mypy recognized the type hints as parameter names. This fixes that.
2017-03-06 08:04:51 -08:00
Michael WalterandJukka Lehtosalo 58efa1fe55 Update json.pyi (#957)
According to https://docs.python.org/3/library/json.html#json.loads, the s parameter can be "a str, bytes or bytearray instance".
2017-02-27 17:51:41 +00:00
lincolnqandŁukasz Langa 59789b8a3e Improve types for xml.etree.ElementTree (#930)
* Improve types for xml.etree.ElementTree

Update signatures to reflect the following peculiarities of the
ElementTree library:

- The elementtree library accepts unicode or bytes for most xml values
  in python2, and coerces everywhere -- but in python3, only str makes
  sense.
- In python 2, the library produces str or unicode instances
  unpredictably, depending on whether the xml is decodeable as ascii or
  not. In python 3, it always produces str instances.
- The parser functions accept unicode or bytes in 2 and 3 -- again, will
  coerce individual instances so heterogeneous lists are ok.
- In python 3, the tostring functions produce bytes or str, depending on
  the value of the 'encoding' parameter.

* improve docs
* Improve ElementFactory type by specifying dict of 2nd arg
2017-02-22 20:43:09 -08:00