@@ -23,9 +23,22 @@ repository](https://github.com/python/cpython). macOS and iOS are both
2323officially supported Python platforms, and the code distributed by this project
2424for those platforms is unmodified from the official repository.
2525
26- Changes to to support other platforms can be included in this PR, but they must
27- also be submitted as a pull request against the ` MAJOR.MINOR-patched ` branch on
28- [ the ` freakboy3742 ` fork of the CPython
26+ Changes to to support other platforms can be included in a PR for this repo, but
27+ they must also be submitted as a pull request against the ` MAJOR.MINOR-patched `
28+ branch on [ the ` freakboy3742 ` fork of the CPython
2929repo] ( https://github.com/freakboy3742/cpython ) . This is required to ensure that
3030any contributed changes can be easily reproduced in future patches as more
3131changes are made.
32+
33+ Note that the ` MAJOR.MINOR-patched ` branch of that fork is maintained in the format
34+ of a * patch tree* , which is a branch that has an entirely linear sequence of
35+ commits applied on top of another branch (in the case of the fork, ` MAJOR.MINOR ` ),
36+ each of which adding a new feature. Therefore, bug fixes to the patches applied
37+ * will* be merged, but their changes gets squashed into the commit applying the
38+ feature. Feature additions to the patch will be squashed into a single commit,
39+ and then merged.
40+
41+ This also means that if another contributor on the fork gets a pull request merged
42+ into the fork, you must * rebase* , not merge, your changes on top of the newly pulled
43+ ` MAJOR.MINOR-patched ` branch, since the "history" of a patch tree branch might
44+ change in a way that is incompatible with merge commits.
0 commit comments