Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								ec13b9322d 
								
							 
						 
						
							
							
								
								bpo-35081: Add Include/internal/pycore_tupleobject.h (GH-10705)  
							
							... 
							
							
							
							Move _PyTuple_ITEMS() to a new header file:
Include/internal/pycore_tupleobject.h 
							
						 
						
							2018-11-25 23:56:17 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								621cebe81b 
								
							 
						 
						
							
							
								
								bpo-35081: Rename internal headers (GH-10275)  
							
							... 
							
							
							
							Rename Include/internal/ headers:
* pycore_hash.h -> pycore_pyhash.h
* pycore_lifecycle.h -> pycore_pylifecycle.h
* pycore_mem.h -> pycore_pymem.h
* pycore_state.h -> pycore_pystate.h
Add missing headers to Makefile.pre.in and PCbuild:
* pycore_condvar.h.
* pycore_hamt.h
* pycore_pyhash.h 
							
						 
						
							2018-11-12 16:53:38 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d17a693fa0 
								
							 
						 
						
							
							
								
								bpo-35199: Add an internal _PyTuple_ITEMS() macro (GH-10434)  
							
							... 
							
							
							
							* _PyTuple_ITEMS() gives access to the tuple->ob_item field and cast the
  first argument to PyTupleObject*. This internal macro is only usable if
  Py_BUILD_CORE is defined.
* Replace &PyTuple_GET_ITEM(ob, 0) with _PyTuple_ITEMS(ob).
* Replace PyTuple_GET_ITEM(op, 1) with &_PyTuple_ITEMS(ob)[1]. 
							
						 
						
							2018-11-09 16:56:48 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								27e2d1f219 
								
							 
						 
						
							
							
								
								bpo-35081: Add pycore_ prefix to internal header files (GH-10263)  
							
							... 
							
							
							
							* Rename Include/internal/ header files:
  * pyatomic.h -> pycore_atomic.h
  * ceval.h -> pycore_ceval.h
  * condvar.h -> pycore_condvar.h
  * context.h -> pycore_context.h
  * pygetopt.h -> pycore_getopt.h
  * gil.h -> pycore_gil.h
  * hamt.h -> pycore_hamt.h
  * hash.h -> pycore_hash.h
  * mem.h -> pycore_mem.h
  * pystate.h -> pycore_state.h
  * warnings.h -> pycore_warnings.h
* PCbuild project, Makefile.pre.in, Modules/Setup: add the
  Include/internal/ directory to the search paths of header files.
* Update includes. For example, replace #include "internal/mem.h"
  with #include "pycore_mem.h". 
							
						 
						
							2018-11-01 00:52:28 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								caba55b3b7 
								
							 
						 
						
							
							
								
								bpo-34301: Add _PyInterpreterState_Get() helper function (GH-8592)  
							
							... 
							
							
							
							sys_setcheckinterval() now uses a local variable to parse arguments,
before writing into interp->check_interval. 
							
						 
						
							2018-08-03 15:33:52 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								bd47384e07 
								
							 
						 
						
							
							
								
								bpo-24618: Add a check in the code constructor. (GH-8283)  
							
							... 
							
							
							
							Check that the size of the varnames tuple is enough at least for all arguments. 
							
						 
						
							2018-07-16 09:10:19 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b7e1eff843 
								
							 
						 
						
							
							
								
								bpo-33299: Return an object itself for some types in _PyCode_ConstantKey(). (GH-6513)  
							
							
							
						 
						
							2018-04-19 08:28:04 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Nick Coghlan 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								078f1814f1 
								
							 
						 
						
							
							
								
								bpo-32176: Set CO_NOFREE in the code object constructor (GH-4675)  
							
							... 
							
							
							
							Previously, CO_NOFREE was set in the compiler, which meant
it could end up being set incorrectly when code objects
were created directly. Setting it in the constructor based
on freevars and cellvars ensures it is always accurate,
regardless of how the code object is defined. 
							
						 
						
							2017-12-03 11:12:20 +10:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Benjamin Peterson 
								
							 
						 
						
							
							
							
							
								
							
							
								2b7953d974 
								
							 
						 
						
							
							
								
								replace custom table with pyctype ( #3456 )  
							
							
							
						 
						
							2017-09-08 10:35:49 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								e3b2b4b8d9 
								
							 
						 
						
							
							
								
								bpo-31393: Fix the use of PyUnicode_READY(). ( #3451 )  
							
							
							
						 
						
							2017-09-08 09:58:51 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Benjamin Peterson 
								
							 
						 
						
							
							
							
							
								
							
							
								8e0ad46bc8 
								
							 
						 
						
							
							
								
								update all_name_chars comment after  9020ac7cce ( #3452 )  
							
							
							
						 
						
							2017-09-07 23:35:53 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Benjamin Peterson 
								
							 
						 
						
							
							
							
							
								
							
							
								9020ac7cce 
								
							 
						 
						
							
							
								
								optimize all_name_chars ( #3442 )  
							
							... 
							
							
							
							Remove redundant PyUnicode_Check call. Use a static table for checking chars. 
							
						 
						
							2017-09-07 18:06:23 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								378ebb6578 
								
							 
						 
						
							
							
								
								bpo-30789: Use a single memory block for co_extra. ( #2555 )  
							
							... 
							
							
							
							* bpo-30789: Use a single memory block for co_extra.
* Address review comments. 
							
						 
						
							2017-07-04 14:06:16 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								23e7944eba 
								
							 
						 
						
							
							
								
								bpo-30704, bpo-30604: Fix memleak in code_dealloc() ( #2455 )  
							
							... 
							
							
							
							Free also co_extra->ce_extras, not only co_extra. 
							
						 
						
							2017-06-28 02:12:00 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dino Viehland 
								
							 
						 
						
							
							
							
							
								
							
							
								f3cffd2b78 
								
							 
						 
						
							
							
								
								bpo-30604: clean up co_extra support ( #2144 )  
							
							... 
							
							
							
							bpo-30604: port fix from 3.6 dropping binary compatibility tweaks 
							
						 
						
							2017-06-21 17:44:36 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dong-hee Na 
								
							 
						 
						
							
							
							
							
								
							
							
								b4dc6af7a7 
								
							 
						 
						
							
							
								
								bpo-12414: Update code_sizeof() to take in account co_extra memory. ( #1168 )  
							
							
							
						 
						
							2017-04-20 10:31:17 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Coleman 
								
							 
						 
						
							
							
							
							
								
							
							
								6a9122ce69 
								
							 
						 
						
							
							
								
								bpo-29683 - Fixes to _PyCode_SetExtra when co_extra->ce->extras is ( #376 )  
							
							... 
							
							
							
							allocated.
On PyMem_Realloc failure, _PyCode_SetExtra should free co_extra if
co_extra->ce_extras could not be allocated.
On PyMem_Realloc success, _PyCode_SetExtra should set all unused slots in
co_extra->ce_extras to NULL. 
							
						 
						
							2017-03-02 11:32:18 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								067cbd02bf 
								
							 
						 
						
							
							
								
								Issue  #29337 : Fixed possible BytesWarning when compare the code objects.  
							
							... 
							
							
							
							Warnings could be emitted at compile time. 
							
						 
						
							2017-01-24 20:54:07 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								4102d25b7e 
								
							 
						 
						
							
							
								
								Issue  #29337 : Fixed possible BytesWarning when compare the code objects.  
							
							... 
							
							
							
							Warnings could be emitted at compile time. 
							
						 
						
							2017-01-24 20:52:43 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								713640c4c9 
								
							 
						 
						
							
							
								
								Issue  #29337 : Fixed possible BytesWarning when compare the code objects.  
							
							... 
							
							
							
							Warnings could be emitted at compile time. 
							
						 
						
							2017-01-24 20:49:26 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								5bb8b9134b 
								
							 
						 
						
							
							
								
								Issue  #18896 : Python function can now have more than 255 parameters.  
							
							... 
							
							
							
							collections.namedtuple() now supports tuples with more than 255 elements. 
							
						 
						
							2016-12-16 19:19:02 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								460bd0d284 
								
							 
						 
						
							
							
								
								Issue  #19569 : Compiler warnings are now emitted if use most of deprecated  
							
							... 
							
							
							
							functions. 
							
						 
						
							2016-11-20 12:16:46 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								6c10650617 
								
							 
						 
						
							
							
								
								Merge 3.5 (issue  #27942 )  
							
							
							
						 
						
							2016-11-09 09:43:08 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Yury Selivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								d2fd3599ab 
								
							 
						 
						
							
							
								
								ssue  #27942 : Fix memory leak in codeobject.c  
							
							
							
						 
						
							2016-11-09 09:42:14 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								e81b0d335b 
								
							 
						 
						
							
							
								
								Issue  #28350 : String constants with null character no longer interned.  
							
							
							
						 
						
							2016-10-04 18:21:25 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								09f3d080fe 
								
							 
						 
						
							
							
								
								Issue  #28350 : String constants with null character no longer interned.  
							
							
							
						 
						
							2016-10-04 18:17:22 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								3738c2d8ae 
								
							 
						 
						
							
							
								
								Issue  #27942 : String constants now interned recursively in tuples and frozensets.  
							
							
							
						 
						
							2016-09-30 10:23:01 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								00a0fc1144 
								
							 
						 
						
							
							
								
								Issue  #27942 : String constants now interned recursively in tuples and frozensets.  
							
							
							
						 
						
							2016-09-30 10:07:26 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Martin Panter 
								
							 
						 
						
							
							
							
							
								
							
							
								0be894b2f6 
								
							 
						 
						
							
							
								
								Issue  #27895 :  Spelling fixes (Contributed by Ville Skyttä).  
							
							
							
						 
						
							2016-09-07 12:03:06 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brett Cannon 
								
							 
						 
						
							
							
							
							
								
							
							
								d0600ed524 
								
							 
						 
						
							
							
								
								Make PyCodeObject.co_extra even more private to force users through the proper API.  
							
							
							
						 
						
							2016-09-07 14:30:39 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brett Cannon 
								
							 
						 
						
							
							
							
							
								
							
							
								3788b85628 
								
							 
						 
						
							
							
								
								Change error return value to be more consistent with the rest of Python  
							
							
							
						 
						
							2016-09-07 12:51:08 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Benjamin Peterson 
								
							 
						 
						
							
							
							
							
								
							
							
								1bf494b0ec 
								
							 
						 
						
							
							
								
								use a the bool type for a boolean variable  
							
							
							
						 
						
							2016-09-07 11:28:35 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brett Cannon 
								
							 
						 
						
							
							
							
							
								
							
							
								5c4de2863b 
								
							 
						 
						
							
							
								
								Add the co_extra field and accompanying APIs to code objects.  
							
							... 
							
							
							
							This completes PEP 523. 
							
						 
						
							2016-09-07 11:16:41 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Raymond Hettinger 
								
							 
						 
						
							
							
							
							
								
							
							
								15f44ab043 
								
							 
						 
						
							
							
								
								Issue  #27895 :  Spelling fixes (Contributed by Ville Skyttä).  
							
							
							
						 
						
							2016-08-30 10:47:49 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Martin Panter 
								
							 
						 
						
							
							
							
							
								
							
							
								cda80940ed 
								
							 
						 
						
							
							
								
								Issue  #15984 : Merge PyUnicode doc from 3.5  
							
							
							
						 
						
							2016-04-15 02:27:11 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Martin Panter 
								
							 
						 
						
							
							
							
							
								
							
							
								6245cb3c01 
								
							 
						 
						
							
							
								
								Correct “an” → “a” with “Unicode”, “user”, “UTF”, etc  
							
							... 
							
							
							
							This affects documentation, code comments, and a debugging messages. 
							
						 
						
							2016-04-15 02:14:19 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								efb2413ce8 
								
							 
						 
						
							
							
								
								code_richcompare() now uses the constants types  
							
							... 
							
							
							
							Issue #25843 : When compiling code, don't merge constants if they are equal but
have a different types. For example, "f1, f2 = lambda: 1, lambda: 1.0" is now
correctly compiled to two different functions: f1() returns 1 (int) and f2()
returns 1.0 (int), even if 1 and 1.0 are equal.
Add a new _PyCode_ConstantKey() private function. 
							
						 
						
							2016-01-22 12:33:12 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								f3914eb16d 
								
							 
						 
						
							
							
								
								co_lnotab supports negative line number delta  
							
							... 
							
							
							
							Issue #26107 : The format of the co_lnotab attribute of code objects changes to
support negative line number delta.
Changes:
* assemble_lnotab(): if line number delta is less than -128 or greater than
  127, emit multiple (offset_delta, lineno_delta) in co_lnotab
* update functions decoding co_lnotab to use signed 8-bit integers
  - dis.findlinestarts()
  - PyCode_Addr2Line()
  - _PyCode_CheckLineNumber()
  - frame_setlineno()
* update lnotab_notes.txt
* increase importlib MAGIC_NUMBER to 3361
* document the change in What's New in Python 3.6
* cleanup also PyCode_Optimize() to use better variable names 
							
						 
						
							2016-01-20 12:16:21 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Serhiy Storchaka 
								
							 
						 
						
							
							
							
							
								
							
							
								5c4064e8bd 
								
							 
						 
						
							
							
								
								Issue  #25421 : __sizeof__ methods of builtin types now use dynamic basic size.  
							
							... 
							
							
							
							This allows sys.getsize() to work correctly with their subclasses with
__slots__ defined. 
							
						 
						
							2015-12-19 20:05:25 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								7c74de4d00 
								
							 
						 
						
							
							
								
								Issue  #18874 : PyCode_New() now ensures that the filename is a ready Unicode  
							
							... 
							
							
							
							string. This change does nothing is most cases, but it is useful on Windows in
some cases. 
							
						 
						
							2013-10-10 15:55:14 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Martin v. Löwis 
								
							 
						 
						
							
							
							
							
								
							
							
								3bbd2fad4d 
								
							 
						 
						
							
							
								
								Issue  #15456 : Fix code __sizeof__ after  #12399  change.  
							
							... 
							
							
							
							Patch by Serhiy Storchaka. 
							
						 
						
							2012-07-26 22:23:23 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								bf6e560d0c 
								
							 
						 
						
							
							
								
								Make PyUnicode_Copy() private => _PyUnicode_Copy()  
							
							... 
							
							
							
							Undocument the function.
Make also decode_utf8_errors() as private (static). 
							
						 
						
							2011-12-12 01:53:47 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								3cdd5fb970 
								
							 
						 
						
							
							
								
								code_richcompare() now uses the constants types  
							
							... 
							
							
							
							Issue #25843 : When compiling code, don't merge constants if they are equal but
have a different types. For example, "f1, f2 = lambda: 1, lambda: 1.0" is now
correctly compiled to two different functions: f1() returns 1 (int) and f2()
returns 1.0 (int), even if 1 and 1.0 are equal.
Add a new _PyCode_ConstantKey() private function. 
							
						 
						
							2016-01-22 12:33:12 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								ed2682be2f 
								
							 
						 
						
							
							
								
								Reuse PyUnicode_Copy() in validate_and_copy_tuple()  
							
							
							
						 
						
							2011-10-11 21:53:24 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Martin v. Löwis 
								
							 
						 
						
							
							
							
							
								
							
							
								d63a3b8beb 
								
							 
						 
						
							
							
								
								Implement PEP 393.  
							
							
							
						 
						
							2011-09-28 07:41:54 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Brian Curtin 
								
							 
						 
						
							
							
							
							
								
							
							
								dfc80e3d97 
								
							 
						 
						
							
							
								
								Replace Py_NotImplemented returns with the macro form Py_RETURN_NOTIMPLEMENTED.  
							
							... 
							
							
							
							The macro was introduced in #12724 . 
							
						 
						
							2011-08-10 20:28:54 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Benjamin Peterson 
								
							 
						 
						
							
							
							
							
								
							
							
								9003760991 
								
							 
						 
						
							
							
								
								map cells to arg slots at code creation time ( closes   #12399 )  
							
							... 
							
							
							
							This removes nested loops in PyEval_EvalCodeEx. 
							
						 
						
							2011-06-25 22:54:45 -05:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								aaa4e9a438 
								
							 
						 
						
							
							
								
								Remove arbitrary string length limits  
							
							... 
							
							
							
							PyUnicode_FromFormat() and PyErr_Format() allocates a buffer of the needed
size, it is no more a fixed-buffer of 500 bytes. 
							
						 
						
							2011-01-05 03:33:26 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Victor Stinner 
								
							 
						 
						
							
							
							
							
								
							
							
								0fcab4a3ed 
								
							 
						 
						
							
							
								
								Issue  #9566 : use Py_ssize_t instead of int  
							
							
							
						 
						
							2011-01-04 12:59:15 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Benjamin Peterson 
								
							 
						 
						
							
							
							
							
								
							
							
								8f67d0893f 
								
							 
						 
						
							
							
								
								make hashes always the size of pointers; introduce Py_hash_t  #9778  
							
							
							
						 
						
							2010-10-17 20:54:53 +00:00