Commit Graph

2183 Commits

Author SHA1 Message Date
Martijn Pieters
c53bc5a7ab Add missing elements for multiprocessing.dummy (#3471)
`multiprocessing.dummy` exports names that were not yet listed in the typeshed stub:

```python
>>> from multiprocessing import dummy as mpdummy
>>> imported_objects = (
...     (name, obj) for name, obj in vars(mpdummy).items()
...     if name in mpdummy.__all__ and not obj.__module__.startswith("multiprocessing.dummy")
... )
>>> print(*(f"{name}: {obj.__module__}" for name, obj in sorted(imported_objects)), sep="\n")
Barrier: threading
BoundedSemaphore: threading
Condition: threading
Event: threading
JoinableQueue: queue
Lock: _thread
Queue: queue
RLock: threading
Semaphore: threading
current_process: threading
```

Of these, only `JoinableQueue` was listed.
2019-11-20 10:40:12 +00:00
Christopher Hunt
e065803980 distutils.fancy_getopt short option is optional (#3469) 2019-11-20 10:34:04 +00:00
Denis Laxalde
838e02334e Fix type of imp.find_module() (#3465)
find_module is documented to return a tuple (file, pathname,
description) where "file" is open file object and "description" a tuple
(suffix, mode, type). The type of "file" was wrong ("str" instead of
"IO[Any]") as well as that of "suffix" ("IO[Any]" instead of "str");
probably those type definitions were swapped.

Fixes #3466.
2019-11-20 10:29:05 +00:00
Michał Słapek
34d68ab0a2 Add warnings.catch_warning type hints with Literal. (#3464)
Closes: #3463
2019-11-14 11:08:50 +01:00
Ryan Morshead
8b6cd5c3f0 ast.Dict keys can be None (#3462)
See https://greentreesnakes.readthedocs.io/en/latest/nodes.html#Dict
2019-11-13 20:09:30 +01:00
Jeremy Lainé
ba520034c7 Add type hints for audioop module (#3428) 2019-11-13 07:02:14 -08:00
Sebastian Rittau
107eaeb3d2 Add sys.addaudithook() and audit() (#3455) 2019-11-11 13:22:28 -08:00
Ivan Levkivskyi
05780a0d11 Fix errors discovered by running typeshed check on Windows (#3456)
Fix errors discovered by running typeshed check on Windows. This is a temporary fix for #3446 (in long term we should figure out why these were not caught by typeshed CI).

I also remove an outdated comment while I am at it.
2019-11-11 12:18:58 +00:00
Ran Benita
e55dad5dd0 sys: add pycache_prefix (#3454)
New in Python 3.8:
https://docs.python.org/3.8/library/sys.html#sys.pycache_prefix
2019-11-10 23:09:45 +01:00
Daniel Hahler
2f65683d7b Fix type for os.terminal_size to Tuple (#3450) 2019-11-10 19:30:12 +01:00
Michael Seifert
97ecd2b91f Change the return type of __reduce__ and __reduce_ex__ to Union[str, Tuple[Any, ...]] (#3453)
This allows subclasses to return strings (which are allowed) from these
methods without having mypy throwing an error.

Closes #3452
2019-11-10 15:48:56 +01:00
Sebastian Rittau
e4677d9ed4 Use async syntax instead of @coroutine (#3441) 2019-11-06 07:39:09 -08:00
Sebastian Rittau
add0b5e930 Add functools.cached_property (#3439)
Part of #3319
2019-11-06 07:21:32 -08:00
Diego Elio Pettenò
99a6fb3108 Add the (deprecated) assertDictContainsSubset() to TestCase. (#3437)
Until this is removed from the standard library, it probably should stay in the typing.

Also update both 2 and 3 definitions to use Mapping[Any, Any], rather than Dict[Any, Any].
2019-11-04 08:10:45 -08:00
Diego Elio Pettenò
7e27bf6bde Allow datetime() with a delta=timedelta() in assert(Not)AlmostEqual(s). (#3426)
While the documentation does not seem to make this particularly
obvious, it is allowed.
2019-11-02 22:35:09 -07:00
Jukka Lehtosalo
86135edb6d Fix signature of assertRaisesRegexp in unittest (#3434)
Fixes mypy false positive `"None" has noattribute "__enter__"` here:

```
class Foo(unittest.TestCase):
    def test_foo(self) -> None:
        with self.assertRaisesRegexp(Exception, "foo"):
            1 / 0
```

Fixes regression introduced in e6c467af82.
2019-11-01 15:48:35 +00:00
bianca rosa
4b8c6bbea1 add timespec arg to datetime.time.isoformat (#3432)
Close #3431
2019-11-01 11:25:15 +01:00
Diego Elio Pettenò
616cb0bb65 Add sock attribute for http.client.HTTPConnection in Python 3. (#3429)
The equivalent httplib.HTTPConnection class already include it for Python
2, despite the attribute not being documented for either version.
2019-10-30 23:21:50 +01:00
Jelle Zijlstra
cd5cd12a35 asyncio: fix windows stubs (#3424) 2019-10-30 08:13:32 -07:00
Sebastian Rittau
c8405bb5d9 Add importlib.metadata (Python >= 3.8) (#3346)
Part of #3319
2019-10-29 19:53:47 -07:00
Rune Tynan
b112c20dad Copyreg stubs (#3387) 2019-10-29 19:52:05 -07:00
Sebastian Rittau
5e9f66cb62 Add missing Python 3.7 and 3.8 annotations (#3399)
* Add explicit ssl_handshake_timeout arguments to open_connection and start_server

* Add context arguments to call methods

* Accept PathLike for create_unix_* paths

* Add TimerHandle.when()

Add missing version check

* AbstractServer is now an async context manager

* Add happy_eyeballs_delay and interleave arguments to create_connection

* Re-export asyncio.windows_events from asyncio

* Add name argument to Task constructor

* Add Task.get_coro()

* import and other fixes

* Fix return type of get_coro()
2019-10-29 19:49:37 -07:00
Sebastian Rittau
4770059894 Add missing ZipFile constructor arguments (#3414)
Closes: #3413
2019-10-29 19:46:31 -07:00
Benjamin Peterson
2023394b37 exec, spawn: Allow bytes for environment keys and values. (#3419)
A more correct type would be Mapping[Union[bytes, str], Union[bytes, str]], but our hands are tied by the invariance of mapping keys.
2019-10-29 11:48:36 -07:00
Diego Elio Pettenò
e6c467af82 Add missing expected_regex parameter to TestCase.assertRaisesRegexp(). (#3418)
This makes it match the signature of assertRaisesRegex() which is the modern name for the same function.
2019-10-29 16:16:53 +01:00
Anthony Sottile
9c724e9e60 Fix signature of multiprocessing.get_start_method (#3415) 2019-10-28 17:39:14 +01:00
Sebastian Rittau
87d7dd3d95 Fix annotations with literal values (#3411) 2019-10-28 06:59:28 -07:00
Michael Lee
6a7c2011cc Update sre_parse module for Python 3.8 (#3412)
It seems in Python 3.8, the 'Pattern' object in the (undocumented?)
sre_parse module was renamed to 'State', along with a few associated
parameters.
2019-10-28 08:08:49 +01:00
Alexander Schlarb
124111534a Add the memoryview.release method (#3405) 2019-10-25 14:29:44 +02:00
Nikola Forró
92aa1ee9c2 logging.handlers: Add BufferingHandler.buffer (#3402)
Signed-off-by: Nikola Forró <nforro@redhat.com>
2019-10-23 14:33:06 +02:00
秋葉
ce8d1da5ce Add sys._debugmallocstats (#3401) 2019-10-23 14:31:43 +02:00
Vasily Zakharov
4f13e710c3 Added stub for urllib.proxy_bypass() (#3396) 2019-10-22 19:10:50 +02:00
Lawrence Chan
f28691261a Change pprint depth type to Optional[int] (#3392) 2019-10-20 12:14:02 -07:00
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