Commit Graph

2892 Commits

Author SHA1 Message Date
Sebastian Rittau 62bbdf856c Add several Python 3.8 annotations (#3347) 2019-10-12 19:36:56 +02:00
Guido van Rossum 8ec25708d9 Update 'format' README section -- don't imply it is executable (#3350) 2019-10-12 19:18:34 +02:00
Sebastian Rittau 583784d94c Add missing exception to smtplib (#3348)
Improve a few other types
2019-10-12 19:15:44 +02:00
Rune Tynan 6354bc8a10 Ensurepip stubs (#3349) 2019-10-12 02:45:43 +02:00
Sebastian Rittau 61d5f76a1d find_loader() can return None (#3341) 2019-10-11 10:48:48 -07:00
Maarten ter Huurne 6a92ae6295 Change type for urllib headers from Mapping to email.message.Message (#3345)
Also remove override of 'headers' in HTTPError

Closes #3344
2019-10-11 14:56:19 +02:00
Florian Bruhin bb12f3bdea Fix argument type for logging.Formatter.formatTime (#3343)
datefmt can be None - that's what the default value is: https://docs.python.org/3/library/logging.html#logging.Formatter.formatTime
2019-10-11 14:39:24 +02:00
Benjamin Peterson 036abc7fda protobuf: Narrow type of Message.FromString. (#3340)
Remove unnecessary definitions in sub-classes.
2019-10-11 08:28:28 +02:00
Florian Bruhin 9b0922166a Allow callables in _SourceObjectType (Python 2) (#3338)
This is important because mypy doesn't generally think functions are compatible with `FunctionType`, so `inspect.getsource` on arbitrary functions is rejected by the current annotations.
2019-10-10 20:51:56 -07:00
Sebastian Rittau d41bcd39e1 Add assorted annotations (#3335)
* Add assorted annotations

* Fix type of Purpose items
2019-10-10 20:51:49 -07:00
Sebastian Rittau 8a7d61741d Python3.8 additions and changes (#3337)
* Add as_integer_ratio() to a few types

* Add dirs_exist_ok to copytree()

* int, float, complex accept __index__ args

Also fix complex.__init__ argument names

* Add __reversed__ to dict et al.

* Python 3.8 date(time) arithmetic fixes

* Add CodeType.replace()
2019-10-10 20:51:27 -07:00
Martin DeMello d0beab9b8e Fix an argument to csv.DictReader() (#3339)
From the Lib/csv.py source, 'f' is passed directly to _csv.reader, which
expects Iterable[Text]
2019-10-10 20:13:20 -07:00
Benjamin Peterson fc23c8274f protobuf: Tighten annotations for MergeFromString and ParseFromString. (#3333) 2019-10-10 18:07:53 +02:00
Jukka Lehtosalo eca93753ee Update the signature of decorator.decorator (#3336)
Nothing prevents a decorator defined using `@decorator` from
changing the signature of the decorated function. For example,
this example changes the return type to `str`:

```
from decorator import decorator

@decorator
def stringify(f, *args, **kwargs) -> str:
    return str(f(*args, **kwargs))
```

The old signature caused false positives in internal Dropbox code.

I couldn't come up with a signature that would produce better types
with mypy while not generating false positives.
2019-10-10 16:45:06 +01:00
Utkarsh Gupta 1a932ce26a message.pyi: Change HeaderType to Any (#2924)
Fixes #2863
2019-10-10 12:24:44 +02:00
Vasily Zakharov 57384ce033 Revised stubs for geoip2 third party library (#3317) 2019-10-09 19:28:42 -07:00
Russ Allbery f0ccb325aa Mark some urllib.parse return fields optional (#3332)
Per the urllib.parse documentation, username, password, hostname,
and port will be set to None if not set in the parsed URL.  The
same is true for urlparse in Python 2 according to its documentation.
2019-10-09 19:38:59 +02:00
Sebastian Rittau 07c8675ba5 Remove unused # type: ignore comments (#3325) 2019-10-09 10:27:18 -07:00
Utkarsh Gupta bd7222c396 models.pyi: Add missing requests.Respons.next() (#3328)
Closes: #3207
2019-10-09 19:01:30 +02:00
Jukka Lehtosalo 3a2fdfd45d Make it explicit that the cryptography stubs are incomplete (#3331) 2019-10-09 16:20:36 +01:00
Jukka Lehtosalo 0914d50b49 Fix the signature of decorator.contextmanager (#3330) 2019-10-09 16:58:37 +02:00
wouter bolsterlee 824e94a933 Make 2-arg iter() retrun type match passed callable's return type (#3326)
This is a continuation of #3291, which was the initial fix for #3201.

The 2-arg version of iter() turns a callable into an iterator. The
changes made in #3291 introduce an Any return type for both the
callable's return type and the iterator's type, while in reality the
return type of the function is always the same as the iterator's type.
2019-10-09 08:44:41 +02:00
robertschweizer 3ee8fc2242 Add missing Optional types in urllib.parse (#3263)
None values are accepted, and interpreted as empty (byte) strings by
some urllib.parse functions.
2019-10-09 08:38:46 +02:00
Benjamin Peterson 50961d45a1 protobuf: Add Message.FromString static method. (#3327) 2019-10-09 07:59:07 +02:00
Utkarsh Gupta 4027add6b3 __init__.pyi: Add missing methods on pkg_resources.VersionConflict (#3318) 2019-10-08 20:36:38 +02:00
Sebastian Rittau d82d3396e7 Minor flake8 improvements (#3324)
* Update flake8-bugbear
* Remove unnecessary comment
* Add a comment about an upcoming fix
2019-10-08 17:42:36 +02:00
Sebastian Rittau 256b3ce8ab Remove a bunch of unused imports (#3323) 2019-10-08 07:59:32 -07:00
Lukáš Lalinský a6f146e651 Fix return type of werkzeug's ProxyFix (#3320) 2019-10-08 10:30:00 +02:00
Rafi Blecher 6e4708ebf3 Add type stub for decorator lib (#3038) 2019-10-07 22:21:31 +02:00
Rune Tynan 7710e925ca Add data to UserList class, fix UserDict.data type (#3316) 2019-10-07 17:05:19 +02:00
Utkarsh Gupta 447691cf46 imaplib.pyi: Add missing imaplib.IMAP4.enable() (#3314)
Closes: #3313
2019-10-06 19:48:48 -07:00
Utkarsh Gupta 717cd1f96f imaplib.pyi: Add ssl_context parameter for Python >= 3.3 (#3310)
Fixes: #3289
2019-10-06 18:57:22 +02:00
Ryan Morshead b9342eca0a add IncrementalNewlineDecoder constructor (#3311) 2019-10-06 17:22:03 +02:00
Ryan Morshead 3743b64b07 IncrementalNewlineDecoder.decode accepts str (#3312)
The decode method of IncrementalNewlineDecoder accepts a string when its decoder is None.
2019-10-06 11:33:26 +02:00
Utkarsh Gupta 79a8f0b8c6 imaplib.pyi: Take strings as args instead of a list of strings (#3308)
Fixes: #3289
2019-10-04 20:10:21 -07:00
sinancepel cd418e9546 introduce __floor__ and __ceil__ for int in Python 3 (#3306) 2019-10-04 19:16:32 -07:00
Glyph 83589844c9 rrule.weekday(...) returns rrule.weekdays, not _common.weekdays. (#3274) 2019-10-05 01:49:49 +02:00
Rebecca Chen 90aa27b54a Fix the signature of IOBase._checkClosed(). (#3305)
* In Python 2, the optional `msg` argument was missing.
* In Python 3, the method was missing altogether.

Reference:
https://github.com/python/cpython/blob/2.7/Lib/_pyio.py#L423
https://github.com/python/cpython/blob/3.6/Lib/_pyio.py#L443
2019-10-04 14:53:48 -07:00
Sebastian Rittau 0a426d8a8e Move cryptography from 2 to 2and3 (#3304)
The cryptography stubs are very rudimentary at the moment, but there
is nothing that limits them to just Python 2.

Closes: #3303
2019-10-04 14:11:42 -07:00
Jeremy Lainé 41d23a67f6 ssl: add VerifyFlags flags and VerifyMode enum (#3302)
Closes #3301
2019-10-04 16:27:30 +02:00
Vasily Zakharov e62857f851 Updated maxminddb stubs to v1.5.0 (#3300) 2019-10-04 12:55:46 +02:00
Utkarsh Gupta fa571fb224 builtins.pyi: Use two type vars (#3291)
Fixes: #3201
2019-10-04 00:15:41 +02:00
Benjamin Peterson 9a1d205f34 cryptography: Return RSAPrivateKeyWithSerialization from generate_private_key. (#3296)
The only extant implementation of generate_private_key returns this more specialized interface.
2019-10-03 01:09:25 +02:00
Jelle Zijlstra c38cf6736e Allow callables in _SourceObjectType (#3295)
This is important because mypy doesn't generally think functions are compatible with `FunctionType`, so `inspect.getsource` on arbitrary functions is rejected by the current annotations.
2019-10-03 00:52:21 +02:00
Michael J. Sullivan eeb8daa467 Remove some spurious version checks in logging (#3292)
PR #3269 added some version checks for the argument type to setLevel
and the existence of NullHandler. While these features weren't present
in early versions of Python 3, they *are* present in Python 2.7, which
leads to false positives.
2019-10-02 08:09:21 +02:00
Michael J. Sullivan 455f25a5c7 Use Any instead of object in the view types for __and__ and __sub__ (#3294)
This was discussed in #3181 and the correct explanation was given that
object ought to be preferred here. In practice this caused an obscure
issue with mypy when using this operations on the results of
six.viewkeys(), since it decided that it wanted a mapping *from* object
as a result of inference contexts. Grumble.
2019-10-02 08:03:57 +02:00
Michael J. Sullivan ad881f94d7 Add the mypyc_attr function to mypy_extensions (#3290) 2019-10-01 17:45:47 -07:00
Stefan T 0abb50e20a Add http.MISDIRECTED_REQUEST introduced in 3.7 (#3293) 2019-10-01 15:42:44 -07:00
Sebastian Rittau c32e1e2280 Enable --disallow-any-generics for stubs (#3288) 2019-10-01 05:31:34 -07:00
Benjamin Peterson 23b353303b Allow passing bytes and byte string to yaml load APIs. (#3287) 2019-09-30 22:30:28 +02:00