ropensci / rix

Reproducible Data Science environments for R with Nix
https://docs.ropensci.org/rix/
GNU General Public License v3.0
151 stars 13 forks source link

Prepare for ropensci submission #106

Closed b-rodrigues closed 8 months ago

b-rodrigues commented 8 months ago

Here’s what we need to do:

── rix 0.5.1.9000 ──────────────────────────────────────────────────────────────

  ✔ Package name is available
  ✖ does not have a 'codemeta.json' file.
  ✖ does not have a 'contributing' file.
  ✖ The following function has no documented return value: [init]
  ✔ uses 'roxygen2'.
  ✖ 'DESCRIPTION' does not have a URL field.
  ✖ 'DESCRIPTION' does not have a BugReports field.
  ✔ Package has at least one HTML vignette
  ✖ These functions do not have examples: [init, nix_build, rix, tar_nix_ga].
  ✖ Continuous integration checks unavailable (no URL in 'DESCRIPTION').
  ✖ Package coverage is 3.3% (should be at least 75%).
  ✔ R CMD check found no errors.
  ✔ R CMD check found no warnings.
  ℹ Function names are duplicated in other packages

  ℹ Current status:
  ✖ This package is not ready to be submitted.

  ── git ──

  • HEAD: c787b4e0
  • Default branch: master
  • Number of commits: 208
  • First commit: 14-07-2023
  • Number of authors: 5

  ── Package Structure ──

  ℹ Package uses the following languages:
  • R: 100%

  ℹ Package has
  • 2 authors.
  • 7 vignettes.
  • 1 internal data file.
  • 5 imported packages.
  • 6 exported functions (median 52 lines of code).
  • 102 non-exported functions (median 11 lines of code).
  • 4 parameters per function (median).

  ── Package statistics ──

                      measure  value percentile noteworthy
  1                   files_R    6.0       40.3           
  4           files_vignettes    7.0       98.5           
  5               files_tests    3.0       75.2           
  6                     loc_R 1185.0       72.5           
  7             loc_vignettes 1173.0       92.7           
  8                 loc_tests   32.0       18.5           
  9             num_vignettes    7.0       99.2       TRUE
  10          data_size_total 1313.0       61.2           
  11         data_size_median 1313.0       65.8           
  12                  n_fns_r  108.0       78.4           
  13         n_fns_r_exported    6.0       29.1           
  14     n_fns_r_not_exported  102.0       84.2           
  15         n_fns_per_file_r   15.2       93.4           
  16        num_params_per_fn    4.5       67.3           
  17             loc_per_fn_r   12.0       36.1           
  18         loc_per_fn_r_exp   52.5       80.9           
  19     loc_per_fn_r_not_exp   11.0       35.4           
  20         rel_whitespace_R   20.3       75.4           
  21 rel_whitespace_vignettes   29.3       93.7           
  22     rel_whitespace_tests   21.9       16.8           
  23      doclines_per_fn_exp   56.5       70.0           
  24  doclines_per_fn_not_exp    0.0        0.0       TRUE
  25     fn_call_network_size   76.0       74.5           

  ℹ Package network diagram is at [/github/home/.cache/R/pkgcheck/static/rix_pkgstatsc787b4e0.html].

  ── goodpractice ──

  ── GP rix ──────────────────────────────────────────────────────────────────────

  It is good practice to

    ✖ write unit tests for all functions, and all package code in
      general. 3% of code lines are covered by test cases.

      R/detect_os.R:10:NA
      R/detect_os.R:11:NA
      R/detect_os.R:12:NA
      R/detect_os.R:14:NA
      R/detect_os.R:25:NA
      ... and [937](https://github.com/b-rodrigues/rix/actions/runs/7637920032/job/20807748040#step:3:949) more lines

    ✖ add a "URL" field to DESCRIPTION. It helps users find
      information about your package online. If your package does not
      have a homepage, add an URL to GitHub, or the CRAN package package
      page.
    ✖ add a "BugReports" field to DESCRIPTION, and point it to a
      bug tracker. Many online code hosting services provide bug trackers
      for free, https://github.com, https://gitlab.com, etc.
    ✖ use '<-' for assignment instead of '='. '<-' is the
      standard, and R users and developers are used it and it is easier
      to read your code for them if you use '<-'.

      R/find_rev.R:1534:13

    ✖ avoid long code lines, it is bad for readability. Also,
      many people prefer editor windows that are about 80 characters
      wide. Try make your lines shorter than 80 characters

      R/detect_os.R:27:81
      R/detect_versions.R:3:81
      R/detect_versions.R:4:81
      R/find_rev.R:4:81
      R/find_rev.R:30:81
      ... and 60 more lines

    ✖ avoid sapply(), it is not type safe. It might return a
      vector, or a list, depending on the input data. Consider using
      vapply() instead.

      R/find_rev.R:191:11
      R/find_rev.R:193:17

  ──────────────────────────────────────────────────────────────────────────────── 
  ── Other checks ──

  ✖ The following function name is duplicated in other packages:
    • - `init` from bioPN, buildr, EDISON, fastai, FIT, gargoyle, GCPM, git2r,
    jetpack, mrgsolve, oops, pkggraph, pmwg, QCSimulator, QGameTheory, rhino,
    rODE, sbioPN, shinyservicebot, siteymlgen, spikes
b-rodrigues commented 8 months ago

All is done, but the test coverage. This is a tricky one because:

I've added relevant skip_ functions, but coverage remains low

philipp-baumann commented 8 months ago

can we ask for some advice for the ROpenSci core people?

b-rodrigues commented 8 months ago

the process is ongoing

https://github.com/ropensci/software-review/issues/625