Rebecca Chen
5799b8dfcf
Unblacklist more third_party stubs from pytype parsing. ( #2975 )
2019-05-08 20:18:08 -07:00
Jennifer Taylor
36b28e5b97
Split unittest stubs and add a few field ( #2973 )
2019-05-08 17:46:45 +02:00
Chad Dombrova
feb74cf9de
Add subprocess.list2cmdline for python 2 ( #2971 )
2019-05-08 10:21:32 +02:00
Ivan Levkivskyi
d61635e243
Add TypedDict to typing_extensions ( #2940 )
...
Since there is a PEP for `TypedDict` (PEP 589), it is being added to `typing_extension`, see https://github.com/python/typing/pull/628 . This PR essentially copies the definition from `mypy_extensions`.
Corresponding mypy PR https://github.com/python/mypy/pull/6744 can be merged independently of this PR.
2019-05-07 14:45:45 -04:00
Mark Vismonte
a193aacea8
Add py3.7 support to Future.add_done_callback ( #2970 )
2019-05-07 13:14:03 -04:00
Anirudh Padmarao
53d4610579
Add stub for asyncio.BaseEventLoop ( #2960 )
2019-05-07 12:08:33 -04:00
Mark Vismonte
8451cd7819
Add annotation for Future._callbacks ( #2965 )
2019-05-07 18:02:41 +02:00
Jelle Zijlstra
b5493e8639
add types.FunctionType.__init__ ( #2968 )
...
Fixes #2930
2019-05-07 17:31:01 +02:00
Jelle Zijlstra
d7e9af4492
allow callables in dis() ( #2969 )
...
Fixes #2914
2019-05-07 17:21:54 +02:00
Jelle Zijlstra
bdb1de57f5
narrow signature of __contains__ for str-like classes ( #2967 )
...
Fixes #2937
2019-05-07 10:24:28 -04:00
Rebecca Chen
4990830c8f
Make pytype happy with the third_party click stubs. ( #2966 )
...
This also makes the flask stubs that depend on click parseable.
* In pytype_test, only parse files with the .pyi extension.
(There's a README in third_party/2and3/click/.)
* Annotate with ContextManager rather than using the
contextmanager decorator. This is shorter, removes a
dependency, and gets rid of the slight weirdness of a
decorator needing to be evaluated in a stub.
* Fix non-stub things.
2019-05-07 08:50:24 +02:00
Max Rydahl Andersen
5dda362b05
add autocomplete to click decorators ( #2705 )
2019-05-06 22:05:48 -04:00
Rebecca Chen
a6d92eca10
Adjust indentation of TODOs in third_party/2/gflags.pyi. ( #2964 )
...
Having TODOs at a different level of indentation than
the surrounding lines trips up pytype.
2019-05-06 22:05:17 -04:00
Mark Vismonte
e4a81132c4
Fix Future.__init__'s loop variable annotation ( #2961 )
2019-05-06 22:02:56 -04:00
Mark Vismonte
fe06e8e3c5
Add annotation to Future._loop ( #2959 )
2019-05-06 22:00:40 -04:00
Rebecca Chen
7c475a48d7
Fix typo: __builtins__ should be __builtin__. ( #2963 )
2019-05-06 22:00:02 -04:00
Rebecca Chen
1379fdcdd9
Remove some files from pytype's third_party blacklist. ( #2962 )
...
Removes files that are parseable with the most recent release.
2019-05-06 21:59:12 -04:00
Chad Birch
e0b3cdd6fc
Bleach stubs: fix typos, use protocol classes ( #2957 )
2019-05-06 19:50:29 +02:00
berdario
e45f443d85
Define functools.partial as overloaded function instead of its own class ( #2878 )
2019-05-06 12:05:02 -04:00
The Fox in the Shell
e7d7a44411
Make the signature of ConfigParser.get() polymorphic ( #2406 )
...
The documentation [explicitly specifies](https://docs.python.org/3/library/configparser.html#configparser.ConfigParser.get ) that `None` is a legitimate `fallback` value.
Thanks to @wiml for suggesting this approach.
2019-05-06 12:00:52 -04:00
Dan Crosta
e67961e387
add click.types.DateTime to click stubs ( #2958 )
2019-05-06 11:36:49 -04:00
Philipp Hahn
548dbbbc71
yaml.dump(..., stream) is optional ( #2289 )
...
Depending on if a "stream" or the "encoding" is given, the functions
either return None, str/unicode or bytes.
Use @overload fix distinguish those cases.
Also fix the functions using **kwds as they delegate their work to the
more generic functions: copy their signatures.
* yaml.dump(): Drop distinguishing encoding
As far as I know it's currently impossible to use "overloads with return
types depending on optional arguments" (Issue #5621 ). As "encoding" is
in the middle of 11 optional arguments, it would require ~ 2^6 overloads
for each of those 6 functions.
For now just return Any and wait for Issue #5621 to get fixed.
2019-05-06 10:10:11 -04:00
Rebecca Chen
5081d1e132
Switch pytype_test from a whitelist to a blacklist for third_party. ( #2956 )
...
During the PyCon sprints, I'm planning to bash the pytype pyi
parser into shape so we can handle all of third_party. As a first
step, create an explicit blacklist of everything pytype chokes on.
2019-05-05 22:02:52 -04:00
Jan Szopinski
bf2d51742b
unittest: Add overloads to assert(Not)AlmostEqual(s) ( #2901 )
2019-05-05 15:15:17 -04:00
Ethan Madden
12fa5c4fdb
Added defs for undocumented attrs on enums ( #2941 )
...
This should resolve #2934
2019-05-05 15:07:22 -04:00
Michael A. Smith
54069f4341
Annotate copy for MappingProxyType ( #2955 )
2019-05-05 14:10:59 -04:00
Jia Chen
c4b249c9a8
Use dunder parameter name in _Writer.write ( #2954 )
2019-05-04 22:51:39 -04:00
Jia Chen
ec16e435eb
Use dunder parameter name in Container.__contains__ ( #2953 )
...
According to Ivan, PEP 544 intentionally did not specify whether method conformance check in protocol inference should look at parameter names. For example, it's up to the type checker to decide whether a class with method defined as `def foo(self, x: int)` would implement a protocol with method `def foo(self, y: int)`.
Mypy decided to ignore parameter names altogether, but we Pyre team decided to be more strict and refuse to match different parameter names (as it is unsound to do so when those methods are invoked with named parameters). Since we rely on the typeshed stubs, we want to make sure at least the important stubs on typeshed conform to our standard.
This PR changes `Container.__contains__` to use dunder (i.e. positional-only) parameter name specified in PEP484. This change should not affect mypy since it ignores parameter names, but will make Pyre happy as it eliminate the naming requirement for all classes that want to conform to the `Container` protocol.
2019-05-04 22:00:47 -04:00
Jonathan Slenders
337c382196
Added termios.error ( #2951 )
2019-05-04 16:13:53 -04:00
Jon Dufresne
910c71050d
Update Black URL ( #2950 )
2019-05-04 11:42:44 -04:00
Jelle Zijlstra
8bd744a38f
fix type of msg argument to HTTPRedirectHandler.redirect_request ( #2949 )
...
It's not really documented (https://docs.python.org/3/library/urllib.request.html#urllib.request.HTTPRedirectHandler.redirect_request ), but logically a message is a str, and reading the code for the stdlib confirms that it's intended to be a str.
2019-05-03 20:44:56 +02:00
Utkarsh Gupta
4d61442004
click/types.pyi: Add case_sensitive wrt click 7.0 ( #2948 )
...
Fixes #2942
2019-05-03 10:44:36 -04:00
Callum Ryan
1726b31013
Change WatchedFileHandler to inherit from FileHandler ( #2947 )
2019-05-02 21:55:56 +02:00
Utkarsh Gupta
df953ca385
config.pyi: Return a Thread instance ( #2945 )
...
Fixes #2938
2019-05-02 06:22:51 -04:00
Scott Belden
556f354e1e
add BadRequestKeyError ( #2944 )
2019-05-02 11:45:04 +02:00
Jia Chen
cda204a151
Remove MutableMapping from requests.Session.cookies's type ( #2946 )
2019-05-02 10:39:42 +02:00
Utkarsh Gupta
6d8e610d75
itertools.pyi: Replace Iterable with Iterator. ( #2943 )
...
Fixes #2931
2019-04-30 14:53:59 -07:00
Brandt Bucher
1fddec3f90
Positional-only arguments for built-in functions. ( #2921 )
2019-04-30 11:22:25 +02:00
Sushain Cherivirala
67b42aff6b
Add initializer for http.cookiejar.Cookie ( #2932 )
2019-04-29 10:34:28 +02:00
Jelle Zijlstra
ff650d3275
socket: add .set_inheritable() ( #2935 )
2019-04-28 17:13:20 +02:00
ijl
5acc22d82a
Specify default = ..., positional-only for orjson API ( #2936 )
2019-04-27 11:09:26 -07:00
Benjamin Peterson
4e572ae6a3
Remove format_map from Python 2 unicode. ( #2933 )
2019-04-24 00:42:27 +01:00
Rebecca Chen
fd57aee5da
Make shlex.shlex convertable to a list in Python 2. ( #2927 )
...
This simply copies the relevant lines over from the Python 3 stub.
2019-04-21 09:21:00 +02:00
Stephen Thorne
97240083c4
Correct the type signature of assertRaisesRegexp ( #2926 )
...
assertRaisesRegexp is the old name of assertRaisesRegex, they are the
same, just that the old one is deprecated.
2019-04-18 20:31:00 -07:00
Yegor Roganov
4cd9a8ef91
Make loop optional in asyncio.Queue ( #2923 )
...
Default value is `None`, so `loop` should be optional.
2019-04-14 12:43:33 -07:00
Utkarsh Gupta
cf88c79a93
locale.format_string takes strings and numbers, too. ( #2922 )
...
Fixes #2879
2019-04-14 09:30:07 -07:00
Philipp Schrader
d9c5422ebf
Add stub for multiprocessing.Value.get_lock() ( #2920 )
...
I also noticed that the "lock" parameter for Value's __init__ was
incomplete. The parameter also accepts lock objects directly.
https://docs.python.org/3.7/library/multiprocessing.html#multiprocessing.Value
Fixes #2917
2019-04-13 11:35:52 -07:00
Michael Lee
efb67946f8
Use variable annotations everywhere ( #2909 )
2019-04-13 10:40:52 +02:00
秋葉
b3c76aab49
KeysView and ItemsView should accecpt Iterable argument in set operation ( #2906 )
2019-04-12 23:05:58 -07:00
Michael J. Sullivan
f06f2e97bb
Make os.altsep Optional on non-win32 platforms ( #2918 )
...
Keep it str on win32 to avoid breaking win32-specific code that relies
on it.
2019-04-12 23:00:19 -07:00