Harry and GitHub
eb252afb18
random.sample no longer accepts sets in Python 3.11 ( #7528 )
...
As of 3.11, population must be a Sequence. Automatic conversion of sets to lists is no longer supported.
2022-03-21 18:58:22 -07:00
Harry and GitHub
71d14b3ee1
random.sample: counts takes Iterable[int] ( #7527 )
2022-03-21 18:18:24 -07:00
Alex Waygood and GitHub
74ecce5b68
Improve host parameter of socket.getaddrinfo() ( #7518 )
...
As pointed out by @srittau in #7517 , `bytearray` [is redundant](https://docs.python.org/3/library/typing.html#typing.ByteString ) in a union where `bytes` is also in the union.
2022-03-20 23:35:03 +00:00
Alex Grönholm and GitHub
3a8d121890
Fix type of the "host" parameter in asyncio getaddrinfo() ( #7517 )
2022-03-20 13:17:55 +00:00
Jelle Zijlstra and GitHub
b7d129f727
PEP 604: Remove some more uses of Union/Optional ( #7515 )
...
The following patterns still break mypy:
1. `type[]` at top level fails
2. `tuple[T1, T2]` at top level fails (but `tuple[T1, ...]` is fine)
3. `T1 | Callable[..., T2 | T3]` fails, but only <=3.9
This PR cleans up usage of `Union` and `Optional` outside these patterns.
2022-03-19 08:23:00 -07:00
1acc8f3bd6
Use PEP 604 syntax wherever possible, part II ( #7514 )
...
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com >
2022-03-19 14:27:35 +00:00
340c6c97ed
Add mypy error codes to type: ignores, remove unused ignores ( #7504 )
...
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com >
2022-03-19 13:10:00 +00:00
Alex Waygood and GitHub
4308915e06
Make __hash__ a ClassVar for several classes where it is set to None ( #7485 )
2022-03-19 05:59:10 -07:00
5c44ae4f8c
Improve various signatures that shouldn't be async def, but currently are ( #7491 )
...
Co-authored-by: Thomas Grainger <tagrain@gmail.com >
2022-03-18 20:54:39 -07:00
Marc Mueller and GitHub
37a981920f
Use TypeVar for pkgutil.extend_path ( #7473 )
2022-03-18 20:44:38 -07:00
Jelle Zijlstra and GitHub
4d23919200
Add typing.TypeVarTuple, Unpack, assert_type ( #7501 )
...
python/cpython#31021 and python/cpython#30843 .
2022-03-18 18:03:45 +00:00
Jelle Zijlstra and GitHub
ba475a04c3
multiprocessing: args can be any Iterable ( #7500 )
...
https://github.com/python/cpython/blob/main/Lib/multiprocessing/process.py#L91
2022-03-17 01:44:25 +00:00
Alex Waygood and GitHub
3ab250eec8
Use PEP 604 syntax wherever possible ( #7493 )
2022-03-16 16:01:33 +01:00
Jelle Zijlstra and GitHub
3e3cc2a6d6
dict.pop: Remove default for second argument ( #7481 )
...
The first overload takes care of the case where there is only one argument, so there should be no default in the second overload.
2022-03-13 13:11:35 +01:00
Jelle Zijlstra and GitHub
9c50fe7b64
Fix overly precise typing.NewType signature ( #7474 )
...
`type` is incorrect because `NewType` can also accept another `NewType`: https://peps.python.org/pep-0484/#newtype-helper-function
The return type was also wrong; pre-3.10 `NewType()` doesn't return a type object.
2022-03-11 06:35:45 +00:00
Aaron Kau and GitHub
a3e62d56fc
change Change IO/IOBase.__exit__ return type to None ( #7471 )
2022-03-10 15:57:05 +01:00
Aaron Kau and GitHub
bf2049ef18
Change TemporaryFileWrapper.__exit__ return type to None ( #7470 )
...
For context we found this from quora/pyanalyze#496 , which makes pyanalyze stricter about context managers that may swallow exceptions. tempfile._TemporaryFileWrapper.__exit__ returns whatever its underlying file returns (https://github.com/python/cpython/blob/3.6/Lib/tempfile.py#L502 ), and file objects don't tend to return anything from __exit__.
2022-03-09 19:34:24 -08:00
Alex Waygood and GitHub
4e87b9058f
Improve collections.Counter stub ( #7464 )
2022-03-09 12:22:28 +02:00
c987c78077
Remove ClassVar from SSLContext.ssl{object,socket}_class ( #7465 )
...
These attributes have class-level defaults, but the docs explicitly state that it's OK to override them on instances.
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com >
2022-03-09 08:53:18 +00:00
Akuli and GitHub
f9cb7c3ed4
Use Literal for statistics.quantiles() ( #7463 )
...
I'm going to merge; I think this is consistent with what we've done with e.g. the `byteorder` argument for `int.from_bytes` :)
2022-03-08 21:38:31 +00:00
Alex Waygood and GitHub
db6f912c77
Improve mmap.mmap.__enter__ ( #7461 )
...
It returns `Self` at runtime, not `mmap.mmap`, so inheriting from `AbstractContextManager` doesn't really do anything for us.
2022-03-08 07:47:56 -08:00
967f83db09
rlcompleter: add attr_matches, global_matches ( #7453 )
...
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com >
2022-03-08 00:07:58 +00:00
Alex Waygood and GitHub
f4ae363b56
stdlib: correct many pos-or-kw arg names in dunder methods ( #7451 )
2022-03-07 16:40:03 +01:00
Jelle Zijlstra and GitHub
675de720d6
Add some missing items to sys.pyi and types.pyi ( #7447 )
2022-03-07 08:22:08 +01:00
Alex Waygood and GitHub
947724a5cb
stdlib: Add several missing @abstractmethod decorators ( #7443 )
2022-03-06 16:41:13 -08:00
Jelle Zijlstra and GitHub
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 Fischer and Jelle Zijlstra
8034c1c48c
stdlib: shutil.chown does not work on Windows ( #7384 )
2022-03-06 16:04:05 -08:00
Martin Fischer and Jelle Zijlstra
d63dc4b002
stdlib: dbm.gnu & dbm.ndbm are only available on Unix ( #7384 )
2022-03-06 16:04:05 -08:00
Martin Fischer and Jelle Zijlstra
8138981492
stdlib: socket.CMSG_LEN & socket.CMSG_SPACE are only available on Unix ( #7384 )
2022-03-06 16:04:05 -08:00
Martin Fischer and Jelle Zijlstra
af269057be
stdlib: Add errno.EDEADLK
2022-03-06 15:57:52 -08:00
Martin Fischer and Jelle Zijlstra
182ddd9daf
stdlib: Add os.get_handle_inheritable & setter
2022-03-06 15:57:52 -08:00
Martin Fischer and Jelle Zijlstra
aa383624cf
stdlib: Add missing re-exports for UuidCreate, FCICreate, OpenDatabase & CreateRecord
2022-03-06 15:57:52 -08:00
Martin Fischer and Jelle Zijlstra
77829c5c99
stdlib: Add sys._enablelegacywindowsfsencoding()
2022-03-06 15:57:52 -08:00
Martin Fischer and Jelle Zijlstra
ec87fbfe88
stdlib: Add email.iterators._structure(msg)
2022-03-06 15:57:52 -08:00
Martin Fischer and Jelle Zijlstra
352f5c3237
stdlib: Add os.copy_file_range(src, dst, count)
2022-03-06 15:57:52 -08:00
Martin Fischer and Jelle Zijlstra
0978ef5c60
stdlib: Add signal.pidfd_send_signal(pidfd, sig)
2022-03-06 15:57:52 -08:00
Martin Fischer and Jelle Zijlstra
81a85f18b6
stdlib: Add os.pidfd_open(pid)
2022-03-06 15:57:52 -08:00
Martin Fischer and Jelle Zijlstra
9abf314a5b
stdlib: Add time.pthread_getcpuclockid(thread_id)
2022-03-06 15:57:52 -08:00
Martin Fischer and Jelle Zijlstra
14ac9f7557
stdlib: Add urllib.parse.unwrap(url)
2022-03-06 15:57:52 -08:00
Alex Waygood and GitHub
1a2f718ceb
Make several fields read-only for type, staticmethod and classmethod ( #7423 )
2022-03-06 15:50:26 -08:00
Alex Waygood and GitHub
ea6e06a60d
Use bound methods in pydoc ( #7426 )
2022-03-06 15:49:15 -08:00
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 Steinherz and GitHub
b9909b121e
Add missing typings to unittest.mock ( #7431 )
2022-03-06 15:43:39 -08:00
Alex Waygood and GitHub
bc72b25a2a
Make more miscellaneous fields read-only, annotate _json.make_encoder ( #7439 )
2022-03-06 15:41:49 -08:00
Alex Waygood and GitHub
cda3d9cf72
Use latest stubtest in CI ( #7438 )
2022-03-04 15:19:29 +01:00
Alex Waygood and GitHub
fbde20797e
Add tomllib.__all__ ( #7433 )
2022-03-03 15:25:30 -08:00
Taneli Hukkinen and GitHub
31b11c6eae
Add type hints for tomllib ( #7432 )
2022-03-03 15:04:33 -08:00
Alex Waygood and GitHub
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 Zijlstra and GitHub
0a6b6b095c
Add asyncio.windows_utils.Popen ( #7396 )
2022-03-02 12:37:54 +02:00