Commit Graph

1420 Commits

Author SHA1 Message Date
rchen152
76c733dc5b Fix the return type of os.popen() (#1820) 2018-01-10 05:57:29 -08:00
Sebastian Rittau
7073bc0a49 Cleanup and merge datetime.pyi (#1805) 2018-01-09 22:06:31 +00:00
Jelle Zijlstra
2dd85c3658 move os.stat_result into posix stub (#1818)
This removes the circular dependency between the os and posix stub, which
is somehow triggering python/mypy#4442. We should ideally fix the mypy bug,
but since it's easy enough to fix the import cycle, we might as well do that
too.
2018-01-09 13:50:56 -08:00
Elliott Beach
688f813457 fix subclassing ExitStack (#1810) 2018-01-08 06:02:30 -08:00
rchen152
db6e2a637b Fix some bugs in xml.etree.ElementTree.Element's container behavior. (#1816)
* Have Element inherit from MutableSequence, which is more precise than Sequence.
* Remove unnecessary inherited methods (e.g., __getitem__).
* Correct extend() to take an Iterable. (Sequence was too specific.)
* Alphabetize the typing imports, for sanity.
2018-01-04 19:04:46 -08:00
rchen152
29acda6431 Add itertools.imap signatures for more than two iterables. (#1815) 2018-01-04 19:03:41 -08:00
rchen152
af98a29823 Add __getslice__ to the Python 2 definition of mmap.mmap (#1812) 2018-01-04 16:16:00 -08:00
rchen152
592bdcc8a6 Fix the return type of textwrap.wrap (#1813) 2018-01-04 16:15:17 -08:00
rchen152
f6b60cb3ea A couple fixes to the io stubs. (#1811)
1. The 'name' argument to FileIO.init can be either a string or an integer: https://docs.python.org/2/library/io.html#io.FileIO
2. An mmap.mmap object can be used in most places that a bytearray can: https://docs.python.org/3.5/library/mmap.html
2018-01-04 16:14:38 -08:00
Daniel Bowtell
bb8b9bdaec codecs.iter(en|de)code fix return type (#1807)
codecs.iterencode and codecs.iterdecode should both return Generators rather than Iterators
2018-01-02 12:49:34 -08:00
Salvo 'LtWorf' Tomaselli
c8c4a8f208 Added filelist attribute to ZipFile (#1798) 2018-01-02 10:18:03 -08:00
Jelle Zijlstra
4ee508a032 make os.scandir work as a context manager (#1787)
Rework of #1583. Fixes #1573.

See documentation in https://docs.python.org/3/library/os.html#os.scandir.
2018-01-02 10:17:38 -08:00
Elazar Gershuni
b41c6dafee Make Enum Iterable (etc.) only structurally (#1755)
Can't express the precise type nominally - see mypy#3210 for details

* Make self generic in __contains__
2017-12-21 13:32:10 -08:00
Anthony Sottile
03044212d4 Add typings for bool __{r,}{and,or,xor}__ (#1795) 2017-12-20 21:04:55 -08:00
Semyon Proshev
4b6b484786 Add clear method to MutableSequence in Python 3 (#1765) 2017-12-15 19:37:43 -08:00
Ashwini Chaudhary
c5439668fe Added stub for sre_compile(2and3) (#1493) 2017-12-14 20:52:54 -08:00
gossrock
cb1d150092 Improvements to stdlib/3/_curses.pyi - take 3 (#1772)
* Added missing annotation for start_color() and wrapper() functions

* 1) Changed Optional types to be optional arguments (checked documentation and manual experiments to make sure I was doing it right)

2) Modified format to match CONTRIBUTING.md conventions

3) corrected a few missing return types or other mistaken type
annotations
2017-12-14 20:38:39 -08:00
Semyon Proshev
a1e85be4c9 Add __int__ to uuid.UUID (#1783) 2017-12-13 08:20:47 -08:00
Neil Conway
46125886c0 argparse: Add annotations for instance variables. (#1763) 2017-12-12 15:10:31 -08:00
Elazar Gershuni
97fb265a4c Avoid over-constraining selftype of EnumMeta (#1770)
This is needed for python/mypy#4311, and is sound.
2017-12-04 11:21:57 -08:00
Neil Pilgrim
fc10a94db1 Distutils improvements to cmd.pyi and log.pyi (#1748)
* Add more functions to distutils.cmd.Command.

* Add detail to distutils.log, previously an empty file.
2017-11-27 15:47:04 -05:00
Tim Abbott
c1971fb443 imaplib: Fix annotation for search. (#1762)
* imaplib: Fix annotation for search.

https://docs.python.org/3/library/imaplib.html#imaplib.IMAP4.search
shows that IMAP4.search takes a number of str args, not a number of
List[str] args (I can see how one would be confused, though, because
of the *criteria).

* imaplib: Fix annotation for store.

While it's called "flag_list",
https://docs.python.org/3/library/imaplib.html#imaplib.IMAP4.store
clearly shows it's expecting a string with a list of flags in it, not
a Python list.
2017-11-25 13:23:57 -08:00
Semyon Proshev
b0d9752a1c Make func in builtin map optional in Python 2 (#1751)
* Make `func` in builtin `map` optional in Python 2

* Add `map` overloads with `None` `func` in Python 2
2017-11-22 07:57:07 -08:00
Sebastian Rittau
622e744f3e Extract WSGIEnvironment and change value type to Any (#1745)
* Extract WSGIEnvironment in wsgiref.types

* Change value type of WSGIEnvironment to Any

Per PEP 3333, a WSGI environment can contain anything, not just strings.
2017-11-21 17:00:49 -08:00
Masayuki Yamamoto
39eefa544c Fix parameters of socketserver.BaseServer.finish_request() (#1754)
See also: python/cpython#4445
2017-11-21 16:42:05 -08:00
rchen152
8753fc78df Add setUpClass and tearDownClass to unittest.TestCase in Python 2 stub (#1760) 2017-11-21 16:39:11 -08:00
gossrock
15983ffc51 Add LINE and COL definitions to /stdlib/3/curses/__init__.py (#1757)
Fixes #1596
2017-11-20 13:44:20 -08:00
Ivan Levkivskyi
ec2cb8e44f Convert selected ABCs to Protocols (#1220) 2017-11-19 08:52:16 -08:00
Ben Leslie
7806420105 Fix missing colon in StreamHandler.stream type annotation (#1753)
The missing colon in the variable type annotation means that the type of stream is currently incorrectly determined to be of type ellipsis, rather than IO[str].
2017-11-18 15:57:55 -08:00
Ethan Smith
7737e519a3 Add __dict__ to object in Python 2 (#1746)
Use str as key type for __dict__
2017-11-16 08:44:48 -08:00
Semyon Proshev
7c11ae03de Add __qualname__ to functions and methods (#1750) 2017-11-16 08:37:36 -08:00
Semyon Proshev
3029357ad7 Add unicode.__rmul__ (#1749) 2017-11-16 08:31:55 -08:00
Patrick Valsecchi
d62743d788 Make traceback.FrameSummary Iterable (#1741)
To make this code valid:
```python
import traceback
for filename, lineno, name, line in traceback.extract_stack(stack):
    pass
```
2017-11-13 07:05:16 -08:00
Jelle Zijlstra
83ca997140 Change more defaults to ... (#1729)
* codemod ': Any = None' ': Any = ...'
* codemod ': (Union|Optional)([^=]+)\s+=\s+-?\d+' ': \1\2 = ...'
* codemod ': (Union|Optional)([^=]+)\s*=\s*-?(None|False|True)' ': \1\2 = ...'
* codemod ': (int|float|bool)\s*=\s*-?\d+' ': \1 = ...'
* codemod ': (bool)\s*=\s*(False|True)' ': \1 = ...'
* codemod ': Any\s*=\s*(False|True|None)' ': Any = ...'
2017-11-13 06:56:24 -08:00
Jelle Zijlstra
0080017d02 fill out bz2 stub (#1728)
- add a default value to ...
- add some missing version checks
- add some missing arguments
2017-11-13 06:55:43 -08:00
Nathan Henrie
87fca814b1 addr should be Tuple[str, int], not str (#1740)
I think `addr` here should also be  `Tuple[str, int]`, the same change made to `sendto` in [this pr merged a few months ago](0e26c1f936 (diff-d21efb8da2d73c6c7c769270b387cd47)).
2017-11-12 23:14:16 -08:00
Alex Willmer
55f15427bd Refine stdlib commands module (add mkarg(), mk2arg(), correct get*()) (#1739) 2017-11-12 22:44:51 -08:00
FichteFoll
a44de46a00 use_builtin_types is optional for plistlib.load (#1738) 2017-11-11 16:54:11 -08:00
Jelle Zijlstra
97be335160 don't import enum in Python 2 (#1724)
* don't import enum in Python 2

Fixes a pytype issue from #1720.

* move enums together
2017-11-10 10:23:22 -08:00
Jelle Zijlstra
9390a49600 complete multiprocessing.connection stub (#1716)
Adds additional public members based on https://github.com/python/cpython/blob/master/Lib/multiprocessing/connection.py#L10 and https://docs.python.org/3/library/multiprocessing.html#multiprocessing-listeners-clients.

I found some discrepancies in the docs while adding these stubs and filed python/cpython#4304 to address them.
2017-11-09 10:40:49 -08:00
Jelle Zijlstra
324f1761f4 Change more defaults to ... (#1727) 2017-11-09 10:32:17 -08:00
Josh Staiger
fd25e534ad Add default timeout for Condition.wait_for (#1726)
Fixes:

- Too few arguments for "wait_for" of "Condition"

when timeout is not specified.
2017-11-09 10:12:33 -08:00
Jelle Zijlstra
54dd6ba27c Change numerous default values to ... (#1722)
This is the convention, and some default values (e.g. strings) apparently
break pytype.
2017-11-09 06:28:40 -08:00
Daniel Axtens
66821993f6 Fix email header types (#1472)
Some email header operations can operate on or return a Header object as well as a string.
2017-11-09 06:03:11 -08:00
Kenny Do
26ea6c0740 pkgutils.walk_packages takes optional list of str for path (#1725) 2017-11-09 05:57:29 -08:00
Jelle Zijlstra
eaf8972e48 complete Python 3 gzip stub (#1723)
* complete python 3 gzip stub
* IOBase.closed is read-only
2017-11-09 05:56:55 -08:00
Henri Bai
44f7869c80 Fix blake2 binding (#1663)
* Fix blake2 binding

Currently calling `hashlib.blake2b` results in the following type errors:

Cannot instantiate abstract class '_BlakeHash' with abstract attributes 'copy', 'digest', 'hexdigest' and 'update'
Missing positional arguments "data", "key", "salt", "person", "fanout", "depth", "leaf_size", "node_offset", "node_depth", "inner_size", "last_node" in call to "_BlakeHash"

* Additional changes to reflect the hashlib implementation

Modifies the type signatures of:
 * blake2b
 * blake2s
 * sha3_224
 * sha3_256
 * sha3_384
 * sha3_512
 * shake_128
 * shake_256
To reflect the types that are implemented in the standard library.
These should be exposed as `type`s instead of `builtin_function_or_method`s.
e.g.
In [40]: type(hashlib.blake2b)
Out[40]: type

In [41]: type(hashlib.md5)
Out[41]: builtin_function_or_method
2017-11-08 19:39:55 -08:00
Luka Sterbic
0a9a2b6470 _asdict returns OrderedDict in 3.1 and up (#1690) 2017-11-08 08:50:36 -08:00
Sebastian Steenbuck
2551b76bde Replace default strings ' ' with ... (#1721)
This fixes a problem with pytype.
2017-11-08 08:49:54 -08:00
FichteFoll
f933b9384c Refine str.maketrans and str.translate (#1613)
str.translate requires a Mapping or Sequence (in essence, anything
with __getitem__), not a Dict.

str.maketrans in the one-argument form only converts character string
keys to their unicode ordinal, leaving any of the values untouched.
This mapping may use both integers or strings as keys at the same time.

str.maketrans in the multi-argument form returns a dict with any of the
values str, int or None, as recognized by str.translate.
2017-11-07 18:55:05 -08:00