@@ -25,40 +25,20 @@ cm_model_dev_responsiveness <- function (path,
25
25
metrics_data = NULL ) {
26
26
27
27
if (is.null (metrics_data )) {
28
- pr_durs <- cm_metric_pr_review_duration (path , end_date = end_date )
28
+ pr_dur_mn <- cm_metric_pr_review_duration (path , end_date = end_date )
29
29
issue_resp_time <-
30
30
cm_metric_issue_response_time (path , end_date = end_date )
31
31
defect_resol_dur <-
32
32
cm_metric_defect_resolution_dur (path , end_date = end_date )
33
33
} else {
34
- pr_durs <- metrics_data $ pr_review_duration
34
+ pr_dur_mn <- metrics_data $ pr_review_duration
35
35
issue_resp_time <- metrics_data $ issue_response_time
36
36
defect_resol_dur <- metrics_data $ defect_resolution_dur
37
37
}
38
38
39
- issue_resp_time <- mn_med_sum (as.integer (issue_resp_time ))
40
- names (issue_resp_time ) <- paste0 (" issue_resp_" , names (issue_resp_time ))
41
- names (defect_resol_dur ) <-
42
- paste0 (" defect_resol_" , names (defect_resol_dur ))
43
-
44
- nms <- list (c (" mn" , " mean" ), c (" md" , " median" ))
45
- vals <- lapply (nms , function (nm ) {
46
- index_i <- grep (nm [2 ], names (issue_resp_time ), value = TRUE )
47
- index_d <- grep (nm [2 ], names (defect_resol_dur ), value = TRUE )
48
- vals_i <- c (
49
- pr_durs [grep (nm [1 ], names (pr_durs ), value = TRUE )],
50
- issue_resp_time [index_i ],
51
- defect_resol_dur [index_d ]
52
- )
53
- return (vals_i [which (! is.na (vals_i ))])
54
- })
55
- vals <- c (mean = mean (vals [[1 ]]), median = stats :: median (vals [[2 ]]))
56
- names (vals ) <- c (" mean" , " median" )
57
- vals [which (is.na (vals ))] <- NA_real_
58
-
59
- # But only return mean value, to align with all others
60
- # And convert final value to scale so that higher is better by
61
- val <- 2 - log10 (vals [[" mean" ]])
39
+ vals <- c (pr_dur_mn , issue_resp_time , defect_resol_dur )
40
+ # convert final value to scale so that higher is better by
41
+ val <- 2 - log10 (mean (vals , na.rm = TRUE ))
62
42
val <- ifelse (is.na (val ), 0 , val )
63
43
return (val )
64
44
}
@@ -89,7 +69,7 @@ cm_model_proj_engagement <- function (path,
89
69
90
70
if (is.null (metrics_data )) {
91
71
92
- pr_dat <- cm_metric_change_req (path , end_date = end_date )
72
+ num_prs_merged <- cm_metric_num_prs_merged (path , end_date = end_date )
93
73
counts <- cm_metric_committer_count (path , end_date = end_date )
94
74
# has number of unique commiters for (watchers or forks, issues, prs)
95
75
@@ -108,20 +88,14 @@ cm_model_proj_engagement <- function (path,
108
88
# cm_metric_pr_review_duration (path, end_date = end_date)
109
89
} else {
110
90
111
- pr_dat <- metrics_data $ pr_dat
91
+ num_prs_merged <- metrics_data $ num_prs_merged
112
92
counts <- metrics_data $ committer_count
113
93
num_code_ctbs <- metrics_data $ ctb_count
114
94
num_issues_closed <- metrics_data $ issues_closed
115
95
num_issues_updated <- metrics_data $ issue_updates
116
96
num_issue_comments <- metrics_data $ issue_cmt_count
117
97
}
118
98
119
- num_prs_merged <- ifelse (
120
- length (pr_dat ) > 1 ,
121
- pr_dat [[" n_closed" ]],
122
- 0L
123
- )
124
-
125
99
res <- c (
126
100
num_prs_merged , counts , num_code_ctbs ,
127
101
num_issues_closed , num_issues_updated , num_issue_comments
@@ -269,7 +243,6 @@ cm_model_oss_compliance <- function (path,
269
243
270
244
bp_badge <- as.integer (bp_badge )
271
245
lic_declared <- as.integer (length (lic_declared ) > 0L )
272
- defect_res_dur <- defect_res_dur [[" mean" ]]
273
246
defect_res_dur <- ifelse (defect_res_dur > 0 , log10 (defect_res_dur ), 0 )
274
247
libyears <- libyears [[" mean" ]]
275
248
@@ -573,7 +546,7 @@ cm_model_comm_serv_support <- function (path,
573
546
cm_metric_defect_resolution_dur (path , end_date = end_date )
574
547
575
548
pr_age <- cm_metric_pr_age (path , end_date = end_date )
576
- pr_dur <- cm_metric_pr_review_duration (path , end_date = end_date )
549
+ pr_dur_mn <- cm_metric_pr_review_duration (path , end_date = end_date )
577
550
578
551
# Metrics measured in N > 1, for which higher is better:
579
552
issue_num_cmts <- cm_metric_issue_comments (path , end_date = end_date )
@@ -586,23 +559,20 @@ cm_model_comm_serv_support <- function (path,
586
559
issue_age <- metrics_data $ issue_age
587
560
issue_res_duration <- metrics_data $ defect_resolution_dur
588
561
pr_age <- metrics_data $ pr_age
589
- pr_dur <- metrics_data $ pr_review_duration
562
+ pr_dur_mn <- metrics_data $ pr_review_duration
590
563
issue_num_cmts <- metrics_data $ issue_comments
591
564
issues_active <- metrics_data $ issues_active
592
565
pr_num_revs <- metrics_data $ pr_reviews
593
566
594
567
}
595
568
596
- issue_resp_time <- as.numeric (mean (issue_resp_time ))
597
569
issue_age <- issue_age [[" mean" ]]
598
- issue_res_duration <- issue_res_duration [[" mean" ]]
599
570
pr_age <- pr_age [[" mean" ]]
600
- pr_dur <- pr_dur [[" review_dur_mn" ]]
601
571
602
572
pr_num_revs_approved <- pr_num_revs [[" approved_count" ]]
603
573
pr_num_revs_rejected <- pr_num_revs [[" rejected_count" ]]
604
574
605
- res_N_days <- c (issue_resp_time , issue_age , issue_res_duration , pr_age , pr_dur )
575
+ res_N_days <- c (issue_resp_time , issue_age , issue_res_duration , pr_age , pr_dur_mn )
606
576
res_ON <-
607
577
c (issue_num_cmts , issues_active , pr_num_revs_approved , pr_num_revs_rejected )
608
578
res_log10 <- vapply (list (res_N_days , res_ON ), function (i ) {
@@ -649,7 +619,6 @@ cm_model_starter_health <- function (path,
649
619
650
620
}
651
621
652
- time_first_resp <- mn_med_sum (time_first_resp ) [[" mean" ]]
653
622
time_first_resp <- ifelse (time_first_resp == 0 , 1 , time_first_resp )
654
623
655
624
pr_closure_ratio <- NA_real_
@@ -719,7 +688,6 @@ cm_model_comm_welcoming <- function (path,
719
688
720
689
issue_age <- issue_age [[" mean" ]] # [0, N >> 1]
721
690
issue_age <- ifelse (issue_age == 0 , 1 , issue_age )
722
- time_first_resp <- mn_med_sum (time_first_resp ) [[" mean" ]]
723
691
time_first_resp <- ifelse (time_first_resp == 0 , 1 , time_first_resp )
724
692
725
693
val_days <- log10 (c (issue_age , time_first_resp ))
0 commit comments