Commit Graph
4211 Commits
Author SHA1 Message Date
Alex WaygoodandGitHub f4ae363b56 stdlib: correct many pos-or-kw arg names in dunder methods (#7451) 2022-03-07 16:40:03 +01:00
Jelle ZijlstraandGitHub 675de720d6 Add some missing items to sys.pyi and types.pyi (#7447) 2022-03-07 08:22:08 +01:00
Alex WaygoodandGitHub 947724a5cb stdlib: Add several missing @abstractmethod decorators (#7443) 2022-03-06 16:41:13 -08:00
Jelle ZijlstraandGitHub 2fb9c35ff9 Put shutil.chown back on Windows (#7446)
See #7384 and https://github.com/python/typeshed/pull/7443#issuecomment-1060071944 (thanks @AlexWaygood for diagnosing).
2022-03-06 16:27:24 -08:00
Martin FischerandJelle Zijlstra 8034c1c48c stdlib: shutil.chown does not work on Windows (#7384) 2022-03-06 16:04:05 -08:00
Martin FischerandJelle Zijlstra d63dc4b002 stdlib: dbm.gnu & dbm.ndbm are only available on Unix (#7384) 2022-03-06 16:04:05 -08:00
Martin FischerandJelle Zijlstra 8138981492 stdlib: socket.CMSG_LEN & socket.CMSG_SPACE are only available on Unix (#7384) 2022-03-06 16:04:05 -08:00
Martin FischerandJelle Zijlstra af269057be stdlib: Add errno.EDEADLK 2022-03-06 15:57:52 -08:00
Martin FischerandJelle Zijlstra 182ddd9daf stdlib: Add os.get_handle_inheritable & setter 2022-03-06 15:57:52 -08:00
Martin FischerandJelle Zijlstra aa383624cf stdlib: Add missing re-exports for UuidCreate, FCICreate, OpenDatabase & CreateRecord 2022-03-06 15:57:52 -08:00
Martin FischerandJelle Zijlstra 77829c5c99 stdlib: Add sys._enablelegacywindowsfsencoding() 2022-03-06 15:57:52 -08:00
Martin FischerandJelle Zijlstra ec87fbfe88 stdlib: Add email.iterators._structure(msg) 2022-03-06 15:57:52 -08:00
Martin FischerandJelle Zijlstra 352f5c3237 stdlib: Add os.copy_file_range(src, dst, count) 2022-03-06 15:57:52 -08:00
Martin FischerandJelle Zijlstra 0978ef5c60 stdlib: Add signal.pidfd_send_signal(pidfd, sig) 2022-03-06 15:57:52 -08:00
Martin FischerandJelle Zijlstra 81a85f18b6 stdlib: Add os.pidfd_open(pid) 2022-03-06 15:57:52 -08:00
Martin FischerandJelle Zijlstra 9abf314a5b stdlib: Add time.pthread_getcpuclockid(thread_id) 2022-03-06 15:57:52 -08:00
Martin FischerandJelle Zijlstra 14ac9f7557 stdlib: Add urllib.parse.unwrap(url) 2022-03-06 15:57:52 -08:00
Alex WaygoodandGitHub 1a2f718ceb Make several fields read-only for type, staticmethod and classmethod (#7423) 2022-03-06 15:50:26 -08:00
Alex WaygoodandGitHub ea6e06a60d Use bound methods in pydoc (#7426) 2022-03-06 15:49:15 -08:00
ShantanuGitHubhauntsaninja <>
9796b9ed69 Improve open overloads when mode is a literal union (#7428)
As pointed out by @gvanrossum in https://github.com/python/typing/issues/1096

Improves type inference in cases when we know that mode is
OpenBinaryMode, but don't know anything more specific:
```
def my_open(name: str, write: bool):
    mode: Literal['rb', 'wb'] = 'wb' if write else 'rb'
    with open(name, mode) as f:
        reveal_type(f)  # previously typing.IO[Any], now typing.BinaryIO
```

You may be tempted into thinking this is some limitation of type
checkers. mypy does in fact have logic for detecting if we match
multiple overloads and union-ing up the return types of matched
overloads. The problem is the last overload interferes with this logic.
That is, if you remove the fallback overload (prior to this PR), you'd get
"Union[io.BufferedReader, io.BufferedWriter]" in the above example.

Co-authored-by: hauntsaninja <>
2022-03-06 15:45:34 -08:00
Itai SteinherzandGitHub b9909b121e Add missing typings to unittest.mock (#7431) 2022-03-06 15:43:39 -08:00
Alex WaygoodandGitHub bc72b25a2a Make more miscellaneous fields read-only, annotate _json.make_encoder (#7439) 2022-03-06 15:41:49 -08:00
Alex WaygoodandGitHub cda3d9cf72 Use latest stubtest in CI (#7438) 2022-03-04 15:19:29 +01:00
Alex WaygoodandGitHub fbde20797e Add tomllib.__all__ (#7433) 2022-03-03 15:25:30 -08:00
Taneli HukkinenandGitHub 31b11c6eae Add type hints for tomllib (#7432) 2022-03-03 15:04:33 -08:00
Alex WaygoodandGitHub c50cb066e0 Improve two classes which are namedtuples at runtime, but cannot be namedtuples in typeshed (#7429) 2022-03-03 07:22:40 -08:00
342e384fb1 Add threading._profile_hook (#7427)
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2022-03-02 23:47:02 +02:00
Jelle ZijlstraandGitHub 0a6b6b095c Add asyncio.windows_utils.Popen (#7396) 2022-03-02 12:37:54 +02:00
Martin FischerandGitHub 5802e889c7 Correct str.__new__ argument name (#7422) 2022-03-02 12:20:45 +02:00
Bas van BeekandGitHub 01244bb68f Add annotations for missing disutils.extension.Extension attributes (#7417) 2022-03-01 21:08:11 -08:00
Bas van BeekandGitHub cf12a2c88f Fix the pickle_function parameter from copyreg.pickle (#7415)
The pickle functions should accept an instance of a to-be pickled object, not the respective type objects itself.
2022-03-01 21:05:36 -08:00
Alex WaygoodandGitHub fd750bf065 asyncio.unix_events: Make AbstractChildWatcher abstract, add PidfdChildWatcher (#7412) 2022-03-01 16:23:46 +01:00
ShantanuandGitHub ebcfe7bc4e random: use bound methods (#7408) 2022-03-01 09:27:44 +01:00
Alex WaygoodandGitHub 3bbc36c92d Add two missing ForwardRef attributes (#7402)
These look somewhat like implementation details, but no more so than any of the other dunder attributes that are already on the class.
2022-02-28 21:44:28 -08:00
Alex WaygoodandGitHub 1575c1b3b8 Add sys.__unraisablehook__ (#7403)
Docs [here](https://docs.python.org/3/library/sys.html#sys.__breakpointhook__). The similar functions `sys.__displayhook__` and `sys.__breakpointhook__` are already included in the stub.
2022-02-28 21:43:48 -08:00
Jelle ZijlstraandGitHub cf3ea5b6e6 ctypes.memmove and memset return ints (#7407)
They actually return pointers, but ctypes turns them into ints.

Fixes #7406
2022-02-28 18:00:16 -08:00
Guido van RossumandGitHub 47cccff9cb asyncio.Task: .cancelling() and .uncancel() now return int, not bool (#7405) 2022-02-28 17:35:42 -08:00
Alex WaygoodandGitHub 4b7d2a76cb Add __all__ for pickle and turtle (#7401) 2022-02-28 14:50:29 -08:00
ShantanuandGitHub b5f32a609a random: add new default args in py311 (#7400) 2022-03-01 00:19:05 +02:00
Alex WaygoodandGitHub 1ebedcc2b4 Mark fields as readonly in builtins.pyi and types.pyi (#7392)
Add FunctionType.__builtins__
2022-02-28 13:23:34 +01:00
Alex WaygoodandGitHub bf167d4df4 Add __all__ for asyncio.unix_events & asyncio.taskgroups, and simplify asyncio.__init__ (#7343) 2022-02-28 12:51:32 +01:00
Alex WaygoodandGitHub b8421eb5d4 Delete the contents of distutils.command.__init__ (#7370) 2022-02-27 16:43:11 -08:00
Alex WaygoodandGitHub a0b41959ec stdlib: fix many attributes which are read-only at runtime but read-write in the stub (#7395) 2022-02-27 16:23:09 -08:00
Alex WaygoodandGitHub 46da0b87ea Add collections.ChainMap.__bool__ (#7391) 2022-02-27 16:02:01 -08:00
Alex WaygoodandGitHub 95885c96ed Add subprocess.__all__ (#7390) 2022-02-27 16:01:51 -08:00
Alex WaygoodandGitHub 3000bb8d91 lib2to3: add Leaf.__unicode__ and Node.__unicode__ (#7394) 2022-02-27 14:49:28 -08:00
Alex WaygoodandGitHub 4f0d8c593e Delete EnumMeta.__setattr__ and EnumMeta.__delattr__ (#7388) 2022-02-26 17:55:53 -08:00
Alex WaygoodandGitHub 2d6ab4d3bf Fix several mypy errors when run on the 3.11 stdlib (#7389) 2022-02-26 17:49:36 -08:00
Alex WaygoodandGitHub 95df201a78 Add tokenize.__all__ (#7387) 2022-02-26 16:35:55 -08:00
Alex WaygoodandGitHub d2ddda00cf Fix various __all__-related typos and omissions (#7378) 2022-02-25 15:10:00 +02:00