7.5 s

Julia repository report

4.6 μs

Overall statistics (on the date 2020-11-29)

  • Number of PRs: 19603

  • Number of merged PRs: 15610

  • Number of closed (non merged PRs): 3137

  • Number of mergers (those who can accept and merge PR): 65

  • Number of PR authors: 1400

Top mergers

10 rows × 2 columns

mergedBycnt
String?Int64
1JeffBezanson3343
2StefanKarpinski1283
3tkelman1202
4vtjnash1028
5Keno793
6ViralBShah719
7KristofferC673
8andreasnoack661
9fredrikekre637
10timholy485

Top authors

10 rows × 2 columns

authorcnt
String?Int64
1JeffBezanson1569
2vtjnash924
3kshyatt693
4Keno670
5yuyichao654
6KristofferC636
7timholy563
8tkelman460
9andreasnoack455
10stevengj453
5.4 s

PR dynamics

New PRs each year

10 rows × 2 columns

create_yearcnt
Int64Int64
1201110
22012543
320131096
420141826
520152524
620162824
720173416
820182856
920192042
1020202466
Merged PRs

Here you can see all merged PRs aggregated by the year of their creation. Comparing with the previuos table, you can estimate ratio of merged to created PRs. Of course, this statistics is skewed, since older PRs have more time to be merged, that is why later we compare number of closed or merged PRs during some period of time (1 month or 1 year).

10 rows × 2 columns

create_yearcnt
Int64Int64
1201110
22012405
32013831
420141405
520152013
620162315
720172878
820182316
920191562
1020201875

Plot of new and merged PR, aggregated by the year of PR creation

Ratio of merged/created PRs

14.9 s

Mergers dynamic

On this plot you can see various types of "mergers" aggregated by the year when they were active (i.e. they were actually merging PRs).

Active unique mergers means number of unique users, who were accepting PRs during each year.

New mergers for some year, means number of users who were merging PRs and made their first merge this year,

New mergers each year

10 rows × 2 columns

first_merge_yearcnt
Int64Int64
120113
220128
3201312
4201411
5201512
620168
720176
820181
920191
1020203
2.7 s

Authors dynamic

On this plot you can see number of active PR authors, i.e. they were actually creating PRs during corresponding year.

Active unique authors means number of unique users, who were creating PRs during each year.

New authors for some year means number of users who were creating PRs and made their first PR this year.

By comparing this plot with the mergers plots, you can maje correspondence between flow of authors and PRs on one hand and adequacy of merging efforts on the other hand.

By comparing with the dynamics of New PRs you can estimate average number of PRs per author and as a result PR efforts of an average author.

Quantiles of PR number per new author

This one is expanding on previous plot, by estimating amount of PRs generated by new authors during the year after first PR. For example, you can see, that starting from 2017 more than a half (median) authors generated only one PR.In terms of retention it means, that more than half of new authors never returns to PR activity.

2.7 s

Quantiles of waiting time (hours) of PR close/merge

In this table and related plot you can see how long it took to wait till PR is closed (which can be either rejecting or merging) in different years. Since waiting time is heavily skewed we are using quantiles, q1 is 5% quantile, q2 is 25% quantile, q3 is median(50% quantile), q4 is 75% quantile. We do not used 95% quantile, since it went to infinity in 2019 (more than 5% of PRs were never closed). This data can be read as follows: it took 21 hour for half PRs to be closed in 2014 and 78 hours in 2019.

N.B.: y axis is in log scale, so linear growth on the plot means exponential growth in absolute values.

10 rows × 5 columns

yearq1q2q3q4
Int64Float64Float64Float64Float64
120110.9958752.052013.112363.76708
220120.06630560.7348614.6655633.4825
320130.07111111.064659.5683369.8454
420140.06694441.8758321.749151.194
520150.7586396.4554226.5876160.178
620161.7996313.513940.6775189.081
720173.2474319.080548.4656219.646
820182.6947915.931746.0471243.057
920192.8442219.802877.8292770.892
1020202.5188919.139470.8758395.715

PRs with long close time

in this table and plot, you can see number and ratio of PRs that has waited longer then one month (or one year) to be closed or they are still open up to this moment. For example, out of 1826 PRs created in 2014 only 253 (13.8%) PRs were closed after one month after creation. On the contrary out of 2042 PRs created in 2019 515(25%) were not closed during one month after creation.

Year 2020 is skewed for the statistics of 1 year since for many PRs one year is not over yet. So it should not be taken into account and was removed from the corresponding plot. But 1 month statistics for 2020 is acceptable.

10 rows × 6 columns

yearcntcnt_month_waitcnt_year_waitratio_month_waitratio_year_wait
Int64Int64Int64Int64Float64Float64
1201110000.00.0
220125432120.0386740.00368324
32013109688120.0802920.0109489
420141826253730.1385540.0399781
5201525243351350.1327260.0534865
6201628244101580.1451840.055949
7201734164901570.1434430.0459602
8201828564832430.1691180.085084
9201920425152510.2522040.122919
10202024665163330.2092460.135036
2.8 s

State of the first PR of new authors.

Here you can find what has happened with the first PR of new authors. Generally PR can be in one of three states: Open, Merged or Closed (i.e. Rejected). Of course this statistics is skewed, since it older PR has more chances to be in Merged or Rejected state.

10 rows × 9 columns

yearmerged_cntclosed_cntopen_cntpr_cntrejected_cntratioopen_ratiorejected_ratio
Int64Int64Int64Int64Int64Int64Float64Float64Float64
12011440401.00.00.0
22012721000100280.720.00.28
32013811100110290.7363640.00.263636
420141181812183630.6448090.0109290.344262
520151081684172600.6279070.02325580.348837
62016861467153600.5620920.04575160.392157
72017861304134440.6417910.02985070.328358
8201812317111182480.6758240.06043960.263736
9201910916228190530.5736840.1473680.278947
10202010413339172290.6046510.2267440.168605
3.2 s

Core and non-core developers

PRs by developer group

In the following table and plot is shown number of PR aggregated by the year of creation and whether it was created by someone from core team (developers who can merge PRs) and other contributors. other_ratio field is a ratio of PRs made by non core developers to the all PRs.

10 rows × 4 columns

yearCoreOtherother_ratio
Int64Int64?Int64?Float64
12011820.2
220123461970.362799
320137343620.330292
4201412515750.314896
5201518107140.282884
6201622046200.219547
7201727396770.198185
8201820288280.289916
9201912767660.375122
10202015009660.391727

Median waiting times by developer group

Here you can see median waiting time of PRs split by developer group. You can compare it with overall median times presented in "Quantiles of waiting time" section. The same definition of waiting time is used.

10 rows × 3 columns

yearCoreOther
Int64Float64?Float64?
120113.112362.13458
220128.62.65111
3201314.30075.08986
4201424.648914.9706
5201526.350727.3482
6201635.663677.7087
7201745.3808123.299
8201840.17681.8843
9201954.4386215.394
10202053.2849121.963
3.5 s
14.5 s