[Python-Dev] "CPython loves your Pull Requests" talk by Stéphane Wirtel

Terry Reedy tjreedy at udel.edu
Wed Dec 6 01:26:08 EST 2017


On 12/5/2017 10:25 AM, Mariatta Wijaya wrote:

>     * Time to merge a PR: 3 days in average, good!

Slide said 2.98 days, another said 4.4% by developers.

> Regarding the average time to merge PR, I'm interested to know the 
> average time to merge for PRs not made by Python Core Devs.

Trivially different: assume 0 days for all dev PRs, then average would 
be 2.96 / .956 = 3.12.

But any average that includes backports, which I suspect the above does, 
is skewed way down because backports are mostly merged soon after tests 
complete.  So I think 6 days average may be more realistic for master 
branch (3.7) PRs.

The average may be skewed down even more because some of the PRs that 
have been open a month or more will eventually be merged.

On the other hand, the mean, certainly by itself, is the *wrong* 
statistic for this data.  The argument for the value of using means 
depends on the data having a distribution that is at least roughly 
gaussian (misleadingly called 'normal').  The waiting times for merging 
appear to be negative exponential (slide 75).  Long waiting times have 
an oversized influence on the mean.

  So one should either calculate and report the median time or possibly 
the mean log(wait), converted back to waiting time.  In other words, 
exp(mean(map(log, waits))).  For the latter, one should probably start 
the clock after the initial CI tests finish, which is at least 1/2 hour.

-- 
Terry Jan Reedy (retired statistician)



More information about the Python-Dev mailing list