傅立业(Chris Fu) 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								8eec7ed714 
								
							 
						 
						
							
							
								
								gh-117110: Fix subclasses of typing.Any with custom constructors ( #117111 )  
							
							
							
						 
						
							2024-03-29 00:19:20 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								df4784b3b7 
								
							 
						 
						
							
							
								
								gh-116127: PEP-705: Add ReadOnly support for TypedDict ( #116350 )  
							
							... 
							
							
							
							Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com> 
							
						 
						
							2024-03-12 07:49:39 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mehdi Drissi 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d308d33e09 
								
							 
						 
						
							
							
								
								gh-89547: Support for nesting special forms like Final ( #116096 )  
							
							
							
						 
						
							2024-03-11 23:11:56 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a29998a06b 
								
							 
						 
						
							
							
								
								gh-116325: Raise SyntaxError rather than IndexError on ForwardRef with empty string arg ( #116341 )  
							
							
							
						 
						
							2024-03-05 09:14:18 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a7549b03ce 
								
							 
						 
						
							
							
								
								gh-112281: Allow Union with unhashable Annotated metadata ( #112283 )  
							
							... 
							
							
							
							Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2024-03-01 16:19:24 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								95ebd45613 
								
							 
						 
						
							
							
								
								Remove outdated comment about py3.6 in test_typing ( #115318 )  
							
							
							
						 
						
							2024-02-12 06:23:54 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									dave-shawley 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								564385612c 
								
							 
						 
						
							
							
								
								gh-115165: Fix typing.Annotated for immutable types ( #115213 )  
							
							... 
							
							
							
							The return value from an annotated callable can raise any exception from
__setattr__ for the `__orig_class__` property. 
							
						 
						
							2024-02-09 22:11:37 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Carl Meyer 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a225520af9 
								
							 
						 
						
							
							
								
								gh-112903: Handle non-types in _BaseGenericAlias.__mro_entries__() ( #115191 )  
							
							... 
							
							
							
							Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2024-02-09 12:19:09 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brett Cannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								03f7839703 
								
							 
						 
						
							
							
								
								GH-114013: fix setting HOSTRUNNER for Tools/wasm/wasi.py (GH-114097)  
							
							... 
							
							
							
							Also fix tests found failing under a pydebug build of WASI thanks to `make test` working due to this change. 
							
						 
						
							2024-01-16 11:36:41 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ed6ea3ea79 
								
							 
						 
						
							
							
								
								gh-113320: Reduce the number of dangerous getattr() calls when constructing protocol classes ( #113401 )  
							
							... 
							
							
							
							- Only attempt to figure out whether protocol members are "method members" or not if the class is marked as a runtime protocol. This information is irrelevant for non-runtime protocols; we can safely skip the risky introspection for them.
- Only do the risky getattr() calls in one place (the runtime_checkable class decorator), rather than in three places (_ProtocolMeta.__init__, _ProtocolMeta.__instancecheck__ and _ProtocolMeta.__subclasscheck__). This reduces the number of locations in typing.py where the risky introspection could go wrong.
- For runtime protocols, if determining whether a protocol member is callable or not fails, give a better error message. I think it's reasonable for us to reject runtime protocols that have members which raise strange exceptions when you try to access them. PEP-544 clearly states that all protocol member must be callable for issubclass() calls against the protocol to be valid -- and if a member raises when we try to access it, there's no way for us to figure out whether it's a callable member or not! 
							
						 
						
							2024-01-05 01:01:48 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2ed20d3bd8 
								
							 
						 
						
							
							
								
								gh-74690: Avoid a costly type check where possible in _ProtocolMeta.__subclasscheck__ ( #112717 )  
							
							
							
						 
						
							2023-12-04 19:35:46 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a35a305098 
								
							 
						 
						
							
							
								
								gh-112618: Make Annotated cache typed ( #112619 )  
							
							... 
							
							
							
							Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2023-12-02 16:10:19 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								4038869423 
								
							 
						 
						
							
							
								
								gh-112509: Fix keys being present in both required_keys and optional_keys in TypedDict ( #112512 )  
							
							... 
							
							
							
							Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2023-11-29 09:36:48 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								22e411e1d1 
								
							 
						 
						
							
							
								
								gh-111874: Call __set_name__ on objects that define the method inside a typing.NamedTuple class dictionary as part of the creation of that class ( #111876 )  
							
							... 
							
							
							
							Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com> 
							
						 
						
							2023-11-27 16:34:44 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Randolf Scholz 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e9d1360c9a 
								
							 
						 
						
							
							
								
								gh-112345: typing.Protocol: Let failed subclasscheck show non-method members ( #112344 )  
							
							... 
							
							
							
							Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2023-11-24 09:46:08 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brett Cannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f489ace9e7 
								
							 
						 
						
							
							
								
								GH-111808: Make the default value for test.support.infinite_recursion() conditional on compiler optimizations (GH-112223)  
							
							... 
							
							
							
							Co-authored-by: Victor Stinner <vstinner@python.org> 
							
						 
						
							2023-11-17 15:52:11 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7680da4583 
								
							 
						 
						
							
							
								
								gh-112155: Run typing.py doctests as part of test_typing ( #112156 )  
							
							
							
						 
						
							2023-11-16 15:40:09 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								82e36dba45 
								
							 
						 
						
							
							
								
								gh-108303: Move more typing related files to Lib/test/typinganndata ( #111825 )  
							
							... 
							
							
							
							Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2023-11-08 14:19:34 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0e83d941be 
								
							 
						 
						
							
							
								
								gh-111808: Fix recursion error on WASM in test_typing (GH-111819)  
							
							
							
						 
						
							2023-11-07 11:23:57 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ccc8caa858 
								
							 
						 
						
							
							
								
								gh-111681: minor fixes to typing doctests; remove unused imports in test_typing ( #111682 )  
							
							... 
							
							
							
							Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2023-11-03 12:23:33 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ea7c26e4b8 
								
							 
						 
						
							
							
								
								gh-111126: Use isinstance instead of assert[Not]IsInstance in test_typing ( #111127 )  
							
							
							
						 
						
							2023-10-20 18:03:32 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d2a536b170 
								
							 
						 
						
							
							
								
								gh-110782: Fix crash when TypeVar is constructed with keyword args ( #110784 )  
							
							
							
						 
						
							2023-10-12 16:00:12 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								5257ade0bc 
								
							 
						 
						
							
							
								
								gh-110682: Ignore __match_args__ from __instancecheck__ in protocols ( #110683 )  
							
							... 
							
							
							
							Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2023-10-11 19:20:20 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								014aacda62 
								
							 
						 
						
							
							
								
								Enable ruff on Lib/test/test_typing.py ( #110179 )  
							
							
							
						 
						
							2023-10-02 14:13:48 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								732ad44cec 
								
							 
						 
						
							
							
								
								gh-110178: Use fewer weakrefs in test_typing.py ( #110194 )  
							
							... 
							
							
							
							Confirmed that without the C changes from #108517 , this test still segfaults with only 10 weakrefs. 
							
						 
						
							2023-10-02 08:03:53 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e8be0c9c5a 
								
							 
						 
						
							
							
								
								gh-109653: typing.py: improve import time by creating soft-deprecated members on demand ( #109651 )  
							
							... 
							
							
							
							Co-authored-by: Thomas Grainger <tagrain@gmail.com> 
							
						 
						
							2023-09-23 08:46:35 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								1293fcc3c6 
								
							 
						 
						
							
							
								
								gh-109543: Remove unnecessary hasattr check ( #109544 )  
							
							... 
							
							
							
							Also added a new test case covering the scenario I thought this
might be about. 
							
						 
						
							2023-09-19 20:15:52 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a1cbace91b 
								
							 
						 
						
							
							
								
								gh-105509: Simplify implementation of typing.Annotated ( #105510 )  
							
							
							
						 
						
							2023-09-01 13:57:25 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								482fad7f01 
								
							 
						 
						
							
							
								
								gh-108295: Fix crashes with TypeVar weakrefs ( #108517 )  
							
							
							
						 
						
							2023-08-26 17:13:33 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3f61cf646d 
								
							 
						 
						
							
							
								
								gh-108303: Move ann_module*.py files to typinganndata/ folder ( #108354 )  
							
							
							
						 
						
							2023-08-23 17:42:08 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d93b4ac2ff 
								
							 
						 
						
							
							
								
								gh-101162: Forbid using issubclass() with GenericAlias as the 1st arg (GH-103369)  
							
							
							
						 
						
							2023-08-11 22:12:11 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								32718f908c 
								
							 
						 
						
							
							
								
								gh-106309: Deprecate typing.no_type_check_decorator ( #106312 )  
							
							
							
						 
						
							2023-07-13 14:30:35 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								9499b0f138 
								
							 
						 
						
							
							
								
								gh-105974: Revert unintentional behaviour change for protocols with non-callable members and custom __subclasshook__ methods ( #105976 )  
							
							
							
						 
						
							2023-06-23 14:59:25 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								70c075c194 
								
							 
						 
						
							
							
								
								gh-105834: Add tests for calling issubclass() between two protocols ( #105835 )  
							
							... 
							
							
							
							Some parts of the implementation of `typing.Protocol` had poor test coverage 
							
						 
						
							2023-06-16 15:47:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7b1f0f204a 
								
							 
						 
						
							
							
								
								gh-105570: Deprecate unusual ways of creating empty TypedDicts ( #105780 )  
							
							... 
							
							
							
							Deprecate two methods of creating typing.TypedDict classes with 0 fields using the functional syntax: `TD = TypedDict("TD")` and `TD = TypedDict("TD", None)`. Both will be disallowed in Python 3.15. To create a TypedDict class with 0 fields, either use `class TD(TypedDict): pass` or `TD = TypedDict("TD", {})`. 
							
						 
						
							2023-06-14 14:58:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ad56340b66 
								
							 
						 
						
							
							
								
								gh-105566: Deprecate unusual ways of creating typing.NamedTuple classes ( #105609 )  
							
							... 
							
							
							
							Deprecate creating a typing.NamedTuple class using keyword arguments to denote the fields (`NT = NamedTuple("NT", x=int, y=str)`). This will be disallowed in Python 3.15. Use the class-based syntax or the functional syntax instead.
Two methods of creating `NamedTuple` classes with 0 fields using the functional syntax are also deprecated, and will be disallowed in Python 3.15: `NT = NamedTuple("NT")` and `NT = NamedTuple("NT", None)`. To create a `NamedTuple` class with 0 fields, either use `class NT(NamedTuple): pass` or `NT = NamedTuple("NT", [])`. 
							
						 
						
							2023-06-14 13:38:49 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								fc8037d84c 
								
							 
						 
						
							
							
								
								gh-104873: Add typing.get_protocol_members and typing.is_protocol ( #104878 )  
							
							... 
							
							
							
							Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2023-06-14 05:35:06 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								9d35a71a76 
								
							 
						 
						
							
							
								
								gh-105431: Remove unused stuff from test_typing.NewTypeTests ( #105432 )  
							
							
							
						 
						
							2023-06-08 07:30:42 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f5df347fcf 
								
							 
						 
						
							
							
								
								gh-103171: Forward-port new tests for runtime-checkable protocols dec orated with @final ( #105473 )  
							
							... 
							
							
							
							Forward-port of the tests that were added to the 3.11 branch in #105445  
							
						 
						
							2023-06-07 22:25:17 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								08756dbba6 
								
							 
						 
						
							
							
								
								gh-105280: Ensure isinstance([], collections.abc.Mapping) always evaluates to False ( #105281 )  
							
							
							
						 
						
							2023-06-05 14:10:49 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								cdfb201bfa 
								
							 
						 
						
							
							
								
								gh-105237: Allow calling issubclass(X, typing.Protocol) again ( #105239 )  
							
							
							
						 
						
							2023-06-05 06:36:51 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c05c31db8c 
								
							 
						 
						
							
							
								
								gh-105144: Runtime-checkable protocols: move all 'sanity checks' to _ProtocolMeta.__subclasscheck__ ( #105152 )  
							
							
							
						 
						
							2023-05-31 17:02:25 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2cb445635e 
								
							 
						 
						
							
							
								
								Remove raw asserts in test_typing.py ( #104951 )  
							
							
							
						 
						
							2023-05-26 15:03:02 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Tomas R 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								fea8632ec6 
								
							 
						 
						
							
							
								
								gh-104786: Remove kwargs-based TypedDict creation ( #104891 )  
							
							... 
							
							
							
							Deprecated since Python 3.11.
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2023-05-25 21:14:58 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2b7027d0b2 
								
							 
						 
						
							
							
								
								gh-104935: typing: Fix interactions between @runtime_checkable and Generic ( #104939 )  
							
							... 
							
							
							
							---------
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com> 
							
						 
						
							2023-05-25 16:43:40 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								fe77a99fc8 
								
							 
						 
						
							
							
								
								gh-104879: Fix TypeAliasType.__module__ in exec() ( #104881 )  
							
							
							
						 
						
							2023-05-24 11:48:13 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								1497607a8e 
								
							 
						 
						
							
							
								
								Improve test coverage for is_typeddict ( #104884 )  
							
							... 
							
							
							
							In particular, it's important to test that is_typeddict(TypedDict)
returns False. 
							
						 
						
							2023-05-24 11:46:00 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c0ab7d401c 
								
							 
						 
						
							
							
								
								gh-104797: Allow Protocols to inherit from collections.abc.Buffer ( #104827 )  
							
							
							
						 
						
							2023-05-24 08:24:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Sebastian Rittau 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								abdda5b133 
								
							 
						 
						
							
							
								
								gh-92871: Remove typing.{io,re} namespaces ( #92873 )  
							
							... 
							
							
							
							Closes  #92871 
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com> 
						
							2023-05-23 13:44:26 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Alex Waygood 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b870b1fa75 
								
							 
						 
						
							
							
								
								gh-74690: Make a typing test more resilient ( #104691 )  
							
							
							
						 
						
							2023-05-20 17:13:37 -07:00