Commit Graph

2150 Commits

Author SHA1 Message Date
Sebastian Rittau
ec7960a8cb Convert namedtuples to class syntax (#3321) 2019-10-20 10:37:33 +02:00
Nikita Sobolev
2b9dc7b9c2 Adds posonlyargs property to arguments for python3.8+ (#3390) 2019-10-19 23:07:04 +02:00
Rebecca Chen
ffd73b3e8e Add shlex.shlex.next in Python 2. (#3389)
shlex.shlex should match the Iterator protocol, for which it needs both
`__iter__` and `__next__` (`next` in Python 2) defined.
2019-10-18 23:13:38 +02:00
Eric N. Vander Weele
966f8d24e6 Revert __import__ function annotation to return type back to Any (#3383)
From python/mypy#7582.

This partially reverts back the change in
0ee7c3c38b to have `__import__` return
`Any` instead of `ModuleType`.
2019-10-18 00:10:41 +02:00
Jakub Stasiak
fd7f1063d5 Change select() stub to accept iterables, not just sequences (#3382) 2019-10-17 21:30:14 +02:00
Nathaniel Brahms
fa9e1ab445 multiprocessing.pool: Fix return of map_async() (#3378)
Closes #3377
2019-10-17 17:43:37 +02:00
Michael J. Sullivan
7c6104ddfe Don't shadow ast.Tuple with typing.Tuple (#3376) 2019-10-16 12:39:56 -07:00
Sebastian Rittau
299d89ab76 generate_tokens(readline) must return bytes (#3372) 2019-10-16 08:55:23 -07:00
Rune Tynan
67629a14a7 Add stubs for cgitb (#3368) 2019-10-16 17:11:23 +02:00
cptpcrd
89f0f63502 Fix HTMLParser.handle_startendtag() attrs annotation (#3366)
The value can be None here as well as in handle_starttag().
2019-10-15 14:42:25 +02:00
Sebastian Rittau
b969ead0ce Reorder memoryview.__setitem__ overloads (#3365)
Necessary for python/mypy#7717
2019-10-15 14:14:48 +02:00
Rune Tynan
dfe68625ec Add public missing asyncio stubs for windows and proactor files (#3234)
* Add public missing asyncio stubs for windows and proactor files, and any necessary private return/argument types.

* Add methods to BaseProactorEventLoop that mypy is complaining about, with note about status at runtime

* Add asyncio constants file
2019-10-14 21:03:29 -07:00
Rune Tynan
6c42f6bb2f Add bdb stubs (#3354) 2019-10-14 20:01:24 -07:00
Árni Már Jónsson
7e99848b2c fixing https://github.com/python/typeshed/issues/3361 (#3362)
Fixes #3361
2019-10-14 15:21:00 +02:00
Sebastian Rittau
6b55f5c498 Clean up multiprocessing + shared_memory (#3351)
* Make multiprocessing stubs match implementation

* Add multiprocessing.process.BaseProcess
* Use BaseProcess in multiprocessing.context where applicable
* Remove non-existing BaseContext.Process()
* Derive DefaultContext from BaseContext
* Fix BaseContext/DefaultContext.set_start_method() signatures
* Re-export multiprocessing.context.Process from multiprocessing,
  instead of using a custom definition
* Re-export multiprocessing.active_from from multiprocessing.process
  instead of using a custom definition

* Add parent_process() (Python 3.8)

* Complete BaseManager; add Server

* Add multiprocessing.shared_memory et al
2019-10-14 09:54:45 +02:00
Sebastian Rittau
0501e2b329 Annotations for remaining Python 3.8 additions (#3358)
* Add os.add_dll_directory()
* Add memfd_create() and flags
* Add type annotation to flags
* Add stat_result.st_reparse_tag and flags
* Add ncurses_version
* Add Path.link_to()
* Add Picker.reducer_override()
* Add plistlib.UID
* Add has_dualstack_ipv6() and create_server()
* Add shlex.join()
* Add SSL methods and fields
* Add Python 3.8 statistics functions and classes
* Remove obsolete sys.subversion
* Add sys.unraisablehook
* Add threading.excepthook
* Add get_native_id() and Thread.native_id
* Add Python 3.8 tkinter methods
* Add CLOCK_UPTIME_RAW
* Add SupportsIndex
* Add typing.get_origin() and get_args()
* Add unicodedata.is_normalized
* Add unittest.mock.AsyncMock

Currently this is just an alias for Any like Mock and MagicMock. All of
these classes should probably be sub-classing Any and add their own
methods. See also #3224.

* Add unittest cleanup methods
* Add IsolatedAsyncioTestCase
* Add ElementTree.canonicalize() and C14NWriterTarget
* cProfile.Profile can be used as a context manager
* Add asyncio task name handling
* mmap.flush() now always returns None
* Add posonlyargcount to CodeType
2019-10-14 09:53:48 +02:00
Sebastian Rittau
6507875f28 Annotate Python 3.8 removals (#3359)
* macpath
* time.clock()
* Some cgi functions
* XMLParser(html) and doctype()
* unicode_internal
* Two sqlite3 classes hidden
* fileinput bufsize arg
* Treeview.selection no longer takes arguments
2019-10-14 09:51:39 +02:00
Sebastian Rittau
950f391704 Remove unnecessary __all__ annotations (#3357) 2019-10-13 16:22:03 -07:00
Sebastian Rittau
de26a3d109 Remove raise statements from function bodies (#3355)
While it may eventually be useful to mark the exceptions that can be
raised from a function or method, the semantics are currently undefined
and unclear.
2019-10-13 21:51:43 +02:00
秋葉
2bd1b75641 Extract asyncio exceptions into a separate module (Python 3.8) (#3356) 2019-10-13 12:20:02 +02:00
Utkarsh Gupta
91b72d49c7 typing.pyi: Remove verbose and rename from NamedTuple (#3352)
Closes #3235
2019-10-12 21:27:50 +02:00
Sebastian Rittau
62bbdf856c Add several Python 3.8 annotations (#3347) 2019-10-12 19:36:56 +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
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
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
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
Sebastian Rittau
256b3ce8ab Remove a bunch of unused imports (#3323) 2019-10-08 07:59:32 -07: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
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
Jeremy Lainé
41d23a67f6 ssl: add VerifyFlags flags and VerifyMode enum (#3302)
Closes #3301
2019-10-04 16:27:30 +02:00
Utkarsh Gupta
fa571fb224 builtins.pyi: Use two type vars (#3291)
Fixes: #3201
2019-10-04 00:15:41 +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