From bdee9009709514a4e7bb62d92e892cb2841bf46f Mon Sep 17 00:00:00 2001 From: Savannah Ostrowski Date: Fri, 7 Feb 2025 20:50:54 -0800 Subject: [PATCH] PEP 774: Add calculation details --- peps/pep-0774.rst | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/peps/pep-0774.rst b/peps/pep-0774.rst index 224db75075b..58a3f0a9f49 100644 --- a/peps/pep-0774.rst +++ b/peps/pep-0774.rst @@ -89,7 +89,7 @@ difference between the actual commits and the same commits with stencils added amounts to a difference of 0.03 MB per stencil file. This is a small increase in the context of the overall repository size, which has grown by 2.55 MB in the same time period. For six stencil files, this amounts to an upper bound of 0.18 MB. -The current total size of the stencil files for all six platforms is 7.2 MB. +The current total size of the stencil files for all six platforms is 7.2 MB. [#stencil_calc]_ These stencils could become larger in the future with changes to register allocation, which would introduce 5-6 variants per instruction in each stencil @@ -252,6 +252,17 @@ challenges of accessibility and simplicity, and fails to eliminate the dependency which was deemed undesirable at the Python Core Developer Sprint in the fall (the impetus for this PEP), making it a poor long-term solution. +Footnotes +========= + +.. [#stencil_calc] Calculated using this `Gist + `__. + This script replays commits for roughly the past 90 days, generates the + stencil file for the platform for each commit, and then commits the stencil + file into a copy of the repository if they change. The calculation compares + the before and after of the repository after running ``git gc --aggressive``, + which is used to pack the repo (similar to what GitHub does on repo clone). + Copyright =========