Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

concstats #559

Closed
13 of 20 tasks
schneiderpy opened this issue Oct 27, 2022 · 63 comments
Closed
13 of 20 tasks

concstats #559

schneiderpy opened this issue Oct 27, 2022 · 63 comments
Assignees
Labels

Comments

@schneiderpy
Copy link

schneiderpy commented Oct 27, 2022

Date accepted: 2023-03-17

Submitting Author Name: Name
Submitting Author Github Handle: @schneiderpy
Other Package Authors Github handles: (comma separated, delete if none)
Repository: https://github.com/schneiderpy/concstats
Version submitted:
Submission type: Stats
Badge grade: silver
Editor: @Paula-Moraga
Reviewers: @christopherkenny, @SebastianWojcik86

Due date for @christopherkenny: 2023-02-26

Due date for @SebastianWojcik86: 2023-02-28
Archive: TBD
Version accepted: TBD
Language: en

  • Paste the full DESCRIPTION file inside a code block below:
Type: Package
Package: concstats
Title: Market Structure, Concentration and Inequality Measures
Version: 0.1.4
Authors@R: 
    person(given = "Andreas",
           family = "Schneider",
           role = c("aut", "cre"),
           email = "schneiderconsultingpy@gmail.com",
           comment = c(ORCID = "https://orcid.org/0000-0001-5630-1097"))
Description: Based on individual market shares of all participants in a
    market or space, the package offers a set of different structural and
    concentration measures frequently - and not so frequently - used in research
    and in practice. Measures can be calculated in groups or individually.
    The calculated measure or the resulting vector in table format should help
    practitioners make more informed decisions. Methods used in this package are
    from:
    1.  Chang, E. J., Guerra, S. M., de Souza Peñaloza, R. A. & Tabak, B. M.
    (2005) "Banking concentration: the Brazilian case".
    2.  Cobham, A. and A. Summer (2013). "Is It All About the Tails? The
    Palma Measure of Income Inequality".
    3.  García Alba Iduñate, P. (1994). "Un Indice de dominancia para el
    analisis de la estructura de los mercados".
    4.  Ginevicius, R. and S. Cirba (2009). "Additive measurement of market
    concentration" <doi:10.3846/1611-1699.2009.10.191-198>.
    5.  Herfindahl, O. C. (1950), "Concentration in the steel industry
    (PhD thesis)".
    6.  Hirschmann, A. O. (1945), "National power and structure of foreign trade".
    7.  Melnik, A., O. Shy, and R. Stenbacka (2008), "Assessing market dominance"
    <doi:10.1016/j.jebo.2008.03.010>.
    8.  Palma, J. G. (2006). "Globalizing Inequality: 'Centrifugal' and
    'Centripetal' Forces at Work".
    9.  Shannon, C. E. (1948). "A Mathematical Theory of Communication".
License: MIT + file LICENSE
URL: https://github.com/schneiderpy/concstats,
    https//schneiderpy.github.io/constats (website)
BugReports: https://github.com/schneiderpy/concstats/issues
Depends:
    R (>= 2.10)
Imports:
    dplyr (>= 1.0.7),
    readr
Suggests: 
    rmarkdown,
    knitr,
    devtools,
    kableExtra,
    ggplot2,
    testthat (>= 3.0.0),
    covr
VignetteBuilder:
    knitr,
    rmarkdown
Encoding: UTF-8
Language: en-US
LazyData: true
Roxygen: list(markdown = TRUE, roclets = c ("namespace", "rd", "srr::srr_stats_roclet"))
RoxygenNote: 7.2.1
Config/testthat/edition: 3

Scope

  • Please indicate which of our statistical package categories this package falls under. (Please check one appropriate box below):

    Statistical Packages

    • Bayesian and Monte Carlo Routines
    • Dimensionality Reduction, Clustering, and Unsupervised Learning
    • Machine Learning
    • Regression and Supervised Learning
    • Exploratory Data Analysis (EDA) and Summary Statistics
    • Spatial Analyses
    • Time Series Analyses

Pre-submission Inquiry

General Information

  • Who is the target audience and what are scientific applications of this package?
    The goal of the concstats package is to offer a set of alternative and/or additional measures for researchers in social sciences and practitioners in institutions concerned with competition on a regular basis to better determine a given market structure and therefore reduce uncertainty with respect to a given market situation.

  • Paste your responses to our General Standard G1.1 here, describing whether your software is:

    • The first implementation of a novel algorithm; or
    • The first implementation within R of an algorithm which has previously been implemented in other languages or contexts; or
    • An improvement on other implementations of similar algorithms in R.

    Please include hyperlinked references to all other relevant software.

Some functions are already implemented in other R packages. The non-exhaustive
summary below is by no means a description of each package.

  • The Herfindahl Hirschman Index can be found in the hhi and the
    divseg packages. While the hhi package has just one function, neither of both packages offer a finite sample correction.

  • The latter offers as well functions for the Entropy, Gini and Simpson measures.

  • The acid and the ineq packages offer functions for inequality and competition measures, e.g. for the Entropy and Gini metric.

However, almost none of these packages offer finite sample correction, with the exception of the
ineq package.
Other functions are new implementations in R, e.g. Dominance Index, Palma ratio, Stenbacka Index, GRS measure, and the dual of the Herfindahl Hirschman Index.

Badging

  • specific standards > 47%, and general standards > 58%
  • fulfilling with two or more standards in the sub-categories 6.1.1, 6.1.2, and 6.1.5

Technical checks

Confirm each of the following by checking the box.

This package:

Publication options

  • Do you intend for this package to go on CRAN?
  • Do you intend for this package to go on Bioconductor?

Code of conduct

@ropensci-review-bot
Copy link
Collaborator

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

@ropensci-review-bot
Copy link
Collaborator

🚀

Editor check started

👋

@ropensci-review-bot
Copy link
Collaborator

Checks for concstats (v0.1.4)

git hash: d3e10c1a

  • ✔️ Package is already on CRAN.
  • ✔️ has a 'codemeta.json' file.
  • ✔️ has a 'contributing' file.
  • ✔️ uses 'roxygen2'.
  • ✔️ 'DESCRIPTION' has a URL field.
  • ✔️ 'DESCRIPTION' has a BugReports field.
  • ✔️ Package has at least one HTML vignette
  • ✔️ All functions have examples.
  • ✔️ Package has continuous integration checks.
  • ✔️ Package coverage is 99.2%.
  • ✔️ R CMD check found no errors.
  • ✔️ R CMD check found no warnings.

Package License: MIT + file LICENSE


1. rOpenSci Statistical Standards (srr package)

This package is in the following category:

  • Exploratory Data Analysis

✔️ All applicable standards [v0.1.0] have been documented in this package (56 complied with; 46 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 91
internal concstats 43
internal stats 5
imports dplyr NA
imports readr NA
suggests rmarkdown NA
suggests knitr NA
suggests devtools NA
suggests kableExtra NA
suggests ggplot2 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(<path/to/repo>)', and examining the 'external_calls' table.

base

as.numeric (28), sum (28), c (12), data.frame (7), cut (4), format (4), seq (4), log (2), length (1), seq_len (1)

concstats

concstats_firm (4), concstats_entropy (3), concstats_hhi (3), concstats_nrs_eq (3), concstats_palma (3), concstats_dom (2), concstats_gini (2), concstats_grs (2), concstats_hhi_d (2), concstats_hhi_min (2), concstats_simpson (2), concstats_sten (2), concstats_top (2), concstats_top3 (2), concstats_top5 (2), concstats_all_comp (1), concstats_all_inequ (1), concstats_all_mstruct (1), concstats_comp (1), concstats_concstats (1), concstats_inequ (1), concstats_mstruct (1)

stats

quantile (4), na.omit (1)

NOTE: No imported packages appear to have 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 6 files) and
  • 1 authors
  • 2 vignettes
  • 1 internal data file
  • 2 imported packages
  • 22 exported functions (median 33 lines of code)
  • 22 non-exported functions in R (median 44 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

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 6 40.3
files_vignettes 2 85.7
files_tests 5 81.7
loc_R 704 58.2
loc_vignettes 254 58.2
loc_tests 1266 90.0
num_vignettes 2 89.2
data_size_total 1301 61.1
data_size_median 1301 65.7
n_fns_r 44 52.5
n_fns_r_exported 22 70.1
n_fns_r_not_exported 22 43.6
n_fns_per_file_r 6 71.6
num_params_per_fn 2 11.9
loc_per_fn_r 38 84.2
loc_per_fn_r_exp 34 67.2
loc_per_fn_r_not_exp 44 88.4
rel_whitespace_R 17 58.1
rel_whitespace_vignettes 23 44.1
rel_whitespace_tests 14 83.6
doclines_per_fn_exp 63 75.1
doclines_per_fn_not_exp 0 0.0 TRUE
fn_call_network_size 33 57.5

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

R-CMD-check
pkgcheck

GitHub Workflow Results

id name conclusion sha run_number date
3329638517 pages build and deployment success d3e10c 53 2022-10-26
3329638614 pkgcheck success d3e10c 25 2022-10-26
3329638610 pkgdown success d3e10c 64 2022-10-26
3329638632 R-CMD-check success d3e10c 59 2022-10-26
3329638620 test-coverage success d3e10c 6 2022-10-26

3b. goodpractice results

R CMD check with rcmdcheck

rcmdcheck found no errors, warnings, or notes

Test coverage with covr

Package coverage: 99.19

Cyclocomplexity with cyclocomp

The following functions have cyclocomplexity >= 15:

function cyclocomplexity
concstats_entropy 18
concstats_gini 18
concstats_hhi 18
concstats_simpson 18
concstats_sten 17

Static code analyses with lintr

lintr found the following 8 potential issues:

message number of times
Avoid library() and require() calls in packages 8


Package Versions

package version
pkgstats 0.1.1.54
pkgcheck 0.1.0.26
srr 0.0.1.180


Editor-in-Chief Instructions:

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

@mpadge
Copy link
Member

mpadge commented Oct 30, 2022

@schneiderpy Our usual procedure is to first consider suitability in a pre-submission enquiry. You've opened #558 for that, so we'll close this until the conversation is resolved there. Once that is done, and if the pre-submission is approved, we can re-open this issue and move on from there. Thanks.

@adamhsparks
Copy link
Member

Thanks, @schneiderpy, as @mpadge noted, usually we like to finalise the pre-submission inquiry before opening a request for a review, but everything seems to be in top shape, so I've reopened this and will start looking for a handling editor.

@annakrystalli
Copy link
Contributor

Hello @schneiderpy 👋

Just wanted to give you a short update. We are still trying to find an appropriate editor to handle your submission and hoping to have found someone soon. Apologies for the delay!

@schneiderpy
Copy link
Author

Thank you Anna for the update ... (by the way, I could not find the package in the latest newsletter (Software Review Section))

@annakrystalli
Copy link
Contributor

Hello @schneiderpy. It's because it's still at review stage 0. It will appear in the newsletter when an editor is assigned and it reaches stage 1/editorial checks 😊

@schneiderpy
Copy link
Author

schneiderpy commented Jan 20, 2023 via email

@annakrystalli
Copy link
Contributor

Dear @schneiderpy

Please accept our apologies for the delay and rest assured we are doing our best to find an appropriate editor. Hopefully we will be able to move the review forward by the end of the week.

@maurolepore
Copy link
Member

Dear @schneiderpy,

Today starts my rotation as EiC -- meaning I now assume the role of @annakrystalli.

I'm watched the conversation here and among editors and it seems that the search for a handling editor continues. Thanks for your patience.

@schneiderpy
Copy link
Author

schneiderpy commented Feb 1, 2023 via email

@maurolepore
Copy link
Member

Dear @schneiderpy,

I'm pleased to announce that @Paula-Moraga will be the handling editor.

Thanks @schneiderpy for your patience, @Paula-Moraga for accepting the role, and @mpadge for connecting all of us.

@maurolepore
Copy link
Member

@ropensci-review-bot assign @Paula-Moraga as editor

@ropensci-review-bot
Copy link
Collaborator

Assigned! @Paula-Moraga is now the editor

@Paula-Moraga
Copy link

Hi @schneiderpy, I am pleased to be the editor of this package. I will start looking for reviewers.

@Paula-Moraga
Copy link

@ropensci-review-bot seeking reviewers

@ropensci-review-bot
Copy link
Collaborator

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

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

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

@schneiderpy
Copy link
Author

schneiderpy commented Feb 2, 2023 via email

@Paula-Moraga
Copy link

@ropensci-review-bot assign @christopherkenny as reviewer

@ropensci-review-bot
Copy link
Collaborator

@christopherkenny added to the reviewers list. Review due date is 2023-02-26. Thanks @christopherkenny 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.

@Paula-Moraga
Copy link

Many thanks @SebastianWojcik86 and @christopherkenny for your time and effort to review the package!

Many thanks @schneiderpy for addressing the comments by @SebastianWojcik86. Looking forward to see the new version implementing the suggestions by @christopherkenny.

@ropensci-review-bot
Copy link
Collaborator

@schneiderpy: please post your response with @ropensci-review-bot submit response <url to issue comment> if you haven't done so already (this is an automatic reminder).

Here's the author guide for response. https://devguide.ropensci.org/authors-guide.html

@schneiderpy
Copy link
Author

@christopherkenny, apologize for the delay.

Automated tests: Unit tests cover essential functions of the package and a reasonable range of inputs and conditions. All tests pass on the local machine.
Detailed issues with this are explained below. All tests do pass, but some of the tests do not actually test the package.

Response: That was true. for more details see below.

Community guidelines including contribution guidelines in the README or CONTRIBUTING

It may be worth linking to CONTRIBUTING.md from README.md, as you do mention development briefly in the readme.

Response: There is now a link from README to CONTRIBUTING.md

Throughout the package (documentation, readme, and vignettes), you opt not to document functions following standard practices as fn(), but instead as fn. This is a fine discretionary choice and does not appear to be part of rOpenSci's guidelines for review. However, you do use pkgdown and roxygen2, which makes this a surprising choice, as the functions do not link to the documentation when you do not use fn() notation. It would be useful for users of the package if you allow for the automatic links to documentation to generate by using fn() over fn.

Response: I have changed this according to standard practice. All fs() have now links in the documentation files to make use of the pkgdown and roxygen2 functionality to create autmatic links.

You often make use of @Rdname for related families of functions with overlapping applications. This looks well done, but there is a bit of repetition here. You re-document several @params on the same @Rdname. For consistency here, the duplicated @params should likely be removed or the @Rdname tag should be removed in favor of separate documentation pages

Response: I have considered your suggestion. All @Rdname tags have now the name acording to the function, that is, all functions have now their own documentation page. I did this is favor of more readability and it gives me more flexability for future updates (e.g. one script for each function).

In concstats_comp() and concstats_inequ(), normalize should be further documented and potentially checked.

If normalize = NA, it gives a generic R warning. It seems that this should be checked along with the logical and length checks, as you are already checking those and providing a directly helpful error message.
Further, normalize is summarily ignored if type = 'all'. This may be intended behavior, but should be documented or checked for. Otherwise, it confidently gives the wrong (or at least unexpected) answer when normalize = TRUE for the gini and entropy measures compared to when normalize = TRUE and type %in% c('gini', 'entropy') or type %in% c('hhi')

Response: Included checks/tests for normalized = NA. Functions like `concstats_all_* and functions with type = "all" have now a normalized = normalized argument

Line 40 of R/comp.R references a function (concstats_all()) which does not exist. This should be revised to point to (presumably)concstats_all_comp().

Line 39 of R/inequ.R references a function (concstats_all()) which does not exist. This should be revised to point to (presumably)concstats_all_inequ().

Line 27 of R/mstruct.R references a function (concstats_all()) which does not exist. This should be revised to point to (presumably)concstats_all_mstruct().

Response: functions have been referenced as suggested, e.g. concstats_all_comp(), concstats_all_inequ(), concstats_all_mstruct

Documentation for concstats_concstats() would benefit from the list of measures that will be computed. It indicates "a set of different and selected structural, inequality, and concentration measures" will be computed, but indicating which those are would be useful to users.

Response: All measures included in this set are now mentioned in the documentation/details

x is documented as "@param x a numeric vector of length 1 with non-negative values." throughout R/comp.R, R/concstats.R, R/inequ.R, and R/mstruct.R. This seems incorrect and conflicts with the examples, which always show a numeric vector of positive length.

Response: This has been changed to "x A non-negative numeric vector."

Input classes and lengths are consistently checked. One point of question: When checking x, what is the intended behavior if length(x) == 1? In some cases, this works. In others, such as for concstats_grs(), it fails with an uninformative error.

Response: This has been removed/changed to sum(x) == 1

concstats_constats(), concstats_all_comp(), concstats_all_inequ(), and concstats_all_mstruct() each round the output to 2 decimal digits. This may be a reasonable choice, but it is not clear why 2 decimal digits is appropriate here, but not in the other functions. Should all outputs contain a rounding step or is this step unnecessary? One way to make this more consistent could be to make this optional, controlled by a new argument.

Response: All functions who return a table of the group functions now have an additional argument with default "digits = NULL" as an intermediary between precision and style.

In each of concstats_all_comp(), concstats_all_inequ(), and concstats_all_mstruct(), there is code which runs via invisible(utils::capture.output(...)). It is not clear what the purpose of this is, as there does not appear to be any print statements in the functions in the .... If this is intended to capture some known issue with printing elsewhere, it would seem best to deal with this directly by modifying inputs or providing warnings or errors where appropriate.

Response: Advise on this will be apreciated. The intencion is to compute the individual functions but not return the results one by one, instead "collect" them and return them all in table. I haven't found a better way to code this yet.

However, a concerning number of the tests in the package are inappropriate for testing the package. Hundreds of the tests are testing basic aspects of base R, not testing pieces of the package. Things like testing R's assignment operator, that NAs are NA, or that vectors sum properly. These tests should be removed.

Response: I do agree with respect to NAs, however, I kept tests to check if the vectors sums up to (near) 1, since, in my opinion, this is an essential characteristic of the vector. Probably you do agree that a relative market share of 90% or 130% make no sense. If I don't control for the input the functions will work, but the results will be erronous (due to copy-paste or typing errors). Furthermore, sometimes the user of the package is not the same person who prepared the raw data.

In many calls to expect_error() across all test files it appears that the parentheses are frequently not matched properly, so that what appears to be an argument for regexp is instead passed to isTRUE() or to concstats_*(). That will always cause an error, so the test is again not testing aspects of the package, but instead that a base R function performs how it is intended. In many cases, this means that tests designated for particular standards with "@srrstats {G5.2, G5.2a, G5.2b, G5.8, G5.8a, G5.8b}" (e.g. in tests/testthat/test_comp.R l. 64-68) do not appear to test anything that would satisfy those standards for concstats. This is a pervasive problem in the tests that would need substantial revision.

Response: I have reviewed expect_error() (and other expectations) and the parentheses. Some of these were definitly wrong. Some have now this structure:
act <- concstats_hhi(x)
exp <- concstats_hhi(x4 / sum(x4))
expect_equal(act, exp, tolerance = .Machine$double.eps^0.25)

Others:
expect_error(concstats_hhi(sum(x1), 1, tolerance = .Machine$double.eps^0.25))
to satisfy tests and "@srrstats" standards. In addition, in future updates each function will have its own file and tests (as recommended standard) with the intent to make this more readable and make testing easier.

In data-raw/creditcoops.R, on line 3 n() should be dplyr::n(), otherwise the demo data cannot be reproduced (assuming no packages loaded beyond devtools::load_all()).

Response: has been changed to dplyr::n()

Should the author(s) deem it appropriate, I agree to be acknowledged as a package reviewer ("rev" role) in the package DESCRIPTION file.

Response: Of course, both reviewers have been added to the DESCRIPTION file

@christopherkenny
Copy link

christopherkenny commented Mar 15, 2023

Hi @schneiderpy, thanks for this. The changes look good to me. Thank you for your attention to the details here.

Re:

Response: Advise on this will be apreciated. The intencion is to compute the individual functions but not return the results one by one, instead "collect" them and return them all in table. I haven't found a better way to code this yet.

It would seem to me that you can just remove the invisible(utils::capture.output(...)) (and inner commas) as they will not return anything to the global environment. You control their return through the table later.

Some extra notes that do not need to be addressed, but may be helpful for future maintenance of the package:

  • @rdname does not need to be specified when it is the name of a single function, as it defaults to the name of that function.
  • Function reference can be categorized by type, as documented here.

@schneiderpy
Copy link
Author

Hi @christopherkenny and thank you for the advise. I have already tested it and it works fine.
I will consider the extra notes for future updates.
Again, thank you for reviewing the package and the valuable comments and advise.

@Paula-Moraga
Copy link

Many thanks @schneiderpy, @christopherkenny and @SebastianWojcik86 for your time and work to improve the package. I am very pleased to approve it!

@Paula-Moraga
Copy link

@ropensci-review-bot approve concstats

@ropensci-review-bot
Copy link
Collaborator

Approved! Thanks @schneiderpy for submitting and @christopherkenny, @SebastianWojcik86 for your reviews! 😁

To-dos:

  • Transfer the repo to rOpenSci's "ropensci" GitHub organization under "Settings" in your repo. I have invited you to a team that should allow you to do so. You will need to enable two-factor authentication for your GitHub account.
    This invitation will expire after one week. If it happens write a comment @ropensci-review-bot invite me to ropensci/<package-name> which will re-send an invitation.
  • After transfer write a comment @ropensci-review-bot finalize transfer of <package-name> where <package-name> is the repo/package name. This will give you admin access back.
  • Fix all links to the GitHub repo to point to the repo under the ropensci organization.
  • Delete your current code of conduct file if you had one since rOpenSci's default one will apply, see https://devguide.ropensci.org/collaboration.html#coc-file
  • If you already had a pkgdown website and are ok relying only on rOpenSci central docs building and branding,
    • deactivate the automatic deployment you might have set up
    • remove styling tweaks from your pkgdown config but keep that config file
    • replace the whole current pkgdown website with a redirecting page
    • replace your package docs URL with https://docs.ropensci.org/package_name
    • In addition, in your DESCRIPTION file, include the docs link in the URL field alongside the link to the GitHub repository, e.g.: URL: https://docs.ropensci.org/foobar, https://github.com/ropensci/foobar
  • Skim the docs of the pkgdown automatic deployment, in particular if your website needs MathJax.
  • Fix any links in badges for CI and coverage to point to the new repository URL.
  • Increment the package version to reflect the changes you made during review. In NEWS.md, add a heading for the new version and one bullet for each user-facing change, and each developer-facing change that you think is relevant.
  • We're starting to roll out software metadata files to all rOpenSci packages via the Codemeta initiative, see https://docs.ropensci.org/codemetar/ for how to include it in your package, after installing the package - should be easy as running codemetar::write_codemeta() in the root of your package.
  • You can add this installation method to your package README install.packages("<package-name>", repos = "https://ropensci.r-universe.dev") thanks to R-universe.

Should you want to acknowledge your reviewers in your package DESCRIPTION, you can do so by making them "rev"-type contributors in the Authors@R field (with their consent).

Welcome aboard! We'd love to host a post about your package - either a short introduction to it with an example for a technical audience or a longer post with some narrative about its development or something you learned, and an example of its use for a broader readership. If you are interested, consult the blog guide, and tag @ropensci/blog-editors in your reply. They will get in touch about timing and can answer any questions.

We maintain an online book with our best practice and tips, this chapter starts the 3d section that's about guidance for after onboarding (with advice on releases, package marketing, GitHub grooming); the guide also feature CRAN gotchas. Please tell us what could be improved.

Last but not least, you can volunteer as a reviewer via filling a short form.

@schneiderpy
Copy link
Author

Thank you @Paula-Moraga for the good news!
I could not find any useful instruction on how to "transfer the repo to rOpenSci's "ropensci" GitHub organization".
Any advise would be apreciated to continue the process.

@schneiderpy
Copy link
Author

@ropensci-review-bot finalize transfer of concstats

@ropensci-review-bot
Copy link
Collaborator

Can't find repository ropensci/concstats, have you forgotten to transfer it first?

@schneiderpy
Copy link
Author

@ropensci-review-bot finalize transfer github/concstats

@ropensci-review-bot
Copy link
Collaborator

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

@ropensci-review-bot help

@schneiderpy
Copy link
Author

@ropensci-review-bot help

@ropensci-review-bot
Copy link
Collaborator

Hello @schneiderpy, here are the things you can ask me to do:


# Add an author's response info to the ROpenSci logs
@ropensci-review-bot submit response <AUTHOR_RESPONSE_URL>

# List all available commands
@ropensci-review-bot help

# Show our Code of Conduct
@ropensci-review-bot code of conduct

# Invite the author of a package to the corresponding rOpenSci team. This command should be issued by the author of the package.
@ropensci-review-bot invite me to ropensci/package-name

# Adds package's repo to the rOpenSci team. This command should be issued after approval and transfer of the package.
@ropensci-review-bot finalize transfer of package-name

# Various package checks
@ropensci-review-bot check package

# Checks srr documentation for stats packages
@ropensci-review-bot check srr

@schneiderpy
Copy link
Author

@ropensci-review-bot finalize transfer of concstats

@ropensci-review-bot
Copy link
Collaborator

Can't find repository ropensci/concstats, have you forgotten to transfer it first?

@schneiderpy
Copy link
Author

@ropensci-review-bot finalize transfer of concstats

@ropensci-review-bot
Copy link
Collaborator

Can't find repository ropensci/concstats, have you forgotten to transfer it first?

@schneiderpy
Copy link
Author

@ropensci-review-bot finalize transfer of schneiderpy/concstats

@ropensci-review-bot
Copy link
Collaborator

Can't find repository ropensci/schneiderpy/concstats, have you forgotten to transfer it first?

@schneiderpy
Copy link
Author

@ropensci-review-bot finalize transfer of concstats

@ropensci-review-bot
Copy link
Collaborator

Transfer completed.
The concstats team is now owner of the repository and the author has been invited to the team

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

9 participants