Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7c55399172 
								
							 
						 
						
							
							
								
								gh-109719: Fix missing jump target labels when compiler reorders cold/warm blocks ( #109734 )  
							
							
							
						 
						
							2023-09-22 16:59:35 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								9ccf0545ef 
								
							 
						 
						
							
							
								
								gh-109627: duplicated smalll exit blocks need to be assigned jump target labels ( #109630 )  
							
							
							
						 
						
							2023-09-20 23:08:06 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								987b4bc087 
								
							 
						 
						
							
							
								
								gh-109341: Fix crash on compiling invalid AST including TypeAlias ( #109349 )  
							
							
							
						 
						
							2023-09-13 09:00:39 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Jelle Zijlstra 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								79101edb03 
								
							 
						 
						
							
							
								
								gh-109351: Fix crash when compiling AST with invalid NamedExpr ( #109352 )  
							
							
							
						 
						
							2023-09-13 09:00:15 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Carl Meyer 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ceeb4173ae 
								
							 
						 
						
							
							
								
								gh-109195: fix source location for super load before LOAD_SUPER_ATTR ( #109289 )  
							
							
							
						 
						
							2023-09-11 17:35:49 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b0edf3b98e 
								
							 
						 
						
							
							
								
								GH-91079: Rename C_RECURSION_LIMIT to Py_C_RECURSION_LIMIT ( #108507 )  
							
							... 
							
							
							
							Symbols of the C API should be prefixed by "Py_" to avoid conflict
with existing names in 3rd party C extensions on "#include <Python.h>".
test.pythoninfo now logs Py_C_RECURSION_LIMIT constant and other
_testcapi and _testinternalcapi constants. 
							
						 
						
							2023-09-08 09:48:28 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f3ba0a74cd 
								
							 
						 
						
							
							
								
								gh-108416: Mark slow test methods with @requires_resource('cpu') (GH-108421)  
							
							... 
							
							
							
							Only mark tests which spend significant system or user time,
by itself or in subprocesses. 
							
						 
						
							2023-09-02 07:45:34 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a1cc74c4ee 
								
							 
						 
						
							
							
								
								gh-107901: Fix missing line number on BACKWARD_JUMP at the end of a for loop ( #108242 )  
							
							
							
						 
						
							2023-08-21 23:44:31 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								bdd8ddfda1 
								
							 
						 
						
							
							
								
								gh-105724: Add location information to assert errors (GH-105935)  
							
							
							
						 
						
							2023-08-16 11:35:38 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								fa45958450 
								
							 
						 
						
							
							
								
								GH-107263: Increase C stack limit for most functions, except _PyEval_EvalFrameDefault() (GH-107535)  
							
							... 
							
							
							
							* Set C recursion limit to 1500, set cost of eval loop to 2 frames, and compiler mutliply to 2. 
							
						 
						
							2023-08-04 10:10:29 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dong-hee Na 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								115df8491a 
								
							 
						 
						
							
							
								
								gh-104635: Add a test case for variables that have a dependency. (gh-106583)  
							
							
							
						 
						
							2023-07-11 10:14:53 +09:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Carl Meyer 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0589c6a4d3 
								
							 
						 
						
							
							
								
								gh-104615: don't make unsafe swaps in apply_static_swaps ( #104620 )  
							
							
							
						 
						
							2023-05-18 21:22:03 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Carl Meyer 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c3b595e73e 
								
							 
						 
						
							
							
								
								gh-97933: (PEP 709) inline list/dict/set comprehensions ( #101441 )  
							
							... 
							
							
							
							Co-authored-by: Irit Katriel <1055913+iritkatriel@users.noreply.github.com>
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com> 
							
						 
						
							2023-05-09 11:02:14 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0444ae2487 
								
							 
						 
						
							
							
								
								GH-100982: Break up COMPARE_AND_BRANCH (GH-102801)  
							
							
							
						 
						
							2023-03-23 15:25:09 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								36b139af63 
								
							 
						 
						
							
							
								
								gh-101951: use textwrap.dedent in compiler tests to make them more readable (GH-101950)  
							
							... 
							
							
							
							Fixes  #101951 .
Automerge-Triggered-By: GH:iritkatriel 
						
							2023-02-16 04:31:59 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									penguin_wwy 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								df7ccf6138 
								
							 
						 
						
							
							
								
								gh-101928: fix crash in compiler on multi-line lambda in function call ( #101933 )  
							
							
							
						 
						
							2023-02-16 11:31:41 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									penguin_wwy 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								753fc8a5d6 
								
							 
						 
						
							
							
								
								gh-101632: Add the new RETURN_CONST opcode ( #101633 )  
							
							
							
						 
						
							2023-02-07 22:32:21 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e9ccfe4a63 
								
							 
						 
						
							
							
								
								gh-100712: make it possible to disable specialization (for debugging) ( #100713 )  
							
							
							
						 
						
							2023-01-19 18:14:55 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7b14c2ef19 
								
							 
						 
						
							
							
								
								GH-100982: Add COMPARE_AND_BRANCH instruction (GH-100983)  
							
							
							
						 
						
							2023-01-16 12:35:21 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f07daaf4f7 
								
							 
						 
						
							
							
								
								GH-100117: Make co_lines more efficient (GH-100447)  
							
							
							
						 
						
							2023-01-10 10:56:53 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ae185fdcca 
								
							 
						 
						
							
							
								
								gh-99708: fix bug where compiler crashes on if expression with an empty body block (GH-99732)  
							
							
							
						 
						
							2022-11-24 10:59:07 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								fb844e1931 
								
							 
						 
						
							
							
								
								gh-98762: Fix locations of match sub-patterns (GH-98775)  
							
							
							
						 
						
							2022-11-12 18:42:17 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3dd6ee2c00 
								
							 
						 
						
							
							
								
								gh-99254: remove all unused consts from code objects (GH-99255)  
							
							
							
						 
						
							2022-11-11 10:53:43 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Carl Meyer 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								027bc7e6bb 
								
							 
						 
						
							
							
								
								gh-94445: add compiler test for another case of excessive stack use (GH-99237)  
							
							
							
						 
						
							2022-11-08 20:39:32 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								a1a8828e42 
								
							 
						 
						
							
							
								
								gh-98461: Fix location of RETURN_VALUE in async generator bytecode. compiler_jump_if no longer needs a pointer to the loc. (GH-98494)  
							
							
							
						 
						
							2022-10-25 12:26:26 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								4ec9ed8fde 
								
							 
						 
						
							
							
								
								gh-98461: Fix source location in comprehensions bytecode (GH-98464)  
							
							
							
						 
						
							2022-10-20 16:58:37 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								9be05df399 
								
							 
						 
						
							
							
								
								gh-98398: Fix source locations for 'assert' bytecode (GH-98405)  
							
							
							
						 
						
							2022-10-19 10:48:50 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c051d55ddb 
								
							 
						 
						
							
							
								
								gh-98390: Fix source locations of boolean sub-expressions (GH-98396)  
							
							
							
						 
						
							2022-10-18 17:18:38 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								db03c8066a 
								
							 
						 
						
							
							
								
								gh-98393: os module reject bytes-like, only accept bytes ( #98394 )  
							
							... 
							
							
							
							The os module and the PyUnicode_FSDecoder() function no longer accept
bytes-like paths, like bytearray and memoryview types: only the exact
bytes type is accepted for bytes strings. 
							
						 
						
							2022-10-18 17:52:31 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c529b45122 
								
							 
						 
						
							
							
								
								gh-87092: bring compiler code closer to a preprocessing-opt-assembler organisation (GH-97644)  
							
							
							
						 
						
							2022-10-05 08:52:35 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								76449350b3 
								
							 
						 
						
							
							
								
								GH-91079: Decouple C stack overflow checks from Python recursion checks. (GH-96510)  
							
							
							
						 
						
							2022-10-05 01:34:03 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Pablo Galindo Salgado 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								aab01e3524 
								
							 
						 
						
							
							
								
								gh-96670: Raise SyntaxError when parsing NULL bytes ( #97594 )  
							
							
							
						 
						
							2022-09-27 23:23:42 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								dfc73b5724 
								
							 
						 
						
							
							
								
								GH-95921: Fix positions for some chained comparisons (GH-96968)  
							
							
							
						 
						
							2022-09-20 12:22:24 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Gregory P. Smith 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								511ca94520 
								
							 
						 
						
							
							
								
								gh-95778: CVE-2020-10735: Prevent DoS by very large int() ( #96499 )  
							
							... 
							
							
							
							Integer to and from text conversions via CPython's bignum `int` type is not safe against denial of service attacks due to malicious input. Very large input strings with hundred thousands of digits can consume several CPU seconds.
This PR comes fresh from a pile of work done in our private PSRT security response team repo.
Signed-off-by: Christian Heimes [Red Hat] <christian@python.org>
Tons-of-polishing-up-by: Gregory P. Smith [Google] <greg@krypto.org>
Reviews via the private PSRT repo via many others (see the NEWS entry in the PR).
<!-- gh-issue-number: gh-95778 -->
* Issue: gh-95778
<!-- /gh-issue-number -->
I wrote up [a one pager for the release managers](https://docs.google.com/document/d/1KjuF_aXlzPUxTK4BMgezGJ2Pn7uevfX7g0_mvgHlL7Y/edit# ). Much of that text wound up in the Issue. Backports PRs already exist. See the issue for links. 
							
						 
						
							2022-09-02 09:35:08 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								1e743616ac 
								
							 
						 
						
							
							
								
								gh-96276: suppress SyntaxWarning in test_compile (GH-96277)  
							
							
							
						 
						
							2022-08-25 22:23:06 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c7e5bbaee8 
								
							 
						 
						
							
							
								
								GH-95150: Use position and exception tables for code hashing and equality (GH-95509)  
							
							
							
						 
						
							2022-08-01 11:02:56 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Christian Heimes 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								51c56f8d72 
								
							 
						 
						
							
							
								
								gh-93678: Address stack exhaustion on WASI (GH-95296)  
							
							
							
						 
						
							2022-07-26 22:14:35 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								900bfc53cb 
								
							 
						 
						
							
							
								
								GH-94036: Fix more attribute location quirks (GH-95028)  
							
							
							
						 
						
							2022-07-22 13:13:16 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								742d4614e1 
								
							 
						 
						
							
							
								
								GH-91409: Don't overwrite valid locations with NOP locations (GH-95067)  
							
							
							
						 
						
							2022-07-20 14:27:31 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								264b3ddfd5 
								
							 
						 
						
							
							
								
								GH-94694: Fix column offsets for multi-line method lookups (GH-94697)  
							
							
							
						 
						
							2022-07-09 17:22:23 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Irit Katriel 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								324d01944d 
								
							 
						 
						
							
							
								
								gh-94485: Set line number of module's RESUME instruction to 0, as specified by PEP 626 (GH-94552)  
							
							... 
							
							
							
							Co-authored-by: Mark Shannon <mark@hotpy.org> 
							
						 
						
							2022-07-05 14:38:44 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b152bf448b 
								
							 
						 
						
							
							
								
								GH-94329: Don't raise on excessive stack consumption (GH-94421)  
							
							
							
						 
						
							2022-06-30 15:27:14 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c0453a40fa 
								
							 
						 
						
							
							
								
								GH-94163: Add BINARY_SLICE and STORE_SLICE instructions. (GH-94168)  
							
							
							
						 
						
							2022-06-27 12:24:23 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Christian Heimes 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								137fd3d88a 
								
							 
						 
						
							
							
								
								gh-90473: Decrease recursion limit and skip tests on WASI (GH-92803)  
							
							
							
						 
						
							2022-05-19 12:43:16 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e48ac9c100 
								
							 
						 
						
							
							
								
								GH-90690: Remove PRECALL instruction (GH-92925)  
							
							
							
						 
						
							2022-05-19 11:05:26 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Mark Shannon 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								944fffee89 
								
							 
						 
						
							
							
								
								GH-88116: Use a compact format to represent end line and column offsets. (GH-91666)  
							
							... 
							
							
							
							* Stores all location info in linetable to conform to PEP 626.
* Remove column table from code objects.
* Remove end-line table from code objects.
* Document new location table format 
							
						 
						
							2022-04-21 16:10:37 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2bde6827ea 
								
							 
						 
						
							
							
								
								bpo-46841: Quicken code in-place (GH-31888)  
							
							... 
							
							
							
							* Moves the bytecode to the end of the corresponding PyCodeObject, and quickens it in-place.
* Removes the almost-always-unused co_varnames, co_freevars, and co_cellvars member caches
* _PyOpcode_Deopt is a new mapping from all opcodes to their un-quickened forms.
* _PyOpcode_InlineCacheEntries is renamed to _PyOpcode_Caches
* _Py_IncrementCountAndMaybeQuicken is renamed to _PyCode_Warmup
* _Py_Quicken is renamed to _PyCode_Quicken
* _co_quickened is renamed to _co_code_adaptive (and is now a read-only memoryview).
* Do not emit unused nonzero opargs anymore in the compiler. 
							
						 
						
							2022-03-21 11:11:17 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nikita Sobolev 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								6c83c8e6b5 
								
							 
						 
						
							
							
								
								bpo-46198: rename duplicate tests and remove unused code (GH-30297)  
							
							
							
						 
						
							2022-03-10 08:20:11 -08:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7820a5897e 
								
							 
						 
						
							
							
								
								bpo-46841: Use inline caching for COMPARE_OP (GH-31622)  
							
							
							
						 
						
							2022-03-01 13:53:13 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brandt Bucher 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								0f41aac109 
								
							 
						 
						
							
							
								
								bpo-46841: Use *inline* caching for BINARY_OP (GH-31543)  
							
							
							
						 
						
							2022-02-25 12:11:34 +00:00