Commit Graph

987 Commits

Author SHA1 Message Date
Sam Dunster
aaa83a7f12 Add missing attributes: asyncio.subprocess.Process (#1154)
Add typehints for the following `asyncio.subprocess.Process` attributes:

- `stdin`: `Optional[asyncio.streams.StreamWriter]`
- `stdout`: `Optional[asyncio.streams.StreamReader]`
- `stderr`: `Optional[asyncio.streams.StreamReader]`
- `pid`: `int`

Include stdin, stdout, and stderr also in SSP.
2017-04-11 15:14:37 -07:00
nimin98
20d9fcf858 Support callable contextmanagers in contextlib (#1152)
mypy could not recognize the case when we use contextmanager as a
decorator, which has been supported since Python 3.2.

In the following code snippet,

from contextlib import contextmanager

@contextmanager
def foo(arg1):
    try:
        print(arg1)
        print('1')
        yield
    finally:
        print('2')

@foo('0')
def foo2():
    print('3')

foo2()

we get mypy error as follows,
error: ContextManager[Any] not callable

The suggested changes can fix this error and properly reflect the
updated contextmanager usage pattern.
2017-04-11 14:51:03 -07:00
David Euresti
26360e821b Merge stdlib/{2,3}/os/path.pyi (#1150)
* Merge stdlib/{2,3}/os/path.pyi

To be renamed into stdlib/2and3/os/path.pyi later.

Also fixes #50

* CR fixes
2017-04-09 19:27:25 -07:00
Jelle Zijlstra
aa0d0d152e fix typos in uiid (#1151)
From #1148
2017-04-09 18:15:58 -07:00
David Euresti
a7f87bb006 Merge uuid module into 2and3 (#1148)
* Merge and improve uuid module

* Move uuid into 2and3

* Fix mistyped things, add compare operators
2017-04-09 18:05:03 -07:00
David Euresti
f741429a75 Move socket into 2and3 (#1149)
* Merge socket modules

* Move socket to 2and3
2017-04-07 18:01:33 -07:00
David Euresti
8bed2fce93 Merge binascii module into 2and3 (#1144)
* Unify binascii module

* Move binascii to 2and3

* CR fixes

* Fix flakes

* Fix flakes better
2017-04-06 21:53:38 -07:00
Roy Williams
452c1e1d78 Fix patch.object to return a _patch context manager. (#1142)
* Fix patch.object to return a _patch context manager.

This should fix https://github.com/python/typeshed/issues/914

* Prefer None over ... to be consistent with the rest of the file.
2017-04-06 18:47:28 -07:00
David Euresti
6e75432504 Merge token module into 2and3 (#1146)
* Merge token module; add values from 3.5

* Move token to 2and3

* Switch to ellipsis for token
2017-04-06 18:46:14 -07:00
Carl Meyer
166e56a8f0 Fix missing 'type: ' in opcode.pyi (#1143) 2017-04-05 17:06:09 -07:00
David Euresti
8401fc6838 Move __future__ module into 2and3 (#1140)
* Merge __future__

* Move __future__ into 2and3
2017-04-05 13:54:46 -07:00
David Euresti
26f5ffd5ba Add stubs for cmd (#1128) 2017-04-05 13:54:05 -07:00
David Euresti
b9616f1517 Merge base64 module into 2and3 (#1141)
* Merge base64 module

* Move base64 into 2and3
2017-04-05 13:51:26 -07:00
Jelle Zijlstra
f7e4cb8c79 make enums support len() (#1139) 2017-04-05 08:22:28 -07:00
John Reese
8510adfe05 Add socket enum classes from py3.4+ (#1121)
* Add socket enum classes from py3.4+

Adds four IntEnum classes in the socket module that mirror the
AF_, AI_, MSG_, and SOCK_ sets of constants.

* Update socket AddressInfo/MsgFlag to use IntFlag type

* IntFlag, AddressInfo, and MsgFlag are py 3.6+
2017-04-04 23:49:01 -07:00
Guido van Rossum
f44e461d19 Use a separate type variable for unique() (#1138)
* Use a separate type variable for unique()

See https://github.com/python/typeshed/pull/1136#discussion_r109727053

* actually use the new typevar
2017-04-04 23:48:19 -07:00
David Euresti
47c325c0ae Merge _random into 2and3 (#1134)
* Merge random module

* Move _random into 2and3
2017-04-04 20:14:07 -07:00
David Euresti
bc2234dba2 Merge zlib into 2and3 (#1130)
* Fix types and merge zlib.pyi

* Move zlib into 2and3
2017-04-04 20:13:23 -07:00
Guido van Rossum
7027c3e4e8 Support enum iteration (#1136)
* Support enum iteration.

Fixes python/mypy#2305.

* Make EnumMeta inherit from type, not ABCMeta.
2017-04-04 10:17:52 -07:00
David Euresti
56e7aa6b48 Simplify, fix, and merge copy module (#1132)
* Simplify and add missing types for copy module.

Error and error were missing.  I also removed the internal arg memo.

* Move copy module into 2and3

* Bring back internal kwargs
2017-04-04 09:59:25 -07:00
David Euresti
b03e79886e Fix os.getenv and friends to have consistent types (#1131) 2017-04-03 21:21:35 -07:00
David Euresti
8d3c6b14f6 Move struct into 2and3 (#1129) 2017-04-03 09:37:20 -07:00
Matthias Kramm
8b50522273 md5.md5(string) (#1119)
* md5.md5(string)

* switch md5 from str to AnyStr, add missing constants

* add missing import

* digest() and hexdigest() never return unicode

* make md5.md5 an alias of, and fix, hashlib_hash

* remove unnecessary import

* fix duplicate block_size

* md5.md5 and md5.new are aliases for hashlib.md5
2017-04-02 15:01:17 -07:00
David Euresti
838d1b7436 Add buffer types to struct module. (#1125)
* Add buffer types to struct module.

I noticed these were missing and I made the version look alike for an easy rename into 2and3.

* Add array to WriteBuffer, add iter_unpack

* Code review comments
2017-04-02 15:00:07 -07:00
David Euresti
341716e63f Merge and rename stdlib/{2,3}/pprint.pyi into 2and3 (#1124)
* Merge stdlib/{2,3}/pprint.pyi

* Rename pprint.pyi into 2and3
2017-03-31 17:47:28 -07:00
James Saryerwinnie
c4ceae98db Add filename attr to SyntaxError type (#1126) 2017-03-31 15:24:42 -07:00
Andrey Vlasovskikh
4395f1ef16 Make BaseException inherit from object in PY2 (#1123)
>>> object in BaseException.mro()
True
2017-03-31 09:21:39 -07:00
Roy Williams
90415f5f9d Add an alias for ensure_future as async (#1120)
`async` is still present in 3.6 and `ensure_future` doesn't exist before 3.4.4
2017-03-30 11:58:13 -07:00
Guido van Rossum
1ea3d2de57 Make all single-constraint TypeVars use bound= insteads (plus hack) (#1118)
Another attempt for #804, to unblock python/mypy#2626.
There's a work-around here for python/mypy#1551.
2017-03-29 14:59:24 -07:00
George King
7c413c904d exit function takes argument of any type. (#1116)
The type annotations for exit were incorrectly limited to int in two places; the others that I looked at are already correct.
2017-03-29 14:24:34 -07:00
Jelle Zijlstra
84371e812c add Optional to exc_info and extra in logging (#1117)
None is the default value for these two arguments to logging.Logger._log (which
most other stuff in logging delegates to).

I was getting errors in my codebase because mypy now distinguishes between Any
and Optional[Any].
2017-03-29 13:45:48 -07:00
Guido van Rossum
6a06dd40e1 Revert "Make os.stat_result and friends NamedTuples" (#1113)
* Revert "Added missing attributes of typing.Generator and typing.AsyncGenerator (#886)"

This reverts commit 8b26422b95.
2017-03-29 12:03:50 -07:00
Andrey Vlasovskikh
8b26422b95 Added missing attributes of typing.Generator and typing.AsyncGenerator (#886) 2017-03-29 11:09:24 -07:00
Guido van Rossum
72d275bbf5 Don't reference long in types.pyi (#1112)
(It's a type alias for int anyway, and it will cause a problem in the
initial import cycle once #886 is merged.)
2017-03-29 10:43:44 -07:00
David Euresti
6c3e175c8d Make os.stat_result and friends NamedTuples (#1103) 2017-03-29 10:36:04 -07:00
Nathan Henrie
da43a231bb Add missing kwargs for create_server and create_datagram_endpoint (#1084)
* Add missing kwargs for create_server and create_datagram_endpoint

Looks like `create_server` and `create_datagram_endpoint` have supported `reuse_port`, `reuse_address`, and `sock` since 3.4.

https://docs.python.org/3.4/library/asyncio-eventloop.html
ee51327a23/Lib/asyncio/events.py

* Fixes to create_server, create_datagram_endpoing

- Add allow sequence for `hosts` in `create_server`
- Add `allow_broadcast` to `create_datagram_endpoint`
- Reorder `sock` in `create_datagram_endpoint`

* Import Sequence

* Sockets are Optionals
2017-03-29 10:31:44 -07:00
Semyon Proshev
8c1690befc Update stubs for classmethod and staticmethod in both Pythons. (#1089) 2017-03-29 10:19:17 -07:00
George King
18cc2cbf8c Add correct optional default start/end parameters to str count, find, index, rfind, rindex. (#1109)
fixes #1108
2017-03-28 10:11:50 -07:00
George King
c2cdb1b025 Fix re Pattern.groupindex annotation. (#1106) 2017-03-27 20:45:51 -07:00
Guido van Rossum
671d3870c2 Add 'file' attribute to cgi.[Mini]FieldStorage (#1104) 2017-03-27 14:27:38 -07:00
David Euresti
ec83ed90eb Fix some type errors in os module. (#1101)
* Fix some type errors in os module.

Found these because they were different between Python 2 and 3.

* Code Review changes

* Make it __arg0
2017-03-26 16:39:07 -07:00
Tim Abbott
1cc3489463 logging.makeRecord returns a LogRecord. (#1100) 2017-03-25 21:48:30 -07:00
David Euresti
2888b53924 Merge comments between stdlib/{2,3}/os/__init__.pyi to make diffing easier (#1099) 2017-03-25 20:50:21 -07:00
Shengpei Zhang
c0bbfbdec5 add encoding parameter for subprocess.check_output() function in Python 3.6+ (#1095)
* add encoding parameter for check_output() function in Python 3.6+

* add errors parameter for subprocess.check_output() function
2017-03-25 14:07:25 -07:00
Guido van Rossum
16074c1e66 Make cgi.escape() polymorphic in Python 2 (#1098) 2017-03-25 13:53:36 -07:00
Guido van Rossum
604839c3a2 Revert "Improved annotations for select.select() (#1080)" (#1097)
This reverts commit 7e05d47b81.

See discussion at https://github.com/python/typeshed/pull/1080
2017-03-25 12:36:40 -07:00
Guido van Rossum
fd77dd2e7a Make type of 'env' more flexible (#1091)
See https://github.com/python/typeshed/pull/1059#issuecomment-289150121
2017-03-24 15:58:01 -07:00
Jan Hermann
420219f057 fix derived queues in asyncio.queues to be generic python/typeshed#1087 (#1088) 2017-03-24 12:01:34 -07:00
Josiah Boning
62f57e4cef Improve types for subprocess module (#1059)
* Improve types for CalledProcessError

This adds union types in the constructor to account for parameters that
might be either byte strings or unicode strings. At the same time, this
*removes* specific types from the user-accessible fields, to avoid the
need for users to at every use site specify which types their particular
instance was instantiated with.

* remove 'moral' comments; add List import; change 'str' to 'Text'

* import Text

* List -> Sequence; reinsert 'moral' comments

* Regularize string types everywhere

This defines _TXT and _CMD aliases, and uses them everywhere applicable.

Also brings the _FILE alias to python3.

* fix typo; possibly fix indentation

* remove trailing comma, which caused problems in python 2 tests

* fix py2 outputs to be bytes; tweak descriptive comments; remove one AnyStr
2017-03-24 08:23:36 -07:00
Nathan Henrie
fb80dc3971 Add ModuleNotFoundError for Python >= 3.6 (#1083)
6f0eb93183/Objects/exceptions.c (L707)
https://docs.python.org/3/library/exceptions.html#ModuleNotFoundError
2017-03-23 18:16:53 -07:00