mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 01:47:38 +00:00 
			
		
		
		
	 f79547a429
			
		
	
	
		f79547a429
		
			
		
	
	
	
	
		
			
			If an HTTP link is redirected to a same looking HTTPS link, the latter can be used directly without changes in readability and behavior. It protects from a men-in-the-middle attack. This change does not affect Python examples.
		
			
				
	
	
		
			26 lines
		
	
	
	
		
			1,006 B
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
			
		
		
	
	
			26 lines
		
	
	
	
		
			1,006 B
		
	
	
	
		
			ReStructuredText
		
	
	
	
	
	
| .. highlight:: c
 | |
| 
 | |
| .. _cporting-howto:
 | |
| 
 | |
| *************************************
 | |
| Porting Extension Modules to Python 3
 | |
| *************************************
 | |
| 
 | |
| We recommend the following resources for porting extension modules to Python 3:
 | |
| 
 | |
| * The `Migrating C extensions`_ chapter from
 | |
|   *Supporting Python 3: An in-depth guide*, a book on moving from Python 2
 | |
|   to Python 3 in general, guides the reader through porting an extension
 | |
|   module.
 | |
| * The `Porting guide`_ from the *py3c* project provides opinionated
 | |
|   suggestions with supporting code.
 | |
| * The `Cython`_ and `CFFI`_ libraries offer abstractions over
 | |
|   Python's C API.
 | |
|   Extensions generally need to be re-written to use one of them,
 | |
|   but the library then handles differences between various Python
 | |
|   versions and implementations.
 | |
| 
 | |
| .. _Migrating C extensions: http://python3porting.com/cextensions.html
 | |
| .. _Porting guide: https://py3c.readthedocs.io/en/latest/guide.html
 | |
| .. _Cython: https://cython.org/
 | |
| .. _CFFI: https://cffi.readthedocs.io/en/latest/
 |