ropensci / software-review

rOpenSci Software Peer Review.
286 stars 104 forks source link

Submission: stochLAB #551

Closed grwhumphries closed 1 year ago

grwhumphries commented 1 year ago

Date accepted: 2023-02-03

Submitting Author Name: Grant Humphries Submitting Author Github Handle: !--author1-->@grwhumphries<!--end-author1-- Other Package Authors Github handles: (comma separated, delete if none) !--author-others-->@bcaneco<!--end-author-others-- Repository: https://github.com/HiDef-Aerial-Surveying/stochLAB Version submitted: 1.1.1 Submission type: Stats Badge grade: gold Editor: !--editor-->@stephaniehicks<!--end-editor-- Reviewers: @kstreet13, @clairemas0n

Due date for @kstreet13: 2022-11-01 Due date for @clairemas0n: 2022-11-24

Archive: TBD Version accepted: TBD Language: en

Type: Package
Package: stochLAB
Title: Stochastic Collision Risk Model
Version: 1.1.0
Authors@R: c(
    person("Grant", "Humphries", , "grant.humphries@hidefsurveying.co.uk", role = c("aut", "cre")),
    person("Bruno", "Caneco", , "bruno@dmpstats.com", role = "aut"),
    person("Marine Scotland", role = c("fnd", "cph")),
    person("HiDef", role = "cph"),
    person("DMPstats", role = "cph")
  )
Description: Tool for running Collision Risk Models for seabirds on
    offshore wind farms.
License: GPL (>= 3) + file LICENSE
Depends: 
    R (>= 4.0)
Imports: 
    cli,
    data.table,
    dplyr,
    foreach,
    glue,
    logr,
    magrittr,
    msm,
    pracma,
    purrr,
    rlang,
    stats,
    tibble,
    tidyr
Suggests: 
    rmarkdown,
    knitr,
    spelling,
    testthat (>= 3.0.0),
    covr
Config/testthat/edition: 3
Encoding: UTF-8
Language: en-GB
LazyData: true
LazyDataCompression: bzip2
Roxygen: list(markdown = TRUE)
URL: https://www.github.com/HiDef-Aerial-Surveying/stochLAB,
    https://hidef-aerial-surveying.github.io/stochLAB/
BugReports: https://www.github.com/HiDef-Aerial-Surveying/stochLAB/issues
RoxygenNote: 7.2.0
VignetteBuilder: knitr

Pre-submission Inquiry

General Information

Core calculations follow the work developed by Masden (2015)

Please include hyperlinked references to all other relevant software.

Badging

Technical checks

Confirm each of the following by checking the box.

This package:

Publication options

Code of conduct

ropensci-review-bot commented 1 year ago

Thanks for submitting to rOpenSci, our editors and @ropensci-review-bot will reply soon. Type @ropensci-review-bot help for help.

ropensci-review-bot commented 1 year ago

:rocket:

Editor check started

:wave:

emilyriederer commented 1 year ago

Hi @grwhumphries ! Thank you for making a full submission. We may experience a slight delay as @mpadge is offline next week and it appears we may need assistance with the editor check bot.

In the meantime, could you please edit your message to link your to your presubmission inquiry in #506 for record-keeping?

Thanks!

grwhumphries commented 1 year ago

Hi @emilyriederer - thanks for that and no worries - just updated with the link to issue #506

ropensci-review-bot commented 1 year ago

Checks for stochLAB (v1.1.0)

git hash: e8f8f24f

Package License: GPL (>= 3) + file LICENSE


1. rOpenSci Statistical Standards (srr package)

This package is in the following categories:

:heavy_check_mark: All applicable standards [v0.1.0] have been documented in this package (47 complied with; 21 N/A standards)

Click to see the report of author-reported standards compliance of the package with links to associated lines of code, which can be re-generated locally by running the srr_report() function from within a local clone of the repository.


2. Package Dependencies

Details of Package Dependency Usage (click to open)

The table below tallies all function calls to all packages ('ncalls'), both internal (r-base + recommended, along with the package itself), and external (imported and suggested packages). 'NA' values indicate packages to which no identified calls to R functions could be found. Note that these results are generated by an automated code-tagging system which may not be entirely accurate. |type |package | ncalls| |:----------|:----------|------:| |internal |base | 285| |internal |stochLAB | 56| |internal |methods | 2| |internal |utils | 2| |imports |magrittr | 41| |imports |stats | 37| |imports |tidyr | 12| |imports |rlang | 11| |imports |dplyr | 8| |imports |purrr | 7| |imports |glue | 5| |imports |tibble | 5| |imports |logr | 4| |imports |pracma | 3| |imports |cli | NA| |imports |data.table | NA| |imports |foreach | NA| |imports |msm | NA| |suggests |rmarkdown | NA| |suggests |knitr | NA| |suggests |spelling | NA| |suggests |testthat | NA| |suggests |covr | NA| |linking_to |NA | NA| Click below for tallies of functions used in each package. Locations of each call within this package may be generated locally by running 's <- pkgstats::pkgstats()', and examining the 'external_calls' table.

base

c (33), mean (25), list (21), message (18), paste0 (16), for (15), pi (10), nrow (7), length (6), month.abb (6), rep (6), replace (6), deparse (5), if (5), round (5), seq (5), substitute (5), apply (4), beta (4), eval (4), names (4), sum (4), which (4), by (3), cos (3), data.frame (3), missing (3), return (3), sqrt (3), abs (2), colnames (2), data.matrix (2), dim (2), dirname (2), ifelse (2), intersect (2), match (2), matrix (2), min (2), months (2), ncol (2), numeric (2), pmin (2), sample (2), sapply (2), sin (2), array (1), as.integer (1), atan (1), ceiling (1), diff (1), findInterval (1), floor (1), is.null (1), max (1), mode (1), order (1), Reduce (1), switch (1), sys.call (1), t (1)

stochLAB

format_months (6), Day_Length (4), collide_length (3), generate_rotor_grids (3), get_avg_prob_collision (3), get_fhd_rotor (3), get_lac_factor (3), get_pcoll_grid (3), sampler_hd (3), band_crm (2), get_flux_factor (2), get_mig_flux_factor (2), get_phi_grid (2), get_prop_crh_fhd (2), get_x_grid (2), seq_months (2), check_fhd_vs_maxtip (1), crm_opt1 (1), crm_opt2 (1), crm_opt3 (1), crm_opt4 (1), get_collisions_basic (1), get_collisions_extended (1), get_risk_y (1), get_y_grid (1), sample_parameters (1), sample_turbine_mCRM (1)

magrittr

%>% (41)

stats

median (18), quantile (9), df (5), dt (2), rbeta (2), runif (1)

tidyr

pivot_wider (4), separate (4), pivot_longer (2), replace_na (2)

rlang

expr (4), sym (4), format_error_bullets (2), fn_fmls_names (1)

dplyr

filter (2), rename_with (2), slice_sample (2), mutate (1), select (1)

purrr

map (4), imap (1), iwalk (1), pmap (1)

glue

glue_collapse (5)

tibble

add_column (4), tribble (1)

logr

log_open (4)

pracma

interp1 (3)

methods

is (2)

utils

data (2)

**NOTE:** Some imported packages appear to have no associated function calls; please ensure with author that these 'Imports' are listed appropriately.


3. Statistical Properties

This package features some noteworthy statistical properties which may need to be clarified by a handling editor prior to progressing.

Details of statistical properties (click to open)

The package has: - code in R (100% in 31 files) and - 2 authors - 1 vignette - 10 internal data files - 14 imported packages - 31 exported functions (median 22 lines of code) - 56 non-exported functions in R (median 26 lines of code) --- Statistical properties of package structure as distributional percentiles in relation to all current CRAN packages The following terminology is used: - `loc` = "Lines of Code" - `fn` = "function" - `exp`/`not_exp` = exported / not exported All parameters are explained as tooltips in the locally-rendered HTML version of this report generated by [the `checks_to_markdown()` function](https://docs.ropensci.org/pkgcheck/reference/checks_to_markdown.html) The final measure (`fn_call_network_size`) is the total number of calls between functions (in R), or more abstract relationships between code objects in other languages. Values are flagged as "noteworthy" when they lie in the upper or lower 5th percentile. |measure | value| percentile|noteworthy | |:------------------------|-------:|----------:|:----------| |files_R | 31| 89.9| | |files_vignettes | 1| 68.4| | |files_tests | 32| 98.2| | |loc_R | 2175| 85.7| | |loc_vignettes | 326| 66.5| | |loc_tests | 880| 85.1| | |num_vignettes | 1| 64.8| | |data_size_total | 4622918| 99.7|TRUE | |data_size_median | 2018| 68.7| | |n_fns_r | 87| 72.8| | |n_fns_r_exported | 31| 79.2| | |n_fns_r_not_exported | 56| 70.6| | |n_fns_per_file_r | 2| 30.6| | |num_params_per_fn | 6| 79.0| | |loc_per_fn_r | 24| 67.9| | |loc_per_fn_r_exp | 22| 50.8| | |loc_per_fn_r_not_exp | 26| 73.5| | |rel_whitespace_R | 27| 90.8| | |rel_whitespace_vignettes | 21| 49.2| | |rel_whitespace_tests | 15| 77.5| | |doclines_per_fn_exp | 51| 64.2| | |doclines_per_fn_not_exp | 0| 0.0|TRUE | |fn_call_network_size | 156| 85.6| | ---

3a. Network visualisation

Click to see the interactive network visualisation of calls between objects in package


4. goodpractice and other checks

Details of goodpractice checks (click to open)

#### 3a. Continuous Integration Badges [![test-coverage.yaml](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions/workflows/test-coverage.yaml/badge.svg)](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions) [![pkgdown.yaml](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions/workflows/pkgdown.yaml/badge.svg)](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions) [![R-CMD-check.yaml](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions) [![pkgcheck.yaml](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions/workflows/pkgcheck.yaml/badge.svg)](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions) **GitHub Workflow Results** | id|name |conclusion |sha | run_number|date | |----------:|:--------------------------|:----------|:------|----------:|:----------| | 2749423525|pages build and deployment |success |409934 | 50|2022-07-27 | | 2749399803|pkgcheck |success |e8f8f2 | 11|2022-07-27 | | 2749399805|pkgdown |success |e8f8f2 | 22|2022-07-27 | | 2749399804|R-CMD-check |success |e8f8f2 | 26|2022-07-27 | | 2749399802|test-coverage |success |e8f8f2 | 25|2022-07-27 | --- #### 3b. `goodpractice` results #### `R CMD check` with [rcmdcheck](https://r-lib.github.io/rcmdcheck/) R CMD check generated the following notes: 1. checking installed package size ... NOTE installed size is 6.8Mb sub-directories of 1Mb or more: data 6.3Mb 2. checking dependencies in R code ... NOTE Namespaces in Imports field not imported from: ‘data.table’ ‘foreach’ All declared Imports should be used. 3. checking R code for possible problems ... NOTE band_crm: no visible binding for global variable ‘Month’ band_crm: no visible binding for global variable ‘month’ mig_stoch_crm: no visible binding for global variable ‘RotorRadius’ mig_stoch_crm: no visible binding for global variable ‘BladeWidth’ mig_stoch_crm: no visible binding for global variable ‘RotorSpeed’ mig_stoch_crm: no visible binding for global variable ‘Pitch’ mig_stoch_crm: no visible global function definition for ‘contains’ sample_parameters: no visible binding for global variable ‘.’ sample_parameters: no visible binding for global variable ‘month’ sample_parameters: no visible binding for global variable ‘p’ sample_turbine_mCRM: no visible binding for global variable ‘month’ stoch_crm: no visible global function definition for ‘!<-’ stoch_crm: no visible binding for global variable ‘Month’ stoch_crm : : no visible global function definition for ‘everything’ stoch_crm : : no visible binding for global variable ‘name’ stoch_crm : : no visible binding for global variable ‘period’ stoch_crm : : no visible binding for global variable ‘stat’ Undefined global functions or variables: !<- . BladeWidth contains everything month Month name p period Pitch RotorRadius RotorSpeed stat R CMD check generated the following check_fails: 1. cyclocomp 2. no_import_package_as_a_whole 3. rcmdcheck_imports_not_imported_from 4. rcmdcheck_undefined_globals 5. rcmdcheck_reasonable_installed_size #### Test coverage with [covr](https://covr.r-lib.org/) Package coverage: 75.43 #### Cyclocomplexity with [cyclocomp](https://github.com/MangoTheCat/cyclocomp) The following functions have cyclocomplexity >= 15: function | cyclocomplexity --- | --- validate_inputs | 99 stoch_crm | 51 band_crm | 33 sample_parameters | 26 mig_stoch_crm | 24 val_df_columns | 23 val_pars_df | 17 #### Static code analyses with [lintr](https://github.com/jimhester/lintr) [lintr](https://github.com/jimhester/lintr) found the following 364 potential issues: message | number of times --- | --- Avoid 1:length(...) expressions, use seq_len. | 1 Avoid 1:nrow(...) expressions, use seq_len. | 4 Avoid length(...):1 expressions, use seq_len. | 1 Avoid library() and require() calls in packages | 1 Avoid using sapply, consider vapply instead, that's type safe | 2 Lines should not be more than 80 characters. | 355


Package Versions

|package |version | |:--------|:---------| |pkgstats |0.1.1.4 | |pkgcheck |0.0.3.77 | |srr |0.0.1.167 |


Editor-in-Chief Instructions:

This package is in top shape and may be passed on to a handling editor

mpadge commented 1 year ago

Thanks for the submission @grwhumphries, and for bearing with us while we use submissions to refine our system. In your case, the above "srr" section reveals a bug which we didn't anticipate. I can now appreciate that our Guide for Authors of statistical packages isn't clear enough, and needs a sentence at the outset along the lines of:

All packages submitted for software peer review must document compliance with both General Standards, and at least one set of our category-specific standards.

Your package only documents compliance with the general standards, and needs to include statements of compliance with at least one specific category of standards. Updates to our checking system in response to your submission would now generate the following message:


1. rOpenSci Statistical Standards (srr package)

:heavy_multiplication_x: Error: Package documents compliance only with general standards. Statistical packages must document compliance with at least one set of category-specific standards as well.


I'll leave you to discuss with @emilyriederer whether you might need to put a "Holding" label on this submission while you address the missing standards. Please accept our apologies for any confusion.

emilyriederer commented 1 year ago

Thanks, @mpadge

Hi @grwhumphries - per Mark's comment, please let us know what sort of timeline you prefer for addressing the standards. I can put a holding label in this issue in the meantime if you don't expect it to be a short-term priority. Whatever works best for you!

grwhumphries commented 1 year ago

Hi @emilyriederer and @mpadge - sorry about the delay. I think I can address this within the week - I just need to get my head back into it. Hope that's okay?

emilyriederer commented 1 year ago

Sounds great @grwhumphries ! No timeline pressure on our side. Only wanted to know about the tag for repo / issue-log hygiene but not a big deal either way.

grwhumphries commented 1 year ago

@mpadge and @emilyriederer okay the latest version of stochLAB (v1.1.1) has just been pushed and I think that covers out the standards for EDA and PD.

emilyriederer commented 1 year ago

@ropensci-review-bot check package

ropensci-review-bot commented 1 year ago

Thanks, about to send the query.

ropensci-review-bot commented 1 year ago

:rocket:

Editor check started

:wave:

ropensci-review-bot commented 1 year ago

Oops, something went wrong with our automatic package checks. Our developers have been notified and package checks will appear here as soon as we've resolved the issue. Sorry for any inconvenience.

grwhumphries commented 1 year ago

@emilyriederer @mpadge - I just realized that the package check failed because the PD standards aren't merged into the package check yet. How do you want me to handle that?

Cheers G

ropensci-review-bot commented 1 year ago

Checks for stochLAB (v1.1.1)

git hash: d7d7034f

Important: All failing checks above must be addressed prior to proceeding

Package License: GPL (>= 3)


1. rOpenSci Statistical Standards (srr package)

This package is in the following category:

:heavy_check_mark: All applicable standards [v0.1.0] have been documented in this package (78 complied with; 38 N/A standards)

Click to see the report of author-reported standards compliance of the package with links to associated lines of code, which can be re-generated locally by running the srr_report() function from within a local clone of the repository.


2. Package Dependencies

Details of Package Dependency Usage (click to open)

The table below tallies all function calls to all packages ('ncalls'), both internal (r-base + recommended, along with the package itself), and external (imported and suggested packages). 'NA' values indicate packages to which no identified calls to R functions could be found. Note that these results are generated by an automated code-tagging system which may not be entirely accurate. |type |package | ncalls| |:----------|:---------|------:| |internal |base | 285| |internal |stochLAB | 56| |internal |methods | 2| |internal |utils | 2| |depends |tidyverse | NA| |imports |magrittr | 41| |imports |stats | 37| |imports |tidyr | 12| |imports |dplyr | 11| |imports |rlang | 11| |imports |purrr | 7| |imports |glue | 5| |imports |tibble | 5| |imports |logr | 4| |imports |pracma | 3| |imports |cli | NA| |imports |msm | NA| |suggests |rmarkdown | NA| |suggests |knitr | NA| |suggests |spelling | NA| |suggests |testthat | NA| |suggests |covr | NA| |linking_to |NA | NA| Click below for tallies of functions used in each package. Locations of each call within this package may be generated locally by running 's <- pkgstats::pkgstats()', and examining the 'external_calls' table.

base

c (33), mean (25), list (21), message (18), paste0 (16), for (15), pi (10), nrow (7), length (6), month.abb (6), rep (6), replace (6), deparse (5), if (5), round (5), seq (5), substitute (5), apply (4), beta (4), eval (4), names (4), sum (4), which (4), by (3), cos (3), data.frame (3), missing (3), return (3), sqrt (3), abs (2), colnames (2), data.matrix (2), dim (2), dirname (2), ifelse (2), intersect (2), match (2), matrix (2), min (2), months (2), ncol (2), numeric (2), pmin (2), sample (2), sapply (2), sin (2), array (1), as.integer (1), atan (1), ceiling (1), diff (1), findInterval (1), floor (1), is.null (1), max (1), mode (1), order (1), Reduce (1), switch (1), sys.call (1), t (1)

stochLAB

format_months (6), Day_Length (4), collide_length (3), generate_rotor_grids (3), get_avg_prob_collision (3), get_fhd_rotor (3), get_lac_factor (3), get_pcoll_grid (3), sampler_hd (3), band_crm (2), get_flux_factor (2), get_mig_flux_factor (2), get_phi_grid (2), get_prop_crh_fhd (2), get_x_grid (2), seq_months (2), check_fhd_vs_maxtip (1), crm_opt1 (1), crm_opt2 (1), crm_opt3 (1), crm_opt4 (1), get_collisions_basic (1), get_collisions_extended (1), get_risk_y (1), get_y_grid (1), sample_parameters (1), sample_turbine_mCRM (1)

magrittr

%>% (41)

stats

median (18), quantile (9), df (5), dt (2), rbeta (2), runif (1)

tidyr

pivot_wider (4), separate (4), pivot_longer (2), replace_na (2)

dplyr

everything (2), filter (2), rename_with (2), slice_sample (2), (1), mutate (1), select (1)

rlang

expr (4), sym (4), format_error_bullets (2), fn_fmls_names (1)

purrr

map (4), imap (1), iwalk (1), pmap (1)

glue

glue_collapse (5)

tibble

add_column (4), tribble (1)

logr

log_open (4)

pracma

interp1 (3)

methods

is (2)

utils

data (2)

**NOTE:** Some imported packages appear to have no associated function calls; please ensure with author that these 'Imports' are listed appropriately.


3. Statistical Properties

This package features some noteworthy statistical properties which may need to be clarified by a handling editor prior to progressing.

Details of statistical properties (click to open)

The package has: - code in R (100% in 31 files) and - 2 authors - 1 vignette - 10 internal data files - 12 imported packages - 31 exported functions (median 22 lines of code) - 56 non-exported functions in R (median 26 lines of code) --- Statistical properties of package structure as distributional percentiles in relation to all current CRAN packages The following terminology is used: - `loc` = "Lines of Code" - `fn` = "function" - `exp`/`not_exp` = exported / not exported All parameters are explained as tooltips in the locally-rendered HTML version of this report generated by [the `checks_to_markdown()` function](https://docs.ropensci.org/pkgcheck/reference/checks_to_markdown.html) The final measure (`fn_call_network_size`) is the total number of calls between functions (in R), or more abstract relationships between code objects in other languages. Values are flagged as "noteworthy" when they lie in the upper or lower 5th percentile. |measure | value| percentile|noteworthy | |:------------------------|-------:|----------:|:----------| |files_R | 31| 89.9| | |files_vignettes | 1| 68.4| | |files_tests | 32| 98.2| | |loc_R | 2184| 85.8| | |loc_vignettes | 326| 66.5| | |loc_tests | 948| 86.1| | |num_vignettes | 1| 64.8| | |data_size_total | 4622918| 99.7|TRUE | |data_size_median | 2018| 68.7| | |n_fns_r | 87| 72.8| | |n_fns_r_exported | 31| 79.2| | |n_fns_r_not_exported | 56| 70.6| | |n_fns_per_file_r | 2| 30.6| | |num_params_per_fn | 6| 79.0| | |loc_per_fn_r | 24| 67.9| | |loc_per_fn_r_exp | 22| 50.8| | |loc_per_fn_r_not_exp | 26| 73.5| | |rel_whitespace_R | 27| 90.9| | |rel_whitespace_vignettes | 21| 49.2| | |rel_whitespace_tests | 15| 79.3| | |doclines_per_fn_exp | 51| 64.2| | |doclines_per_fn_not_exp | 0| 0.0|TRUE | |fn_call_network_size | 156| 85.6| | ---

3a. Network visualisation

Click to see the interactive network visualisation of calls between objects in package


4. goodpractice and other checks

Details of goodpractice checks (click to open)

#### 3a. Continuous Integration Badges [![test-coverage.yaml](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions/workflows/test-coverage.yaml/badge.svg)](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions) [![pkgdown.yaml](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions/workflows/pkgdown.yaml/badge.svg)](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions) [![R-CMD-check.yaml](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions) [![pkgcheck.yaml](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions/workflows/pkgcheck.yaml/badge.svg)](https://github.com/HiDef-Aerial-Surveying/stochLAB/actions) **GitHub Workflow Results** | id|name |conclusion |sha | run_number|date | |----------:|:--------------------------|:----------|:------|----------:|:----------| | 2934839587|pages build and deployment |success |43af2a | 56|2022-08-26 | | 2934816348|pkgcheck |failure |d7d703 | 16|2022-08-26 | | 2934816354|pkgdown |success |d7d703 | 28|2022-08-26 | | 2934816353|R-CMD-check |success |d7d703 | 31|2022-08-26 | | 2934816352|test-coverage |success |d7d703 | 30|2022-08-26 | --- #### 3b. `goodpractice` results #### `R CMD check` with [rcmdcheck](https://r-lib.github.io/rcmdcheck/) R CMD check generated the following notes: 1. checking installed package size ... NOTE installed size is 6.8Mb sub-directories of 1Mb or more: data 6.3Mb 2. checking dependencies in R code ... NOTE Package in Depends field not imported from: ‘tidyverse’ These packages need to be imported from (in the NAMESPACE file) for when this namespace is loaded but not attached. 3. checking R code for possible problems ... NOTE mig_stoch_crm: no visible global function definition for ‘as_tibble’ Undefined global functions or variables: as_tibble R CMD check generated the following check_fails: 1. cyclocomp 2. no_description_depends 3. no_import_package_as_a_whole 4. rcmdcheck_depends_not_imported_from 5. rcmdcheck_undefined_globals 6. rcmdcheck_reasonable_installed_size #### Test coverage with [covr](https://covr.r-lib.org/) Package coverage: 75.68 #### Cyclocomplexity with [cyclocomp](https://github.com/MangoTheCat/cyclocomp) The following functions have cyclocomplexity >= 15: function | cyclocomplexity --- | --- validate_inputs | 99 stoch_crm | 51 band_crm | 33 sample_parameters | 26 mig_stoch_crm | 24 val_df_columns | 23 val_pars_df | 17 #### Static code analyses with [lintr](https://github.com/jimhester/lintr) [lintr](https://github.com/jimhester/lintr) found the following 414 potential issues: message | number of times --- | --- Avoid 1:length(...) expressions, use seq_len. | 1 Avoid 1:nrow(...) expressions, use seq_len. | 4 Avoid length(...):1 expressions, use seq_len. | 1 Avoid library() and require() calls in packages | 1 Avoid using sapply, consider vapply instead, that's type safe | 2 Lines should not be more than 80 characters. | 405


Package Versions

|package |version | |:--------|:---------| |pkgstats |0.1.1.20 | |pkgcheck |0.1.0.21 | |srr |0.0.1.180 |


Editor-in-Chief Instructions:

Processing may not proceed until the items marked with :heavy_multiplication_x: have been resolved.

mpadge commented 1 year ago

@emilyriederer One of the statistical categories this package complies with is "Probability Distributions", which is currently in draft-mode only. I've implemented a corresponding "dev" branch of the srr package which the above checks use. These dev branches should be merged by mid-September 2022. Until then please note the following:

  1. Automated checks will fail, because there is no way to trigger "dev" branch checks here, but we'll always see that fail and be able to ping the dev checks ourselves to dump results here.
  2. Anybody wanting to check the package locally can easily do so by first running:
    remotes::install_github("ropensci-review-tools/srr@dev")

    All checks will then be re-directed to current "dev" branch of standards including the new categories;

  3. We'll strive to get these new standards incorporated before reviews of this package commence. If we don't notify here, both @grwhumphries and reviewers will need to be warned that the Probability Distributions Standards may change during the review process, and so reviews may require iteration. (We will of course strive to avoid this!).

Thanks both, and great to have submissions really pushing our system along! :rocket: :bullettrain_side:

grwhumphries commented 1 year ago

@emilyriederer and @mpadge I've just re-run the package check with the srr dev branch and that seems to have passed. I also fixed the issue above (no returns documented) - which I guess is a new check as that wasn't picked up in previous checks? It should be ready to go again now

emilyriederer commented 1 year ago

Thanks @grwhumphries ! This is all great news. We will begin looking for an editor and hope to connect you shortly

emilyriederer commented 1 year ago

Hi @grwhumphries - I'm delighted to introduce @stephaniehicks as the handling editor for this submission. Thank you both for your work on this!

emilyriederer commented 1 year ago

@ropensci-review-bot assign @stephaniehicks as editor

ropensci-review-bot commented 1 year ago

Assigned! @stephaniehicks is now the editor

grwhumphries commented 1 year ago

@stephaniehicks - nice to meet you and looking forward to working with you

stephaniehicks commented 1 year ago

@ropensci-review-bot seeking reviewers

ropensci-review-bot commented 1 year ago

I'm sorry @stephaniehicks, I'm afraid I can't do that. That's something only editors are allowed to do.

stephaniehicks commented 1 year ago

Hi @grwhumphries, great to meet you too. I apologize for my slow response on this. I'm working on identifying reviewers.

@mpadge can you confirm that I have access to @ropensci-review-bot seeking reviewers. At the moment, it looks like I don't have access to it and will need you or another editor's help here to initiate the bot. Thanks!

mpadge commented 1 year ago

@stephaniehicks Sorry about that, an oversight on our part. You should now be able to access all bot commands.

stephaniehicks commented 1 year ago

@ropensci-review-bot seeking reviewers

ropensci-review-bot commented 1 year ago

Please add this badge to the README of your package repository:

[![Status at rOpenSci Software Peer Review](https://badges.ropensci.org/551_status.svg)](https://github.com/ropensci/software-review/issues/551)

Furthermore, if your package does not have a NEWS.md file yet, please create one to capture the changes made during the review process. See https://devguide.ropensci.org/releasing.html#news

stephaniehicks commented 1 year ago

@mpadge Thanks! It looks like it is working now. Appreciate the help.

stephaniehicks commented 1 year ago

@grwhumphries, feel free to add the badge to the README of your package 👆

stephaniehicks commented 1 year ago

@ropensci-review-bot add @kstreet13

ropensci-review-bot commented 1 year ago

I'm sorry human, I don't understand that. You can see what commands I support by typing:

@ropensci-review-bot help

stephaniehicks commented 1 year ago

@ropensci-review-bot assign @kstreet13 as reviewer

ropensci-review-bot commented 1 year ago

@kstreet13 added to the reviewers list. Review due date is 2022-11-01. Thanks @kstreet13 for accepting to review! Please refer to our reviewer guide.

rOpenSci’s community is our best asset. We aim for reviews to be open, non-adversarial, and focused on improving software quality. Be respectful and kind! See our reviewers guide and code of conduct for more.

ropensci-review-bot commented 1 year ago

@kstreet13: If you haven't done so, please fill this form for us to update our reviewers records.

stephaniehicks commented 1 year ago

@mpadge just a small note about the stats dev guide:

The Handling Editor Checklist (https://stats-devguide.ropensci.org/pkgsubmission.html#handling-editor-checklist) says to use @ropensci-review-bot add <@GITHUB_USERNAME> to reviewers to add a reviewer, but following @ropensci-review-bot help, I noticed it is @ropensci-review-bot assign xxxxx as reviewer (i.e. need to replace add with assign).

stephaniehicks commented 1 year ago

Hi everyone, I'd like to introduce Kelly Street (@kstreet13) (https://kellystreet.org) who is an Assistant Professor at UCS. He has kindly agreed to be a reviewer here. However, I wanted to mention that he will need some time to review the guide to go through the content there first. Just a heads up! Thank you again @kstreet13 and let me know if you have any questions!

mpadge commented 1 year ago

Sorry for confusion @stephaniehicks! The bot should recognise any one of "add to reviewers" "add as reviewer", "assign as reviewer", or "assign to reviewers". I think the preceding glitch was because of missing "to reviewers". Happy that all now seems good :smile:

stephaniehicks commented 1 year ago

Ah! that makes sense. Thanks for the clarification!

ropensci-review-bot commented 1 year ago

:calendar: @kstreet13 you have 2 days left before the due date for your review (2022-11-01).

kstreet13 commented 1 year ago

Apologies for the delay, everybody. I was unclear on the expectations for reviewers and ended up wasting some effort checking various standards in great detail. I will have a review for you as soon as I can!

stephaniehicks commented 1 year ago

Thank you @kstreet13! Please let me know if there's anything I can do to help support you in the review process. We greatly appreciate your time and effort on this.

stephaniehicks commented 1 year ago

@ropensci-review-bot assign @clairemas0n as reviewer

ropensci-review-bot commented 1 year ago

@clairemas0n added to the reviewers list. Review due date is 2022-11-24. Thanks @clairemas0n for accepting to review! Please refer to our reviewer guide.

rOpenSci’s community is our best asset. We aim for reviews to be open, non-adversarial, and focused on improving software quality. Be respectful and kind! See our reviewers guide and code of conduct for more.

ropensci-review-bot commented 1 year ago

@clairemas0n: If you haven't done so, please fill this form for us to update our reviewers records.

stephaniehicks commented 1 year ago

Hi everyone, I'd like to welcome Claire Mason (@clairemas0n) to the thread! She has kindly agreed to be a reviewer here. Thank you again @clairemas0n and let me know if you have any questions!

kstreet13 commented 1 year ago

Sorry again for the delay! As I said, this was my first time reviewing for ROpenSci and I was a little unclear on the expectations.


Package Review


Compliance with Standards

The following standards currently deemed non-applicable (through tags of @srrstatsNA) could potentially be applied to future versions of this software:

Please also comment on any standards which you consider either particularly well, or insufficiently, documented.

For packages aiming for silver or gold badges:


General Review

Documentation

The package includes all the following forms of documentation:

Algorithms

Testing

Visualisation (where appropriate)

Package Design


Estimated hours spent reviewing: 20


Review Comments

The guidelines don't seem too concerned about this, but my biggest concern with the package is the vignette. This is usually where I start when I want to use a new package, but it's very sparse and doesn't explain much. I would like for the vignette to provide more background and explanation, like the main package documentation. Also, none of the code is actually executed and some of it doesn't even run (there's a stray "messages" that should have been commented out in the Multiscenario Example. This is also present in the README).

I also want to reiterate that if there's anything the authors can do to reduce the number of arguments, provide more suggested default values, or in any way simplify the user experience, that would be greatly appreciated and make the package more approachable.

Some other minor notes:

grwhumphries commented 1 year ago

@kstreet13 - thank you very much for the extensive review of our package! All of your comments are greatly appreciated and we owe you one.

@stephaniehicks @mpadge - what are the next steps for us?

ropensci-review-bot commented 1 year ago

:calendar: @clairemas0n you have 2 days left before the due date for your review (2022-11-24).