Commit Graph

2632 Commits

Author SHA1 Message Date
Jean Hominal 897148073a Add functions to six.moves.urllib.request (#2982)
parse_http_list and parse_keqv_list were added to six.moves.urllib.request
in version 1.11.
2019-05-13 10:29:34 +02:00
Rebecca Chen aa4a84ef3f Always use fully qualified names to refer to nested classes. (#2983)
The main purpose of this change is to get the stubs into a
form that pytype will support with its next release. Since
these stubs already mostly use fully qualified names, this
will also increase consistency.
2019-05-12 15:10:48 -07:00
Danny Weinberg b4376fc3d2 Have click.style return a str (#2981)
This previously was missing a return type and therefore defaulting to
`Any`, but it actually returns a `str`.
2019-05-11 22:20:31 +02:00
Ivan Levkivskyi 75723e3885 Add an optional opener parameter to open() function (#2977)
Fixes #2976
2019-05-09 16:59:32 +02:00
zadamah c03100230d Add new show_choices argument to click options (#2978) 2019-05-09 16:28:08 +02:00
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