GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - python-cmake-buildsystem/cpython: Staging area to maintain and test CPython patches

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

11 Commits
11 Commits

Folders and files

NameName
Last commit message
Last commit date
LICENSE_Apache_20
LICENSE_Apache_20
 
 
README.rst
README.rst
 
 

Repository files navigation

CPython Patches

This project is an unofficial fork of CPython sources used as staging area to maintain and test CPython patches.

Fixes and improvements to CPython should first be contributed upstream. The Python Developer’s Guide is a great resource to guide you through the process.

That said, there are few scenarios where maintaining CPython patches is relevant:

  • When there is a need for a staging area for patches waiting to be integrated upstream. Doing so avoid each project to maintain their own set of patches.
  • When the proposed patches are specific to a system not officially supported (e.g Android, Emscripten, ...).
  • When generalizing proposed patches is definitively not feasible given the time and resources.
  • When patches fix an older version of CPython (e.g. 2.7) so that it can be compiled using newer compiler (e.g VS2015).

Available branches

  • 3.12.0-patches:

    • _bootstrap_python: Fix execution on windows disabling site import
    • getpath: Update build directory assumptions based on python-cmake-buildsystem

    Apply to 3.12.x

  • 3.11.0-patches:

    • _bootstrap_python: Fix execution on windows disabling site import
    • getpath: Update build directory assumptions based on python-cmake-buildsystem

    Apply to 3.11.x

  • 3.6.15-patches:

    • bpo-35519: Rename test.bisect to test.bisect_cmd. - Apply to 3.6.15
  • 3.6.2-patches:

    • Fix Windows build of Python for latest WinSDK. - Apply to 3.6.x
    • Rename header files found in Modules/_decimal/libmpdec directory to avoid conflicts with system headers of the same name (io.h). This script was originally used to update the sources: https://gist.github.com/jcfr/e166c0f3fd823de2586b1101f9c67947. - Apply to 3.6.x
    • Prevent duplicated OverlappedType symbols with built-in extension on Windows. - Apply to 3.6.x
    • Export inlined functions to support extension built-in on Windows. - Apply to 3.6.x
  • 3.5.3-patches:

    • Rename header files found in Modules/_decimal/libmpdec directory to avoid conflicts with system headers of the same name (io.h and memory.h). This script was originally used to update the sources: https://gist.github.com/jcfr/e166c0f3fd823de2586b1101f9c67947. - Apply to 3.5.x
    • Prevent duplicated OverlappedType symbols with built-in extension on Windows. - Apply to 3.5.x
    • Export inlined functions to support extension built-in on Windows. - Apply to 3.5.x
  • 2.7.15-patches:

    • Support for VS2010 and VS2015.
    • Support for MinGW (building socket and ctypes modules is not supported).
  • 2.7.13-patches:

    • Support for VS2010 and VS2015.
    • Support for MinGW (building socket and ctypes modules is not supported).

    Apply to 2.7.11, 2.7.12 and 2.7.14

  • 2.7.5-patches:

    • Fix build with GNU readline >= 6.3.
    • Support for MinGW (building socket and ctypes modules is not supported).

    Apply to 2.7.5 and 2.7.6

  • 2.7.3-patches:

    • Fix build with GNU readline >= 6.3.
    • Support for MinGW (building socket and ctypes modules is not supported).

    Apply to 2.7.3 and 2.7.4

License

All software is licensed under the Apache 2.0 License. See LICENSE_Apache_20 file for details.

Why Apache 2.0 License?

From the python.org wiki, the answer to the question What if I want to contribute my code to the PSF mentions that if code is going to end up in Python or the standard library, the PSF will require you to license code under "Academic Free License" or "Apache License 2.0".

How are the patches applied ?

Patches associated with a given branches are generated using the git format-patch command and added to the relevant sub-directories of the python-cmake-buildsystem project. These are then automatically applied are configuration time using the PythonApplyPatches CMake module.

Read more details at python-cmake-buildsystem/patches/README.rst.

About

Staging area to maintain and test CPython patches

Resources

Readme
Apache-2.0 license
Activity
Custom properties

Stars

1 star

Watchers

9 watching

Forks

3 forks
Report repository

Releases

Packages

Contributors

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.